Fedora Trickkiste: yum-pinning

Ab und zu kommt es vor, dass man ein Paket in einer bestimmten Version halten möchte. In meinem aktuellen Fall ist es Gwibber, dass in der aktuellen nicht korrekt funktioniert. Mir ist es unmöglich Tweets zu schreiben oder die Timeline manuell zu aktualisieren. Der Bug ist gemeldet und die nächste Version, die das Problem behebt, ist bereits in Rawhide/Branched. Als vorübergehende Lösung entschied ich mich, ein Downgrade durchzuführen und die Version festzupinnen.
Unter debian und Ableger gibt es das sogenannte apt-pinning. Aber unter Fedora? Ja, auch hier gibt es das!
Damit man ein Paket, hier Gwibber, auf eine bestimmte Version festpinnen kann, braucht man das Plugin Versionlock. Da es sich in den Paketquellen befindet, reicht ein:

~# yum install yum-plugin-versionlock

Jetzt muss nur noch in der /etc/yum/plugins.d/versionlock.list das Paket (inkl. Version) eingetragen werden. Also in diesem Fall:
gwibber-3.1.0-2.fc16
Fertig! Ab jetzt zeigt euch yum keine Updates für die eingetragenen Pakete. Bei mir sieht das so aus:

~$ yum check-update
Geladene Plugins: auto-update-debuginfo, changelog, fastestmirror, langpacks, presto, versionlock
Loading mirror speeds from cached hostfile
* fedora: mirror.de.leaseweb.net
* rpmfusion-free: mirror.de.leaseweb.net
* rpmfusion-free-updates: mirror.de.leaseweb.net
* rpmfusion-nonfree: mirror.de.leaseweb.net
* rpmfusion-nonfree-updates: mirror.de.leaseweb.net
* updates: fedora.tu-chemnitz.de
~$

Nun stehe ich natürlich vor dem Problem, dass ich nicht sehe, wann die nächste Version von Gwibber als Update bereit steht. Ich könnte natürlich immer auf Koji nachgucken, ob es soweit ist. Aber das ist nicht sehr praktisch. Und genau dafür hat yum den Schalter ‚disableplugin‘ mit dem man ein oder mehrere Plugins für einen Aufruf deaktivieren kann. In der Praxis sieht das dann so aus:

~$ yum check-update --disableplugin=versionlock
Geladene Plugins: auto-update-debuginfo, changelog, fastestmirror, langpacks, presto
Loading mirror speeds from cached hostfile
* fedora: mirror.de.leaseweb.net
* rpmfusion-free: mirror.de.leaseweb.net
* rpmfusion-free-updates: mirror.de.leaseweb.net
* rpmfusion-nonfree: mirror.de.leaseweb.net
* rpmfusion-nonfree-updates: mirror.de.leaseweb.net
* updates: fedora.tu-chemnitz.de

gwibber.noarch 1:3.1.0-4.fc16 updates
~$

Und völlig korrekt zeigt mir yum das nicht funktionierende Update für Gwibber an. Nächster Schritt wäre jetzt ein passender Cronjob, damit das nicht mehr selber machen muss. Aber das hat ja nur noch peripher etwas mit dem Versionlock zu tun…

Quelle: Fedora Documentation – Software Managment (engl.)

Clementine

tl;dnr: Clementine ist der beste Musikplayer. ->HP ->Download ->Screenshots

Ich war seit längerem auf der Suche nach einem geeigneten (grafischen) Musikprogramm. Auslöser für meine Suche war das Release von Gnome 3.0. Mein damaliges Programm, Exaile, integrierte sich nämlich nicht mehr so prickelnd in den neuen Desktop.Das Musikprogramm Clementine Nein, eigentlich wirkte Exaile wie ein Fremdkörper. Der hauseigene Player machte vor, wie es sein sollte: Rhythmbox nutzt konsequent die Möglichkeiten des Benachrichtigungssystems von Gnome3. Im Gegensatz zu früher bietet das eine Möglichkeit zur Interaktion. Ich fand und finde das super.

Leider versagt Rhythmbox ansonsten auf nahezu jede erdenkliche Art. Daher war ein Umstieg nicht der Plan. Nach einer langen und verwirrenden Reihe von Testinstallationen gelangte ich dann zu meinem neuen Musikprogramm: Clementine.
Clementine ist ein Fork von Amarok 1.4. Nach der Version 1.4 wurde Amarok wegen des KDE4-Desktops general überholt. Und wie das so ist: Das gefällt nicht immer allen. Und so kam es zu Fork. Für mich aus 2 Gründen ein Segen:

  1. Ist für mich, als Gnome-User, Amarok 2.X ein Non-Go, weil man sich den halben KDE Desktop als Abhängigkeit ins Haus holt.
  2. Fand ich Amarok 1.4 super, Amarok 2.X find ich aber doof!

