Slackware è una distribuzione GNU/Linux tra le più longeve. E' la più antica attualmente sviluppata.[2]

Slackware
sistema operativo
[[File:|frameless|center|200x200px|Logo]][[File:|frameless|center|260x300px]]Slackware 13.37 con KDE SC 4.5.5
SviluppatorePatrick Volkerding
FamigliaGNU/Linux
Release corrente15.0 (2 febbraio 2022)
Tipo di kernel Kernel monolitico (Linux 2.6.37.6)
Piattaforme supportatex86, x86-64, ARM
Licenza GNU/GPL
Stadio di sviluppoStabile
Sito webSito ufficiale

Fu creata da Patrick Volkerding, allora studente, che utilizzò come base la distribuzione Softlanding Linux System, e venne pubblicata per la prima volta il 16 luglio 1993 sul newsgroup comp.os.linux.

Il nome "Slackware" deriva dal termine "Slack" (senso di libertà ed indipendenza che si prova quando si raggiungono i propri obiettivi), come definito dal movimento religioso satirico Chiesa del SubGenio.

Slackware tende a essere essenziale ed elegante. Se da una parte in molti approvano la scelta di escludere alcuni programmi e di adottare utilità semplificate in nome della snellezza e della stabilità del sistema, altri tendono a sentire la mancanza di strumenti di configurazione a interfaccia grafica e di un sistema di pacchettizzazione più avanzato dell'essenziale set di strumenti chiamato pkgtool (forma contratta di Slackware Package Tool).

Poiché è stata concepita per essere più Unix-like possibile, Slackware è considerata un ottimo modo per imparare il funzionamento di GNU/Linux, tanto che i suoi estimatori usano dire: "Quando conosci Slackware, conosci Linux... quando conosci Red Hat, conosci solo Red Hat".

Storia

La distribuzione Slackware è la prima raccolta di software libero basata su GNU/Linux a raggiungere una vasta diffusione.

Molte distribuzioni nate in seguito si sono ispirate ad essa, prima fra tutte SUSE.

Presenta numerose differenze rispetto ad altre principali distribuzioni, quali la stessa SUSE, Debian (o la sua derivata Ubuntu), Red Hat (o il suo successore Fedora) e Mandriva.


Caratteristiche tecniche

Init system

A differenza della maggior parte delle altre distribuzioni che utilizzano un init system di tipo System V, oppure i più recenti Upstart or systemd, Slackware utilizza un più semplice init system di tipo BSD.

Un init in stile BSD associa ad ogni runlevel uno ed un solo script di init invece di mantenere per ogni runlevel una directory contenente gli script (o link simbolici ad essi) da eseguire in quel runlevel.[3][4]

Con il rilascio della versione 7, Slackware include la compatibilità con il System V (si veda: Configuration Help ).

L'aggiunta di questa compatibilità permette una maggiore interoperabilità con alcuni software di terze parti che installano script di tipo System V.

Al termine dell'esecuzione dell'init system, viene eseguito lo script rc.sysvinit che governa l'esecuzione degli script legati a un init system di tipo System V.

Sviluppo

Patrick J Volkerding governa il processo di sviluppo. Gode di indiscussa leadership presso gli utilizzatori di questa distribuzione. Si avvale del supporto di diverse persone che cooperano a vario titolo con lui. Attualmente, Volkerding è l'unico sviluppatore Slackware retribuito.

Non esiste alcun sistema di tracciamento dei bug e non esiste nessuna procedura di accredito per nuovi sviluppatori.

Il ramo di sviluppo è denominato "Current", è frequentemente aggiornato.

Periodicamente, questo ramo viene rilasciato come "Stable". Quest'ultimo ramo viene ufficialmente supportato con rilascio di bug-fix relativi ai vari software che compongono la distribuzione.

La data di rilascio di una nuova versione stabile è determinata ad insindacabile giudizio di Volkerding.

Versioni

Quì verrà esposta una sintetica carrellata delle versioni rilasciate; per un maggior dettaglio si può vedere DistroWatch.com: Slackware Linux

