Comment puis-je activer les paquets non libres sur Debian?

47

Comment puis-je activer les paquets non libres sur Debian? Je souhaite installer le JDK Java de Sun, mais celui-ci n'est pas disponible pour moi.

Quiffner
la source

Réponses:

50

Ouvrez /etc/apt/sources.list, et vous devriez voir des lignes comme celles-ci (les URL vont probablement varier):

deb http://http.us.debian.org/debian stable main contrib

Ajoutez simplement non-freeaux URL respectives que vous souhaitez utiliser, à savoir:

 deb http://http.us.debian.org/debian stable main contrib non-free

En cours d'exécution apt-get update, votre référentiel local sera mis à jour avec la liste des packages.

Andrew M.
la source
20

Vous pouvez également limiter cela un peu si vous ne voulez que des paquets très spécifiques de non-free (les firmwares pour votre matériel par exemple).

Pour ce faire, conservez votre /etc/apt/sources.listcomme décrit par @Andrew M. Ensuite, utilisez Apt Pinning pour désactiver par défaut tous les packages non libres de votre version actuelle:

Créez un fichier nommé /etc/apt/preferences.d/non-free_policycontenant les directives suivantes:

Explanation: Disable packages from non-free tree by default
Package: *
Pin: release o=Debian,a=stable,l=Debian,c=non-free
Pin-Priority: -1

Maintenant, créez un autre fichier pour le paquet spécifique que vous voulez obtenir de non-free.
Supposons par exemple que vous souhaitiez ajouter les pilotes Intel pour les cartes sans fil (package firmware-iwlwifi ).
Créez un nom de fichier /etc/apt/preferences.d/firmware-iwlwifi_nonfreeavec ces lignes:

Explanation: Enable package firmware-iwlwifi from non-free tree
Package: firmware-iwlwifi
Pin: release o=Debian,a=stable,l=Debian,c=non-free
Pin-Priority: 600

Cette configuration évite de gonfler votre paquet avec ces paquets non-gratuits ennuyeux ;)

jopasserat
la source
3
Plus d'informations sur apt pinning ici: wiki.debian.org/AptPreferences
jopasserat
1
Qu'est - ce que la o, a, let cmoyenne dans la Pin:directive, et comment sont plusieurs packages ajoutés?
MattBianco
origine, archive, étiquette et composant. consultez la page de manuel pour plus de détails manpages.debian.org/jessie/apt/apt_preferences.5.en.html
jopasserat
7

Méthode en ligne de commande pour la réponse de @Andrew M. si vous souhaitez un package non libre pour toutes les sources:

sudo apt-add-repository non-free
sudo apt-get update

Réponse inspirée par: https://askubuntu.com/a/553847/67211

Lucas
la source
Cela me donne une erreur deapt-add-repository: not found
Chris Stryczynski
@ChrisStryczynski, installez le paquet optionnel software-properties-commonpour obtenir cet outil.
Lucas