Les PPA sont des dépôts de paquets .deb pour Ubuntu.

Les dépôts personnels de paquets logiciels ou Personal Package Archives (PPA)

Les dépôts personnels de paquets logiciels ou Personal Package Archives (abrégés PPA) sont un service, proposé dans le cadre de la plate-forme LaunchPad, qui prend le code source déposé par les développeurs de logiciels et génère des paquets .deb que les utilisateurs d'Ubuntu pourront installer à travers leur gestionnaire de paquets logiciels.

  • Avantages pour les développeurs : proposer facilement et rapidement les versions récentes de leurs logiciels aux utilisateurs d'Ubuntu.
  • Avantages pour les utilisateurs : les PPA sont des dépôts de paquets logiciels dont le contenu est très récent.
    Contrairement à un paquet isolé, si un paquet installé à partir d'un PPA subit une mise à jour, vous en bénéficierez automatiquement.
  • Bien lire les avertissements dans les paragraphes suivants
Durant l'installation du ppa, le message suivant s'affiche : Fingerprint GUI is no longer maintained and is not compatible with Ubuntu 20.04 and newer
AVERTISSEMENT - Il est déconseillé d'utiliser le PPA de WebUpd8 en raison de problèmes rapportés sur le forum
Avertissements à lire avant toute utilisation d'un PPA :

Lorsqu'on ajoute un PPA on accorde une grande confiance à l'organisme qui le propose. En effet :

  • Lors de l'installation d'un logiciel depuis un PPA, puis lors de chaque mise à jour, on télécharge du contenu depuis des serveurs externes. Si l'intention du prestataire ou que la sécurité de son infrastructure laissent à désirer, on met son système en danger. En effet, on fournit au prestataire un accès presque direct à sa machine.
  • Si le PPA est mal maintenu, à tout moment 2 paquets peuvent entrer en conflit à propos d'une librairie que chacun utilise, mais dans des versions différentes. Il peut très bien s'agir d'une librairie essentielle à son système, ce qui peut le rendre inutilisable.
  • Bien que proposé dans le cadre de la plate-forme Launchpad, chaque PPA est maintenu par des contributeurs et des équipes de développement spécifiques à divers projets. En activant l'accès dans votre ordinateur à un PPA, vous reconnaissez faire confiance aux mainteneurs de ce PPA spécifique.
  • En aucun cas, les paquets en provenance d'un PPA ne sont maintenus par Canonical, Ils ne bénéficient pas non plus de la validation officielle Ubuntu, ni du support des développeurs des équipes officielles Ubuntu.
  • N'activez l'accès qu'à des PPA essentiels, digne de confiance.1)
  • La création d'un PPA est libre et sans restrictions. Par conséquent, il est possible que vous activiez l'accès à des PPA contenant des logiciels en développement ou dont la qualité est discutable.
  • Les PPA peuvent potentiellement contenir des logiciels de type malwares (virus, vers, rootkits, ransomwares…) placés dans ces dépôts par les mainteneurs du PPA ou par des hackers malveillants.

Chaque mainteneur de PPA a toutefois signé le code de conduite d'Ubuntu.