È la versione stabile rilasciata (uscita il 23 giugno 2004) che include:

Il 6 febbraio 2005, con un annuncio sul sito ufficiale, Patrick Volkerding annuncia la nuova Slackware-10.1. Dopo un periodo piuttosto critico, il ramo della "current" è sufficientemente stabile da poter essere rilasciato. Questa nuova release, ha come kernel predefinito la versione 2.4.29, lasciando la versione 2.6.x come scelta opzionale.

Alla 10.1, nei piani di sviluppo di Slackware, seguirà una rinnovata versione 11, che prevede la migrazione al kernel serie 2.6 e l'abbandono di Gnome, che continuerà però ad essere mantenuto al di fuori della release ufficiale.

Il 15 settembre viene annunciata al mondo la seconda versione di Slackware del 2005.

Non si tratta di una release particolarmente innovativa, ma piuttosto di mantenimento, in vista di una 11.0 che dovrebbe portare, da quanto reso noto dalle prime indiscrezioni, l'adozione del nuovo kernel 2.6.

Nella 10.2, infatti, è ancora usato come predefinito un kernel della serie 2.4 (il 2.4.31 per la precisione).

Tra gli altri applicativi, spiccano:

Come previsto, dalla distribuzione è stato escluso GNOME.

Il 2 ottobre 2006 viene rilasciata la versione 11.0, con kernel di default 2.4.33.3. È possibile scegliere anche le versioni 2.6.17.13 e 2.6.18 durante l'installazione.

Il 2 luglio 2007 si assiste al rilascio della versione 12.0 di Slackware.

Per la prima volta il kernel di default è della famiglia 2.6 (precisamente trattasi del 2.6.21.5).

Il server grafico XOrg viene aggiornato alla versione modulare.

Tra le modifiche degne di nota:

Il 1 maggio 2008 Patrick Volkerding rilascia la prima versione di Slackware dell'anno che include:

Non trova ancora spazio nella distribuzione più longeva di tutte KDE 4 che, come annunciato da Volkerding, entrerà molto probabilmente nella release successiva. Una nota abbastanza curiosa di questa release è l'inserimento di uno sfondo targato Slackware al boot loader LILO; PJV non aveva mai inserito fino a questo momento il logo Slackware nella sua creatura.

È evidente inoltre il lavoro, non solo di Volkerding, ma anche di uno Slackware Team.

La seconda versione del 2008 include:

Le interfacce grafiche disponibili sono:

  • KDE, versione 3.5.10,
  • Xfce, versione 4.4.3.

La nuova versione del 2009 include:

Le interfacce grafiche disponibili sono:

  • KDE, versione 4.2.4,
  • Xfce, versione 4.6.1.

Viene introdotto il supporto per l'architettura x86_64

La nuova versione del 2010 include:

Le interfacce grafiche disponibili sono:

  • KDE, versione 4.4.3,
  • Xfce, versione 4.6.1.

La nuova versione del 2011 è stata rilasciata dopo un anno di profondo testing e include:

  • kernel 2.6.37.6 (insieme al 2.6.38.4 opzionale e i conf del 2.6.35.12 e 2.6.39-rc4),
  • GCC 4.5.2,
  • Apache 2.2.17,
  • PHP 5.3.6.

Le interfacce grafiche disponibili sono:

  • KDE, versione 4.5.5,
  • Xfce, versione 4.6.2.

Le novità di questo rilascio sono:

  • nuovo numero della versione basato sul kernel (il numero 37, come riportato dallo stesso Volkerding nel sito ufficiale, sta per il kernel di default, ovvero il 2.6.37.6) che porta anche il primo codename della sua storia: leet,
  • il ritorno dell'opzione --terse in installpkg
  • la possibilità di formattare il file system in btrfs con i btrfs-progs aggiunti nel ramo principale.

Pacchettizzazione e aggiornamento

Pkgtools

