Zoeken op website

3 beste universele pakketbeheerders voor Linux in 2023


Pakketbeheer of software-installatie op Linux-systemen kan erg verwarrend zijn, vooral voor nieuwkomers (nieuwe Linux-gebruikers), omdat verschillende Linux-distributies verschillende traditionele pakketbeheersystemen gebruiken. Het meest verwarrende deel van dit alles is in de meeste gevallen het oplossen/beheer van pakketafhankelijkheid.

Op Debian gebaseerde distributies zoals Ubuntu en Linux Mint maken bijvoorbeeld gebruik van .deb-pakketten, die worden beheerd via het pakketbeheersysteem dpkg.

Aan de andere kant gebruiken op RHEL gebaseerde distributies zoals CentOS Stream, Rocky Linux en AlmaLinux .rpm pakketten, die worden beheerd met behulp van het rpm-pakketbeheersysteem.

De afgelopen jaren zijn pakketbeheer en -distributie in het Linux-ecosysteem nooit meer hetzelfde geweest na de opkomst van universele of cross-distributiepakketbeheertools.

Met deze tools kunnen ontwikkelaars hun software of applicaties voor meerdere Linux-distributies verpakken, vanuit één enkele build, waardoor het voor gebruikers gemakkelijk wordt om hetzelfde pakket op meerdere ondersteunde distributies te installeren.

In dit artikel bespreken we de top 3 open-source universele of cross-distributiepakketbeheersystemen voor Linux.

1. Snap – Een universeel pakketformaat

Snap is een populair open-source applicatie-/pakketformaat en pakketbeheersysteem ontwikkeld door Canonical, de maker van Ubuntu Linux. Verschillende Linux-distributies ondersteunen nu snaps, waaronder Ubuntu, Debian, Fedora, Arch Linux, Manjaro en CentOS/RHEL.

Eenvoudige installatie en updates

Een snap applicatie is een cross-distributie applicatie gebundeld met al zijn afhankelijkheden (zonder afhankelijkheid) voor eenvoudige installatie met automatische updates (applicaties zijn altijd up-to-date) op elke Linux-distributie die snaps ondersteunt. Een module kan worden uitgevoerd op een desktop, server, in de cloud of IoT (Internet of Things).

Om een applicatie te maken of te snappen, gebruikt u Snapcraft, een raamwerk, en een krachtig opdrachtregelprogramma voor het maken van snaps. Om snaps in Linux te installeren en te gebruiken, moet je snapd (of de snappy daemon) installeren, een achtergrondservice waarmee Linux-systemen kunnen werken met .snap-bestanden. De daadwerkelijke installatie van snaps gebeurt met behulp van het snap-opdrachtregelprogramma.

Veiligheid en isolatie

Omdat ze onder opsluiting werken (verschillende en configureerbare opsluitingsniveaus), zijn snaps standaard veilig. Belangrijk is dat een snap die toegang nodig heeft tot een systeembron buiten zijn beperkingen, gebruik maakt van een “interface” die zorgvuldig is geselecteerd door de maker van de snap, op basis van de vereisten van de snap. Hierdoor kunt u applicaties uitvoeren zonder de stabiliteit en flexibiliteit van het basisbesturingssysteem in gevaar te brengen.

Bovendien gebruikt het snap-pakketbeheersysteem een concept genaamd kanalen (dat bestaat uit en is onderverdeeld in tracks, risiconiveaus en vertakkingen) om te bepalen welke release van een snap is geïnstalleerd en wordt bijgehouden voor updates. Snaps worden ook automatisch bijgewerkt, een proces dat u handmatig kunt beheren.

Om een snap te vinden en te installeren, zoek je ernaar in de snap store (een plek waar ontwikkelaars hun snaps kunnen delen) of lees je er meer over met behulp van onze handleidingen:

2. Flatpak – Cross-distributiecompatibiliteit

Flatpak is een bekend open-sourceframework voor het distribueren van desktopapplicaties op Linux-distributies. Flatpak is ontwikkeld door een onafhankelijke gemeenschap en maakt het mogelijk om een enkele applicatie-build te installeren en uit te voeren op vrijwel elke Linux-distributie.

Het ondersteunt in totaal 25 distributies, waaronder Fedora, Ubuntu, RHEL, CentOS, OpenSUSE en Arch Linux, en draait ook op Raspberry Pi.

De runtimes van Flatpak bieden platforms van gemeenschappelijke bibliotheken waar een applicatie gebruik van kan maken. Het maakt het echter ook uiterst eenvoudig voor u om volledige controle te hebben over afhankelijkheden; u kunt uw bibliotheken bundelen als onderdeel van uw applicatie.