Dans ces conditions il est généralement préférable d'éviter l'installation d'un PPA, en particulier quand il n'est pas maintenu par un organisme officiel (l'éditeur du logiciel), et de s'orienter vers d'autres méthodes d'installation quand elles sont disponibles, comme Flatpak et Snap.

Pour lister les dépôts PPA présents sur votre système, dans un terminal, saisir la commande suivante :

ls -l /etc/apt/sources.list.d/
Pour avoir le détail de tous les dépôts (PPA ou non) en une seule fois, saisir la commande suivante dans un terminal :
grep -Enrv --include='*.list' --include='*.sources' '^#|^$' /etc/apt
L'ajout d'un PPA peut présenter de nombreux dangers pour votre système :
  • Instabilité ;
  • Mises à jour du système bloquées ;
  • Installation potentielle de code malveillant ;
  • Installation potentielle de bibliothèques incompatibles (système inutilisable) ;
  • etc.

N'utilisez les PPA qu'en cas de besoin, si et seulement si vous avez une confiance totale envers les développeurs qui s'occupent de ce PPA !

  • Pour plus de sécurité, le service Launchpad génère une clé unique pour chaque PPA et l'utilise pour signer les paquets construits dans ce PPA. L'ajout d'un dépôt PPA et de sa clef GPG est simplifié en une seule opération. Si vous rencontrez des problèmes de validation de la clé, se reporter au chapitre Problèmes connus.
  • Une fois le PPA ajouté, il faut recharger la liste des paquets pour que vos gestionnaires de paquets le prennent en compte. Il ne reste plus alors qu'à installer le ou les paquets désirés.
À chaque ajout de PPA, deux fichiers seront générés, nommés respectivement <nom_du_ppa>.list et <nom_du_ppa>.list.save dans le dossier /etc/apt/sources.list.d

Graphiquement

Il suffit d'ajouter le nom du dépôt PPA (commençant par ppa:) à vos sources de logiciels à l'aide de l'utilitaire "Logiciels & Mises à jour", comme décrit dans ce tutoriel.
Ajout d'un PPA

En lignes de commande

Si la commande add-apt-repository n'est pas disponible il vous faut les paquets python3-software-properties et software-properties-common
  • Ouvrir un terminal et saisir la commande suivante :
    sudo add-apt-repository ppa:<nom_du_dépôt>
  • Recharger la liste des paquets avec la commande suivante :
    sudo apt update

Par exemple pour l'ajout du PPA de Y PPA Manager :

sudo add-apt-repository ppa:webupd8team/y-ppa-manager
sudo apt update

add-apt-repository derrière un proxy d'entreprise

  • Ouvrir un terminal, vérifier les variables d'environnement en saisissant la commande suivante:
    env | grep -i proxy

    La réponse doit être quelque chose proche de

    HTTPS_PROXY=http://proxy:8080
    HTTP_PROXY=http://proxy:8080
    http_proxy=http://proxy:8080
    https_proxy=http://proxy:8080
  • Lancer ensuite la commande suivante:
    sudo -E add-apt-repository ppa:linaro-maintainers/toolchain

    Vous aurez alors pour réponse

    Executing: gpg --ignore-time-conflict --no-options --no-default-keyring --secret-keyring /etc/apt/secring.gpg --trustdb-name /etc/apt/trustdb.gpg --keyring /etc/apt/trusted.gpg --primary-keyring /etc/apt/trusted.gpg --keyserver keyserver.ubuntu.com --recv 1DD749B890A6F66D050D985CF1FCBACA7BE1F97B
    gpg: requesting key 7BE1F97B from hkp server keyserver.ubuntu.com
    gpgkeys: HTTP fetch error 7: couldn't connect to host
    gpg: no valid OpenPGP data found.
    gpg: Total number processed: 0
    • Si votre Proxy d'entreprise bloque le port 11371 du serveur Launchpad PPA pour l’utilisation des clés, nous allons forcer la connexion sur le port 80 avec la commande:
      sudo -E gpg --ignore-time-conflict --no-options --no-default-keyring --secret-keyring /etc/apt/secring.gpg --trustdb-name /etc/apt/trustdb.gpg --keyring /etc/apt/trusted.gpg --primary-keyring /etc/apt/trusted.gpg --keyserver hkp://keyserver.ubuntu.com:80 --recv 1DD749B890A6F66D050D985CF1FCBACA7BE1F97B
L'option -E donnée à la commande sudo permet de préserver l'environnement de l'utilisateur et donc la configuration proxy

La méthode classique « apt »

Suppression d'un PPA

Sans désinstaller les paquets du PPA

Il suffit de saisir dans un terminal la commande suivante:

sudo add-apt-repository --remove ppa:<nom_du_dépôt>

Par exemple pour l'appli KeepassXC :

sudo add-apt-repository --remove ppa:phoerious/keepassxc

ou

sudo rm /etc/apt/sources.list.d/<nom_du_fichier_dépôt>

Afin d'obtenir la liste des dépôts non officiels de votre système , passer la commande suivante :

ls -l /etc/apt/sources.list.d

Gestion des erreurs du serveur de clés

Si vous avez une erreur de type:

W: Erreur GPG : http://ppa.launchpad.net lucid Release: Les signatures suivantes n'ont pas pu être vérifiées car la clé publique n'est pas disponible : NO_PUBKEY D6B6DB186A68F637

Ouvrir un terminal et saisir la commande suivante : (Vous remplacerez D6B6DB186A68F637 par la valeur qui suit NO_PUBKEY de votre message d'erreur).

sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys D6B6DB186A68F637
FIXME apt-key est déprécié sous jammy!

Recharger la liste des paquets:

sudo apt update

Si ça ne fonctionne toujours pas :

Pour pouvoir récupérer une clé PPA des dépôts Launchpad il est IMPÉRATIF d'avoir une connexion ouverte sur le port 11371. Voir cette discussion.

Vous pouvez sinon saisir:

gpg --keyserver hkp://keyserver.ubuntu.com:80 --recv 3E5C1192
gpg --export --armor 3E5C1192 | sudo apt-key add -
sudo apt update

où 3E5C1192 sera remplacé par votre numéro de clé en erreur.

Source

PPA-Purge : désinstaller un paquet automatiquement et proprement

sudo ppa-purge ppa:<nom_du_dépôt>
Concernant le dépôt de PPA-Purge, veuillez consulter la note ci dessous, dédiée au logiciel complémentaire Launchpad-Getkeys.

Nous vous conseillons une installation conjointe

Launchpad-Getkeys : La gestion automatique des erreurs de clés

Le ppa nilarimogard/webupd8 ne semble plus maintenu, ne contient plus rien à l'attention des LTS en cours au 28 mars 2023.
De plus il contient un très grand nombre de paquets parfois inter-dépendants.

Il suffit d'ajouter le dépôt de Alin Andréï avec la commande :

sudo add-apt-repository ppa:nilarimogard/webupd8
sudo apt update

puis :

sudo apt-get install launchpad-getkeys
sudo launchpad-getkeys

La note suivante — présentée pour une référence et une gestion rapides — est mentionnée sur la page dédiée Gestion des erreurs de trousseau de clés que vous pouvez consulter pour plus de précisions.

launchpad-getkeys.
Une fois installé et lancé en ligne de commandes :
  • il récupère automatiquement l'ensemble des clés d'authentification manquantes, évitant du coup toutes les manipulations décrites plus haut.
  • Il répare donc les erreurs de type « missing GPG » de façon très simple.

FIXME le dépôt contient d'autres logiciels, dont Yad (Yet Another Dialog), XClip et PPA-Purge : désinstaller un paquet automatiquement et proprement qui sont des dépendances de Launchpad-getkeys.

Pour le faire de de façon graphique, procéder comme suit:

  • Sur la page web de l'archive, donc pour l' exemple dépôt de launchpad-getkeys, cliquer sur Technical details about this PPA.
  • Un espace de texte est déroulé, cliquer sur le code inscrit sous Signing key.
  • Dans la nouvelle page, faire un clic droit sur l'hyperlien pour pouvoir Enregistrer la cible du lien sous…. Choisir une destination.
  • Dans la fenêtre Sources de logiciels prévue à cette effet, choisir l'onglet Authentification puis cliquer sur Importer la clé….
  • Rechercher et sélectionner le fichier qui vient d'être enregistré (le nom par défaut est 'lookup'). Fermer la fenêtre des sources de logiciels.

Les captures d'écrans associées à cette manipulation peuvent être trouvées sur :
(en) « How do I fix the GPG error “NO_PUBKEY”? » —{ « Comment corriger une erreur GPG "AUCUNE CLÉ PUBLIQUE" » } ;
source : forum AskUbuntu.com ; auteur : Agmenor ; 13 novembre 2010.

Pour créer votre propre PPA, vous devez lire, accepter et signer le code de conduite Ubuntu.

Après avoir signé le code de conduite Ubuntu, rendez vous sur votre page Launchpad et cliquez sur "Create a new PPA". Vous devrez ensuite donner un nom à votre PPA (par défaut, le nom est ppa) et un nom d'affichage qui sera inclus dans la clé PGP de votre premier dépôt. Vous pouvez ensuite rentrer une description sur le contenu de votre PPA.

Votre PPA sera activé et vous pourrez ensuite y télécharger vos paquets grâce à la commande

dput ppa:<login launchpad>/<nom du ppa> <source.changes>

Voir cette : page dédiée à la gestion d'un PPA.


1)
À ce sujet, lisez la discussion dans le forum d'Ubuntu-FR.
  • ppa.txt
  • Dernière modification: Le 17/10/2023, 10:46
  • par 0ol