Ein Nachteil bei kleineren Linuxdistributionen ist, dass sie oftmals auf nur wenige Entwickler zurückgreifen können. Außerdem sind Webspace, Traffic und Zeit begrenzt und es fehlt einfach an Ressourcen, um jede verfügbare Software in einem Binärformat bereitstellen zu können.
Man kann dieses Problem in der Regel umgehen, indem man Werkzeuge wie Debians Alien oder Slitaz tazpkg benutzt, um Pakete fremder Distributionen in das eigene Format umzuwandeln. Das klappt bei kleineren Paketen oft sehr gut, man darf aber aber auch keine Wunder von so einer Transformation erwarten.
Bei Arch Linux und damit auch ConnochaetOS macht es keinen Sinn fremde Pakete umzuwandeln. Benutzer von Arch Linux werden mir sicher zustimmen, dass das Erstellen eigener Archpakete mit Hilfe von makepkg und dem Arch Build System(ABS) eine unkomplizierte Sache ist.
Um Pakete für ConnochaetOS zu bauen, empfand ich es am einfachsten mir das ABS zu installieren und die dort bereitgestellten PKGBUILDs an meine Bedürfnisse anzupassen.
pacman -S abs
pacman -S base-devel
Führt man danach als Benutzer root abs
in einem Terminal aus, wird das Verzeichnis /var/abs mit den PKGBUILDs der verschiedenen Repos core, extra und community gefüllt. Die PKGBUILDs der Software befinden sich im namensgleichen Verzeichnis, welches nur noch auf den Rechner mit ConnochaetOS kopiert werden muss oder auch gleich an Ort und Stelle benutzt werden kann.
In meinem Fall wollte ich drei meiner Favoriten mtPaint, Irssi und C* Music Player für die i586 Architektur und ConnochaetOS übersetzen. Dazu genügt es, das sogenannte ARCH-Feld um den Eintrag 'i586' zu erweitern.
Für Irssi war das schon der einzige Trick. Mit
makepkg -s
im Verzeichnis, wo auch das PKGBUILD liegt, konnte ich dann das Paket kompilieren und mit
pacman -U Name_des_Pakets.tar.xz
installieren.
Beim C* Music Player alias cmus brauchte ich hingegen noch die Bibliothek libao und musste libpulse und libmpg als Abhängigkeiten streichen. Auf dem Thinkpad 600 benutze ich sowieso ausschließlich ALSA.
Für mtPaint wurde noch die Bibliothek lcms2 benötigt, die ich zum erfolgreichen Kompilieren zuerst übersetzen und installieren musste. Kurz zusammengefasst muss man also lediglich Pakete für i586 kompilieren und ggf. Abhängigkeiten entfernen, die man sowieso nicht gebrauchen kann. Zum Schluss kann man dann jedes beliebige Programm auch mit ConnochaetOS benutzen. Einziger Nachteil: Man muss sich in Zukunft um die Updates selbst kümmern.
Ihr könnt alle PKGBUILDs und auch noch ein paar zusätzliche von KMandla mit Hilfe des folgenden Links herunterladen.
Hier ist noch ein PKGBUILD-Beispiel mit Irssi:
# $Id: PKGBUILD 125226 2011-05-25 19:11:10Z foutrelis $ # Maintainer: Giovanni Scafora <giovanni@archlinux.org> # Contributor: Dan McGee <dan@archlinux.org> pkgname=irssi pkgver=0.8.15 pkgrel=5 pkgdesc="Modular text mode IRC client with Perl scripting" arch=('i586') url="http://irssi.org/" license=('GPL') depends=('glib2' 'openssl' 'perl') optdepends=('perl-libwww: for the scriptassist script') backup=(etc/irssi.conf) source=(http://irssi.org/files/${pkgname}-${pkgver}.tar.bz2) options=('!libtool') md5sums=('1dcb3f511b88df94b0c996f36668c7da') build() { cd "${srcdir}/${pkgname}-${pkgver}" ./configure --prefix=/usr --enable-ipv6 --with-proxy --sysconfdir=/etc --with-perl-lib=vendor make make DESTDIR="${pkgdir}" install }