Antwort1
Obwohl die folgende Lösung keinFixzu wasscheintEs handelt sich zwar um einen kleinen Fehler, Sie können ihn jedoch als Workaround verwenden, um Geräte beim Start (Anmelden) automatisch auf die schwarze Liste zu setzen.
Die Lösung
...ist ein kleines Skript, das sich beim Anmelden an Ihre auf der schwarzen Liste stehenden Elemente erinnert. Es wird mit zwei Argumenten ausgeführt: get
und set
. Das erste dient zum Lesen der aktuell auf der schwarzen Liste stehenden Elemente, das zweite setzt die Liste (zurück) auf die zuletzt gelesene Version.
In der Praxis
- Entfernen Sie die Geräte wie gewohnt aus dem Unity Launcher.
- Führen Sie den Befehl aus.
/path/to/remember_blacklist.sh get
Dadurch wird ein Snapshot der aktuell auf der schwarzen Liste stehenden Geräte erstellt.
Wenn Sie sich nun das nächste Mal anmelden oder neu starten, werden die Geräte auf der schwarzen Liste automatisch entfernt. Natürlich können Sie den Befehl auch einer Verknüpfung hinzufügen.
Verwendung / Einrichtung
Kopieren Sie das folgende Skript in eine leere Datei und speichern Sie es unter
remember_blacklist.sh
#!/bin/bash arg=$1 blacklist=~/.currblacklist key="com.canonical.Unity.Devices blacklist" if [ "$arg" == "get" ] then printf "$(gsettings get $key)" > $blacklist elif [ "$arg" == "set" ] then if [ "$(cat $blacklist)" == "@as" ] then gsettings set $key [] else gsettings set $key "$(cat $blacklist)" fi fi
ausführbar machen(!)
Fügen Sie Folgendes zu Startup Applications Dash > Startup Applications > Add hinzu. Fügen Sie den Befehl hinzu
/bin/bash -c "sleep 10 && /path/to/remember_blacklist.sh set"
- Entfernen Sie die Geräte wie gewohnt aus dem Launcher
- Führen Sie zur Erinnerung Folgendes aus:
/path/to/remember_blacklist.sh get
Erläuterung
Wenn Sie ein Gerät aus dem Launcher entfernen, wird esauf die schwarze Liste gesetzt. Die aktuelle Liste der Geräte auf der schwarzen Liste können Sie mit dem folgenden Befehl lesen:
gsettings get com.canonical.Unity.Devices blacklist
Die Ausgabe lautet etwa wie folgt:
['0A444ED409660B91-intern_1', '2899FAA548C61099-intern_2']
Das Skript macht Folgendes:
- Wenn es mit dem Argument
get
: ausgeführt wird, liest es die aktuelle Blacklist und speichert die Ausgabe in einer versteckten Datei:~/.currblacklist
Wenn es mit dem Argument
set
: ausgeführt wird, liest es den Inhalt der Datei~/.currblacklist
und legt die schwarze Liste mit dem Befehl fest:gsettings set com.canonical.Unity.Devices blacklist <content_of_the_file>