Universele beheerssystemen

Vooral in RPM land zijn in de loop der tijd allerlei beheerssystemen voor software ontwikkeld. Elke grote RPM distributie heeft zijn eigen systeem, waar de diverse niet-RPM systemen, met name Debian en Slackware, dan nog eens bijkomen. Een verse Linux gebruiker zal in eerste instantie waarschijnlijk niet zoveel van deze verscheidenheid merken. Elk systeem heeft een grafische gebruikersinterface, en als de gebruiker zich maar aan de eigen repositories van de distributie houdt is het beheren van de software op zijn systeem niet moeilijk. Anders wordt het wanneer hij met andere distributies kennis wil maken. Dat betekent dat vaak een andere gebruikersinterface moet worden aangeleerd. En een poging software die voor een bepaalde distributie is bedoeld in een andere distributie te installeren loopt in veel gevallen op niets uit. In de eerste plaats natuurlijk door afwijkende pakketformaten, maar zelfs als het pakketformaat hetzelfde is wil het ook nog al eens niet lukken, met name bij de RPM distributies. Allerlei subtiele verschillen tussen de distributies zijn hier debet aan, nog even afgezien van incompatibele versies van benodigde software. Ook de Linux Standard Base (LSB) heeft dit probleem niet kunnen oplossen.

Deze mooie maar toch wel lastige verscheidenheid is een stimulans geweest om universelere systemen te ontwikkelen. Deze zijn te onderscheiden in interfaces voor bestaande systemen als RPM, Debian en Slackware, en nieuwe, op zich zelf staande systemen.

 

^topUniversele interfaces voor bestaande systemen

