A Linux hi ha moltes maneres d'instal·lar un mateix programari. És una cosa del que ha arribat a queixar-se Linus Torvalds, i des del 2015 aproximadament hi ha almenys dues opcions més: els paquets flatpak i els snap. Un dels reclams que podem trobar en tots dos casos és que inclouen programari principal i dependències en un mateix paquet, cosa que els fa funcionar des d'un principi, són més nets i aquestes coses, però això és una veritat a mitges.
Suposem que no fem servir cap paquet flatpak i volem instal·lar-ne només un perquè ho necessitem. El que veieu en la captura de capçalera és justament el tercer en discòrdia, més concretament una aplicació anomenada Immagini amb la qual podrem crear AppImages, aquest tipus d'app portable que es pot executar, en teoria, a qualsevol distribució Linux si l'arquitectura és compatible. Imatges té un pes de 22,4mb, però per poder instal·lar-la necessitem… 1325MB espai. Com?
Dependències compartides, però dependències al capdavall
El que em porta a escriure sobre això és en part les converses que vaig tenir amb un usuari fa temps, nou a Linux, sobre quina instal·lació era la millor. La meva resposta al final va ser allò de sempre, una cosa així com el que millor s'adapti a les teves necessitats, però ell dubtava sobre el pes de les aplicacions. Estava confonent el del programari principal amb el pes total si necessita alguna dependència, que en general les necessita. Però no són dependències com les dels repositoris oficials.
Per exemple, quan volem instal·lar un programa que converteix arxius multimèdia a altres formats, si no el tenim ja és probable que ens descarregueu FFmpeg i ImageMagick, cadascun amb unes quantes dependències més. Aquestes sí que són dependències a l'ús, però les que s'instal·len al costat d'un paquet flatpak o snap són el necessari perquè es pugui executar aquest programa a la nostra plataforma. Si l'aplicació està escrita al GTK o té components del GNOME, ens instal·larà la plataforma del GNOME i les seves traduccions. Quan instal·lem un altre programa GTK/GNOME, això ja ho tindrem, per la qual cosa no serà necessari i el pes de l'app ja serà el que veiem a les botigues de programari.
En el cas dels paquets Snap, tenim una mica el mateix. Fa uns instants m'he adonat que tenia instal·lat el paquet snap del KDE Frameworks 5.98. Sincerament, no sé per què, però probablement perquè vaig fer alguna prova amb algun snap que depengués de Frameworks 5.98.
Vigilant les dependències dels flatpak i snap
Controlar els paquets flatpak que tenim de més és més senzill, ja que hi ha diverses ordres per eliminar el que no està sent usat. Les dades i la memòria cau de l'aplicació solen estar emmagatzemades a ~/.var/app, i es poden eliminar perfectament a mà perquè està dins de la nostra carpeta personal i sense protecció, una cosa així com el que hi ha dins de .config. Si volem eliminar-lo amb el terminal, haurem de fer servir aquesta ordre:
flatpak uninstall --delete-data
Per eliminar les dependències d'un paquet, que per utilitzar el nom correcte hauríem de dir «runtimes», la comanda seria:
desinstal·lació de flatpak --unused
Si el que volem és eliminar-ho tot, haurem d'escriure:
flatpak uninstall --all
Jo l'últim no l'he fet servir mai, en part perquè està dissenyat com a mitjà per restablir tot allò relacionat a flatpak. Es podrà tornar a instal·lar un paquet flatpak, però començarem de zero. És per fer una neteja general.
Pel que fa als paquets snap, no hi ha res semblant, o almenys no el conec. Quan instal·lem una aplicació, aquesta apareix dins de la carpeta snap. Si eliminem el paquet, el contingut desapareix, però els fitxers de configuració no, i poden estar en .config, .caché o en una altra carpeta. Els runtimes o dependències, juntament amb els paquets, solen estar a /var/snap/ o /var/lib/snapd, però cal anar amb compte amb el que toquem aquí. La meva recomanació seria llençar de botiga de programari, i si teniu un apartat per a això, anar a la pestanya de snaps instal·lats. Si veiem alguna cosa que sabem que no estem usant, eliminar des d'aquí.
També podem escriure snap list
, trobar el que sapiguem que no estem usant i eliminar-ho amb snap remove "paquete"
.
Acabant amb alguna cosa positiva
Tot i que cal saber que existeixen, i de vegades se'ns poden posar els pèls de punta veient el que pot ocupar una aplicació en instal·lar-la, no tot és dolent. Quan vaig començar a utilitzar Linux, el que em va ensenyar el primer que vaig aprendre em deia que les aplicacions de Linux pesaven molt poc, i això era gràcies al fet que hi ha programari i dependències que es comparteixen amb altres programes. Això és perfectament aplicable als paquets flatpak i snap: si no existissin aquestes dependències, cada paquet nou que les necessités hauria d'incloure-les en ell mateix, per la qual cosa les aplicacions podrien ser molt pesades. Tal com estan les coses, les úniques pesades seran les primeres; les següents ja no hauran de descarregar res extra.
Era una cosa que calia explicar, i la presa de decisions sempre és millor quan se n'està informat.
dada… per arreglar la instal·lació de flatpak es pot executar 'flatpak repair'. Però alguna vegada em va ajudar.
jo no faig servir ni flatpak, ni snap, jo segueixo amb el tradicional, no veig aquesta febre sobtada per flatpak, snap, ni appimage, quan antany no existien i instal·làvem de tot sense problema i així ho segueixo fent.