Quand j'effectue une mise à niveau de 11.10 à 12.04, quel est le meilleur moyen de réactiver mes PPA et les référentiels ajoutés?
la source
Quand j'effectue une mise à niveau de 11.10 à 12.04, quel est le meilleur moyen de réactiver mes PPA et les référentiels ajoutés?
Vous devez tous les ajouter / réactiver individuellement en supprimant la mise en commentaire des lignes dans les fichiers du /etc/apt/sources.list.d/
répertoire.
Bien que le temps de mise à niveau soit un bon moment pour réévaluer si vous avez besoin du PPA si vous en utilisiez juste un pour obtenir une version plus récente d'un package.
J'ai écrit un script bash qui supprime le caractère de hachage de tous les fichiers sources.list.d
qui ont été désactivés lors de la mise à niveau.
Le code suivant concerne la mise à niveau des raring
sources vers saucy
.
Si vous voulez conserver le suffixe # disabled on upgrade to ...
, utilisez
for f in /etc/apt/sources.list.d/*.list; do sudo sed -i 's/raring/saucy/g' $f; sudo sed -i 's/^# \(.*disabled on upgrade to.*\)/\1/g' $f;done
si vous voulez supprimer le suffixe # disabled on upgrade to ...
, utilisez
for f in /etc/apt/sources.list.d/*.list; do sudo sed -i 's/raring/saucy/g' $f; sudo sed -i 's/^# \(.*\) # disabled on upgrade to.*/\1/g' $f;done
Voici un script python qui utilise l'API Python APT pour rechercher et activer de telles sources, tout en définissant la version dans la version actuelle:
#! /usr/bin/python3
import aptsources.sourceslist as sl
import lsb_release
codename = lsb_release.get_distro_information()['CODENAME']
sources = sl.SourcesList()
for source in sources.list:
if source.comment.lower().find("disabled on upgrade") >= 0:
source.dist = codename
source.set_enabled(True)
print(source)
sources.save()
Si vous l'exécutez sans sudo
, il ne pourra pas enregistrer les modifications, mais il indiquera quelles sources seraient activées. Exécuter avec sudo
pour enregistrer les modifications.
sources.list.d
et trois fichiers extraterrestressources.list
. Est-ce que c'est quelque chose que Ubuntu prend en charge automatiquement maintenant?J'ai créé quelques scripts pour activer (réactiver) et désactiver les PPA, spécialement après une mise à niveau. Les voici:
Script de réactivation PPA
Script de désactivation de PPA
Le
sudo
est inclus pour que vous puissiez enregistrer ce script dans votre répertoire bin à domicilela source