O comando para obter os ícones do lançador atual é:
gsettings get com.canonical.Unity.Launcher favorites
Isso lhe dará uma lista como:
['item_1', 'item_2', 'application://application_to_remove.desktop', 'etc']
Se você remover seu item da lista e definir a versão alterada da lista pelo comando:
gsettings set com.canonical.Unity.Launcher favorites "['item_1', 'item_2', 'etc']"
(mind the double quotes)
Sua inscrição é desbloqueada do iniciador.
Exemplo de script
Como exemplo de como o trabalho pode ser feito por um script (python):
#!/usr/bin/env python3
import subprocess
import sys
key = "com.canonical.Unity.Launcher"
desktopfile = sys.argv[1]
curr_launcher = eval(subprocess.check_output([
"gsettings", "get", key, "favorites"
]).decode("utf-8"))
new_launcher = [item for item in curr_launcher if not desktopfile in item]
subprocess.Popen(["gsettings", "set", key,"favorites",str(new_launcher)])
Como usar
- Cole o script em um arquivo vazio, salve-o como
remove_fromlauncher.py
-
Execute-o pelo comando
python3 /path/to/remove_fromlauncher.py <application.desktop>
ou menor:
python3 /path/to/remove_fromlauncher.py <application>
Exemplo remova o Virtualbox:
python3 /path/to/remove_fromlauncher.py virtualbox.desktop
Nota
Tenha em mente que você não pode simplesmente remover todos itens da lista; Também inclui itens que não são aplicativos.
EDITAR
Versão do script para remover vários ícones de uma só vez:
#!/usr/bin/env python3
import subprocess
import sys
key = "com.canonical.Unity.Launcher"
desktopfiles = sys.argv[1:]
for desktopfile in desktopfiles:
curr_launcher = eval(subprocess.check_output([
"gsettings", "get", key, "favorites"
]).decode("utf-8"))
new_launcher = [item for item in curr_launcher if not desktopfile in item]
subprocess.Popen(["gsettings", "set", key,"favorites",str(new_launcher)])
O uso é praticamente o mesmo, mas agora você pode usar vários argumentos de uma só vez, por exemplo:
python3 /path/to/remove_fromlauncher.py gedit thunderbird
removerá os Thunderbird
e Gedit
do iniciador.