Zugegeben, es wird gleich eher nerdig und als Marketing-Tool im alltäglichen Business-Einsatz ist es gewiss nicht empfehlenswert. Ich habe immer mal wieder nach einem Instagram Hashtag Manager auf Ubuntu gesucht. Ich wurde weder mit einem Tool noch in einer Cloud fündig. Es gibt zwar endlos viele Tools, aber für meinen Hobby-Einsatz sind mir viele zu teuer, zu komplex oder dann doch nicht gut genug. Also habe ich Leetags, ein Tool welches ich unter Android nutze, auf mein Notebook übertragen. Im Folgenden beschreibe ich, wie ich das angestellt habe.
Wie schon geschrieben suchte ich nach einem Tool für mein Hobby. Ich fotografiere gern und natürlich tut es gut, Likes für Fotos zu bekommen. Bei den wenigen Followern, die ich auf meinen Accounts habe, nutze ich Hashtags um die Bilder für mehrere Leuten sichtbar zu machen. Die Wissenschaft, die man darauf machen könnte, mache ich nicht. Ich brauche lediglich ein einfaches Tool, in dem ich Hashtags die ich gern benutze in Gruppen speichern kann. Außerdem sollte es mir Vorschläge unterbreiten. Das macht Leetags auf Android in meinen Augen sehr gut.
Die Bilder oben geben einen Eindruck dessen, was das kleine Tool macht. Eine Schlagwortsuche schlägt passende Hashtags vor und nennt auch deren Relevanz. Gruppen von Hashtags können in Favoriten gespeichert werden. Und zu guter Letzt gibt es ein „Cloud“-Modul: Alle Hashtags, die ich im Post verwenden möchte, landen hier. Das dürfen wie bei Instagram typisch maximal 30 Stück sein. Man kann die Hashtags vorm Verwenden noch einmal durchmischen. Danach kopiert man sie in die Zwischenablage und fügt sie am Zielort wieder ein. Für mich ist es präzise das, wonach ich gesucht habe: Nicht zu komplex und dennoch sehr hilfreich.
Android-Apps können grundsätzlich auch auf Linux, macOS oder Windows betrieben werden. Dazu benötigt man einen Emulator, der auf dem eigenen Betriebssystem eine Android-Umgebung zur Verfügung stellt. Auf meinem Linux (Ubuntu 22.04) habe ich mich für Anbox (Android in a Box) entschieden. Die Einrichtung war etwas holprig, weil das Snap-Image nicht starten wollte. In einem KnowHow-Artikel habe ich beschrieben, wie ich es dann doch zum Laufen gebracht habe. Sobald der Google Play Store eingerichtet war, konnte ich einfach nach Leetags suchen und die App installieren. Damit war die App erstmal prinzipiell vorhanden.
Für den eigenen Komfort wollte ich nun natürlich auch die App direkt starten können, sie also nicht jedesmal in der Emulator-Umgebung anklicken müssen. Das ist mit Anbox möglich, wenn man weiß wie es geht 😁. Das Snap-Image legt im Verzeichnis ~/snap/anbox/common/app-data/applications/anbox/ für jede installierte App eine .desktop-Datei an. Diese kann man öffnen und alle notwendigen Informationen herauslesen:
1 2 3 4 5 6 |
[Desktop Entry] Name=Leetags Exec=/snap/bin/anbox launch --action=android.intent.action.MAIN --package=com.leetags --component=com.leetags.MainActivity Terminal=false Type=Application Icon=~/snap/anbox/common/app-data/applications/anbox/anbox-com-leetags.png |
Um den Befehl nun unter Ubuntu direkt verfügbar zu machen, habe ich diese .desktop-Datei lediglich in den applications-Ordner der Gnome Shell kopiert:
1 |
cp ~/snap/anbox/common/app-data/applications/anbox/anbox-com-leetags.desktop ~/.local/share/applications/ |
In der Gnome Shell kann ich ab sofort einfach nach Leetags suchen und die App darüber starten. Um die App in den Favoriten zu hinterlegen, muss beim Suchen mit der rechten Maustaste auf das Icon geklickt und der entsprechende Menüpunkt gewählt werden. Hinweis: Der erste Start nach einem Boot-Vorgang dauert immer etwas länger, weil der Emulator noch laden muss.
Natürlich ist die App nach der Installation leer – also auf dem Smartphone schon eingetragene Favoriten fehlen. Android ist von Haus aus nicht sehr hilfsbereit, diese Daten zu exportieren. Die Datensicherung, die das Smartphone täglich anlegt, wird gehütet wie ein Schatz. Nach einiger Recherche habe ich dann einen Weg gefunden, die Daten über die Android Debug Bridge (adb, siehe KnowHow-Artikel) zu sichern. Das klingt komplexer als es ist!
Die Installation von adb ist, wie ich auch im KnowHow-Artikel beschreibe, sehr einfach. Nach wenigen Klicks und Tapps auf meinem Smartphone konnte das Tool auf dessen Dateisystem zugreifen. Da ich auch Anbox installiert habe, findet adb mindestens zwei Geräte: Neben dem Smartphone eben auch Anbox selbst. Darum ist es wichtig, mit dem Befehl adb devices die ID des Smartphones zu suchen und diese im Folgenden immer mit dem Parameter -s zu übergeben:
1 2 3 |
adb -s <SID> shell pm list packages | grep -i leetags adb -s <SID> backup -noapk com.leetags dd if=backup.ab bs=1 skip=24 | python2 -c "import zlib,sys;sys.stdout.write(zlib.decompress(sys.stdin.read()))" > backup.tar |
Der erste Befehl sucht nach dem korrekten Namen der App. Er liefert com.leetags zurück. Mit diesem Namen kann ich dann im zweiten Befehl ein Backup ausführen. Der Parameter -noapk stellt lediglich sicher, dass nur die Daten und nicht auch das Programm selbst gesichert werden. Das Backup heißt dann backup.ab und ist so noch nicht sinnvoll nutzbar. Der dritte Befehl konvertiert die .ab-Datei dann final in ein Tar-Archiv, welches einfach mittels tar -xf backup.tar entpackt werden kann.
Womöglich hätte ich das Backup auch einfach über den Befehl adb -s <SID> restore backup.ab auf den Emulator spielen können, wenn ich als <SID> die ID des Emulators angegeben hätte. Das habe ich so aber nicht probiert, sondern es ganz von Hand gemacht. Die Daten der Anbox-Apps sind im Verzeichnis /var/snap/anbox/common/data/data/ zu finden. Hier gibt es auch ein Verzeichnis com.leetags. Ich habe die Daten wie folgt kopiert:
1 2 3 4 5 6 7 |
mkdir /tmp/leetags.data && cd /tmp/leetags.data tar -xf ~/backup.tar cd /var/snap/anbox/common/data/data/com.leetags/databases ls -allh mkdir /tmp/leetags.orig && mv * /tmp/leetags.orig/ cp /tmp/leetags.data/apps/com.leetags/db/* . chown <USER>.<GROUP> * |
Die ersten beiden Befehle entpacken lediglich das Backup in das /tmp-Verzeichnis. Wichtig ist es, sich in Zeile 4 die Eigentumsverhältnisse der Dateien (<USER>.<GROUP>) zu merken. Die Zeile 5 legt für den Fall der Fälle ein Backup das originalen Daten an. Dann werden die gesicherten Daten kopiert und die Eigentumsverhältnisse wiederhergestellt.
Wenn alles gut ist, dann kann man nun Leetags starten und findet alles so vor, wie es auch auf dem Smartphone ist. Voilà: Wir haben einen Instagram Hashtag Manager auf Ubuntu.