Come installare applicazioni su Linux

Come si installa un’applicazione su Linux? Come per molti sistemi operativi, non c’è una sola risposta a questa domanda. Le applicazioni possono provenire da così tante fonti – è quasi impossibile contarle – e ogni team di sviluppo può fornire il proprio software nel modo che ritiene migliore. Sapere come installare ciò che ti viene dato fa parte dell’essere un vero utente potente del tuo sistema operativo.

Repository

Per ben oltre un decennio, Linux ha usato repository di software per distribuire il software. Un “repository” in questo contesto è un server pubblico che ospita pacchetti software installabili. Una distribuzione Linux fornisce un comando, e di solito un’interfaccia grafica a quel comando, che preleva il software dal server e lo installa sul tuo computer. È un concetto così semplice che è servito come modello per tutti i principali sistemi operativi per cellulari e, più recentemente, gli “app store” dei due principali sistemi operativi per computer closed source.

repo.png

Repository Linux

Non è un app store

L’installazione da un repository software è il metodo principale per installare applicazioni su Linux. Dovrebbe essere il primo posto dove cercare qualsiasi applicazione che si intende installare.

Per installare da un repository di software, di solito c’è un comando:

$ sudo dnf install inkscape

Il comando effettivo che si usa dipende da quale distribuzione di Linux si usa. Fedora usa dnf, OpenSUSE usa zypper, Debian e Ubuntu usano apt, Slackware usa sbopkg, FreeBSD usa pkg_add, e OpenIndiana basato su Illumos usa pkg. Qualunque cosa usiate, l’incantesimo di solito comporta la ricerca del nome corretto di ciò che volete installare, perché a volte quello che chiamate software non è la sua designazione ufficiale o solitaria:

$ sudo dnf search pyqt
PyQt.x86_64 : Python bindings for Qt3
PyQt4.x86_64 : Python bindings for Qt4
python-qt5.x86_64 : PyQt5 is Python bindings for Qt5

Una volta individuato il nome del pacchetto che si desidera installare, utilizzare il sottocomando install per eseguire il download effettivo e l’installazione automatica:

$ sudo dnf install python-qt5

Per le specifiche sull’installazione da un repository di software, consultare la documentazione della propria distribuzione.

Lo stesso vale generalmente per gli strumenti grafici. Cerca quello che pensi di volere e poi installalo.

apper.png

Apper

Apper

Come il comando sottostante, il nome dell’installatore grafico dipende dalla distribuzione che stai usando. L’applicazione pertinente è di solito etichettata con le parole chiave del software o del pacchetto, quindi cercate nel vostro lanciatore o nel menu questi termini, e troverete quello che vi serve. Poiché l’open source è tutto basato sulla scelta dell’utente, se non ti piace l’interfaccia grafica (GUI) che la tua distribuzione fornisce, potrebbe esserci un’alternativa che puoi installare. E ora sai come farlo.

Repository extra

La tua distribuzione ha il suo repository standard per il software che impacchetta per te, e di solito ci sono repository extra comuni alla tua distribuzione. Per esempio, EPEL serve Red Hat Enterprise Linux e CentOS, RPMFusion serve Fedora, Ubuntu ha vari livelli di supporto così come una rete di Personal Package Archive (PPA), Packman fornisce software extra per OpenSUSE, e SlackBuilds.org fornisce script di compilazione della comunità per Slackware.

Di default, il tuo sistema operativo Linux è impostato per guardare solo i suoi repository ufficiali, quindi se vuoi usare collezioni di software aggiuntivi, devi aggiungere tu stesso dei repository extra. Di solito puoi installare un repository come se fosse un pacchetto software. Infatti, quando si installa un certo software, come la chat video GNU Ring, il browser web Vivaldi, Google Chrome, e molti altri, ciò che si sta effettivamente installando è l’accesso ai loro repository privati, da cui l’ultima versione della loro applicazione viene installata sulla vostra macchina.

access.png

Installazione di un repo

Installazione di un repo

Puoi anche aggiungere il repository manualmente modificando un file di testo e aggiungendolo alla directory di configurazione del tuo gestore di pacchetti, o eseguendo un comando per installare il repository. Come al solito, il comando esatto che si usa dipende dalla distribuzione che si sta eseguendo; per esempio, ecco un dnf comando che aggiunge un repository al sistema:

$ sudo dnf config-manager --add-repo=http://example.com/pub/centos/7

Installazione di applicazioni senza repository

Il modello del repository è così popolare perché fornisce un collegamento tra l’utente (voi) e lo sviluppatore. Quando vengono rilasciati aggiornamenti importanti, il tuo sistema ti chiede gentilmente di accettare gli aggiornamenti, e tu puoi accettarli tutti da una posizione centralizzata.

A volte, però, ci sono momenti in cui un pacchetto viene reso disponibile senza un repository collegato. Questi pacchetti installabili si presentano in diverse forme.

