unsnap, nástroj na migráciu balíkov snap do flatpak
Snap je systém balíčkov vyvinutý spoločnosťou Canonical pre Ubuntu, ktorý je možné implementovať na operačných systémoch, ktoré používajú jadro Linuxu a init systém systemd.
Tento balíkový systém je prezentovaný ako „univerzálny“ systém, ktorý Canonical propagoval do takej miery, že v nových verziách plánovaných pre Ubuntu opustil podporu Flatpaku a vsadil tak všetko na vlastný balíkový systém.
Na druhej strane sa Canonical tiež rozhodol vydať verziu Ubuntu výlučne ako balíčky Snap. Táto správa nebola mnohými dobre prijatá a vytvorila rozkol v komunite, pretože balíčky Snap nie sú všeobecne akceptované.
V reakcii na to sa objavilo niekoľko hnutí na podporu používania balíkov Flatpak. Jedným z projektov podporujúcich formát Flatpak je unsnap, ktorý sa vyvíja ako nástroj na konverziu systémov založených na Ubuntu z používania balíkov snap na balíky flatpak.
Pomôcka nielen nahrádza správcu balíkov snap flatpakom, ale tiež vyberá a inštaluje náprotivky flatpak pre balíky snap, ktoré už sú v systéme nainštalované. V ideálnom prípade môže používateľ získať úplne podobnú sadu aplikácií, ale nainštalovanú vo formáte flatpak.
o unsnap
Migrácia sa vykonáva v niekoľkých krokoch. V prvom kroku unsnap vygeneruje sadu skriptov shellu, ktoré popisujú operácie nahradenia. S ohľadom na aktuálny stav systému sa vytvoria samostatné skripty na zálohovanie prostredia Snap, inštaláciu správcu balíkov flatpak, aktiváciu repozitárov flatpak, inštaláciu ekvivalentov flatpak pre balíky Snap, ktoré sú už v systéme, a odstránenie balíkov Snap a sady nástrojov Snapd zo systému. Pred spustením automaticky vygenerovaných skriptov ich môže používateľ podľa potreby upraviť.
Projekt vyvíja Alan Pope , jeden z vývojárov systému Snap, ktorý v roku 2021 po 10 rokoch v spoločnosti odišiel z Canonicalu. Sada nástrojov je stále v experimentálnej verzii (pre-alfa) a je obmedzená na podporu Ubuntu.
Zo súvisiacich projektov autor unsnap spomína custom-desktop (súbor skriptov na konverziu zloženia už nainštalovaného prostredia Ubuntu) a deb-get (analóg apt-get pre prácu s deb balíčkami umiestnenými v repozitároch tretích strán alebo na webových stránkach).
Okrem správcu balíkov poskytuje projekt deb-get pripravené na inštaláciu metadáta balíkov tretích strán, ktoré možno použiť na nahradenie balíkov snap balíkmi deb.
Unsnap dokáže automaticky spustiť sadu vygenerovaných skriptov:
- 00-backup : Spustite ukladanie snapu pre každý nainštalovaný snap, ktorý sa migruje
- 01-install-flatpak : Ak ešte nie je nainštalovaný, nainštaluje správcu balíkov flatpak
- 02-enable-flathub : ak nie je povolené, pridá vzdialené umiestnenie flathubu do flatpak
- 03-install-flatpaks: nainštaluje ekvivalentné flatpaks pre každý identifikovaný plugin
- 04-remove-snaps : odstráni snapy, pre ktoré boli nainštalované flatpaks
- 99-remove-snapd : odstráni samotný snapd, čím sa odstránia všetky snap balíčky
Spomína sa, že v budúcnosti unsnap plánuje podporovať ďalšie distribúcie kompatibilné so snapom, ako sú Manjaro, Linux Mint, Zorin, Debian, Fedora, Pop_OS!, KDE Neon, Raspbian, CentOS a Elementary OS. Používateľov môže zaujímať aj zoznam analógových balíkov pripravených projektom vo formátoch snap a flatpak.
Ako nainštalovať unsnap na Ubuntu?
Pre tých, ktorí majú záujem o to, aby si mohli tento nástroj nainštalovať do svojho systému, by mali vedieť, že inštalácia je pomerne jednoduchá a stačí otvoriť terminál a do neho napísať nasledovné:
git clone https://github.com/popey/unsnap
cd unsnap
./unsnap
Unsnap funguje ako dvojstupňový proces. Najprv Unsnap vygeneruje sadu skriptov zodpovedných za vykonanie samotnej migrácie Instant Packages do Flatpaku. Táto funkcia umožňuje používateľom zobraziť a v prípade potreby upraviť skripty pred spustením, aby ich overili alebo upravili podľa svojich potrieb.
Po vygenerovaní skriptov ich môžu používatelia spustiť postupne, aby dokončili proces migrácie.
Alebo, ako bolo spomenuté na začiatku, ak dávate prednosť vykonávaniu všetkých skriptov, stačí zadať:
./unsnap auto
Na záver stojí za zmienku, že ako pri každom procese migrácie sa odporúča zálohovať dôležité informácie, keďže ide o odstraňovanie a inštaláciu aplikácií, čo so sebou prináša aj odstraňovanie informácií.
Ak máte záujem dozvedieť sa viac, podrobnosti nájdete na nasledujúcom odkaze.