Document ID: /fineweb-2-swissfilter-quality_10-filterrobots/filtered/03182.jsonl.gz/1898

Di, 15. November 2022, Redaktionsteam
Ende September haben wir einen Programmierwettbewerb mit dem Titel Wer liefert am schnellsten? gestartet. Es ging darum herauszufinden, welche Distribution möglichst zeitnah Aktualisierungen für Pakete bereitstellt. Zu gewinnen gab es ein PinePhone.
Die Eingaben waren sehr interessant und hochwertig und wir bedanken uns an dieser Stelle bei allen Teilnehmenden. Nach ausführlicher Analyse der Einsendungen können wir heute einen Gewinner bekannt geben: Geronymo hat eine schlanke und dennoch flexible Lösung auf Python3 Basis bereitgestellt. Sein Ansatz ist einerseits in der Lage direkt Repository-Informationen der Distributionen abzufragen und bietet als Zusatzoption die Möglichkeit beliebige Abfragen an Repology zu stellen.
Ein Aufruf des Scriptes mit dem Parameter -h gibt eine entsprechende Hilfe aus:
./programmierwettbewerb_wer_liefert_am_schnellsten.py -h usage: programmierwettbewerb_wer_liefert_am_schnellsten.py [-h] [-p SOFTWARE [SOFTWARE ...]] [-a] [-s SEARCH] [-r REPTOLOGY] Get information about the package versions of software options: -h, --help show this help message and exit -p SOFTWARE [SOFTWARE ...], --packages SOFTWARE [SOFTWARE ...] Space separated list of software-packages that should be displayed. Supported parameters are: ['firefox', 'thunderbird', 'libreoffice', 'inkscape', 'mesa'] -a, --all Select all packages -s SEARCH, --search SEARCH Search for a software using the same package name for all distros. This is different from "-p" because you can try any search term. This ignores the fact that software can have different names in different distros/repositorys. Distros with no result my still have the package but under a different name. -r REPOLOGY, --reptology REPOLOGY Search for a package using repology
Ein einfacher Aufruf erfolgt unter Angabe des Parameters -a. Verglichen werden dabei exemplarisch die Pakete: Firefox, Thunderbird, LibreOffice, Inkscape und Mesa. Dabei erfolgt eine Abfrage der Repository-Informationen von Arch Linux, Debian (unstable, testing, stable) und Fedora.
Der Parameter -r erlaubt eine Repology-Abfrage. Ein Beispiel wäre die Abfrage aller verfügbaren Gimp Versionen:
./programmierwettbewerb_wer_liefert_am_schnellsten.py -r gimp
Die Ausgabe lässt sich natürlich mit grep entsprechend einschränken:
./programmierwettbewerb_wer_liefert_am_schnellsten.py -r gimp | grep slackware64_current
Auf diese Weise lassen sich schnell Paketinformationen abfragen. Aufgrund der übersichtlichen Struktur des Skriptes ist eine Anpassung an die eigenen Bedürfnisse auch ohne grössere Programmierkenntnisse möglich. Eine Datenbank wird dabei nicht vorausgesetzt.
Der schlanke und flexible Ansatz und die Exaktheit der Ergebnisse haben letztendlich den Ausschlag für unsere Entscheidung gegeben. Das Script bietet darüber hinaus einen direkten Nutzen für interessierte Anwender.
Dennoch möchten wir an dieser Stelle auch Michael Walter erwähnen, der sich besondere Mühe bei der Visualisierung der Ergebnisse gegeben hat. In seinem Git-Repository kann sein Ansatz nachvollzogen werden.
Wir gratulieren Geronymo und danken allen Beteiligten für die Einsendungen und freuen uns bereits auf den nächsten Wettbewerb. Mit Geronymo nehmen wir Kontakt auf, damit er seinen Gewinn noch rechtzeitig vor Weihnachten erhält.