Pacchetti Linux

A volte, uno sviluppatore distribuisce il software in un comune formato di pacchettizzazione per Linux, come RPM, DEB, o i più recenti ma molto popolari formati FlatPak o Snap. Non si ottiene l’accesso ad un repository con questo download; si potrebbe semplicemente ottenere il pacchetto.

L’editor video Lightworks, per esempio, fornisce un file .deb per gli utenti APT e un file .rpm per gli utenti RPM. Quando si vuole aggiornare, si ritorna al sito web e si scarica l’ultimo file appropriato.

Questi pacchetti una tantum possono essere installati con tutti gli stessi strumenti usati quando si installa da un repository. Se fai doppio clic sul pacchetto che hai scaricato, viene lanciato un installatore grafico che ti guida attraverso il processo di installazione.

In alternativa, puoi installare da un terminale. La differenza in questo caso è che il file di un pacchetto solitario che hai scaricato da internet non proviene da un repository. È un’installazione “locale”, il che significa che il vostro software di gestione dei pacchetti non ha bisogno di scaricarlo per installarlo. La maggior parte dei gestori di pacchetti gestisce questo in modo trasparente:

$ sudo dnf install ~/Downloads/lwks-14.0.0-amd64.rpm

In alcuni casi, è necessario compiere ulteriori passi per far funzionare l’applicazione, quindi leggere attentamente la documentazione sul software che si sta installando.

Script di installazione generici

Alcuni sviluppatori rilasciano i loro pacchetti in uno dei diversi formati generici. Estensioni comuni includono .run e .sh. I driver delle schede grafiche NVIDIA, i pacchetti Foundry Visual FX come Nuke e Mari, e molti giochi DRM-free da GOG utilizzano questo stile di installer.

Questo modello di installazione si basa sullo sviluppatore per fornire una “procedura guidata” di installazione. Alcuni installatori sono grafici, mentre altri vengono semplicemente eseguiti in un terminale.

Ci sono due modi per eseguire questi tipi di installatori.

  1. È possibile eseguire l’installatore direttamente da un terminale:
$ sh ./game/gog_warsow_x.y.z.sh
  1. In alternativa, è possibile eseguirlo dal desktop contrassegnandolo come eseguibile. Per contrassegnare un programma di installazione come eseguibile, fare clic con il tasto destro del mouse sulla sua icona e selezionare Proprietà.

exec.jpg

Dare il permesso di eseguire un programma di installazione

Dare il permesso di eseguire un programma di installazione

Una volta dato il permesso di eseguirlo, fai doppio clic sull’icona per avviare l’installazione.

gog.jpg

installatore di GOG

installatore di GOG

Per il resto dell’installazione, basta seguire le istruzioni sullo schermo.

AppImage portable apps

Il formato AppImage è relativamente nuovo per Linux, sebbene il suo concetto sia basato sia su NeXT che su Rox. L’idea è semplice: tutto ciò che è necessario per eseguire un’applicazione è messo in una directory, e poi quella directory è trattata come una “app”. Per eseguire l’applicazione, basta fare doppio clic sull’icona, ed essa viene eseguita. Non c’è bisogno o aspettativa che l’applicazione sia installata nel senso tradizionale del termine; viene semplicemente eseguita da qualsiasi punto del vostro disco rigido.

Nonostante la sua capacità di funzionare come un’applicazione autonoma, un’AppImage di solito offre una certa integrazione soft del sistema.

appimage.png

Integrazione del sistema AppImage

Integrazione del sistema AppImage

Se accetti questa offerta, un file locale .desktop viene installato nella tua home directory. Un file .desktop è un piccolo file di configurazione utilizzato dal menu Applicazioni e dal sistema mimetype di un desktop Linux. Essenzialmente, mettendo il file di configurazione del desktop nell’elenco delle applicazioni della tua directory home “installa” l’applicazione senza installarla effettivamente. Si ottengono tutti i benefici di aver installato qualcosa, e i benefici di essere in grado di eseguire qualcosa localmente, come una “applicazione portatile”.

Rubrica delle applicazioni

A volte, uno sviluppatore compila semplicemente un’applicazione e pubblica il risultato come download, senza script di installazione e senza imballaggio. Di solito, questo significa che scarichi un file TAR, lo estrai e poi fai doppio clic sul file eseguibile (di solito è quello con il nome del software che hai scaricato).

twine.jpg

Twine scaricato per Linux

Twine scaricato per Linux

Quando ti viene presentato questo stile di consegna del software, puoi lasciarlo dove l’hai scaricato e lanciarlo manualmente quando ne hai bisogno, oppure puoi fare un’installazione rapida e sporca da solo. Questo comporta due semplici passi:

  1. Salvare la directory in una posizione standard e lanciarlo manualmente quando ne avete bisogno.
  2. Salvare la directory in una posizione standard e creare un file .desktop per integrarlo nel vostro sistema.

