Una caratteristica peculiare dei sistemi basati sul software libero è l'esistenza dei repository, archivi di software gestiti da una comunità ed ai quali si può accedere con strumenti integrati nel sistema operativo. Reperire i programmi direttamente dai loro produttori, come è pratica comune per il software proprietario, comporta svantaggi significativi dal punto di vista della compatibilità e dell'integrazione al resto del sistema, dando luogo ad esempio al cosiddetto *dll hell*. Un approccio in parte più vicino a quello dei sistemi liberi è stato assunto ad esempio dall'Apple Store e dall'Android Market: i programmi sono scaricabili da una singola fonte tramite un apposito programma, ed è garantita la loro compatibilità ed uniformità con il resto dell'ambiente. Per raggiungere questo risultato, però, gli sviluppatori sono obbligati a rispettare vincoli rigidi sulle librerie usate, e perfino sul tipo di programmi ammessi. Grazie al permesso di migliorare e distribuire le migliorie garantito dalle licenze libere, è invece possibile ribaltare l'approccio: sono gli sviluppatori di una distribuzione a scegliere i programmi che ritengono validi, compilarli integrarli eventualmente al resto del sistema ed infine proporli all'utente finale in modo tale che con un comando o con due click possa installarli assieme a tutte le librerie di cui hanno bisogno. In questo modo si offre massima comodità all'utente senza imporre obblighi gravosi al programmatore. Un modello così centralizzato rischierebbe di introdurre vincoli arbitrari sui programmi permessi, così come avviene nel caso dell'Apple Store: questo non avviene da un lato per l'esistenza di numerose distribuzioni in amichevole concorrenza tra di loro, dall'altro perché è comunque possibile installare programmi provenienti da fonti diverse, anche se si perdono molti vantaggi del sistema centralizzato.