Utiliser PPA dans Ubuntu Linux [Guide complet]

 

Si vous utilisiez Ubuntu ou une autre distribution Linux basée sur Ubuntu, telle que Linux Mint, Linux Lite, Zorin, etc., vous avez peut-être rencontré trois lignes magiques de ce type:

sudo add-apt-repository ppa:dr-akulavich/lighttable
sudo apt-get update
sudo apt-get install lighttable-installer

Un certain nombre de sites Web suggèrent ce type de lignes à installer des applications dans Ubuntu. C'est ce qu'on appelle l'installation d'une application à l'aide de PPA.

Mais qu'est-ce qu'un PPA? Pourquoi est-il utilisé? Est-il sécuritaire d'utiliser PPA? Comment utiliser correctement le PPA? Comment supprimer un PPA?

Je répondrai à toutes les questions ci-dessus dans ce guide détaillé. Même si vous savez déjà quelques choses sur les APP, je suis sûr que cet article ajoutera encore à vos connaissances.

Notez que j'écris cet article en utilisant Ubuntu. Je vais donc utiliser le terme Ubuntu un peu partout, mais les explications et étapes sont également applicables aux autres distributions basées sur Debian / Ubuntu.

Qu'est-ce que le PPA? Pourquoi est-il utilisé?

Tout ce que vous devez savoir sur le PPA sous Ubuntu Linux

PPA est l'acronyme de Personal Package Archive.

Cela a-t-il du sens? Probablement pas.

Avant de comprendre PPA, vous devez connaître le concept de référentiels sous Linux. Je ne vais pas entrer dans les détails ici cependant.

Concept de référentiels et de gestion de paquets

Un référentiel est un ensemble de fichiers contenant des informations sur divers logiciels, leurs versions et d'autres détails, tels que la somme de contrôle. Chaque version d'Ubuntu possède son propre ensemble officiel de quatre référentiels:

  • Entrée - Logiciel libre et à code source ouvert pris en charge par Canonical.
  • Univers - Logiciel libre et à source ouverte mis à jour par la communauté.
  • Limité - Pilotes propriétaires pour les périphériques.
  • Multiverse - Logiciels limités par des droits d'auteur ou des problèmes juridiques.

Vous pouvez voir ces référentiels pour toutes les versions d'Ubuntu ici. Vous pouvez les parcourir et accéder aux différents référentiels. Par exemple, le référentiel principal Ubuntu 16.04 peut être trouvé ici.

Il s’agit donc d’une URL Web contenant des informations sur le logiciel. Comment votre système sait-il où se trouvent ces référentiels?

Ces informations sont stockées dans le fichier sources.list du répertoire / etc / apt. Si vous regardez son contenu, vous verrez qu'il contient l'URL des référentiels. Les lignes avec # au début sont ignorées.

Maintenant, lorsque vous exécutez la commande sudo apt update, votre système utilise Outil APT pour vérifier contre le repo et stocke les informations sur le logiciel et leur version dans un cache. Lorsque vous utilisez la commande sudo apt install nom_package, elle utilise ces informations pour extraire ce package à partir de l'URL où le logiciel est stocké.

Si le référentiel ne contient pas les informations relatives à un paquet donné, une erreur telle que:

E: Unable to locate package

À ce stade, je recommande de lire mon guide d'utilisation des commandes apt. Cela vous donnera une bien meilleure compréhension des commandes apt, des mises à jour, etc.

C'était donc à propos des référentiels. Mais qu'est-ce qu'un PPA? Comment entre-t-il dans l'image?

Pourquoi PPA est-il utilisé?

Comme vous pouvez le constater, Ubuntu contrôle quel logiciel et, surtout, quelle version du logiciel est installé sur votre système. Mais imaginons qu'un développeur de logiciel publie une nouvelle version du logiciel.

Ubuntu ne le rendra pas disponible immédiatement. Une procédure permet de vérifier si la nouvelle version du logiciel est compatible avec le système ou non. Cela garantit la stabilité du système.

Mais cela signifie également que cela prendra quelques semaines ou, dans certains cas, quelques mois avant que Ubuntu ne le mette à disposition. Tout le monde ne voudrait pas attendre aussi longtemps pour mettre la main sur la nouvelle version de son logiciel préféré.

De même, supposons que quelqu'un développe un logiciel et demande à Ubuntu de l'inclure dans les référentiels officiels. Encore une fois, il faudra des mois avant qu’Ubuntu prenne une décision et l’inclue dans les référentiels officiels.

Un autre cas serait pendant les tests bêta. Même si une version stable du logiciel est disponible dans les référentiels officiels, un développeur de logiciel peut souhaiter que certains utilisateurs finaux testent leur prochaine version. Comment permettent-ils à l'utilisateur final de bêta-tester la version à venir?