Se state installando applicazioni solo per voi stessi, è tradizionale tenere una directory bin (abbreviazione di “binary”) nella vostra home directory come luogo di archiviazione per applicazioni e script installati localmente. Se avete altri utenti sul vostro sistema che hanno bisogno di accedere alle applicazioni, è tradizionale mettere i binari in /opt. In definitiva, sta a voi decidere dove memorizzare l’applicazione.

I download sono spesso disponibili in directory con nomi di versioni, come twine_2.13 o pcgen-v6.07.04. Poiché è ragionevole supporre che aggiornerete l’applicazione ad un certo punto, è una buona idea rimuovere il numero di versione o creare un link simbolico alla directory. In questo modo, il launcher che si crea per l’applicazione può rimanere lo stesso, anche se si aggiorna l’applicazione stessa.

Per creare un file .desktop launcher, aprire un editor di testo e creare un file chiamato twine.desktop. La specifica di ingresso del desktop è definita da FreeDesktop.org. Ecco un semplice lanciatore per un IDE di sviluppo di giochi chiamato Twine, installato nella directory di sistema /opt:


Encoding=UTF-8
Name=Twine
GenericName=Twine
Comment=Twine
Exec=/opt/twine/Twine
Icon=/usr/share/icons/oxygen/64x64/categories/applications-games.png
Terminal=false
Type=Application
Categories=Development;IDE;

La linea difficile è quella Exec. Deve contenere un comando valido per avviare l’applicazione. Di solito, è solo il percorso completo della cosa che avete scaricato, ma in alcuni casi, è qualcosa di più complesso. Per esempio, un’applicazione Java potrebbe aver bisogno di essere lanciata come argomento a Java stesso:

Exec=java -jar /path/to/foo.jar

A volte, un progetto include uno script wrapper che puoi eseguire in modo da non dover capire il comando giusto:

Exec=/opt/foo/foo-launcher.sh

Nell’esempio di Twine, non c’è un’icona inclusa nel download, quindi il file di esempio .desktop assegna un’icona generica di gioco fornita con il desktop KDE. Puoi usare espedienti come questo, ma se sei più artistico, puoi semplicemente creare la tua icona, o puoi cercare su Internet una buona icona. Finché la linea Icon punta ad un file PNG o SVG valido, la vostra applicazione erediterà l’icona.

Lo script di esempio imposta anche la categoria dell’applicazione principalmente su Sviluppo, così in KDE, GNOME e nella maggior parte degli altri menu delle applicazioni, Twine appare sotto la categoria Sviluppo.

Per fare in modo che questo esempio appaia in un menu Applicazione, mettete il file twine.desktop in uno dei due posti:

  • Posizionatelo in ~/.local/share/applications se state memorizzando l’applicazione nella vostra home directory.
  • Posizionatelo in /usr/share/applications se state memorizzando l’applicazione in /opt o in un’altra posizione a livello di sistema e volete che appaia nei menu Applicazione di tutti i vostri utenti.

E ora l’applicazione è installata come deve essere e integrata con il resto del tuo sistema.

Compilazione da sorgente

Infine, c’è il formato di installazione veramente universale: il codice sorgente. Compilare un’applicazione dal codice sorgente è un ottimo modo per imparare come le applicazioni sono strutturate, come interagiscono con il vostro sistema e come possono essere personalizzate. Però non è affatto un processo a pulsante. Richiede un ambiente di compilazione, di solito comporta l’installazione di librerie di dipendenza e file di intestazione, e a volte un po’ di debugging.

Per saperne di più sulla compilazione da codice sorgente, leggete il mio articolo sull’argomento.

Ora lo sapete

Alcune persone pensano che l’installazione del software sia un processo magico che solo gli sviluppatori capiscono, o pensano che “attivi” un’applicazione, come se il file binario eseguibile non sia valido finché non è stato “installato”. Si spera che l’apprendimento dei diversi metodi di installazione vi abbia mostrato che installare è in realtà solo un’abbreviazione per “copiare i file da un posto ai posti appropriati sul vostro sistema”. Non c’è niente di misterioso. Finché ci si avvicina ad ogni installazione senza aspettative su come dovrebbe avvenire, e si cerca invece quello che lo sviluppatore ha impostato come processo di installazione, è generalmente facile, anche se è diverso da quello a cui si è abituati.

La cosa importante è che un installatore sia onesto con voi. Se vi imbattete in un programma di installazione che tenta di installare software aggiuntivo senza il vostro consenso (o forse chiede il consenso, ma in modo confuso o fuorviante), o che tenta di eseguire controlli sul vostro sistema senza una ragione apparente, allora non continuate l’installazione.

Un buon software è flessibile, onesto e aperto. E ora sapete come ottenere del buon software sul vostro computer.

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *