Thursday, August 11, 2011

Ports BSD/Gentoo Portage pour Debian et Ubuntu, c'est possible !

Sur serveur, comme sur workstation, c'est pratique de pouvoir installer à partir des sources un paquet différent, ou d'une autre version, voire non inclus dans Debian/Ubuntu.

Pour cela nous disposons de l'excellent pkgsrc, une architecture de compilation qui vous permet d'un coup de

cd net/openvpn
bmake install

de télécharger et compiler récursivement toutes les dépendances de notre vpn préféré, et d'en créer un binaire facilement installable/déinstallable. Et ceci realisé entièrement dans une arborescence locale, sans aucun risque de casser votre système, tout se passant dans une arborescence séparé.

Je trouve ca beaucoup plus propre, beaucoup plus sûr que d'installer des paquets testing/unstable ou des Personal Package Archives, et beaucoup plus simple que de passer par la case /usr/local en téléchargeant soit même les sources pour ensuite deviner les librairies de développement requises.

Et attendez ce n'est pas fini. Bien que pkgsrc comporte moins de logiciels que Debian ( 6000 vs 29000 ) il est multi plateforme tournant sur Linux, OS X, Solaris et bien sûr NetBSD la plateforme où il a été concu.

A vrai dire je m'étonne souvent que si peu de personnes sous Linux connaissent pkgsrc, qui permet de mixer la stabilité des distributions binaires Debian/Redhat/Centos et le "bleeding edge" des distributions sources. Alors bon le site de NetBSD est certainement pas très choupi mais il existe une vrai documentation de qualité à la BSD.

Comme je dois installer pkgsrc souvent  $HOME et $JOB, j'ai crée un petit projet  pour automatiser tout ca du nom de Sergio , le but à long terme étant de simplement àvoir à faire un :

apt-get install sergio
sergio "mon_bootstrap_dir"
cd "mon_boostrap_dir"/pkgsrc/net/openvpn & bmake #omg watching stuff scroll by for hours will makes me a Unix expert overnight

Après nous avons déja un Noyau BSD pour Debian, il nous manquait un système de port dans Debian pour le noyau Linux !
Bootstrap with sergio



3 comments:

Michel said...

Debian possède ses propres outils : apt-src et apt-build. Ils font bien le boulot, sauf pour le coté blinding edge. Pour ce dernier il suffirait d'ajouter les dépôts sources de testing/sid.

Archlinux possède son propre outil qui fait ça en standard (récupération des sources à partir du dépôt git/svn/hg du projet et installation).

Emmanuel Kasper said...

apt-src permet effectivement de recompiler facilement à partir des sources, mais que se passe-t-il au prochain apt-get update ou apt-get dist-upgrade ? IIRC, si il y a une mise à jour le paquet local / custom sera écrasé à moins d'aller jouer dans les preferences de apt

SkyZ said...

Je connaissais pas trop le système de ports, mais en effet sa peut être vraiment appréciable surtout sur le côté multi plateformes