Entrez PPA!

Comment utiliser PPA? Comment fonctionne le PPA?

PPA, comme je vous l'ai déjà dit, désigne les archives de paquets personnels. Attention au mot "personnel" ici. Cela donne à penser que cela est exclusif à un développeur et n’est pas officiellement approuvé par la distribution.

Ubuntu fournit une plate-forme appelée Launchpad qui permet aux développeurs de logiciels de créer leurs propres référentiels. Un utilisateur final, c’est-à-dire que vous pouvez ajouter le référentiel PPA à votre sources.list et lorsque vous mettez votre système à jour, votre système sera au courant de la disponibilité de ce nouveau logiciel et vous pourrez l’installer à l’aide de la commande standard sudo apt install comme celle-ci.

sudo add-apt-repository ppa: dr-akulavich / lighttable sudo apt-get mise à jour sudo apt-get install lighttable-installer

Pour résumer:

  • sudo add-apt-repository <- Cette commande ajoute le référentiel PPA à la liste.
  • sudo apt-get update <- Cette commande met à jour la liste des packages qui peuvent être installés sur le système.
  • sudo apt-get install <- Cette commande installe le package.

Vous voyez qu'il est important d'utiliser la commande sudo apt update ou votre système ne saura pas quand un nouveau paquet sera disponible.

Examinons maintenant la première commande plus en détail.

sudo add-apt-repository ppa:dr-akulavich/lighttable

Vous remarquerez que cette commande n'a pas d'URL vers le référentiel. En effet, l'outil a été conçu pour extraire de vous les informations concernant l'URL.

Juste une petite note. Si vous ajoutez ppa: dr-akulavich / lighttable, vous obtenez Light Table. Mais si vous ajoutez ppa: dr-akulavich, vous obtiendrez tous les référentiels ou packages mentionnés dans le «référentiel supérieur». C'est hiérarchique.

Fondamentalement, lorsque vous ajoutez un PPA à l'aide de add-apt-repository, il effectuera la même action que si vous exécutiez manuellement ces commandes:

deb http://ppa.launchpad.net/dr-akulavich/lighttable/ubuntu YOUR_UBUNTU_VERSION_HERE main
deb-src http://ppa.launchpad.net/dr-akulavich/lighttable/ubuntu YOUR_UBUNTU_VERSION_HERE main

Les deux lignes ci-dessus constituent le moyen classique d’ajouter des référentiels à votre fichier sources.list. Mais PPA le fait automatiquement pour vous, sans se soucier de l'URL exacte du référentiel ni de la version du système d'exploitation.

Une chose importante à ne pas faire ici est que lorsque vous utilisez PPA, cela ne modifie pas votre source.list d'origine. Au lieu de cela, il crée deux fichiers dans le répertoire /etc/apt/sources.d, une liste et un fichier de sauvegarde avec le suffixe 'save'.

Utiliser un PPA dans Ubuntu
Le PPA crée des sources.list séparées

Les fichiers avec le suffixe 'liste' ont la commande qui ajoute les informations sur le référentiel.

PPA ajouter des informations de référentiel
Contenu de source.list d'un PPA

Il s’agit d’une mesure de sécurité visant à garantir que l’ajout d’APP ne dérange pas le fichier sources.list original. Cela aide également à éliminer le PPA.

Pourquoi PPA? Pourquoi pas les paquets DEB?

Vous pouvez vous demander pourquoi vous devriez utiliser PPA quand il s'agit d'utiliser une ligne de commande qui pourrait ne pas être préférée par tout le monde. Pourquoi ne pas simplement distribuer un paquet DEB pouvant être installé graphiquement?

La réponse réside dans la procédure de mise à jour. Si vous installez un logiciel à l'aide d'un package DEB, il n'y a aucune garantie que le logiciel installé sera mis à jour vers une version plus récente lorsque vous exécutez sudo apt update && sudo apt upgrade.

C'est parce que la procédure de mise à niveau d'apt s'appuie sur le fichier sources.list. S'il n'y a aucune entrée pour un logiciel, la mise à jour n'est pas obtenue via le programme de mise à jour de logiciel standard.

Cela signifie-t-il que les logiciels installés à l'aide de DEB ne reçoivent jamais de mise à jour? Non, pas vraiment. Cela dépend de la façon dont le paquet a été créé.

Certains développeurs ajoutent automatiquement une entrée à sources.list, qui est ensuite mise à jour comme un logiciel ordinaire. Google Chrome en est un exemple.