Voor de bestaande pakketbeheerssystemen zijn verschillende universele interfaces ontwikkeld. Deze kunnen er voor zorgen dat een gebruiker in elke distributie met dezelfde interface wordt geconfronteerd. Wel heeft hij dan nog steeds te maken met verschillende pakketformaten, en met incompatibele pakketten van een zelfde formaat.

  • KDE heeft al lang de beschikking over Kpackage dat voor verschillende pakketbeheerssystemen, waaronder RPM, Debian (dpkg en APT) en Slackware, een zelfde interface biedt. Het lost echter niet zelf afhankelijkheden op. Dat kan het alleen via het onderliggende systeem, zodat dit alleen mogelijk is op Debian systemen. Kpackage heeft helaas geen weet van Apt4rpm. De van Debian afgeleide distributie Mepis gebruikt Kpackage als standaard pakketbeheerder onder KDE.

  • Enkele gebruikersinterfaces voor APT hebben tot op zekere hoogte een universeel karakter omdat ze niet alleen voor APT maar ook voor Apt4rpm beschikbaar zijn. De belangrijkste daarvan is Synaptic dat door heel wat distributies, met name de op APT gebaseerde maar ook het op RPM gebaseerde PCLinuxOS, als standaard pakketbeheerder wordt gebruikt. Het KDE zusje van Synaptic, Kynaptic, is geen lang leven beschoren geweest. Ze heeft nooit de functionaliteit van Synaptic bereikt omdat haar ontwikkeling voortijdig in 2005 is beëindigd. Kubuntu gebruikte Kynaptic t/m versie 5.04 (Hoary) als standaard, maar is daarna overgegaan op Adept. Tot slot is er voor het console Aptitude met een tekstgeorienteerde interface (TUI).

  • > Smart package manager (Smartpm of kortweg Smart) is een nieuw veelbelovend pakketbeheerssysteem, dat net als de al bestaande systemen met software repositories werkt. Het heeft echter geen eigen repositories maar ondersteunt repositories van de bestaande systemen: voor RPM YaST2, yum, urpmi en apt4rpm, voor Debian APT, en voor Slackware pkgtool. Daarbij gebruikt het deze systemen zelf niet, maar past zijn eigen verbeterde algorithmes toe. Smartpm is dan ook de beoogde opvolger van al deze systemen. Of het echt zover komt staat nog te bezien, maar het lijkt wel geleidelijk aan Apt4rpm te verdringen. Ondanks het feit dat het programma nog volop in ontwikkeling is, is de actuele versie (0.51) al prima bruikbaar.

    De grote RPM distributies gaan weliswaar niet over op Smart, maar ze ondersteunen het wel actief. Fedora biedt het aan in zijn Extras repository, en raadt gebruikers aan van Apt4rpm over te gaan op Yum of Smart. openSUSE heeft Smart zelfs in zijn base OSS repository, Mandriva sinds 2006 in Contrib, en PCLinuxOS in Extra. Tijdens de fusie tussen Mandrake en Conectiva tot Mandriva was er zelfs sprake van dat Smart het standaard pakketbeheersysteem van Mandriva zou worden, maar zover is het niet gekomen. Wel ondersteunen Easy Urpmi en smart-urpmi, websites waarmee gemakkelijk Mandriva repositories kunnen worden ingesteld, niet alleen Mandriva’s eigen Urpmi, maar ook Smart. Ook is er al één minder bekende distributie, FoXLinux, die voor Smart als standaard pakketbeheersysteem heeft gekozen. In het Debian kamp blijft APT heer en meester, maar Ubuntu levert Smart wel in zijn Universe repository. Ook Debian zelf stelt het beschikbaar in zijn Main repository. Daarmee is Smart inmiddels een algemeen toepasbaar beheersysteem voor software geworden, dat uitstekend in plaats van de distributiespecifieke systemen als APT, YUM, Urpmi en YaST kan worden gebruikt.

    Meer informatie over Smart en het gebruik van Smart vindt u op de volgende plekken:

    Hier zijn nog een aantal artikelen over Smart:

    Smart heeft een GUI maar kan ook van de opdrachtregel worden gebruikt. Een pakket wordt geïnstalleerd met de opdracht:

    smart install athena-devel

    Als zoals in dit geval een naam zonder versienummer wordt gegeven wordt de nieuwste versie geïnstalleerd, en met versienummer wordt die versie geïnstalleerd. Hetzelfde gaat op voor uitgiftenummers. Ook een lokaal aanwezig pakket kan met smart eenvoudig worden geïnstalleerd door het pad er naar toe en de volledige naam op te geven, bijvoorbeeld:

    smart install ./athena-devel-2.4.3-87mdk.i586.rpm

    Het install commando wordt ook gebruikt om een al geïnstalleerd met een nieuwere versie bij te werken. Verwijderen van een pakket gaat met

    smart remove athena-devel

    Ook in dit geval kunnen versie- en uitgiftenummers worden gebruikt om het te verwijderen pakket indien nodig nader te specificeren.

  • >> CNR staat voor „Click ‘N Run”, ofwel „klik en draai”. Het is Linspire’s oplossing om het installeren van software zo gemakkelijk mogelijk te maken. Linspire is een op Debian gebaseerde beginnersvriendelijke commerciële Linux distributie die ook in Nederland en België verkrijgbaar is. Sinds augustus 2006 biedt Linspire onder de naam Freespire ook een vrije en gratis versie van de distributie, die net als Debian, Fedora, openSUSE en Ubuntu door „de” gemeenschap van vrije ontwikkelaars wordt ondersteund. Freespire gebruikers hebben met APT (apt-get) toegang tot Freespire’s software repositories, maar kunnen daarnaast ook gebruik maken van CNR zonder dat de twee systemen elkaar bijten. CNR is gratis, en de CNR client, de software waarmee men toegang krijgt tot de CNR dienst, is als open source vrijgegeven. Daarnaast is tegen betaling van $49,95 per jaar de „Gold” CNR service beschikbaar, die onder meer kortingen biedt op allerlei commerciële software. Hier leest u er meer over en krijgt u een duidelijk overzicht van de verschillen tussen CNR en APT. Het CNR warenhuis biedt gebruikers meer dan 20000 verschillende softwarepakketten, die ze allemaal met een enkele klik gebruiksklaar kunnen installeren. Daarnaast biedt CNR gebruikers de mogelijkheid hun eigen software bibliotheek te beheren in de vorm van „gangpaden” (aisles) in het warenhuis, die ze naar eigen voorkeuren kunnen inrichten.

    In januari 2007 maakte Linspire bekend dat het de installatie van software in Linux in het algemeen wil standaardiseren door CNR de meest populaire Linux distributies te laten ondersteunen. Deze ondersteuning wordt vanaf het derde kwartaal van 2007 geleverd via een nieuwe website, cnr.com, voor Debian, Fedora, openSUSE en Ubuntu, naast Linspire’s eigen distributies Freespire en Linspire. De ondersteuning voor Ubuntu geldt vanzelfsprekend ook voor de officiële Ubuntu varianten Kubuntu, Xubuntu en Edubuntu. Afhankelijk van de vraag zullen vanaf 2008 ook andere distributies worden ondersteund.

    Het nieuwe CNR is gebouwd rond de bestaande software beheersystemen, zowel .rpm (voor Fedora en openSUSE) als .deb (voor Debian, Freespire, Linspire en Ubuntu). In elke distributie kan CNR dus probleemloos naast het eigen beheersysteem, zoals APT, YUM en YaST, worden gebruikt. Het is opgezet als intelligent systeem dat afhankelijkheden automatisch oplost. Via CNR kunnen voorts commerciële pakketten en diensten worden gekocht, zoals onder meer legale DVD spelers, Sun’s StarOffice, Win4Lin Pro, Codeweaver’s CrossOver en TransGaming’s Cedega. Tot slot geeft CNR snelle toegang tot multimedia codecs en hardware drivers, en biedt daarmee met één klik ondersteuning voor MP3, Windows Media, Quick Time, Java, Flash en ATI en nVidia graphics. Het nieuwe CNR zal voor een groot deel in de vorm van een „wiki” worden opgezet, zodat iedereen aan de inhoud van de productpagina’s kan bijdragen. Bijdragen kunnen bestaan uit schermbeelden, reviews, beschrijvingen, informatie over ondersteuning, aantekeningen, enz. Meer informatie vindt u in de FAQ.

 

