{"id":6103,"date":"2012-01-26T17:00:25","date_gmt":"2012-01-26T16:00:25","guid":{"rendered":"https:\/\/www.gambaru.de\/blog\/?p=6103"},"modified":"2019-10-14T00:36:42","modified_gmt":"2019-10-13T22:36:42","slug":"connochaetos-neue-software-mit-pkgbuild-selbst-kompilieren","status":"publish","type":"post","link":"https:\/\/gambaru.de\/blog\/2012\/01\/26\/connochaetos-neue-software-mit-pkgbuild-selbst-kompilieren\/","title":{"rendered":"ConnochaetOS: Neue Software mit PKGBUILD selbst kompilieren"},"content":{"rendered":"<p>Ein Nachteil bei kleineren Linuxdistributionen ist, dass sie oftmals auf nur wenige Entwickler zur\u00fcckgreifen k\u00f6nnen. Au\u00dferdem sind Webspace, Traffic und Zeit begrenzt und es fehlt einfach an Ressourcen, um jede verf\u00fcgbare Software in einem Bin\u00e4rformat bereitstellen zu k\u00f6nnen.<br \/>\nMan kann dieses Problem in der Regel umgehen, indem man Werkzeuge wie <a href=\"https:\/\/www.gambaru.de\/blog\/2011\/09\/25\/softwarepakete-konvertieren-mit-alien-oder-tazpkg\/\">Debians Alien oder Slitaz tazpkg<\/a> 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.<br \/>\nBei 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<a href=\"https:\/\/wiki.archlinux.org\/index.php\/Makepkg\"> makepkg<\/a> und dem <a href=\"https:\/\/wiki.archlinux.org\/index.php\/Arch_Build_System\">Arch Build System<\/a>(ABS) eine unkomplizierte Sache ist.<br \/>\nUm Pakete f\u00fcr ConnochaetOS zu bauen, empfand ich es am einfachsten mir das ABS zu installieren und die dort bereitgestellten <a href=\"https:\/\/wiki.archlinux.org\/index.php\/PKGBUILD\">PKGBUILDs<\/a> an meine Bed\u00fcrfnisse anzupassen.<\/p>\n<p><code>pacman -S abs<\/code><br \/>\n<code>pacman -S base-devel<\/code><\/p>\n<p>F\u00fchrt man danach als Benutzer root <code>abs<\/code> in einem Terminal aus, wird das Verzeichnis <em>\/var\/abs<\/em> mit den PKGBUILDs der verschiedenen Repos core, extra und community gef\u00fcllt. 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.<br \/>\nIn meinem Fall wollte ich drei meiner <a href=\"https:\/\/www.gambaru.de\/blog\/software\/\">Favoriten<\/a> <a href=\"http:\/\/mtpaint.sourceforge.net\/\">mtPaint<\/a>, <a href=\"http:\/\/irssi.org\/\">Irssi<\/a> und <a href=\"http:\/\/cmus.sourceforge.net\/\">C* Music Player<\/a> f\u00fcr die i586 Architektur und ConnochaetOS \u00fcbersetzen. Dazu gen\u00fcgt es, das sogenannte ARCH-Feld um den Eintrag <strong>'i586'<\/strong> zu erweitern.<br \/>\nF\u00fcr Irssi war das schon der einzige Trick. Mit<\/p>\n<p><code>makepkg -s<\/code><\/p>\n<p>im Verzeichnis, wo auch das PKGBUILD liegt, konnte ich dann das Paket kompilieren und mit<\/p>\n<p><code>pacman -U Name_des_Pakets.tar.xz <\/code><\/p>\n<p>installieren.<br \/>\nBeim C* Music Player alias cmus brauchte ich hingegen noch die Bibliothek <strong>libao<\/strong> und musste libpulse und libmpg als Abh\u00e4ngigkeiten streichen. Auf dem Thinkpad 600 benutze ich sowieso ausschlie\u00dflich ALSA.<br \/>\nF\u00fcr mtPaint wurde noch die Bibliothek <strong>lcms2<\/strong> ben\u00f6tigt, die ich zum erfolgreichen Kompilieren zuerst \u00fcbersetzen und installieren musste. Kurz zusammengefasst muss man also lediglich Pakete f\u00fcr i586 kompilieren und ggf. Abh\u00e4ngigkeiten 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\u00fcmmern.<\/p>\n<p>Ihr k\u00f6nnt alle PKGBUILDs und auch noch ein paar zus\u00e4tzliche von <a href=\"http:\/\/kmandla.wordpress.com\/\">KMandla<\/a> mit Hilfe des folgenden Links herunterladen.<\/p>\n<p><a href=\"https:\/\/gambaru.de\/blog\/wp-content\/uploads\/2012\/01\/ConnochaetOS_PKGBUILDs.tar1_.gz\">ConnochaetOS_PKGBUILDs.tar<\/a><\/p>\n<p>Hier ist noch ein PKGBUILD-Beispiel mit Irssi:<\/p>\n<pre class=\"brush:plain\"># $Id: PKGBUILD 125226 2011-05-25 19:11:10Z foutrelis $\n# Maintainer: Giovanni Scafora &lt;giovanni@archlinux.org&gt;\n# Contributor: Dan McGee &lt;dan@archlinux.org&gt;\npkgname=irssi\npkgver=0.8.15\npkgrel=5\npkgdesc=\"Modular text mode IRC client with Perl scripting\"\narch=('i586')\nurl=\"http:\/\/irssi.org\/\"\nlicense=('GPL')\ndepends=('glib2' 'openssl' 'perl')\noptdepends=('perl-libwww: for the scriptassist script')\nbackup=(etc\/irssi.conf)\nsource=(http:\/\/irssi.org\/files\/${pkgname}-${pkgver}.tar.bz2)\noptions=('!libtool')\nmd5sums=('1dcb3f511b88df94b0c996f36668c7da')\nbuild() {\n  cd \"${srcdir}\/${pkgname}-${pkgver}\"\n  .\/configure --prefix=\/usr\n              --enable-ipv6\n\t      --with-proxy\n\t      --sysconfdir=\/etc\n\t      --with-perl-lib=vendor\n  make\n  make DESTDIR=\"${pkgdir}\" install\n}<\/pre>\n","protected":false},"excerpt":{"rendered":"<p>Ein Nachteil bei kleineren Linuxdistributionen ist, dass sie oftmals auf nur wenige Entwickler zur\u00fcckgreifen k\u00f6nnen. Au\u00dferdem sind Webspace, Traffic und Zeit begrenzt und es fehlt einfach an Ressourcen, um jede verf\u00fcgbare Software in einem Bin\u00e4rformat bereitstellen zu k\u00f6nnen. Man kann dieses Problem in der Regel umgehen, indem man Werkzeuge wie Debians Alien oder Slitaz tazpkg &hellip; <\/p>\n<p class=\"link-more\"><a href=\"https:\/\/gambaru.de\/blog\/2012\/01\/26\/connochaetos-neue-software-mit-pkgbuild-selbst-kompilieren\/\" class=\"more-link\"><span class=\"screen-reader-text\">\u201eConnochaetOS: Neue Software mit PKGBUILD selbst kompilieren\u201c<\/span> weiterlesen<\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":[],"categories":[6],"tags":[20,43,46,69,98,128],"_links":{"self":[{"href":"https:\/\/gambaru.de\/blog\/wp-json\/wp\/v2\/posts\/6103"}],"collection":[{"href":"https:\/\/gambaru.de\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/gambaru.de\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/gambaru.de\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/gambaru.de\/blog\/wp-json\/wp\/v2\/comments?post=6103"}],"version-history":[{"count":1,"href":"https:\/\/gambaru.de\/blog\/wp-json\/wp\/v2\/posts\/6103\/revisions"}],"predecessor-version":[{"id":10874,"href":"https:\/\/gambaru.de\/blog\/wp-json\/wp\/v2\/posts\/6103\/revisions\/10874"}],"wp:attachment":[{"href":"https:\/\/gambaru.de\/blog\/wp-json\/wp\/v2\/media?parent=6103"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/gambaru.de\/blog\/wp-json\/wp\/v2\/categories?post=6103"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/gambaru.de\/blog\/wp-json\/wp\/v2\/tags?post=6103"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}