Kurztipp: Alte Snap-Revisionen deinstallieren

Snap hat die Eigenschaft, dass es standardmäßig drei Revisionen eines Pakets vorhält. Der Vorteil ist, dass man dadurch sehr schnell auf eine ältere Version eines Programms zurückwechseln kann, falls eine neue Version Probleme machen sollte. Der Nachteil ist, dass jede Revision Plattenplatz benötigt. Die Deinstallation ist kein großer Aufwand, bei vielen Snaps ist es aber relativ viel Tipparbeit. Deshalb hier mal ein Einzeiler, welcher alle alten Revisionen in einem Rutsch deinstalliert:

snap list --all | grep deaktiviert | awk '{system("sudo snap remove " $1 " --revision " $3)}'

Wer eine andere Systemsprache als Deutsch benutzt, muss den Begriff „deaktiviert“ entsprechend anpassen.

Warum ich Pakete für den Snap-Store bereitstelle

Neben der AusweisApp2 habe ich mit PyMOL eine weitere Anwendung für den Snap-Store paketiert.

Was ist PyMOL?

PyMOL ist ein 3D-Viewer und Editor für Proteine und im Bereich der Protoemik eine Standardanwendung. Nahezu alle Bilder, welche die Struktur von Proteinen zeigen, wurden mit Hilfe von PyMOL erstellt. Ein Beispiel sieht man hier:

PDB 1ABI: Thrombin (Grüne und rote Oberflächen) mit Hirudin („Stick“-Darstellung) gerendert mit PyMOL (Eigene Arbeit).

Ein Problem der Software ist, dass sie in zwei Versionen vertrieben wird:

Eine kommerzielle Version mit Support und eine freie Version (MIT-Lizenz). Letztere enthält etwas weniger Features (z.B. kein Antialiasing in der OpenGL-Darstellung), für die meisten Benutzer ist diese aber vollkommen ausreichend. Die freie Version dürfte von den meisten Benutzern verwendet werden, da die günstigste Lizenz der kommerziellen Version $99 pro Jahr kostet.

Die kommerzielle Version wird mit einer kompletten Python-3.7-Umgebung ausgeliefert (Conda), die freie Version ist in vielen Distributionen verfügbar. Leider liefern gerade die LTS-Distributionen nur die Version 1.8 oder noch ältere Versionen aus. Als Anwender hat man also nur die Möglichkeit die kommerzielle Version einzusetzen oder das Programm aus dem Quellcode selbst zu bauen.

PyMOL selbst ist eine Mischung aus Python -und C++-Code. Die Oberfläche ist dabei in Python (PyQT, früher Tcl/Tk) realisiert, der grundlegende Code in C++. Die Anzahl der Abhängigkeiten ist zwar relativ klein, aber in dem Umfeld wo das Programm üblicherweise eingesetzt wird, finden sich nur sehr wenige versierte Linux-Benutzer, welche einfach so mal ein Programm kompilieren können. Vor allem, weil PyMOL ein externes Python-Modul und eine externe C++-Headerdatei benötigt, welche jeweils händisch installiert werden müssen.

„Warum ich Pakete für den Snap-Store bereitstelle“ weiterlesen

AusweisApp2 als Snap #3

Ich habe eine neue Version des Snap-Pakets veröffentlicht. Dieses beinhaltet das Treiberpaket von „Reiner SCT“ für den PC/SC-lite Daemon.

Dadurch unterstützt der Daemon z.B. den „Reiner SCT cyberJack RFID standard. Dessen Treiber wurde im CCID-Treiber 1.4.30 auf Bitte von „Reiner SCT“ deaktiviert.

Das Update wird von „snap“ automatisch durchgeführt. Man kann es auch per „snap refresh ausweisapp2-ce“ anstoßen.