^topUniversele op zich zelf staande systemen

Ook al is het beheer van de software op een Linux systeem in de loop van de tijd een stuk gemakkelijker geworden dank zij pakketbeheersystemen als APT, YaST, urpmi, yum, en last but not least Smart, toch wordt het door veel beginnende Linux gebruikers niet als net zo gemakkelijk ervaren als het is in Windows of MacOS. Zomaar een stukje Linux software installeren is er meestal niet bij. Alle pakketbeheersystemen halen hun software uit speciaal voor die systemen gemaakte software repositories. Een los pakket installeren lukt alleen maar als alle er voor benodige software al op het systeem staat of in één van de repositories is te vinden, en bij de distributie in kwestie past. Daarentegen is installeren in Windows simpel een kwestie van op het pakket dubbelklikken en de aanwijzingen opvolgen, waar u zo’n pakket ook vandaan haalt. Om aan deze bezwaren tegemoet te komen zijn voor Linux enkele nieuwe systemen voor het installeren van software ontwikkeld.

Autopackage is een veelbelovend systeem voor verspreiding en installatie van Linux software. Ook al heeft het tot dusver nog niet het gehoopte succes, de ontwikkeling er van gaat gewoon door. Klik is een erg prettig systeem voor het proberen van software zonder dat die software in het systeem wordt opgenomen. Bevalt de software niet dan kunt u hem ook zo weer weggooien. Zero Install is vergelijkbaar met Klik, maar heeft minder opgang gemaakt.

  • > Autopackage is een universeel systeem voor verspreiding en installatie van Linux software, in het bijzonder software van derden. Installeren met AutoPackage lijkt erg op het installeren van software onder Windows. Een AutoPackage-pakket, kortweg een autopackage (met naamsextensie .package), kunt u op elke distributie probleemloos installeren: u downloadt het pakket naar uw PC, klikt op het icoontje en alles gaat vanzelf! Afhankelijkheidsproblemen (dependencies) worden automatisch opgelost door lokale bestanden of bestanden van servers op afstand. Er zijn meerdere interfaces beschikbaar (commandline, GTK+/Gnome en Qt/KDE), en er is ondersteuning voor meerdere talen, enz… Een probleem is dat Autopackage niet is geïntegreerd met het eigen pakketbeheersysteem van de distributie (met name rpm en dpkg (Debian)). Dat zou in een volgende release worden opgelost.

    Van verscheidene grotere softwareprojecten, waaronder de browser Firefox en het beeldbewerkingsprogramma The Gimp, zijn autopackages beschikbaar. Op de packages pagina van de Autopackage website vindt u autopackages van allerlei programma’s, waaronder niet alleen Firefox en The Gimp maar ook Gaim, Abiword, Inkscape en Nvu. Zo nu en dan komt er een nieuw programma bij. Onze belastingdienst gebruikt het voor het aangifteprogramma voor Linux, dat voor de aangifte 2005 voor het eerst in gebruik genomen is.

    Er zijn verscheidene artikelen over Autopackage verschenen, vooral in 2005 toen Autopackage 1.0 pas het licht had gezien:

    Hoewel de toekomst van Autopackage er een paar jaar geleden veelbelovend uitzag is er nauwelijks sprake van acceptatie door de gangbare distributies. Het laatste artikel op Linux.com geeft meer inzicht in de achtergronden van deze ontwikkeling. Niettemin gaat de ontwikkeling van het pakket onverdroten door. Regelmatig verschijnen nieuwe versies. En op de wensenlijst voor openSUSE staat integratie van Autopackage, niet als vervanging van het huidige package management maar als aanvulling en aanbevolen methode om software van derden te installeren.

    Een autopackage installeren vanaf de opdrachtregel is simpel. Omdat een autopackage in een installatiescript is ingebed kan het pakket vanaf de opdrachtregel worden geïnstalleerd door het script uit te voeren, bijvoorbeeld:

    bash ./athena-devel-2.4.3-87.x86.package

    Verwijdering gaat met het programma package. Het even hiervoor geïnstalleerde pakket wordt weer verwijderd met de opdracht:

    package remove athena-devel

    Let wel dat hier alleen de basisnaam wordt gegeven, zonder extensie, architectuur, en uitgifte- en versienummer. Meer informatie over het gebruik van Autopackage leest u op de website in How to use it

  • > Klik is een systeem voor het heel gemakkelijk draaien van software zonder het in het systeem te installeren. Het is geïnspireerd door MacOS.

    Om Klik pakketten te kunnen draaien moet u eerst de Klik client op uw systeem installeren. Op de klik website staat hoe u dat moet doen. Bovendien moet de kernel het cramfs bestandssysteem ondersteunen. Daar zult u echter geen omkijken naar hebben want bij nieuwere kernels is dat standaard het geval.

    Als u nu op de Klik server een bepaald programma aanklikt zal een soort recept worden samengesteld voor de aanmaak van een Klik pakket voor uw distributie. Zo gauw u akkoord gaat met het uitvoeren van dat recept worden de benodigde pakketten gedownload en wordt daaruit het Klik pakket samengesteld. Dit pakket bevat dus het gewenste programma met inbegrip van alle bibliotheken en andere hulpprogramma’s die nodig zijn om het op uw systeem te kunnen draaien. Het is gecomprimeerd en heeft de bestandextensie .cmg (compressed file system image). Het wordt op het bureaublad geplaatst, in het startmenu opgenomen en vervolgens uitgevoerd. Als u de software niet meer nodig hebt sleept u het Klik pakket gewoon naar de prullemand. Erg handig voor het even proberen van software!

    Klik was oorspronkelijk alleen bedoeld voor gebruik met de Konqueror browser op de KDE desktop in de Knoppix distributie. De naam klik betekent eigenlijk „Kde-based Live Installer for Knoppix”. Inmiddels werkt hij ook op de Gnome desktop en met verschillende andere browsers, waaronder Mozilla Firefox, en niet alleen in Knoppix, maar in alle gangbare distributies. Dat wil overigens niet zeggen dat alle pakketten in elke distributie zullen werken. Meer documentatie vindt u in Klik’s wiki.

    SUPER, ofwel SUse PERformance enhanced release, is een niet-officiele uitgifte van OpenSUSE, die als een testbed dient voor experimentele ontwikkelingen, zoals snelheidsverbeteringen of extra mogelijkheden. Eén van die extra mogelijkheden is de ondersteuning van Klik. De hoofdontwikkelaar van Klik, Simon Peter, werkt daarom aan het SUPER project mee.

    Onder ontwikkelaars vind Klik snel ingang. Een groot aantal programma’s zijn op de klik website als klik pakketten beschikbaar, waaronder Firefox, The Gimp en OpenOffice.org. Elk pakket wordt op z’n eigen pagina aangeboden. Op die pagina kunnen gebruikers commentaar plaatsen waarin ze aangeven of het voor hen al dan niet werkt, afhankelijk van de door hen gebruikte distributie. Bij een snelle blik op een aantal pagina’s zag ik veel positief commentaar. Klik pakketten zijn al meer dan 365000 maal met succes afgeleverd.

    Nieuws over Klik vind u op de klik blog. Enkele artikelen zijn:

  • >> The Zero Install system lijkt wel wat op Klik. Het is een gedecentraliseerd systeem (dus zonder centrale repository), waarin alle pakketten door URLs worden geïdentificeerd. Doelstellingen van het systeem zijn dat ieder software kan installeren en verspreiden en het er niet toe doet of software is geïnstalleerd of niet. Er is sterke nadruk op veiligheid. Zo wordt geen enkel programma als root uitgevoerd, en kunnen gebruikers programma’s delen zonder elkaar te moeten vertrouwen.

    Een lokaal te installeren program launcher met de naam zeroinstall-injector downloadt een gewenst programma en draait het. Eventueel ervoor benodigde libraries etc. worden automatisch ook gedownload. Elke versie van elk programma wordt in zijn eigen subdirectory binnen de Zero Install cache geplaatst, zodat ze elkaar niet in de weg zitten, en het systeem niet wordt „vervuild”. Op de Zero Install website leest u hoe u de injector moet gebruiken. Software moet wel speciaal voor dit systeem zijn geprepareerd. Een niet volledige lijst van beschikbare software vindt u op de website. Hij bevat op het ogenblik (april 2007) 128 pakketten.

    De injector is beschikbaar voor Fedora, Mandriva 10.1, SUSE 9.3, Slackware 10.2 en alle recente versies van Debian en Ubuntu. Ubuntu heeft de injector vanaf Feisty Fawn (7.04) zelfs in z’n Universe repository opgenomen, en voor Fedora is hij in Fedora Extras beschikbaar. Voor Zero Install is lang niet zoveel software beschikbaar als voor Klik, maar het systeem lijkt wel ruimer toepasbaar te zijn.

    Enkele artikelen over Zero Install zijn:

^top