Les sources de logiciels

Un mémo pour garder la trace de ma configuration.

Environnement

PC sous Linux Debian 10 Buster

D’aucuns vont hurler à la FrankenDebian, j’ai donné mon avis ici

Sources officielles

deb http://deb.debian.org/debian-security/ jessie/updates contrib main non-free
deb http://deb.debian.org/debian-security/ stretch/updates contrib main non-free
deb http://deb.debian.org/debian-security/ buster/updates contrib main non-free
deb http://deb.debian.org/debian/ buster contrib main non-free
deb http://deb.debian.org/debian/ buster-updates contrib main non-free
deb http://deb.debian.org/debian buster-proposed-updates contrib main non-free
deb http://deb.debian.org/debian/ stretch contrib main non-free

Sources de tiers

Listage des fichiers créés et leur contenu:

egrep deb /etc/apt/sources.list.d/*
/etc/apt/sources.list.d/00-unstable.list:deb http://deb.debian.org/debian sid main contrib non-free
/etc/apt/sources.list.d/01-flash.list:deb [arch=amd64] http://archive.canonical.com/ bionic partner
/etc/apt/sources.list.d/01-flash.list:#deb [arch=amd64] http://archive.canonical.com/ xenial-proposed partner
/etc/apt/sources.list.d/02-google-chrome.list:deb [arch=amd64] http://dl.google.com/linux/chrome/deb/ stable main
/etc/apt/sources.list.d/03-indicator-keylock.list:#deb http://ppa.launchpad.net/tsbarnes/indicator-keylock/ubuntu/ xenial main
/etc/apt/sources.list.d/04-plexmediaserver.list:deb [arch=amd64] https://downloads.plex.tv/repo/deb/ public main
/etc/apt/sources.list.d/05-spotify.list:deb [arch=amd64] http://repository.spotify.com stable non-free
/etc/apt/sources.list.d/06-wine.list:#deb http://dl.winehq.org/wine-builds/debian/ buster main
/etc/apt/sources.list.d/07-google-earth-pro.list:deb [arch=amd64] http://dl.google.com/linux/earth/deb/ stable main
/etc/apt/sources.list.d/08-experimental.list:deb http://deb.debian.org/debian experimental main contrib

Préférences

root@debian:/etc/apt/preferences.d# cat experimental
Package: *
Pin: release a=experimental
Pin-Priority: -1
root@debian:/etc/apt/preferences.d# cat headers
Package: linux-headers-amd64
Pin: release a=testing
Pin-Priority: -1
root@debian:/etc/apt/preferences.d# cat image
Package: linux-image-amd64
Pin: release a=testing
Pin-Priority: -1
root@debian:/etc/apt/preferences.d# cat thunderbird
Package: thunderbird* lightning*
Pin: release a=testing
Pin-Priority: -1
root@debian:/etc/apt/preferences.d# cat unstable
# 0 < P < 100
# la version sera installée si aucune version du paquet n'est installée.
#
Package: *
Pin: release a=unstable
Pin-Priority: 50

root@debian:/etc/apt/preferences.d# cat chromium
Package: chromium*
Pin: release a=testing
Pin-Priority: -1

Clés d’authentification

root@debian:/# apt-key list
/etc/apt/trusted.gpg
--------------------
pub rsa1024 2010-01-16 [SC]
EA38 F47C 53E7 A818 F3C8 4A20 7384 429D 471E 4486
uid [ inconnue] Launchpad Miscellaneous

pub rsa4096 2012-05-11 [SC]
790B C727 7767 219C 42C8 6F93 3B4F E6AC C0B2 1F32
uid [ inconnue] Ubuntu Archive Automatic Signing Key (2012) <ftpmaster@ubuntu.com>

pub rsa4096 2016-04-12 [SC]
EB4C 1BFD 4F04 2F6D DDCC EC91 7721 F63B D38B 4796
uid [ inconnue] Google Inc. (Linux Packages Signing Authority) <linux-packages-keymaster@google.com>
sub rsa4096 2016-04-12 [S] [expire : 2019-04-12]
sub rsa4096 2017-01-24 [S] [expire : 2020-01-24]

pub rsa4096 2015-11-23 [SC] [expire : 2025-11-20]
4A9E 0F43 60DC 0D17 956D 904E 818A 435C 5FCB F54A
uid [ inconnue] Sebastian Lackner (WineHQ packages) <sebastian@fds-team.de>
sub rsa4096 2015-11-23 [E] [expire : 2025-11-20]

pub rsa4096 2015-03-22 [SC]
CD66 5CBA 0E2F 88B7 373F 7CB9 9720 3C7B 3ADC A79D
uid [ inconnue] Plex Inc.
sub rsa4096 2015-03-22 [E]

pub rsa4096 2017-07-25 [SC] [expire : 2018-07-25]
0DF7 31E4 5CE2 4F27 EEEB 1450 EFDC 8610 341D 9410
uid [ inconnue] Spotify Public Repository Signing Key <tux@spotify.com>

/etc/apt/trusted.gpg.d/debian-archive-jessie-automatic.gpg
----------------------------------------------------------
pub rsa4096 2014-11-21 [SC] [expire : 2022-11-19]
126C 0D24 BD8A 2942 CC7D F8AC 7638 D044 2B90 D010
uid [ inconnue] Debian Archive Automatic Signing Key (8/jessie) <ftpmaster@debian.org>

/etc/apt/trusted.gpg.d/debian-archive-jessie-security-automatic.gpg
-------------------------------------------------------------------
pub rsa4096 2014-11-21 [SC] [expire : 2022-11-19]
D211 6914 1CEC D440 F2EB 8DDA 9D6D 8F6B C857 C906
uid [ inconnue] Debian Security Archive Automatic Signing Key (8/jessie) <ftpmaster@debian.org>

/etc/apt/trusted.gpg.d/debian-archive-jessie-stable.gpg
-------------------------------------------------------
pub rsa4096 2013-08-17 [SC] [expire : 2021-08-15]
75DD C3C4 A499 F1A1 8CB5 F3C8 CBF8 D6FD 518E 17E1
uid [ inconnue] Jessie Stable Release Key <debian-release@lists.debian.org>

/etc/apt/trusted.gpg.d/debian-archive-stretch-automatic.gpg
-----------------------------------------------------------
pub rsa4096 2017-05-22 [SC] [expire : 2025-05-20]
E1CF 20DD FFE4 B89E 8026 58F1 E0B1 1894 F66A EC98
uid [ inconnue] Debian Archive Automatic Signing Key (9/stretch) <ftpmaster@debian.org>
sub rsa4096 2017-05-22 [S] [expire : 2025-05-20]

/etc/apt/trusted.gpg.d/debian-archive-stretch-security-automatic.gpg
--------------------------------------------------------------------
pub rsa4096 2017-05-22 [SC] [expire : 2025-05-20]
6ED6 F5CB 5FA6 FB2F 460A E88E EDA0 D238 8AE2 2BA9
uid [ inconnue] Debian Security Archive Automatic Signing Key (9/stretch) <ftpmaster@debian.org>
sub rsa4096 2017-05-22 [S] [expire : 2025-05-20]

/etc/apt/trusted.gpg.d/debian-archive-stretch-stable.gpg
--------------------------------------------------------
pub rsa4096 2017-05-20 [SC] [expire : 2025-05-18]
067E 3C45 6BAE 240A CEE8 8F6F EF0F 382A 1A7B 6500
uid [ inconnue] Debian Stable Release Key (9/stretch) <debian-release@lists.debian.org>

/etc/apt/trusted.gpg.d/debian-archive-wheezy-automatic.gpg
----------------------------------------------------------
pub rsa4096 2012-04-27 [SC] [expire : 2020-04-25]
A1BD 8E9D 78F7 FE5C 3E65 D8AF 8B48 AD62 4692 5553
uid [ inconnue] Debian Archive Automatic Signing Key (7.0/wheezy) <ftpmaster@debian.org>

/etc/apt/trusted.gpg.d/debian-archive-wheezy-stable.gpg
-------------------------------------------------------
pub rsa4096 2012-05-08 [SC] [expire : 2019-05-07]
ED6D 6527 1AAC F0FF 15D1 2303 6FB2 A1C2 65FF B764
uid [ inconnue] Wheezy Stable Release Key <debian-release@lists.debian.org>

/etc/apt/trusted.gpg.d/spotify-2017-07-25-341D9410.gpg
------------------------------------------------------
pub rsa4096 2017-07-25 [SC] [expire : 2018-07-25]
0DF7 31E4 5CE2 4F27 EEEB 1450 EFDC 8610 341D 9410
uid [ inconnue] Spotify Public Repository Signing Key <tux@spotify.com>

/etc/apt/trusted.gpg.d/spotify-2018-05-23-48BF1C90.gpg
------------------------------------------------------
pub rsa4096 2018-05-23 [SC] [expire : 2019-08-16]
931F F8E7 9F08 7613 4EDD BDCC A87F F9DF 48BF 1C90
uid [ inconnue] Spotify Public Repository Signing Key <tux@spotify.com>

root@debian:/#

Vérifications

 apt policy linux-image-amd64
linux-image-amd64:
Installé : 4.9+80+deb9u5
Candidat : 4.9+80+deb9u5
Table de version :
4.17+95 50
50 http://deb.debian.org/debian sid/main amd64 Packages
4.16+94 -1
500 http://deb.debian.org/debian buster/main amd64 Packages
*** 4.9+80+deb9u5 500
500 http://deb.debian.org/debian stretch/main amd64 Packages
100 /var/lib/dpkg/status
4.9+80+deb9u4 500
500 http://deb.debian.org/debian-security stretch/updates/main amd64 Packages
3.16+63+deb8u2 500
500 http://deb.debian.org/debian-security jessie/updates/main amd64 Packages
apt policy thunderbird
thunderbird:
Installé : 1:52.9.1-1~deb9u1
Candidat : 1:52.9.1-1~deb9u1
Table de version :
1:60.0~b10-1 -1
-1 http://deb.debian.org/debian experimental/main amd64 Packages
1:52.9.1-1 -1
500 http://deb.debian.org/debian buster/main amd64 Packages
50 http://deb.debian.org/debian sid/main amd64 Packages
*** 1:52.9.1-1~deb9u1 500
500 http://deb.debian.org/debian-security stretch/updates/main amd64 Packages
100 /var/lib/dpkg/status
1:52.9.1-1~deb8u1 500
500 http://deb.debian.org/debian-security jessie/updates/main amd64 Packages
1:52.8.0-1~deb9u1 500
500 http://deb.debian.org/debian stretch/main amd64 Packages
apt policy chromium
chromium:
Installé : 67.0.3396.87-1~deb9u1
Candidat : 67.0.3396.87-1~deb9u1
Table de version :
68.0.3440.42-1 -1
-1 http://deb.debian.org/debian experimental/main amd64 Packages
67.0.3396.87-1 -1
500 http://deb.debian.org/debian buster/main amd64 Packages
50 http://deb.debian.org/debian sid/main amd64 Packages
*** 67.0.3396.87-1~deb9u1 500
500 http://deb.debian.org/debian-security stretch/updates/main amd64 Packages
100 /var/lib/dpkg/status
63.0.3239.84-1~deb9u1 500
500 http://deb.debian.org/debian stretch/main amd64 Packages
57.0.2987.98-1~deb8u1 500
500 http://deb.debian.org/debian-security jessie/updates/main amd64 Packages

Plus d’infos sur la gestion des sources

Plus d’infos sur la gestion des préférences

Exemple je m’amuse aussi comme ça:

Etat au 23 septembre 2018
root@debian:~# cd /etc/apt/preferences.d/
root@debian:/etc/apt/preferences.d# ls
buster
root@debian:/etc/apt/preferences.d# cat buster
#
# P >= 1000
#cette priorité entraîne l'installation du paquet même s'il s'agit d'un retour en arrière.
# 990 <= P < 1000
#la version sera installée, même si elle n'appartient pas à la distribution par défaut ; mais elle ne sera pas installée si la version installée est plus récente.
# 500 <= P < 990
#La version sera installée, sauf s'il existe une version appartenant à la distribution par défaut ou si la version installée est plus récente.
# 100 <= P < 500
# la version sera installée, sauf s'il existe une version appartenant à une autre distribution ou si la version installée est plus récente.
# 0 < P < 100
#la version sera installée si aucune version du paquet n'est installée.
# P < 0
#cette priorité empêche l'installation de la version.
# P = 0
#a un comportement indéfini, ne pas l'utiliser.
#
#Le fichier des préférences suivant affecte une priorité dans l'ordre suivant 1) securité de la distribution stable 2) interdire sid/unstable
#
Package: *
Pin: release o=Debian,a=stable,l=Debian-Security
Pin-Priority: 999

Package: *
Pin: release n=sid
Pin-Priority: -1
root@debian:/etc/apt/preferences.d#

Ainsi Chromium de Stable/sécurité est privilégiée

apt policy chromium
chromium:
Installé : 69.0.3497.92-1~deb9u1
Candidat : 69.0.3497.92-1~deb9u1
Table de version :
69.0.3497.92-1 500
500 http://deb.debian.org/debian buster/main amd64 Packages
-1 http://deb.debian.org/debian sid/main amd64 Packages
*** 69.0.3497.92-1~deb9u1 999
999 http://deb.debian.org/debian-security stretch/updates/main amd64 Packages
100 /var/lib/dpkg/status
63.0.3239.84-1~deb9u1 500
500 http://deb.debian.org/debian stretch/main amd64 Packages
57.0.2987.98-1~deb8u1 500
500 http://deb.debian.org/debian-security jessie/updates/main amd64 Packages

Sans fichier préférences.

Edition du 7 novembre 2018

On peut laisser apt gérer seul sans aucun fichier préférences.

Uniquement indiquer une « release » par défaut

https://manpages.debian.org/stretch/apt/apt_preferences.5.fr.htmlQuand une distribution par défaut a été indiquée, APT utilise l’algorithme suivant pour déterminer la priorité des versions d’un paquet :

priorité 1

pour les versions issues d’archives dont le fichier Release comporte la mention « NotAutomatic: yes » mais pas « ButAutomaticUpgrades: yes » comme l’archive experimental de Debian.

une priorité égale à 100

pour les versions issues d’archives dont le fichier Release comporte la mention « NotAutomatic: yes » et « ButAutomaticUpgrades: yes » comme l’archive des rétroportages de Debian depuis squeeze-backports.

une priorité égale à 500

est affectée aux versions qui n’appartiennent pas à la distribution par défaut.

une priorité égale à 990

est affectée aux versions qui appartiennent à la distribution par défaut.

Créer un fichier /etc/apt/apt.conf.d/00default avec le contenu:

APT::Default-Release "buster";

Vérification

apt policy linux-image-amd64
linux-image-amd64:
Installé : 4.18+99
Candidat : 4.18+99
Table de version :
*** 4.18+99 990
990 http://deb.debian.org/debian buster/main amd64 Packages
500 http://deb.debian.org/debian sid/main amd64 Packages
100 /var/lib/dpkg/status
4.9+80+deb9u6 500
500 http://deb.debian.org/debian-security stretch/updates/main amd64 Packages
500 http://deb.debian.org/debian stretch-proposed-updates/main amd64 Packages
4.9+80+deb9u5 500
500 http://deb.debian.org/debian stretch/main amd64 Packages
3.16+63+deb8u3 500
500 http://deb.debian.org/debian-security jessie/updates/main amd64 Packages

 

Combinaison pour utiliser le noyau de Stretch sécurité sur une installation Buster

Edition du 9 novembre 2018
/etc/apt/preferences.d/securite 
Package: *
Pin: release o=Debian,a=stable,l=Debian-Security
Pin-Priority: 999
/etc/apt/apt.conf.d/00default 
APT::Default-Release "buster";
apt policy linux-image-amd64
linux-image-amd64:
Installé : 4.9+80+deb9u6
Candidat : 4.9+80+deb9u6
Table de version :
4.18+99 990
990 http://deb.debian.org/debian buster/main amd64 Packages
500 http://deb.debian.org/debian sid/main amd64 Packages
*** 4.9+80+deb9u6 999
999 http://deb.debian.org/debian-security stretch/updates/main amd64 Packages
100 /var/lib/dpkg/status
4.9+80+deb9u5 500
500 http://deb.debian.org/debian stretch/main amd64 Packages
3.16+63+deb8u3 500
500 http://deb.debian.org/debian-security jessie/updates/main amd64 Packages

 

Statistiques

Comptage des paquets installés en provenance de sid/unstable uniquement

apt list --installed | grep /unstable,now | wc -l

6

Comptage des paquets installés en provenance de testing

apt list --installed | grep testing | wc -l

2455

Lister ses sources actives avec un alias

Créer ou modifier le fichier .bash_aliases avec le contenu suivant:

alias aptlist='cat /etc/apt/sources.list{,.d/*} 2>/dev/null | grep -v "^#"'

Exemple

@debian:~$ aptlist
deb http://deb.debian.org/debian-security/ jessie/updates contrib main non-free
deb http://deb.debian.org/debian-security/ stretch/updates contrib main non-free
deb http://deb.debian.org/debian-security/ buster/updates contrib main non-free
deb http://deb.debian.org/debian/ jessie contrib main non-free
deb http://deb.debian.org/debian/ stretch contrib main non-free
deb http://deb.debian.org/debian/ stretch-proposed-updates contrib main non-free
deb http://deb.debian.org/debian/ buster contrib main non-free
deb http://deb.debian.org/debian/ buster-updates contrib main non-free
deb http://deb.debian.org/debian/ buster-proposed-updates contrib main non-free
deb http://deb.debian.org/debian/ sid main contrib non-free
deb [arch=amd64] http://archive.canonical.com/ bionic partner
deb [arch=amd64] http://dl.google.com/linux/chrome/deb/ stable main
deb http://ppa.launchpad.net/tsbarnes/indicator-keylock/ubuntu/ bionic main
deb [arch=amd64] http://repository.spotify.com stable non-free
deb [arch=amd64 trusted=yes] http://dl.google.com/linux/earth/deb/ stable main
deb http://deb.debian.org/debian/ experimental main
deb http://download.videolan.org/pub/debian/stable/ /

2019

2019 verra le passage de Debian 10 Buster en version stable.

J’anticipe et je ne mets plus aucun fichier preference , uniquement la release par defaut Buster, de façon à coller au plus près de Buster.

Toutefois j’utilise le noyau 4.19 de Sid

uname -a
Linux debian 4.19.0-1-amd64 #1 SMP Debian 4.19.13-1 (2018-12-30) x86_64 GNU/Linux

Lister les paramètres de configuration

apt-config dump

Mon fichier de configuration personnel:

root@debian:/etc/apt/apt.conf.d# cat 00default-perso-guy
APT::Default-Release "buster";
Acquire::http::AllowRedirect "false";

Faille APT

Suite à la faille APT j’en ai profité pour passer sur un dépôt qui travaille en https

deb https://cdn-aws.deb.debian.org/debian-security/ jessie/updates contrib main non-free
deb https://cdn-aws.deb.debian.org/debian-security/ stretch/updates contrib main non-free
deb https://cdn-aws.deb.debian.org/debian-security/ buster/updates contrib main non-free
deb https://cdn-aws.deb.debian.org/debian/ jessie contrib main non-free
deb https://cdn-aws.deb.debian.org/debian stretch contrib main non-free
deb https://cdn-aws.deb.debian.org/debian stretch-proposed-updates contrib main non-free
deb https://cdn-aws.deb.debian.org/debian/ buster contrib main non-free
deb https://cdn-aws.deb.debian.org/debian/ buster-updates contrib main non-free
deb https://cdn-aws.deb.debian.org/debian/ buster-proposed-updates contrib main non-free
deb https://cdn-aws.deb.debian.org/debian/ sid main contrib non-free

Par Bidouille De Bian

Bidouilleur sur Linux Debian 10 (Buster). Débutant dans le blog sur Wordpress.