Certains logiciels vous avertissent de la disponibilité d'une nouvelle version lorsque vous essayez de l'exécuter. Vous devrez télécharger le nouveau package DEB et le réexécuter pour mettre à jour le logiciel actuel vers une version plus récente. Oracle Virtual Box est un exemple dans ce cas.

Pour le reste des packages DEB, vous devrez rechercher manuellement une mise à jour, ce qui n'est pas pratique, surtout si votre logiciel est destiné à des bêta-testeurs. Vous devez ajouter plus de mises à jour fréquemment. C’est là que PPA vient à la rescousse.

APP officiel contre un APP officieux

Vous pouvez également entendre le terme PPA officiel ou PPA non officiel. Quelle est la différence?

Lorsque les développeurs créent PPA pour leur logiciel, cela s'appelle le PPA officiel. Bien évidemment parce que cela ne vient de nul autre que les développeurs du projet.

Mais parfois, des individus créent des PPA de projets créés par d’autres développeurs.

Pourquoi quelqu'un ferait-il cela? Parce que de nombreux développeurs fournissent simplement le code source du logiciel et que vous savez que installation de logiciels à partir du code source sous Linux est une douleur et pas tout le monde pourrait ou ferait cela.

C’est la raison pour laquelle les volontaires se chargent de créer un PPA à partir de ce code source afin que les autres utilisateurs puissent installer le logiciel facilement. Après tout, utiliser ces lignes 3 est beaucoup plus facile que de lutter contre l’installation du code source.

Assurez-vous qu'un PPA est disponible pour votre version de distribution

Lorsqu’il s’agit d’utiliser PPA dans Ubuntu ou dans toute autre distribution basée sur Debian, il convient de garder quelques points à l’esprit.

Tous les PPA ne sont pas disponibles pour votre version particulière. Tu devrais savoir quelle version d'Ubuntu vous utilisez. Le nom de code de la version est important car lorsque vous accédez à la page Web d'un certain PPA, vous pouvez voir quelles versions d'Ubuntu sont supportées par le PPA.

Pour les autres distributions basées sur Ubuntu, vous pouvez vérifier le contenu de / etc / os-release sur Découvrez la version Ubuntu informations.

Vérifier la disponibilité de PPA pour la version Ubuntu
Vérifiez si PPA est disponible pour votre version Ubuntu

Comment connaître l'URL du PPA? Il suffit de chercher sur Internet avec le nom PPA comme ppa: dr-akulavich / lighttable et vous obtiendrez le premier résultat de Launchpad, la plateforme officielle pour l'hébergement de PPA. Vous pouvez également accéder à Launchpad et rechercher directement le PPA requis.

Si vous ne vérifiez pas et n'ajoutez pas le PPA, vous risquez de rencontrer une erreur comme celle-ci lorsque vous essayez d'installer un logiciel non disponible pour votre version.

E: Unable to locate package

Le pire, c'est que depuis qu'il a été ajouté à votre source.list, à chaque fois que vous exécutez un programme de mise à jour de logiciel, vous verrez une erreur “Échec du téléchargement des informations sur le référentiel" .

Impossible de télécharger les informations du référentiel Ubuntu 13.04

Si vous exécutez sudo apt update sur le terminal, l'erreur contiendra plus de détails sur le référentiel à l'origine du problème. Vous pouvez voir quelque chose comme ceci à la fin de la sortie de sudo apt update:

W: Failed to fetch http://ppa.launchpad.net/venerix/pkg/ubuntu/dists/raring/main/binary-i386/Packages  404  Not Found
E: Some index files failed to download. They have been ignored, or old ones used instead.

Ce qui est explicite car le système ne trouve pas le référentiel de votre version. Vous vous souvenez de ce que nous avons vu précédemment sur la structure du référentiel? APT essaiera de rechercher des informations sur le logiciel à l'adresse http://ppa.launchpad.net/ / ubuntu / dists / Ubuntu_Version

Et si le PPA de la version spécifique n'est pas disponible, il ne sera jamais possible d'ouvrir l'URL et vous obtiendrez la fameuse erreur 404.

Pourquoi les PPA ne sont-ils pas disponibles pour toutes les versions d'Ubuntu?

C'est parce que quelqu'un doit compiler le logiciel et créer un PPA à partir de celui-ci sur les versions spécifiques. Étant donné qu'une nouvelle version d'Ubuntu est publiée tous les six mois, il est fastidieux de mettre à jour le PPA pour chaque version d'Ubuntu. Tous les développeurs n'ont pas le temps de le faire.

Comment installer l'application si PPA n'est pas disponible pour votre version?

Il est possible que, même si le PPA n’est pas disponible pour votre version d’Ubuntu, vous pouvez toujours télécharger le fichier DEB et installer l’application.