Ich hatte mir schon mal vor einem Jahr Clementine angeguckt, war ein bisschen enttäuscht und entschied, dass das Ding noch nicht so weit war. Darüber vergaß ich Clementine. Nun hab ich Clementine für mich wiederentdeckt und muss sagen: Jepp, das Ding ist jetzt noch geiler als es Amarok für mich jemals war!
Folgenden Funktionen bietet Clementine:

  • Durchsuchen und Abspielen Ihrer lokalen Musiksammlung.
  • Internetradio von Spotify, Grooveshark, Last.fm, SomaFM, Magnatune, Jamendo, SKY.fm und Digitally Imported, und Icecast.
  • Erstellen intelligenter sowie dynamischer Wiedergabelisten.
  • Wiedergabelisten mit Tabs, Im- und Exportieren von M3U, XSPF, PLS und ASX.
  • Unterstützung für Cuesheets.
  • Abspielen von Audio-CDs.
  • Visualisierungen von projectM.
  • Liedtexte sowie Biografien und Fotos der Künstler.
  • Konvertieren von Musik in die Formate MP3, Ogg Vorbis, Ogg Speex, FLAC oder AAC.
  • Bearbeiten der Metadaten von MP3- und OGG-Dateien, Organisieren Ihrer Musik.
  • Abrufen fehlender Tags von MusicBrainz.
  • Fehlende Albencover von Last.fm und Amazon herunterladen.
  • Plattformübergreifend – funktioniert unter Windows, Mac OS X und Linux.
  • Native Desktopbenachrichtigungen unter Linux (libnotify) und Mac OS X (Growl).
  • Fernsteuerung mittels Wii-Fernbedienung, MPRIS oder Befehlszeile.
  • Kopieren von Musik auf Ihren iPod, iPhone, MTP- oder USB-Massenspeicher.
  • Warteschlangenverwaltung.

(Diese Liste ist dreistes Ausnutzen der Creative-Commons-Lizenz CC-BY-SA der Clementine HP. Man könnte auch von stumpfen copy+paste reden.)

Wer Clementine ausprobieren möchte: Den Player gibt es in jeder gut sortierten Paketverwaltung, als direct download oder man backt sich das Ding einfach selber.

P.S.: Clementine unterstützt zwar nicht von Haus aus das Gnome Benachrichtigungssystem aber über die Gnome-Shell-Extension „Music Integration“ klappt’s dann wieder.

Fedora Trickkiste: yum beschleunigen

Nachdem ich heute wieder einmal gelesen habe, dass yum so fürchterlich langsam sein soll, dachte ich mir: “Schreibste mal ein, zwei Kniffe auf“. Dann brauch ich mich nicht immer wiederholen. Inwieweit die euch was bringen, hängt von eurem System und eurer Internetanbindung ab. Your mileage may vary!

PackageKit-yum-plugin

Dieses yum-PlugIn gehört (bei Fedora 16) anscheinend immer noch zur Standardinstallation. Es sorgt dafür, dass nach jedem Aufruf von yum im Hintergrund PackageKit checkt, ob Updates verfügbar sind. Bei einer langsamen Anbindung nervt das extremst. Also entweder in der

/etc/yum/pluginconf.d/refresh-packagekit.conf

den Schalter

enabled=0

setzen oder gleich deinstallieren. Man braucht es nicht wirklich.

yum-plugin-fastestmirror

Mit dem PlugIn werden schnellsten Spiegelserver für die aktiven Repositories ausgewählt, sofern es Spiegelserver gibt und deren Nutzung aktiviert ist. Die ermittelten Server werden in der Datei ‚/var/cache/yum/$arch/$releasever/timedhosts.txt‘ also in meinem Fall:

/var/cache/yum/x86_64/16/timedhosts.txt

gespeichert. Ein klein wenig kann man das PlugIn auch konfigurieren. Ich gehe hier nur auf die wichtigsten ein:

maxhostfileage=10 #Anzahl der Tage, die diese Liste gespeichert wird
include_only=.nl,.de,.uk,.ie #Die sog. Top-Level-Domains, die genommen werden sollen. Mir hat's nicht wirklich geholfen, aber vielleicht ja euch.

Die paar Optionen, die fehlen, dürft ihr in der Dokumentation nachlesen.

yum-presto

Presto sorgt dafür, dass immer nur ein sog. Inkrementelles Update durchgeführt wird. Ihr zieht also wirklich nur die Veränderungen und nicht das komplette Paket. Ist standardmäßig installiert und aktiviert.

yum.conf

Man kann mit dem Schalter -C die Nutzung des Caches erzwingen und so eine lästige Abfrage bei einem Server vermeiden. Man sieht also bei einem

yum -C search $foo

nur im lokalem Cache nach und nicht online. Erhöht enorm die Reaktionsgeschwindigkeit von yum, kann aber veraltete Informationen hervorbringen. Das Ganze ist natürlich erst richtig sinnvoll, wenn man die Option ‚keepcache‘ eingeschaltet hat. Dazu ändert man in der Datei

/etc/yum.conf

die Zeile

keepcache=0

in

keepcache=1

Hilfreiche Quelle

Wer sich mit yum weiter auseinander setzen will, dem lege ich die wirklich gute Dokumentation ans Herz.

So! Das war es eigentlich schon. Ich hoffe, dass das dem einem oder anderem weiter hilft. (Natürlich auch der einen oder anderen. ;) ) Frage, Anmerkungen und Kritik kommen in die Kommentare!