În universul Linux, metodele de instalare a programelor sunt diverse. Avem pachete Debian, Redhat RPM, depozitul Arch Linux AUR, sistemul Gentoo Portage, AppImages, arhive tar.gz cu binare statice și lista continuă. Cu toate aceste opțiuni, persistă provocări. De exemplu, dezvoltarea software-ului profesional pentru Linux implică dificultăți în a asigura compatibilitatea cu toate distribuțiile. Ubuntu încearcă să adreseze această problemă prin pachetele Snap. Acest articol explorează necesitatea pachetelor Snap pe Linux, precum și modul de instalare și utilizare a acestora.
ATENȚIE: Derulează până la finalul articolului pentru a viziona un tutorial video.
Motivul dezvoltării pachetelor Snap
Dezvoltatorii adesea se confruntă cu necesitatea de a ambala software-ul în diverse formate, ceea ce este descurajant și consumă timp. Din această cauză, multe programe nu ajung să fie disponibile pe Linux. Pentru a rezolva această problemă, echipa Ubuntu a creat pachetele Snap. Un snap este un pachet software ce poate fi instalat din magazinul Snap și care conține toate componentele necesare pentru funcționarea programului.
Aceasta înseamnă că aplicația vine cu toate dependențele (biblioteci, binare, imagini, sunete etc.) și funcționează autonom, independent de sistemul de operare. Astfel, programul va rula indiferent de sistemul gazdă, chiar dacă acesta este învechit sau configurat incorect. Pachetele Snap pot fi instalate pe orice distribuție Linux, devenind un „instalator universal” la îndemâna tuturor dezvoltatorilor. Aceștia pot chiar să-și creeze propriul magazin Snap!
Instalarea și configurarea Snapd
Snapd este instrumentul care permite funcționarea pachetelor Snap pe Linux. Compania din spatele Snap a colaborat cu alți producători de distribuții Linux, pentru a facilita instalarea și rularea Snap-urilor pe cele mai populare distribuții. Mai jos sunt instrucțiunile de instalare.
Notă: Utilizatorii Ubuntu și ai distribuțiilor bazate pe Ubuntu nu au nevoie să instaleze Snapd.
Debian testing/unstable
sudo apt install snapd
Fedora
sudo dnf install snapd
sudo systemctl enable --now snapd.socket
Arch Linux
sudo pacman -S snapd
sudo systemctl enable --now snapd.socket
OpenSUSE Leap 42.2
sudo zypper addrepo https://download.opensuse.org/repositories/system:/snappy/openSUSE_Leap_42.2/ snappy
sudo zypper install snapd
sudo systemctl enable --now snapd.socket
OpenSUSE Tumbleweed
sudo zypper addrepo https://download.opensuse.org/repositories/system:/snappy/openSUSE_Tumbleweed/ snappy
sudo zypper install snapd
sudo systemctl enable --now snapd.socket
Gentoo
sudo -s
nano -w /etc/portage/repos.conf/gentoo-snappy.conf
Adăugați următorul text:
[gentoo-snappy]
# Un overlay neoficial care suportă instalarea "Snappy".
# Menținător: Clayton "kefnab" Dobbs ([email protected])
# Menținător upstream: Zygmunt "zyga" Krynicki ([email protected])
location = /usr/local/portage/gentoo-snappy
sync-type = git
sync-uri = https://github.com/zyga/gentoo-snappy.git
priority = 50
auto-sync = yes
Salvați fișierul cu Ctrl + O.
emaint sync --repo gentoo-snappy
Utilizarea pachetelor Snap
Snap-urile sunt găzduite în magazinul de snap gestionat de Ubuntu și Canonical. Oricine poate publica un snap gratuit. Dacă dorești să publici propriile pachete snap, vizitează Snapcraft.io. Acest site oferă informații detaliate despre cum să începi.
Pentru a căuta programe în magazin, folosește comanda `find`:
snap find programname
De exemplu:
snap find telegram
Această comandă va afișa o listă cu toate pachetele snap disponibile ce conțin cuvântul cheie „telegram”. Alege pachetul dorit și instalează-l folosind comanda `install`:
sudo snap install telegram-latest
Aceasta va descărca ultima versiune a pachetului din magazin, o va instala și va monta containerul, astfel încât utilizatorul să poată accesa software-ul din interiorul său. Locația de montare poate fi vizualizată cu comanda `lsblk`, deoarece software-ul este un volum montat, similar cu un hard disk sau un dispozitiv montat.
Pentru a elimina un pachet snap instalat, folosește comanda `remove`:

sudo snap remove telegram-latest
Ai uitat numele unui pachet pe care dorești să-l elimini? Folosește comanda:
snap list
Această comandă afișează o listă cu toate pachetele snap instalate. Apoi, folosește numele corect al snap-ului pentru a-l elimina.
Notă: Folosește comanda `snap –help` pentru a vedea alte comenzi.
Actualizarea pachetelor Snap

Similar cu orice software, pachetele snap necesită actualizări. Daemonul snap gestionează toate containerele de tip snap. Din această cauză, pachetele nu se actualizează în mod obișnuit. Pentru actualizarea acestora, folosește comanda `refresh`:
sudo snap refresh
Concluzie
Pachetele Snap au potențialul de a schimba modul în care instalăm și folosim software pe Linux, facilitând distribuirea. Dezvoltatorii nu vor mai fi nevoiți să creeze mai multe pachete, binare și metode de livrare, ci un singur container snap. Acesta este auto-suficient, conținând biblioteci, cod executabil și alte fișiere necesare, iar utilizatorii îl pot instala ușor cu o singură comandă.
Snap-urile nu sunt perfecte. Unii utilizatori noi de Linux pot întâmpina dificultăți, deoarece instalarea aplicațiilor se face doar din linia de comandă. Sperăm că pe măsură ce pachetele snap devin tot mai populare, echipa Ubuntu va dezvolta o interfață grafică intuitivă pentru instalarea și utilizarea pachetelor. Până atunci, vom continua să folosim linia de comandă.