Disons que vous allez au PPA Light Table. En utilisant les connaissances que vous venez d’apprendre sur le PPA, vous réalisez que celui-ci n’est pas disponible pour votre version spécifique d’Ubuntu.

Ce que vous pouvez faire est de cliquer sur "Afficher les détails du paquet".

Obtenir le fichier DEB de PPA

Et ici, vous pouvez cliquer sur un paquet pour révéler plus de détails. Vous trouverez également le code source et le fichier DEB du paquet ici.

Téléchargez le fichier DEB de PPA

je vous conseille utiliser Gdebi pour installer ces fichiers DEB au lieu du centre logiciel car Gdebi gère beaucoup mieux les dépendances.

Notez que le package installé de cette manière risque de ne recevoir aucune mise à jour ultérieure.

Je pense que vous en avez assez lu sur l’ajout d’APP. Que diriez-vous de supprimer un PPA et les logiciels qu'il installe?

Comment supprimer PPA?

J'ai écrit à propos de suppression de PPA autrefois. Je vais décrire les mêmes méthodes ici aussi.

Je conseille de supprimer le logiciel que vous avez installé à partir d'un PPA avant de supprimer le PPA. Si vous supprimez simplement le PPA, le logiciel installé reste dans le système mais il ne recevra aucune mise à jour. Vous ne voudriez pas ça, n'est-ce pas?

Alors, la question se pose, comment savoir quelle application a été installée par quel PPA?

Trouver les paquets installés par un PPA et les supprimer

Ubuntu Software Center n’aide pas ici. Vous devrez utiliser le gestionnaire de paquets Synaptic ici, qui dispose de fonctionnalités plus avancées.

Vous pouvez installer Synaptic à partir du Centre logiciel ou utiliser la commande ci-dessous:

sudo apt installe synaptique

Une fois installé, démarrez le gestionnaire de paquets Synaptic et sélectionnez Origine. Vous verrez différents référentiels ajoutés au système. Les entrées PPA seront étiquetées avec le préfixe PPA. Cliquez dessus pour voir les paquets disponibles par le PPA. Le logiciel installé aura le symbole approprié devant lui.

Gestion de PPA avec le gestionnaire de paquets Synaptic
Trouver des paquets installés via un PPA

Une fois que vous avez trouvé les packages, vous pouvez les supprimer de Synaptic lui-même. Sinon, vous avez toujours la possibilité d'utiliser la ligne de commande:

sudo apt remove package_name

Une fois que vous avez supprimé les packages installés par un PPA, vous pouvez continuer à supprimer le PPA de votre sources.list.

Supprimer graphiquement un PPA

Allez dans Logiciels et mises à jour, puis allez dans l'onglet Autres logiciels. Recherchez le PPA que vous souhaitez supprimer:

Supprimer un PPA de Software Source

Vous avez deux options ici. Soit vous désélectionnez le PPA, soit vous choisissez l’option Supprimer.

La différence est que lorsque vous désélectionnez une entrée PPA, votre système commente l'entrée du référentiel dans son fichier ppa_name.list dans /etc/apt/sources.list.d mais si vous choisissez l'option Supprimer, il supprime l'entrée du référentiel. depuis son fichier ppa_name.list dans le répertoire /etc/apt/sources.list.d.

Dans les deux cas, les fichiers nom_ppa.list restent dans ledit répertoire, même s'il est vide.

Est-il sécuritaire d'utiliser PPA?

C'est une question subjective. Les puristes ont horreur des PPA parce que la plupart du temps, les PPA proviennent de développeurs tiers. Mais dans le même temps, les PPA sont populaires dans le monde Debian / Ubuntu car ils offrent une option d'installation plus facile.

En ce qui concerne la sécurité, il est moins probable que vous utilisiez un PPA et votre système Linux est piraté ou infecté par des logiciels malveillants. Je ne me souviens pas qu'un tel incident se soit produit jusqu'à présent.

Les AAE officiels peuvent être utilisés sans y penser à deux fois. L'utilisation d'un PPA non officiel est entièrement votre décision.

En règle générale, vous devriez éviter d'installer un programme via un PPA tiers si le programme nécessite un accès sudo pour s'exécuter.

Que pensez-vous de l'utilisation de PPA?

Je sais que c'est une longue lecture, mais je voulais vous donner une meilleure compréhension de la PPA. J'espère que ce guide détaillé a répondu à la plupart de vos questions sur l'utilisation de PPA.

Si vous avez d'autres questions à propos de PPA, n'hésitez pas à les poser dans la section commentaires.

Si vous remarquez une erreur technique ou grammaticale ou si vous avez des suggestions pour améliorer cet article, merci de m'en informer.

Source