Dans l'article précédent, j'ai détaillé comment retrouver et ajouter une clé servant à authentifier un dépôt de paquetages, en l'occurrence un dépôt contenant une version à jour de node.js.

Maintenant, il faut ajouter ce dépôt, mais auparavant, il me semble essentiel de pouvoir lister les dépôts actuellement utilisés : il se peut qu'un autre dépôt ait été ajouté auparavant (par exemple, on a précédemment ajouté le dépôt pour les version 4.x de node.js, et maintenant on voudrait utiliser une version 5.x).

Il n'y a malheureusement pas encore de commande pour établir cette liste, alors voici un petit script de ma composition :

#!/bin/bash
#
#List repositories that are not from ubuntu.com

function listExtraRepo() {
  echo "--> $1"
  grep -e '^deb.*$' $1 | grep -v -e 'ubuntu\.com' | grep -o -e '[^ ]*\:\/\/[^ ]*'
}

for l in `find /etc/apt -name "*.list"`; do
  listExtraRepo $l
done

En français, on cherche tous les fichiers "*.list" se trouvant dans /etc/apt, et pour chacun d'eux, on affiche le chemin et le nom du fichier, puis toutes les urls n'étant pas dans "ubuntu.com".

Plus précisement, on filtre le fichier en 3 étapes:

  • D'abord on ne garde que les lignes déclarant un dépôt (exit les commentaires et les lignes vides),
  • Ensuite on rejette toutes les lignes contenant "ubuntu.com",
  • Enfin, on extrait l'url de chaque ligne restante.

Sur mon poste, j'obtiens le résultat suivant (on remarquera que le dépot nodesource est déjà présent, puisque j'écris cet article à postériori) :

--> /etc/apt/sources.list
http://www.openprinting.org/download/printdriver/debian/
https://deb.nodesource.com/node_4.x