6.3. Il sistema Debian 'alternatives'

La distribuzione Debian è fornita con un mucchio di pacchetti software e probabilmente si potrà scegliere tra alcune differenti applicazioni che fondamentalmente realizzano lo stesso compito; si può persino averle tutte installate e pacificamente coesistenti sul sistema. Siccome parliamo di Debian, intuitivamente ci deve essere un modo elegante per impostare i valori predefiniti per il sistema; sì, ce n'è uno: il sistema "alternatives". Qui c'è una introduzione simile e un esempio dalla pagina man di update-alternatives(8):

È possibile che diversi programmi che svolgono funzioni identiche o similari siano installati su un singolo sistema nello stesso momento. Per esempio, molti sistemi hanno diversi editor di testo installati contemporaneamente. Ciò dà agli utenti di un sistema la possibilità di scegliere, permettendo a ciascuno di utilizzare un editor differente, se desiderato, ma rende difficile per un programma effettuare una corretta scelta dell'editor da richiamare se l'utente non ha specificato una particolare preferenza. Il sistema Debian alternatives cerca di risolvere questo problema. Un nome generico nel filesystem viene condiviso da tutti i file che forniscono funzionalità intercambiabili. Il sistema alternatives e l'amministratore di sistema determinano insieme a quale file reale faccia riferimento questo nome generico. Per esempio, se gli editor di testo ed(1) e nvi(1) sono entrambi installati sul sistema, il sistema alternatives farà in modo che il nome generico /usr/bin/editor faccia riferimento a /usr/bin/nvi in modo predefinito. L'amministratore di sistema può sovrascrivere questo e fare in modo che si riferisca invece a /usr/bin/ed e il sistema alternatives non altererà questa impostazione finché non sarà richiesto esplicitamente.

Per configurare di fatto la citata alternativa "editor" digitare semplicemente:

# update-alternatives --config editor

Per un elenco di alternative possibili, si guardi la directory /etc/alternatives/. Molto probabilmente si desidererà impostare le scelte relative a "x-window-manager" e a "x-session-manager".