A differenza delle altre grandi distribuzioni GNU/Linux, Slackware ha un sistema di pacchettizzazione (chiamato Slackware Package Tool o, in forma contratta, pkgtool) assolutamente unico che, pur permettendo l'installazione (installpkg), la rimozione (removepkg) e l'aggiornamento (upgradepkg) dei pacchetti con la stessa facilità delle altre distribuzioni, non prevede alcun tipo di controllo delle dipendenze. Questo permette, da un lato, una gestione più semplice del sistema, ma dall'altro implica che l'utente debba sapere esattamente ciò che fa.

Slackpkg

Dalla versione 12.2 è stato aggiunto slackpkg, un software per semplificare l'aggiornamento e l'installazione dei pacchetti. Anche se prevede molti controlli, ed una serie di funzionalità, compresa l'installazione e l'aggiornamento via rete, in perfetto stile Slackware non gestisce le dipendenze.

Per una trattazione più approfondita si rimanda al manuale utente; per consultarlo è sufficiente digitare man slackpkg

Pacchettizzazione

I pacchetti di Slackware sono in genere caratterizzati dall'estensione .txz (che dal ChangeLog dell' 8 maggio 2009 ha sostituito i pacchetti in .tgz). Si tratta di pacchetti compilati, e compressi in un archivio, secondo la loro posizione finale, una volta estratti nella directory di root (/) del sistema. Vi si può trovare, a volte, uno script (doinst.sh) che permette di eseguire alcune operazioni utili per il corretto funzionamento del pacchetto installato.

Sotto l'aspetto della creazione/installazione di nuovi pacchetti, c'è da segnalare l'esistenza di uno strumento che semplifica non poco il lavoro di amministratori di sistema e pacchettizzatori. Si tratta di checkinstall, che permette, una volta installato, di creare pacchetti (tgz, rpm o deb) direttamente dai sorgenti di un programma. In particolare, al posto del consueto comando ./configure && make && make install sarà sufficiente dare un ./configure && make && checkinstall, per avere a disposizione il pacchetto, pronto per essere installato nel sistema con i pkgtools (checkinstall permette di creare anche pacchetti .deb e .rpm, oltre che .tgz).

Nelle ultime versioni checkinstall è stato rimosso dalla distribuzione in favore del software slacktrack che svolge compiti simili.

Aggiornamento

Nonostante, come detto, i pkgtools non prevedano il controllo delle dipendenze, all'interno della comunità di Slackware è nata una serie di strumenti che consentono di eseguire aggiornamenti tenendo conto delle dipendenze. Ecco i più conosciuti:

Bisogna precisare che questi strumenti sono sviluppati da terze parti e che pertanto non godono del supporto ufficiale.

Architettura

Slackware, viene rilasciata ufficialmente per processori x86 e, a partire dalla 13.0, per x86_64.

Esistono due port ufficiali su

per maggiori dettagli: Slackware Ports

Slackware Linux for SPARC è da tempo non più attivo. Il progetto di terze parti Splack non ha avuto maggior fortuna.

Il porting, non ufficiale, su piattaforma PowerPC, denominato Slackintosh Linux Project, è fermo alla versione 12.1. Per maggiori dettagli si veda il ChangeLog

Slackware Team

A partire dalla versione 12.1, PJV si avvale della cooperazione, a vario titolo, di diversi sviluppatori.

Repository di terze parti

Alcuni utilizzatori o gruppi di utilizzatori hanno creato dei repository di software non inclusi nella distribuzione.

Repository di terze parti - Gnome

Come già descritto, dal rilascio della 10.1, Gnome è stato escluso dal ramo ufficiale; nel corso del tempo sono nati diversi progetti gestiti da terze parti.

Documentazione ufficiale

Se si ricercano delle informazioni dettagliate di uno specifico software incluso nella distribuzione, si consiglia di far riferimento alla documentazione del software,

Note

Altri progetti

Collegamenti esterni

Slackware

Distribuzioni derivate

  Portale Software libero: accedi alle voci di Wikipedia che trattano di Software libero