# Slackware

«[Slackware] is intended to be [the] Linux [distribution] for anyone that appreciates the traditional UNIX-like ways of doing things, isn't afraid of the command line, wants the supplied packages to be as unmodified as possible, and likes to be able to expand the system through source code without tossing a wrench into the package manager.»
«[Slackware] intende essere [la distribuzione] Linux per chi apprezza il modo tradizionale UNIX-like di fare le cose, non teme la riga di comando, vuole che i pacchetti forniti siano il più possibile inalterati e ama poter estendere il sistema mediante il codice sorgente, senza dover essere costretti a sabotare il gestore dei pacchetti.»
(Patrick J. Volkerding, fondatore di Slackware)
Slackware (IPA: /'slækweə(ɹ)/) è una distribuzione Linux, ovvero un sistema operativo open source basato sul kernel Linux e sul software sviluppato dal progetto GNU, la più longeva tra quelle attivamente sviluppate. È stata creata nel 1993 da Patrick J. Volkerding sulla base di SLS (Softlanding Linux System) di cui inizialmente era una versione migliorata e corretta.
Slackware punta alla qualità, alla stabilità e alla semplicità e intende essere la distribuzione più Unix-like, attenendosi agli standard, evitando di apportare modifiche non necessarie al software incluso e non aggiungendo strumenti di configurazione supplementari, oltre a quelli previsti dai rispettivi autori. La configurazione e l'amministrazione del sistema avvengono principalmente attraverso la modifica manuale dei file di configurazione, oppure grazie ad alcuni script dotati di interfaccia semi-grafica o a riga di comando.
Slackware fornisce un sistema operativo completo e aggiornato che include gli ambienti desktop KDE e Xfce, svariati window manager, un'ampia scelta di applicazioni, una serie completa di strumenti di sviluppo, tutto il necessario per allestire un server web, FTP o di posta elettronica e altro ancora. Questa distribuzione si rivolge in particolare a chi desidera avere il controllo totale del proprio sistema.

## Nome

Il nome Slackware deriva da Slack (scritto con l'iniziale maiuscola), termine non ben definito che nel contesto della satirica Chiesa del SubGenio indicherebbe la facoltà di raggiungere i propri obiettivi senza sforzo, perseguendo una vita libera e confortevole, priva di responsabilità e duro lavoro. Nella fattispecie, Slackware consentirebbe di raggiungere lo Slack attraverso la semplicità d'uso, l'affidabilità, la durevolezza e il rifiuto di strumenti mainstream non necessari. Nonostante il nome avesse per alcuni una connotazione negativa, dapprima venne mantenuto da Volkerding per evitare che il suo lavoro venisse preso troppo sul serio, e in seguito rimase, a identificare una distribuzione ormai affermata. Come puntualizzato dallo stesso Volkerding, non vi è uno stretto legame tra Slackware e la Chiesa del Subgenio, sebbene quest'ultima sembri aver adottato sia il sistema operativo che il suo fondatore. Alcuni riferimenti scherzosi alla Chiesa si notano comunque nella pipa fumata dalla mascotte di Slackware, presa in prestito dal personaggio di J.R. "Bob" Dobbs, e in molte versioni del file install.end che indica la fine del processo di installazione.

## Storia
### Gli inizi

Già nel 1992 Volkerding era al corrente del progetto, avviato l'anno precedente da Linus Torvalds, che mirava allo sviluppo di un sistema operativo Unix-like liberamente distribuibile e modificabile. All'epoca egli utilizzava OS/2 su un personal computer con architettura i386SX, tuttavia, pur avendo una buona opinione di OS/2, avrebbe preferito un sistema Unix. Prese quindi in considerazione Coherent, Minix e SCO Xenix, poi spostò l'attenzione sulle prime distribuzioni Linux che allora cominciavano a circolare. Esaminò il boot-root di H. J. Lu e MCC Interim Linux, mentre in mancanza di un lettore per CD-ROM non poté fare lo stesso con Yggdrasil Linux. Adottò infine una delle prime versioni di SLS (Softlanding Linux System), la distribuzione commerciale creata da Peter MacDonald.
Successivamente, nell'ambito di un corso universitario di intelligenza artificiale orientato al linguaggio LISP, Volkerding notò che l'interprete CLISP incluso in SLS era migliore di quello, basato su DOS, di cui disponeva il laboratorio. Ne parlò al suo professore, il quale chiese il suo aiuto per installare SLS su uno dei computer, un AT&T i486: l'installazione ebbe esito positivo, perciò Volkerding si mise a correggere i bug trovati nel sistema. Il professore gli chiese infine se fosse possibile correggere gli errori direttamente sui floppy disk e automatizzare maggiormente l'installazione, così da rendere Linux disponibile anche per i corsi successivi ed evitare di dover pagare la licenza per una versione di LISP ritenuta mediocre.
Volkerding accettò la sfida e cominciò a studiare il sistema: SLS veniva fornita in forma compilata e i sorgenti erano inclusi solo per una piccola parte della distribuzione. Vi erano inoltre poche indicazioni su come il software fosse stato compilato, dato che mancavano script per automatizzare il processo, cosa allora piuttosto comune. Nei mesi successivi Volkerding corresse tutti i bug di cui era a conoscenza e che trovò man mano, inoltre aggiornò il kernel e sistemò il programma d'installazione, modificando parte degli script originali di SLS. Procurò al suo professore versioni migliorate di SLS fino a quando, con la versione 0.99pl9 di Linux, circa la metà dei pacchetti era più aggiornata di quelli distribuiti da Peter MacDonald, mentre l'altra metà aveva subìto in gran parte interventi di riconfigurazione.

### Da SLS a Slackware

Nell'aprile del 1993 Brett Person, che si occupava di collaudare il sistema, suggerì a Volkerding di condividere il proprio lavoro su Internet. La differenza tra SLS e Slackware era ormai sensibile, perciò Volkerding pensò che Peter MacDonald avrebbe voluto esaminare il lavoro svolto, per risolvere così i problemi da cui era afflitta la sua distribuzione: dopo un buon inizio SLS era infatti nota per i molti errori e per la manutenzione carente, il che rendeva molti utenti insoddisfatti. Contrariamente alle aspettative, MacDonald rivendicò i diritti sugli script di installazione di Slackware, in quanto derivati da SLS. Volkerding ebbe comunque il permesso di mantenere sul server FTP il lavoro fatto fino a quel momento, tuttavia decise che non avrebbe apportato altre modifiche al sistema finché non avesse riscritto completamente gli script. La sua intenzione ormai era quella di rendere Slackware la distribuzione di riferimento, così cominciò a integrare aggiornamenti e nuovo software non appena questi venivano resi disponibili.
Dopo aver coinvolto nella fase di test altri utenti del newsgroup comp.os.linux, il 16 luglio venne annunciata la versione 1.0 di Slackware, la cui installazione prevedeva ventiquattro floppy disk da 3½". Il riscontro fu notevole e il server Unix dell'università, che ospitava il deposito FTP, si rivelò insufficiente. Volkerding cercò per alcuni giorni di farlo funzionare, senza grande successo, e nemmeno Linux avrebbe potuto servire allo scopo a causa di problemi di stabilità legati al protocollo TCP/IP. Dopo una richiesta di aiuto il progetto venne quindi ospitato su ftp.cdrom.com, il server di Walnut Creek CDROM, azienda statunitense che in quegli anni distribuiva software libero, shareware e freeware su supporto CD: la stessa azienda che nel 1995 sarebbe diventata il distributore ufficiale del progetto Slackware.

### La collaborazione con Walnut Creek

Nel 1994 Volkerding fu contattato da Michael Johnston della Morse Telecommunications, la quale propose di distribuire Slackware commercialmente. Volkerding, che desiderava trovare un modo per finanziare il proprio progetto, accettò l'offerta e a partire da quel momento Slackware ha rappresentato per lui un lavoro a tempo pieno. Si era allora alla versione 2.1, la cui installazione prevedeva ben settantasei floppy disk, segno della crescita rapida della distribuzione. A causa dell'esigua percentuale ricevuta dalla Morse, pari a un dollaro per ogni CD venduto, la collaborazione si interruppe tuttavia dopo soli sei mesi, dopodiché ebbe inizio quella più duratura con Walnut Creek. Nel 1995 Slackware compì la transizione allo standard ELF e per la prima volta rese possibile l'installazione da CD-ROM (l'intera distribuzione era contenuta in due dischi). La successiva versione 3.1 includeva il kernel 2.0 e fu ribattezzata "Slackware 96", alludendo scherzosamente al Windows 95 apparso l'anno precedente.
Attorno al 1996 si situa, secondo una testimonianza di Patrick Volkerding risalente al 2002, il picco delle vendite di Slackware: da lì in poi crebbe infatti il numero di aziende interessate a distribuire Linux e la concorrenza si fece più agguerrita. In quel periodo comparvero i primi speculatori che cercavano di capire se Slackware avrebbe potuto essere un buon investimento, tuttavia Volkerding fu prudente e non accettò nessuna delle offerte che vennero avanzate. Egli temeva infatti che, se avesse accettato, gli investitori avrebbero poi fatto pressioni per snaturare la filosofia progettuale della distribuzione, nell'intento di renderla appetibile a un pubblico più vasto e a scapito del leale seguito che Slackware si era fino ad allora conquistato. Un altro timore di Volkerding era quello di essere scaricato senza troppi complimenti da speculatori interessati solo al marchio e al potenziale bacino di utenti.
Nel 1999 la versione di Slackware passò curiosamente dal numero 4 al numero 7: un'operazione motivata da Volkerding come una risposta alla decisione di alcune distribuzioni di "truccare", per ragioni di marketing, il proprio numero di versione. Il "salto" di Slackware intendeva inoltre mettere fine alle domande degli sprovveduti che identificavano l'attualità di una distribuzione col numero della sua versione più recente, confondendo inoltre quest'ultimo con la versione del kernel.
Durante la collaborazione con Walnut Creek, presso cui Volkerding lavorava nell'omonima cittadina californiana, vennero assunti per occuparsi a tempo pieno del progetto anche Chris Lumens, David Cantrell e Logan Johnson. Mentre Lumens e Cantrell avevano già contribuito alla creazione del sito web della distribuzione, i tre sono anche gli autori originari della guida ufficiale Slackware Linux Essentials, pubblicata nel 2000 e aggiornata alla seconda edizione, curata da Alan Hicks, nel 2005.

### La bolla dot-com e la nascita di Slackware Linux, Inc.

La collaborazione con Walnut Creek si interruppe a causa dello scoppio, tra il 2000 e il 2001, della bolla speculativa legata allo sviluppo di Internet. La crisi fu caratterizzata da un calo drastico del flusso di investimenti nel settore. In quei frangenti e col senno del poi, la prudenza mantenuta da Volkerding alcuni anni prima e la sua lealtà verso gli utenti si dimostrarono determinanti: Slackware restò infatti a galla, mentre molte aziende che erano state trascinate dalla speculazione andarono in bancarotta. Quando Walnut Creek, dopo la fusione con BSDi, fu venduta a Wind River, un'azienda interessata a BSD ma non a Linux né al software pubblicato secondo la GNU GPL, Slackware si ritrovò senza un distributore e il suo team senza uno stipendio.
Le circostanze non impedirono a Volkerding di continuare il lavoro di sviluppo, pur se in condizioni precarie, e di fondare assieme a Robert Bruce (già fondatore di Walnut Creek) la piccola azienda Slackware Linux, Inc., il cui scopo è tuttora quello di finanziare il progetto attraverso la vendita, sul sito web, dei dischi di installazione e di altri prodotti legati alla distribuzione. Questo nuovo stato di cose creò le condizioni che permisero la pubblicazione, il 1 luglio 2001, di Slackware 8.0, una versione caratterizzata fra l'altro dall'introduzione del browser web Mozilla. Sebbene la speranza di Volkerding fosse quella di avere risorse sufficienti per poter ancora finanziare l'intero team, Chris Lumens, David Cantrell e Logan Johnson lasciarono il progetto per continuare la loro formazione, e in seguito avrebbero preso altre vie professionali. Ciò comportò fra l'altro l'abbandono del progetto Slackware SPARC, a cui Cantrell stava lavorando.

### Gli anni più recenti

Nel 2001 Mike Kershaw, del Marist College di Poughkeepsie, cominciò a lavorare a un port di Slackware per l'architettura mainframe IBM ESA/390 utilizzando le risorse tecniche dell'istituto. Al progetto, divenuto poi ufficiale e denominato Slack/390, si unì nello stesso anno anche Mark Post, il quale più avanti, a causa degli impegni professionali di Kershaw, fu l'unico a occuparsene. Il progetto non andò oltre la versione stabile 10.0, mentre una versione a 64 bit del port rimase nella fase di collaudo. Nel 2002 Stuart Winter iniziò un porting per l'architettura ARM, progetto poi denominato ARMedslack e destinato principalmente ai computer desktop. La prima versione stabile, la 11.0, venne pubblicata nel 2007, mentre nel 2009 Volkerding promosse ARMedslack a progetto ufficiale. Da quel momento il port venne progressivamente ribattezzato Slackware ARM e il software fu completamente ricompilato, utilizzando la nuova interfaccia EABI dell'architettura ARM.
Il 2004 vide il passaggio dall'implementazione del server grafico X Window System da parte del progetto XFree86 al suo fork curato dalla fondazione X.Org: nella decisione ebbe un ruolo determinante l'opinione degli utenti di Slackware. Nel 2005 l'ambiente desktop GNOME fu invece escluso dalla distribuzione, essenzialmente per ragioni pratiche, mentre nel 2007, oltre alla versione 2.6 del kernel, fu introdotto il supporto per HAL.
Il 25 agosto 2009 venne pubblicata la versione 13.0, la prima a supportare l'architettura x86 a 64 bit. Questo risultato fu possibile grazie al fondamentale contributo di Eric Hameleers. Tra le altre cose, Hameleers rinnovò completamente gli script (denominati SlackBuilds) utilizzati per generare i pacchetti di Slackware contenenti il software compilato: il suo lavoro introduceva un miglioramento tale che i nuovi script furono adottati immediatamente anche per la versione a 32 bit.
La versione stabile più recente è la 15.0, pubblicata il 2 febbraio 2022 con un kernel aggiornato alla versione 5.15.19. Slackware 15.0 ha visto in particolare il passaggio alla codifica predefinita in UTF-8, il passaggio da ConsoleKit2 a elogind, così come l'introduzione di Wayland e di FFmpeg.
In conclusione, Slackware è stata la prima distribuzione di software libero basata su GNU/Linux a raggiungere una vasta diffusione, grazie anche al malcontento degli utenti di SLS. Molte distribuzioni nate in seguito si sono ispirate a essa, prima fra tutte SUSE, nata nel 1994 come traduzione di Slackware in lingua tedesca. Nel corso degli anni sono nati altri progetti derivati, tra cui SLAX, Zenwalk, e VectorLinux.

### Evoluzione del core team

Slackware non possiede, diversamente da altre distribuzioni, un team ufficiale di sviluppo. Tuttavia, la collaborazione di Patrick Volkerding con alcune persone in grado di fornire importanti contributi al progetto è stata, nel corso degli anni, un dato di fatto. Come spiegato dallo stesso Volkerding, molte collaborazioni sono nate grazie alla qualità e alla costanza dei contributi forniti, per esempio nella correzione degli errori o nell'ambito di progetti non ufficiali, a cui ha fatto seguito l'invito a far parte del team di sviluppo.
Chris Lumens, David Cantrell e Logan Johnson rappresentano la prima generazione del team di Slackware e sono gli unici ad aver lavorato a tempo pieno per il progetto, durante il periodo con Walnut Creek. Per quanto riguarda gli anni successivi, oltre ai nomi già menzionati nei paragrafi precedenti, troviamo Piter Punk, Erik Jan Tromp, Amritpal Bath, Robby Workman (già fondatore, assieme ad Alan Hicks, del progetto SlackBuilds.org) e Heinz Wiesinger. Per quanto riguarda le versioni più recenti di Slackware, Eric Hameleers, in un documento del 2009 sulla storia della distribuzione, menziona anche Fred Emmott, Vincent Batts, Karl Magnus Kolstø, Leopold Midha e John Jenkins (altri hanno invece preferito l'anonimato).

## Caratteristiche

Slackware viene sviluppata secondo criteri di semplicità ed eleganza, astenendosi dall'intervenire senza motivo sui sorgenti inclusi nella distribuzione e non aggiungendo strumenti di configurazione supplementari oltre a quelli previsti dai rispettivi autori. Fanno eccezione alcuni strumenti essenziali, basati in parte sulla libreria ncurses, scritti per facilitare la configurazione di base del sistema e la gestione dei pacchetti. Se da una parte molti condividono la scelta di non includere determinati programmi e di adottare strumenti semplificati in nome della qualità e della stabilità del sistema, altri sentono la mancanza di strumenti di configurazione con interfaccia grafica e di un sistema di gestione dei pacchetti più "amichevole" degli essenziali ma versatili package tools, i quali per esempio affidano all'utente la responsabilità di risolvere le dipendenze.

### KISS

Molte delle controversie in merito alle scelte progettuali di Slackware nascono infatti da interpretazioni differenti del concetto di semplicità. Mentre alcuni ritengono che, per essere semplice, un sistema operativo debba fare ampio uso di interfacce grafiche intuitive e di strumenti automatizzati, gli estimatori di Slackware si rifanno al cosiddetto principio KISS il quale, in modo analogo al rasoio di Ockham, invita ad astenersi dall'aumentare la complessità del sistema con aggiunte non strettamente necessarie. Un sistema intuitivo e ricco di automatismi può infatti semplificare l'interazione a chi è abituato a utilizzare il mouse, tuttavia può costituire un ostacolo per chi preferisce (o deve) avere sul sistema un maggiore controllo, attraverso la riga di comando e la modifica diretta dei file di configurazione.
D'altra parte, l'osservanza del principio KISS permette di ottenere un sistema forse meno intuitivo, almeno a prima vista, e tuttavia più semplice perché meno complesso, semplificando così l'interazione a un livello più approfondito, ossia attraverso la riga di comando, e favorendo inoltre la stabilità del sistema stesso. La semplicità apprezzata dagli utenti di Slackware è di quest'ultimo tipo e infatti sono proprio le scelte rigorose di Patrick Volkerding a mantenere attorno a questa distribuzione una solida e attiva comunità di utenti, mentre sono numerose le distribuzioni che si impegnano a rendere Linux intuitivo e accessibile anche per gli utenti inesperti.

### Architetture supportate

Slackware viene pubblicata ufficialmente per le seguenti architetture:
* x86
* x86-64 (dalla versione 13.0)
* ARM 32bit (dalla versione 11.0 fino alla versione 15.0)
* ARM 64bit (dalla futura versione 15.1)
Lo sviluppo del porting ufficiale ARM a 32 bit si è interrotto a marzo 2022 con la versione 15.0, concentrando i futuri sviluppi unicamente sull'architettura ARM a 64 bit. Il motivo di questa interruzione è da rilevarsi principalmente nel fatto che l'hardware ARM a 32 bit non è più in grado di tenere il passo con lo sviluppo di Slackware e le limitazioni dell'architettura stanno diventando sempre più un freno all'adozione delle nuove tecnologie. In aggiunta, dal momento che molte delle principali distribuzioni GNU/Linux hanno cessato lo sviluppo dell'architettura ARM a 32 bit, diventa sempre più oneroso supportare applicazioni la cui compilazione fallisce o che danno problemi in esecuzione. Il supporto ufficiale per l'architettura ARMv5 (32 bit senza unità in virgola mobile, Slackware ARM versione 14.2) è terminato a marzo 2023, con l'ultimo aggiornamento distribuito il 9 marzo 2023.
Eric Hameleers aveva inoltre iniziato a creare un porting non ufficiale per l'architettura ARM dedicato ai dispositivi ARM di nuova generazione come i netbook, rimasto però incompleto. Sia il progetto ufficiale per l'architettura SPARC, chiamato Slackware Linux for SPARC, sia quello per l'architettura mainframe IBM ESA/390, denominato Slack/390, sono da tempo inattivi. Il progetto di terze parti Splack non ha avuto maggior fortuna, mentre il porting non ufficiale su piattaforma PowerPC, denominato Slackintosh Linux Project, è fermo alla versione 12.1. Il progetto non ufficiale slarm64 ha un porting delle architetture AArch64 (ARM64) e riscv64 dalla versione 15.0 di Slackware. Un altro progetto non ufficiale, BonSlack, mette a disposizione un porting delle architetture ARM (32 bit soft e hard float), AArch64 (ARM64), Alpha, HPPA (PA-RISC 1.1), LoongArch (64 bit), MIPS (32 e 64 bit), OpenRISC, PowerPC (32 e 64 bit), RISC-V (64 bit), S/390x, SH-4, SPARC (32 e 64 bit) e x86 (32 bit con struttura "time" a 64 bit), la maggior parte a partire dalla versione 14.2.

### Boot Loader

Per poter mantenere le operazioni di configurazione e di amministrazione del sistema il più possibile agevoli e trasparenti, attraverso file di configurazione leggibili e modificabili senza la necessità di strumenti specifici, Slackware ha adottato LILO (LInux LOader) quale boot loader predefinito. È comunque disponibile anche GRUB (GRand Unified Boot loader) che dalla versione 14.1 si trova nel ramo principale della distribuzione.

### Init system

Slackware utilizza, per la sua semplicità, un init system di tipo BSD. A partire dalla versione 7.0 è stata comunque introdotta la compatibilità con System V, così da permettere una maggiore interoperabilità con alcuni software di terze parti che installano script per quest'ultimo tipo di init system. Se da un lato un init system di tipo BSD assegna un unico script a ciascun runlevel, System V gestisce invece, per ogni runlevel, un'intera directory contenente gli script (o i link simbolici a essi) che devono essere eseguiti. Nel caso di Slackware, quando l'esecuzione dell'init system è terminata viene lanciato lo script rc.sysvinit, il quale a sua volta determina l'esecuzione degli script basati su System V che dovessero trovarsi nel sistema..
Slackware è l'unica delle distribuzioni "storiche" (e una delle poche in generale, assieme a Devuan, Void Linux e Alpine Linux ), a non aver introdotto il controverso package di bootstrap e management, fortemente voluto da RedHat e dal suo principale architetto Lennart Poettering, chiamato Systemd.

### Interfacce utente

L'interfaccia utente predefinita in Slackware è la shell testuale bash, sviluppata nell'ambito del progetto GNU. È comunque possibile configurare facilmente il sistema per l'avvio automatico del server grafico X, modificando il file inittab in modo tale da abilitare il runlevel 4. Il display manager predefinito è KDM ma è disponibile anche il tradizionale XDM.
L'ambiente desktop KDE è considerato la principale interfaccia grafica di Slackware, dato che viene avviato con il server X senza la necessità di ulteriori modifiche ai file di configurazione. È inoltre disponibile Xfce, più leggero e particolarmente indicato per l'utilizzo su computer poco performanti, così come i window manager fluxbox, blackbox, Window Maker, fvwm2 e twm. L'impostazione del window manager preferito può essere fatta attraverso KDM, intervenendo manualmente sui file di configurazione, oppure grazie allo script xwmconfig.
L'ambiente desktop GNOME è stato escluso dalla distribuzione a partire dalla versione 10.2, essenzialmente per motivi pratici. In seguito a questa decisione sono nati alcuni progetti gestiti da terze parti, il cui scopo è continuare a rendere disponibile questo ambiente agli utenti di Slackware. In particolare, due progetti attivamente sviluppati sono Dropline GNOME e MATE SlackBuilds (quest'ultimo basato su un fork della versione 2 di GNOME).

### Gestione dei pacchetti

Slackware fornisce un sistema di gestione dei pacchetti dalle caratteristiche uniche il quale, pur consentendo l'installazione, l'aggiornamento e la rimozione dei pacchetti con la medesima facilità delle altre distribuzioni, non prevede un controllo automatico delle dipendenze. Ciò da un lato favorisce una gestione semplice e molto flessibile del sistema, dall'altro implica che l'utente debba sapere esattamente quello che fa. Si tratta di una scelta in linea con la filosofia progettuale adottata da Patrick Volkerding: astenersi cioè dall'aumentare senza motivo la complessità del sistema, favorendo in questo modo la stabilità, la flessibilità e la pulizia dell'insieme.
I pacchetti di Slackware contengono il software compilato e compresso in un archivio, in cui ciascun file si trova nella sua posizione finale all'interno della struttura del filesystem. I pacchetti ufficiali vengono compressi utilizzando l'algoritmo LZMA e portano quindi l'estensione sintetica .txz. Fino al 2009 Patrick Volkerding ha invece utilizzato l'algoritmo Deflate incluso nel programma gzip. Un pacchetto può a volte contenere, oltre ai file da installare, anche uno script denominato doinst.sh che permette di eseguire automaticamente eventuali operazioni di post-installazione, utili per il corretto funzionamento del software installato.

#### Strumenti a riga di comando

Slackware offre diversi strumenti per la gestione dei pacchetti. Il comando installpkg permette di installare sul sistema uno o più pacchetti compatibili con Slackware, i quali possono avere come estensione .txz, .tgz, .tbz o .tlz. Con removepkg è invece possibile rimuovere dal sistema pacchetti precedentemente installati, mentre upgradepkg ne permette l'aggiornamento. Con explodepkg i contenuti del pacchetto vengono estratti ma non installati, mentre makepkg consente di generare, a partire dalla directory corrente, pacchetti compatibili con la distribuzione. Va segnalata anche l'esistenza di slacktrack, un programma con cui si possono creare pacchetti partendo direttamente dal codice sorgente. Tutti questi strumenti sono ben documentati nelle rispettive pagine man oltre che nella guida ufficiale.

#### Slackpkg e pkgtool

A partire dalla versione 12.2, slackpkg è stato aggiunto al ramo principale della distribuzione: si tratta di uno strumento che semplifica l'installazione, l'aggiornamento e la rimozione del software. Dotato anche di un'interfaccia semi-grafica, slackpkg permette l'installazione e l'aggiornamento via rete, agevolando così, grazie alla sincronizzazione con il repository ufficiale, l'amministrazione del sistema. In perfetto "stile Slackware" slackpkg non gestisce le dipendenze. Anche pkgtool, lo strumento di configurazione di Slackware, riunisce in sé alcune delle funzionalità del sistema di gestione dei pacchetti: in particolare consente di visualizzare i dettagli riguardanti i pacchetti installati, di rimuoverli o di installarne di nuovi.

#### Controllo delle dipendenze e flessibilità

Come già accennato nei paragrafi precedenti, la filosofia progettuale di Slackware affida all'amministratore del sistema la responsabilità di verificare che tutte le dipendenze siano soddisfatte. Ciò garantisce un'elevata flessibilità, tuttavia questa caratteristica ha dato vita in passato a discussioni fra gli estimatori di questa soluzione e coloro i quali, più vicini a distribuzioni come Debian o Red Hat, ritengono indispensabile per l'utente medio non solo il controllo delle dipendenze da parte del sistema, ma pure un ampio repository di software già compilato, a cui attingere con facilità mediante un sistema automatizzato. Per questi ultimi, Slackware sarebbe inoltre poco adatta all'ambito aziendale, poiché includerebbe nella distribuzione una quantità troppo limitata di software e non permetterebbe un'efficiente amministrazione del sistema in contesti caratterizzati da un elevato numero di computer.
D'altra parte, Slackware permette di compilare e di installare, de facto, qualsiasi programma esistente che sia compatibile con l'installazione di base, proprio grazie alla neutralità garantita dall'assenza di un complesso sistema di controllo delle dipendenze legato a un repository centralizzato. L'apertura e l'estendibilità di slackpkg rendono inoltre possibile la creazione di repository dedicati, locali o remoti, contenenti il software che si ritiene necessario per le proprie esigenze e che non è incluso nella distribuzione di base. Questi archivi possono essere gestiti in modo trasparente mediante slackpkg, alla pari del repository ufficiale, definendo con precisione le priorità dei pacchetti che dovessero trovarsi contemporaneamente in più di un repository. Ciò è possibile grazie a un'estensione per slackpkg denominata slackpkg+, creata da Matteo Rossini con il contributo e il sostegno di altri sviluppatori, tra cui Eric Hameleers.

## Sviluppo

Patrick Volkerding si occupa personalmente dello sviluppo di Slackware e coordina il lavoro degli altri membri del team, il quale è organizzato in maniera snella e informale. Spetta a Volkerding, in quanto fondatore, l'ultima parola su cosa includere nella distribuzione e sulla direzione che questa deve prendere, perciò egli stesso si definisce un BDFL (Benevolo Dittatore a Vita). Grazie alla costante ed elevata qualità del suo lavoro, egli gode di stima e autorevolezza presso gli utenti di questo sistema.
In modo analogo ad altre distribuzioni Linux, lo sviluppo di Slackware avviene in un apposito ramo, denominato -current (attuale), che viene aggiornato frequentemente ed è pubblicamente disponibile. Periodicamente viene inoltre pubblicata una versione stabile che in genere riceve solo gli aggiornamenti di sicurezza (patch) per i software che compongono la distribuzione. Per una data versione stabile, il supporto di sicurezza continua anche dopo la pubblicazione delle versioni successive e prosegue per alcuni anni, dopodiché la responsabilità della manutenzione del sistema passa completamente all'utente.
La decisione di pubblicare una nuova versione spetta a Patrick Volkerding ed è insindacabile. Il criterio seguito è puramente qualitativo: «La nuova versione verrà pubblicata quando sarà pronta». Questo criterio intende evitare al team di imporsi scadenze che potrebbero non trovare adeguata corrispondenza nella realtà e permette di mantenere alto il livello di qualità e stabilità del sistema.
Siccome il progetto è gestito da un numero relativamente ristretto di persone, non esiste un sistema specifico per il tracciamento dei bug e le eventuali segnalazioni avvengono in maniera informale attraverso il forum LinuxQuestions.org, dove risponde attivamente il team di sviluppo e lo stesso Patrick. Informazioni dettagliate riguardanti i cambiamenti vengono registrate nei vari ChangeLog, pubblicati sul sito ufficiale, e nel file ChangeLog.txt incluso nella distribuzione. Le segnalazioni relative agli aggiornamenti di sicurezza vengono diffuse grazie a una apposita mailing list.
Il progetto non prevede nemmeno una procedura definita per entrare a far parte della squadra di sviluppo, tuttavia, in occasione di un'intervista, lo stesso Volkerding ha dato un'indicazione, in parte scherzosa, rivolta agli aspiranti nuovi membri del team: «Sorprendeteci in modo appropriato e forse vi faremo entrare, ma badate alle terribili prove di iniziazione».

## Requisiti di sistema

Slackware è in grado di funzionare su computer con architettura x86 con almeno un processore i486, o della famiglia x86-64, la più recente estensione a 64 bit della prima che include le famiglie AMD64, EM64T e Intel 64, o ancora su architettura ARM. Come nel caso di altre moderne distribuzioni Linux, Slackware è compatibile con la maggior parte dell'hardware più diffuso per i computer da scrivania, portatili e ultraportatili. Per quanto riguarda i requisiti di memoria, non c'è una quantità minima prestabilita, ma l'installazione richiede almeno 128 Megabyte di spazio di swap, e un sistema usabile con grafica minimale richiede almeno 64 MB di RAM, mentre in memoria di massa lo spazio dipende dal software della distribuzione effettivamente installato: un'installazione minimale necessita di circa mezzo Gigabyte, una completa di almeno 8.

## Installazione

Sul sito ufficiale si possono acquistare, anche in forma di sottoscrizione, dischi già masterizzati contenenti l'intera distribuzione: in questo modo si contribuisce al progetto e si permette materialmente a Patrick Volkerding di continuarne lo sviluppo. È anche possibile scaricare gratuitamente le immagini .iso per DVD o CD da uno dei mirror predisposti oppure servendosi del protocollo BitTorrent. Quest'ultimo sistema contribuisce a evitare il sovraccarico dei mirror ed è perciò consigliato. Il metodo d'installazione più comune consiste nel riavviare il computer con un CD o un DVD contenente la distribuzione ed eseguire i passi previsti. All'inizio è possibile specificare eventuali parametri da passare al kernel, quindi si viene invitati a impostare il layout della propria tastiera.
Dopo l'accesso come utente root ci si trova di fronte a un'interfaccia a riga di comando attraverso la quale è possibile interagire con il sistema, creando una o più partizioni e un eventuale spazio di swap. I principali strumenti di partizionamento a disposizione dell'utente sono fdisk, parted e cfdisk, ma sono disponibili anche sfdisk e gdisk. Non appena definite le partizioni si può decidere di creare i rispettivi filesystem mediante gli strumenti mkfs, oppure affidarsi anche per questo al programma d'installazione. Quest'ultimo va avviato con il comando setup e permette di gestire i passi che, dall'assegnazione delle partizioni ai vari mount point, fino alla configurazione del boot loader, installeranno il sistema sul disco rigido.
L'interfaccia del programma d'installazione appare come un elenco di opzioni in cui ciascuna rappresenta una fase del processo (tranne la sezione HELP che fornisce un aiuto all'utilizzo del programma). La sezione KEYMAP consente di scegliere il layout corrispondente alla propria tastiera. Nella sezione ADDSWAP vengono rilevate le partizioni di swap presenti sul disco e se ne può decidere l'attivazione. La sezione TARGET permette di scegliere le partizioni su cui il sistema verrà installato, formattandole se lo si desidera e assegnando a ciascuna un mount point.
Nella sezione SOURCE occorre specificare la fonte da cui i pacchetti verranno installati: da CD o DVD, da una directory, oppure dalla rete. Nella sezione SELECT vengono mostrate le categorie di software che è possibile installare: quelle consigliate sono già selezionate ma ciascuno è libero di modificare la configurazione secondo le proprie necessità. La sezione INSTALL prevede diverse opzioni, in base al livello di interattività che si desidera ottenere durante l'installazione dei pacchetti: full è la scelta consigliata e a prova d'errore, ma è possibile avere un controllo maggiore sul processo scegliendo una delle altre opzioni. Con CONFIGURE si entra nella fase di configurazione del sistema.
Si può dapprima creare un dispositivo di boot utilizzando una chiavetta USB, quindi si passa alla configurazione del boot loader LILO, a quella del mouse, del fuso orario, della rete, infine alla scelta del window manager predefinito. È inoltre possibile decidere quali demoni debbano essere avviati durante il boot del sistema. Tutti questi strumenti di configurazione saranno accessibili anche in seguito grazie al programma pkgtool il quale, inoltre, riunisce in sé alcune delle funzionalità degli strumenti di gestione dei pacchetti.

## Versioni

Segue una carrellata di tutte le versioni di Slackware pubblicate, con a fianco l'evoluzione temporale dalla versione 1.0 (1993) fino a oggi. Per maggiori dettagli è bene consultare gli annunci e le release notes delle rispettive versioni. Una tabella riassuntiva ricca d'informazioni si può trovare inoltre sul sito DistroWatch, nella sezione dedicata a questa distribuzione. Per quanto riguarda il supporto con le patch di sicurezza, dal 1º agosto 2012 queste non vengono più fornite per le versioni fino alla 12.0 (pubblicata nel 2007), mentre dal 9 dicembre 2013 anche il supporto per le versioni 12.1 e 12.2 (pubblicate entrambe nel 2008) è stato interrotto. Le versioni 13.x sono state supportate fino al 19 giugno 2018, mentre il 3 gennaio 2024 è cessato il supporto per le versioni 14.x.
| Versione | Data di pubblicazione | Supportata (patch) | Caratteristiche principali, cambiamenti |
| pre-1.0-beta | 10.04.1993 | No | Linux 0.99.pl8-3; Linux libc 4.3.3; gcc 2.3.3; Perl 4.035. |
| 1.00 | 16.07.1993 | No | Linux 0.99pl11a; Linux libc 4.4.1; gcc 2.4.5; Perl 4.035; XFree86 1.3. |
| 1.01 | 04.08.1993 | No | Linux 0.99pl12a; Linux libc 4.4.1; gcc 2.4.5; Perl 4.035; XFree86 1.3. |
| 1.1.0 | 05.11.1993 | No | Linux 0.99pl13; Linux libc 4.4.4; gcc 2.4.5/2.5.8; Perl 4.036; XFree86 2.1. |
| 1.1.1 | 12.12.1993 | No | Linux 0.99pl14c; Linux libc 4.4.4; gcc 2.4.5/2.5.8; Perl 4.036; XFree86 2.1. |
| 1.1.2 | 05.02.1994 | No | Linux 0.99.15; Linux libc 4.5.19; gcc 2.4.5/2.5.8; Binutils 1.9l.3 (gas 1.38.1l.2/2.2l); Perl 4.036; XFree86 2.1. |
| 1.2.0 | 19.03.1994 | No | Linux 1.0; Linux libc 4.5.24; gcc 2.4.5/2.5.8; Binutils 1.9l.4 (gas 1.38.1l.2/2.2l); Perl 4.036; XFree86 2.1. |
| 2.0.0 | 01.07.1994 | No | Linux 1.0.9/1.1.18; Linux libc 4.5.26; gcc 2.4.5/2.5.8; Binutils 1.9l.4 (gas 1.38.1l.2/2.2l); Perl 4.036/5.00a; XFree86 2.1.1. |
| 2.0.1 | 18.09.1994 | No | Linux 1.0.9/1.1.18; Linux libc 4.5.26; gcc 2.4.5/2.6.0; Binutils 1.9l.4 (gas 1.38.1l.2/2.2l); Perl 4.036/5.00a; XFree86 2.1.1. |
| 2.1.0 | 31.10.1994 | No | Linux 1.1.59; Linux libc 4.5.26; gcc 2.5.8/2.6.0; Binutils 1.9l.4 (gas 1.38.1l.2/2.2l); Perl 4.036/5.000; XFree86 3.1. |
| 2.2.0 | 30.03.1995 | No | Linux 1.2.1; Linux libc 4.6.27; gcc 2.6.3; Binutils 2.5.2; Perl 4.036/5.000; XFree86 3.1.1. |
| 2.3 | 24.05.1995 | No | Linux 1.2.8; Linux libc 4.6.27; gcc 2.6.3; Binutils 2.5.2; Perl 4.036/5.001; XFree86 3.1.1. |
| 3.0 | 24.08.1995 | No | Linux 1.2.13/1.3.18; Linux libc 5.0.9; gcc 2.7.0; Binutils 2.5.2; Perl 5.001; XFree86 3.1.2. |
| 3.1 | 24.07.1996 | No | Linux 2.0.0; Linux libc 5.3.12; gcc 2.7.2; Binutils 2.6.0.14; Perl 5.003; Apache 1.0.0; XFree86 3.1.2. |
| 3.2 | 20.04.1997 | No | Linux 2.0.29; Linux libc 5.4.23; gcc 2.7.2.1; Binutils 2.7.0.9; Perl 5.003; Apache 1.1.3; XFree86 3.2. |
| 3.3 | 11.07.1997 | No | Linux 2.0.30; Linux libc 5.4.33 (glibc 2.0.4 in /contrib); gcc 2.7.2.2; Binutils 2.8.1.0.1; Perl 5.004_03; Apache 1.2.0; XFree86 3.3. |
| 3.4 | 14.10.1997 | No (EOL: 22.05.1998) | Linux 2.0.30; Linux libc 5.4.33 (glibc 2.0.5c in /contrib); gcc 2.7.2.3; Binutils 2.8.1.0.1; Perl 5.004_03; Apache 1.2.4; XFree86 3.3.1. Aggiunta procedura super-semplice per installazione UMSDOS -- zipslack.zip, un sistema Linux completo in un file di 33 megabyte. |
| 3.5 | 09.06.1998 | No (EOL: 15.10.1998) | Linux 2.0.34; Linux libc 5.4.44 (glibc 2.0.5c in /contrib); egcs 1.0.3, gcc 2.8.1; Binutils 2.8.1.0.23; Perl 5.004_04; Python 1.5; Apache 1.2.6; XFree86 3.3.2p2; GTK 1.0.2; Qt 1.41; Netscape Navigator 4.04; Gimp 0.99.23. |
| 3.6 | 28.10.1998 | No (EOL: 18.03.1999) | Linux 2.0.35/2.1.125; glibc 2.0.7pre6; egcs 1.0.3, gcc 2.7.2.3/2.8.1; Binutils 2.8.1.0.23; Perl 5.005_02; Python 1.5.1; Apache 1.3.3; XFree86 3.3.2p3; GTK 1.0.6; Qt 1.41; Netscape Navigator 4.07; Gimp 1.0.2. |
| 3.9/4.0 | 17.05.1999 | No (EOL: 27.11.1999) | Linux 2.0.37pre10 (3.9), 2.2.6 (4.0); glibc 2.0.7pre6; egcs 1.1.2, gcc 2.7.2.3/2.8.1; Binutils 2.9.1.0.19a; Perl 5.005_003; Python 1.5.1; Apache 1.3.6; XFree86 3.3.3p1; GTK 1.2.2; Qt 1.44; GNOME 1.0; KDE 1.1.1; Netscape Communicator 4.51; Gimp 1.0.4. |
| 7.0 | 25.10.1999 | No (EOL: 22.06.2002) | Linux 2.2.13; glibc 2.1.3; egcs 1.1.2, gcc 2.7.2.3/2.95.1; Binutils 2.9.1.0.25; Perl 5.005_003; Python 1.5.2; Apache 1.3.9; XFree86 3.3.5; GTK 1.2.6; Qt 1.44; GNOME 1.0.53; KDE 1.1.2; Netscape Communicator 4.7; Gimp 1.0.4. |
| 7.1 | 25.06.2000 | No (EOL: 26.06.2002) | Linux 2.2.16; glibc 2.1.3; egcs 1.1.2, gcc 2.7.2.3/2.95.2; Binutils 2.9.1.0.25; Perl 5.6.0; Python 1.5.2; Apache 1.3.12; Apache 1.3.12; XFree86 3.3.6; GTK 1.2.8; Qt 1.45; GNOME 1.2; KDE 1.1.2/1.91; Netscape Communicator 4.73; Gimp 1.0.4. |
| 8.0 | 01.07.2001 | No (EOL: 29.03.2003) | Linux 2.2.19; glibc 2.2.3; gcc 2.95.3; Binutils 2.11.90.0.19; Perl 5.6.1; Python 2.0.1; PHP 4.0.5; Apache 1.3.20; OpenSSL 0.9.6a; OpenSSH 2.9p1; XFree86 4.1.0; GTK 1.2.10; Qt 2.3.1; GNOME 1.4; KDE 2.1.1; Netscape Communicator 4.77; Mozilla 0.9.1; Gimp 1.2.1. |
| 8.1 | 18.06.2002 | No (EOL: 01.08.2012) | Linux 2.4.18; glibc 2.2.5; gcc 2.95.3; Binutils 2.12.90.0.19; Perl 5.6.1; Python 2.2.1; PHP 4.2.1; Apache 1.3.26; OpenSSL 0.9.6d; OpenSSH 3.2.3p1; XFree86 4.2.0; GTK 1.2.10; Qt 3.0.4; GNOME 1.4.1; KDE 3.0.1; Xfce 3.8.16; Mozilla 1.0; Netscape 6.2.3; Gimp 1.2.3. Introdotti i nomi lunghi per i pacchetti (da 8.3 a name-version-arch-build.tgz) e cambiati gli script per l'installazione da hdsetup a pkgtools. |
| 9.0 | 18.03.2003 | No (EOL: 01.08.2012) | Linux 2.4.20/21; glibc 2.3.1; gcc 3.2.2; Binutils 2.13.90.0.18; Perl 5.8.0; Python 2.2.2; PHP 4.3.1; Apache 1.3.27; OpenSSL 0.9.7a; OpenSSH 3.5p1; GnuPG 1.2.1; XFree86 4.3.0; GTK 2.2.1; Qt 3.1.2; GNOME 2.2; KDE 3.1; Xfce 3.8.18; Mozilla 1.3; Netscape 7.02; Gimp 1.2.3. |
| 9.1 | 26.09.2003 | No (EOL: 01.08.2012) | Linux 2.4.22/26; glibc 2.3.2; gcc 3.2.3; Binutils 2.14.90.0.6; Perl 5.8.0; Python 2.3.1; PHP 4.3.3; Apache 1.3.28; OpenSSL 0.9.7b; OpenSSH 3.7.1p1; GnuPG 1.2.3; XFree86 4.3.0; GTK 2.2.4; Qt 3.2.1; GNOME 2.4.0; KDE 3.1.4; Xfce 3.99.4; Mozilla 1.4; Netscape 7.1; Gimp 1.2.5. Introdotto il supporto per ALSA. Processore minimo 486. |
| 10.0 | 23.06.2004 | No (EOL: 01.08.2012) | Linux 2.4.26; glibc 2.3.2; gcc 3.3.4; Binutils 2.15.90.0.3; Perl 5.8.4; Python 2.3.4; PHP 4.3.7; Apache 1.3.31; OpenSSL 0.9.7d; OpenSSH 3.8.1p1; GnuPG 1.2.4; X11R6.7.0 (da X.Org); GTK 2.4.3; Qt 3.3.2; KDE 3.2.3; Xfce 4.0.5; Mozilla 1.7; Netscape 7.1; Gimp 2.2.3. Passati da XFree86 a Xorg. |
| 10.1 | 06.02.2005 | No (EOL: 01.08.2012) | Linux 2.4.29; glibc 2.3.4; gcc 3.3.4; Binutils 2.15.92.0.2; Perl 5.8.6; Python 2.4; PHP 4.3.10; Apache 1.3.33; OpenSSL 0.9.7e; OpenSSH 3.9p1; GnuPG 1.2.7; X11R6.8.1 (da X.Org); GTK 2.6.1; Qt 3.3.3; GNOME 2.6.2; KDE 3.3.2; Xfce 4.2.0; Mozilla 1.7.5; Netscape 7.2; Gimp 2.2.3. |
| 10.2 | 15.09.2005 | No (EOL: 01.08.2012) | Linux 2.4.26; glibc 2.3.5; gcc 3.3.6; Binutils 2.15.92.0.2; Perl 5.8.7; Python 2.4.1; PHP 4.4.0; Apache 1.3.33; OpenSSL 0.9.7g; OpenSSH 4.2p1; GnuPG 1.2.7; X11R6.8.2 (da X.Org); GTK 2.6.10; Qt 3.3.4; KDE 3.4.2; Xfce 4.2.2; Mozilla 1.7.11; Firefox e Thunderbird 1.0.6; Gimp 2.2.8. L'ambiente desktop GNOME viene escluso dalla distribuzione. |
| 11.0 | 02.10.2006 | No (EOL: 01.08.2012) | Linux 2.4.33.3; glibc 2.3.6; gcc 3.4.6; Binutils 2.15.92.0.2; Perl 5.8.8; Python 2.4.3; Ruby 1.8.4; PHP 4.4.4; Apache 1.3.37; OpenSSL 0.9.8d; OpenSSH 4.4p1; GnuPG 1.4.5; X11R6.9.0 (da X.Org); GTK 2.8.20; Qt 3.3.6; KDE 3.5.4; Xfce 4.2.3.2; SeaMonkey 1.0.5; Firefox e Thunderbird 1.5.0.7; Pidgin 2.0.2; Gimp 2.2.15. Prima versione disponibile in DVD. |
| 12.0 | 02.07.2007 | No (EOL: 01.08.2012) | Linux 2.6.21.5; glibc 2.5; GCC 4.1.2; Binutils 2.17.50.0.17; Perl 5.8.8; Python 2.5.1; Ruby 1.8.6; PHP 5.2.3; Apache 2.2.4; OpenSSL 0.9.8e; OpenSSH 4.6p1; OpenVPN 2.0.9; GnuPG 2.0.4; X11R7.2 (XOrg 1.3.0.0); GTK 2.10.13; Qt 3.3.8; KDE 3.5.7; Xfce 4.4.1; SeaMonkey 1.1.2; Firefox e Thunderbird 2.0.0.4; Pidgin 2.0.2; Gimp 2.2.15. Introdotto HAL e passati dala versione 2.4 a 2.6 per il kernel. |
| 12.1 | 01.05.2008 | No (EOL: 09.12.2013) | Linux 2.6.24.5; glibc 2.7; GCC 4.2.3; Binutils 2.17.50.0.17; Perl 5.8.8; Python 2.5.2; Ruby 1.8.6-p114; PHP 5.2.5; Apache 2.2.8; OpenSSL 0.9.8g; OpenSSH 5.0p1; OpenVPN 2.0.9; GnuPG 2.0.9; X11R7.3 (XOrg 1.4.0.90); GTK 2.12.9; Qt 3.3.8b; KDE 3.5.9; Xfce 4.4.2; SeaMonkey 1.1.9; Firefox 2.0.0.14; Thunderbird 2.0.0.12; Pidgin 2.4.1; Gimp 2.4.5. |
| 12.2 | 10.12.2008 | No (EOL: 09.12.2013) | Linux 2.6.27.7/31; glibc 2.7; GCC 4.2.4; Binutils 2.18.50.0.9; Perl 5.10.0; Python 2.5.2; Ruby 1.8.7-p72; PHP 5.2.8; Apache 2.2.10; OpenSSL 0.9.8i; OpenSSH 5.1p1; OpenVPN 2.0.9; GnuPG 2.0.12; X11R7.3 (XOrg 1.4.2); GTK 2.12.12; Qt 3.3.8b; KDE 3.5.10; Xfce 4.4.3; SeaMonkey 1.1.13; Firefox 3.0.4; Thunderbird 2.0.0.18; Pidgin 2.5.2; Gimp 2.4.7. |
| 13.0 | 26.08.2009 | No (EOL: 19.06.2018) | Linux 2.6.29.6; glibc 2.9; GCC 4.3.3; Binutils 2.18.50.0.9; Perl 5.10.0; Python 2.6.2; Ruby 1.8.7-p174; PHP 5.2.10; Apache 2.2.13; OpenSSL 0.9.8k; OpenSSH 5.2p1; OpenVPN 2.0.9; GnuPG 2.0.12; X11R7.4 (XOrg 1.6.3); GTK 2.14.7; Qt 4-r1008952; KDE 4.2.4; Xfce 4.6.1; SeaMonkey 1.1.17; Firefox 3.5.2; Thunderbird 2.0.0.23; Pidgin 2.5.9; Gimp 2.6.6. Introdotto il supporto per l'architettura x86_64; passaggio da KDE 3.5 a 4.x e passaggio dalla compressione gzip a xz per i pacchetti. |
| 13.1 | 24.05.2010 | No (EOL: 19.06.2018) | Linux 2.6.33.4; glibc 2.11.1; GCC 4.4.4; Binutils 2.20.51.0.8; Perl 5.10.1; Python 2.6.4; Ruby 1.9.1-p378; PHP 5.2.13; Apache 2.2.15; OpenSSL 0.9.8n; OpenSSH 5.5p1; OpenVPN 2.1.1; GnuPG 2.0.14; X11R7.5 (XOrg 1.7.7); GTK 2.18.9; Qt 4.6.2; KDE 4.4.3; Xfce 4.6.1; SeaMonkey 2.0.4; Firefox 3.6.3; Thunderbird 3.0.4; Pidgin 2.7.0; Gimp 2.6.8. Aggiunti PolicyKit and ConsoleKit e passati al sottosistema libata. |
| 13.37 | 27.04.2011 | No (EOL: 19.06.2018) | Linux 2.6.37.6; glibc 2.13; GCC 4.5.2; Binutils 2.21.51.0.6; Perl 5.12.3; Python 2.6.6; Ruby 1.9.1-p431; PHP 5.3.6; Apache 2.2.17; OpenSSL 0.9.8r; OpenSSH 5.8p1; OpenVPN 2.1.4; GnuPG 2.0.17; X11R7.6 (XOrg 1.9.5); GTK 2.24.4; Qt 4.7.0; KDE 4.5.5; Xfce 4.6.2; SeaMonkey 2.1b3; Firefox 4.0; Thunderbird 3.1.9; Pidgin 2.7.11; Gimp 2.6.11. Aggiunto il supporto per GPT e introdotti i btrfs-progs. |
| 14.0 | 28.09.2012 | No (EOL: 03.01.2024) | Linux 3.2.29/98; glibc 2.15; GCC 4.7.1; LLVM 3.0; Binutils 2.22.52.0.2; Perl 5.16.1; Python 2.7.3; Ruby 1.9.3-p194; PHP 5.4.7; Apache 2.4.3; OpenSSL 1.0.1c; OpenSSH 6.1p1; OpenVPN 2.2.2; GnuPG 2.0.19; X11R7.7 (XOrg 1.12.3); GTK 3.4.4; Qt 4.8.2; KDE 4.8.5; Xfce 4.10.0; SeaMonkey 2.12.1; Firefox e Thunderbird 15.0.1; Pidgin 2.10.6; Gimp 2.8.2. Aggiunto NetworkManager e rimosso HAL dal momento che le sue funzionalità sono state inserite in udev. |
| 14.1 | 07.11.2013 | No (EOL: 03.01.2024) | Linux 3.10.17/107; glibc 2.17; GCC 4.8.2; LLVM 3.3; Binutils 2.23.52.0.1; Perl 5.18.1; Python 2.7.5; Ruby 1.9.3-p448; PHP 5.4.20; Apache 2.4.6; OpenSSL 1.0.1e; OpenSSH 6.3p1; OpenVPN 2.3.2; GnuPG 2.0.22; XOrg 1.14.3; GTK 3.18.2; Qt 4.8.5; KDE 4.10.5; Xfce 4.10.1; SeaMonkey 2.21; Firefox e Thunderbird ESR 24.1; Pidgin 2.10.7; Gimp 2.8.6. Abbandono di MySQL a favore di MariaDB. Introduzione del supporto per la tecnologia UEFI. |
| 14.2 | 30.06.2016 | No (EOL: 03.01.2024) | Linux 4.4.14/276 (config per 4.6 in /testing); glibc 2.23; GCC 5.3.0; LLVM 3.8; Binutils 2.26; Perl 5.22.2; Python 2.7.11; Ruby 2.2.5; PHP 5.6.23; Apache 2.4.20; OpenSSL 1.0.2h; OpenSSH 7.2p2; OpenVPN 2.3.11; GnuPG 2.0.30;; XOrg 1.18.3; GTK 3.18.9; Qt 4.8.7; KDE 4.14.3; Xfce 4.12.1; SeaMonkey 2.40; Firefox 45.2.0 ESR, Thunderbird 45.1.1; Pidgin 2.10.12; Gimp 2.8.16. Sostituzione di Udev con Eudev, di ConsoleKit con ConsoleKit2. Introduzione di PulseAudio e VDPAU. Processore minimo nel porting a 32bit Pentium (i586). |
| 15.0 (ultima distribuita) | 02.02.2022 | Sì | Linux 5.15.19/94; glibc 2.33; GCC 11.2.0; LLVM 13.0.0; Binutils 2.37; Perl 5.34.0; Python 2.7.18 e 3.9.10; Ruby 3.0.3; Rust 1.58.1; PHP 7.4.27 (8.0.20 e 8.1.8 in /extra); Apache 2.4.52; OpenSSL 1.1.1m; OpenSSH 8.8p1; OpenVPN 2.5.5; GnuPG 2.2.33; XOrg 1.20.14; GTK 4.4.1; Qt 5.15.3; KDE Plasma 5 5.23.5; Xfce 4.16.3; SeaMonkey 2.53.10.2 (2.53.19 in patches); Firefox 91.5.1 ESR (115.16.x in patches), Thunderbird 91.5.1 (115.15.x in patches); Pidgin 2.14.8; Gimp 2.10.30. Sostituzione dell'encoding di default da ASCII a UTF-8, di ConsoleKit2 con elogind e di KDE4 con KDE Plasma 5. Aggiunto il supporto per python3. Cambiato il path del database dei pacchetti da /var/log/packages a /var/lib/pkgtools. Aggiunti LAME, vulkansdk, SDL2, FFmpeg, PAM e Wayland. |
| current (15.1) | rolling | sviluppo | Linux 6.11.x; glibc 2.40; GCC 14.2.x; LLVM 18.x.x; Binutils 2.4x; Perl 5.40.x; Python 2.7.18 e 3.11.1x; Ruby 3.3.x; Rust 1.8x.x; PHP 8.3.1x; Apache 2.4.6x; OpenSSL 3.3.x; OpenSSH 9.9px; OpenVPN 2.6.1x; GnuPG 2.4.x; XOrg 21.1.1x; GTK 4.16.x; Qt 6.7.x; KDE Plasma 5 5.116.x; Xfce 4.18.x; SeaMonkey 2.53.xx; Firefox 128.x.x, Thunderbird 128.x.x; Pidgin 2.14.1x; Gimp 2.10.3x. |

## Distribuzioni derivate

Segue un elenco di alcune distribuzioni derivate da Slackware:
* Austrumi - distribuzione live di origine lettone.
* Frugalware Linux
* Platypux – derivante anche da Linux From Scratch (LFS).
* Porteus - distribuzione live che non richiede installazione
* SimpleLinux – utilizzante la compressione LZMA per comprimere i file di sistema
* TopologiLinux - distribuzione nata per girare su un sistema Microsoft Windows esistente
* VectorLinux - caratterizzata da un'interfaccia user friendly con funzionalità semplificate rispetto alla distro nativa
* Zenwalk Linux - distribuzione molto leggera e utilizzabile anche su hardware datato
* ZipSlack - distribuzione nata per essere leggera e portatile

## Popolarità

La popolarità di un sistema operativo Linux - intesa come reale utilizzo - non può essere determinata in modo affidabile data la mancanza di strumenti e di criteri scientifici di misurazione adatti allo scopo. Alcuni siti web forniscono tuttavia delle statistiche basate sui contatti ricevuti da determinate pagine, oppure sulle parole chiave utilizzate dagli utenti per la ricerca.

### Popolarità globale

I dati raccolti dal sito DistroWatch mostrano che l'interesse per la pagina dedicata a Slackware si è mantenuto, nel corso degli anni, relativamente stabile: escludendo infatti le statistiche relative ai primi due anni di vita del sito, i contatti giornalieri ricevuti dalla pagina oscillano tra un minimo di 531 (2008) e un massimo di 676 (2012), mentre nel 2004 ammontavano a 669. Per quanto riguarda invece la popolarità di Slackware rispetto alle altre distribuzioni, la sua posizione nella graduatoria è scesa progressivamente dal settimo posto del 2002 al diciassettesimo del 2013. Per leggere quest'ultimo dato va considerata la comparsa nel 2004 di Ubuntu e, negli anni successivi, di altre distribuzioni rivolte a un pubblico tecnicamente meno preparato, il quale fino ad allora era stato escluso dall'ecosistema Linux. Ciò ha fatto registrare un aumento dell'interesse per Linux in generale, spostando nel contempo l'equilibrio verso le nuove distribuzioni user friendly. Le statistiche elaborate dal progetto Linux Counter mostrano invece che, alla fine del 2013, su un totale di circa 90 000 computer di cui era nota la distribuzione installata, il 6,4% funzionava grazie a Slackware GNU/Linux.

### Popolarità regionale

I dati relativi all'utilizzo della parola "Slackware" nel motore di ricerca Google mostrano che, nel periodo tra il 2004 e l'inizio del 2014, il termine è stato utilizzato più frequentemente in Bulgaria, seguita nell'ordine da Polonia, Brasile, Lettonia, Romania, Repubblica Ceca e Indonesia. A partire dal 2005 si è inoltre verificata una diminuzione progressiva dell'utilizzo del termine.