Flatpak wordt geleverd met eenvoudig te gebruiken bouwtools en biedt een consistente omgeving (dezelfde op alle apparaten en vergelijkbaar met wat gebruikers al hebben) waarin ontwikkelaars hun applicaties kunnen bouwen en testen.

Sandboxing voor verbeterde beveiliging

Flatpak maakt het veilig door elke app in zijn sandbox te plaatsen, zodat apps niet met het hoofdsysteem of andere apps kunnen knoeien. Het is superhandig als je te maken hebt met apps van bronnen waarvan je niet zeker bent.

Gebruiks- en ontwikkelaarsvriendelijk

Een nuttig aspect van flatpak is voorwaartse compatibiliteit waarbij dezelfde flatpak kan worden uitgevoerd op verschillende versies van dezelfde distributie, inclusief versies die nog moeten worden uitgebracht door ontwikkelaars. Het streeft er ook naar en blijft compatibel met nieuwe versies van Linux-distributies.

Als u een ontwikkelaar bent, kunt u uw applicatie beschikbaar maken voor Linux-gebruikers via Flathub, een gecentraliseerde service voor het distribueren van applicaties over alle distributies.

3. AppImage: het draagbare alternatief

AppImage is ook een open-source pakketformaat waarmee ontwikkelaars een applicatie één keer kunnen verpakken en die op alle grote Linux-desktopdistributies draait. In tegenstelling tot de vorige pakketformaten hoeft u bij AppImage geen pakket te installeren. Download gewoon de applicatie die u wilt gebruiken, maak deze uitvoerbaar en voer deze uit – zo eenvoudig is het. Het ondersteunt de meeste 32-bits en 64-bits Linux-desktops.

Geen installatie nodig

Met AppImage hoeft u niets te installeren. U kunt deze pakketten op een USB-station plaatsen, delen en apps uitvoeren zonder uw systeem te wijzigen. Dit is geweldig voor draagbare Linux- en live-systemen.

Brede compatibiliteit

AppImage heeft veel voordelen. Voor ontwikkelaars stelt het hen in staat om zoveel mogelijk gebruikers te bereiken, ongeacht de Linux-distributie en -versie die gebruikers gebruiken. Gebruikers hoeven zich geen zorgen te maken over applicatie-afhankelijkheden, aangezien elke AppImage gebundeld is met al zijn afhankelijkheden (één app=één bestand). Nieuwe versies van applicaties uitproberen is ook eenvoudig met AppImage.

Systeembeheerders die een groot aantal desktopsystemen ondersteunen en normaal gesproken voorkomen dat gebruikers applicaties installeren die mogelijk systemen kapot kunnen maken, hoeven zich geen zorgen meer te maken. Met AppImage blijft het systeem intact omdat gebruikers geen apps hoeven te installeren om ze uit te voeren.

Het trio vergelijken: Snap, Flatpak en AppImage

Hier is een vergelijking van de drie universele pakketbeheerders:

Feature Snap Flatpak AppImage
Package format Self-contained, compressed file Self-contained, compressed file Single executable file
Sandboxing Yes (by default) No (by default) No
Automatic updates Yes Optional No
Installation Requires snapd daemon Requires Flatpak runtime Does not require installation
Root privileges Requires root privileges to install Does not require root privileges to install Does not require root privileges to run

Welke pakketbeheerder moet ik kiezen?

Als je op zoek bent naar een veilige en gebruiksvriendelijke pakketbeheerder met automatische updates, dan is Snap een goede keuze. Als u op zoek bent naar een flexibelere pakketbeheerder waarmee u elk type applicatie kunt verpakken, dan is Flatpak een goede keuze. Als u op zoek bent naar een pakketbeheerder waarvoor geen installatie- of rootrechten nodig zijn, dan is AppImage een goede keuze.

Het is ook belangrijk op te merken dat alle drie de pakketbeheerders nog in ontwikkeling zijn, dus er kunnen enkele bugs of ontbrekende functies zijn. Ze worden echter allemaal actief onderhouden en regelmatig bijgewerkt.

Conclusie

Universele of cross-distributiepakketformaten zijn de technologieën van de volgende generatie voor het bouwen en distribueren van software in het Linux-ecosysteem. Traditionele pakketbeheersystemen houden echter nog steeds stand.

Wat is jouw gedachte? Deel het met ons via het commentaargedeelte.