Ceci est une ancienne révision du document !



Apturl : gestion du protocole apt:// pour l'installation en un clic d'un paquet depuis une page web

Le protocole APT, ou apturl, est une façon extrêmement facile d'installer un paquet logiciel, et est avantageux pour les utilisateurs et les distributeurs de contenu.

Dans les ordinateurs dans lesquels apturl est installé et configuré, le clic dans une page web sur un lien spécial démarre l'installation d'un ou de plusieurs paquets donnés présents dans les dépôts de paquets accessibles à cet ordinateur.

Cette page est une sous-partie de la page "Comment installer un paquet".

Apt-url Par exemple, dans une page web, lorsqu'un utilisateur d'Ubuntu clique sur le lien gimp, apturl intercepte l'action et exécute le gestionnaire de paquets pour proposer l'installation du paquet gimp depuis les sources de paquets accessibles. Pour l'utilisateur, il n'y a pas besoin de lire une marche à suivre fastidieuse pour installer un paquet ; pour le diffuseur de contenu, il n'y a pas besoin d'écrire une marche à suivre fastidieuse.

Notez que apturl n'a pas pour but de remplacer le système de dépôts ni les gestionnaires de paquets actuels. C'est une méthode complémentaire qui s'inscrit par-dessus ceux-ci, qui exploite les ressources des dépôts et des gestionnaires existants.

Pour que votre système puisse utiliser cette méthode d'installation de paquets, il vous faut :

  • Disposer d'une connexion à Internet configurée et activée.
  • disposer d'un navigateur compatible (voir la liste ci-dessous).

Sur Ubuntu, apturl est installé par défaut, toutefois si il ne l'est pas , il suffit d'installer le paquet apturl.

sudo apt-get install apturl

Note : une interface existe pour KDE, elle se nomme apturl-kde.

sudo apt-get install apturl-kde

Choisir apturl comme « gestionnaire de paquet » lors d'un clic sur un lien apt

Apturl peut se substituer au gestionnaire de paquet habituel et installer des paquets sur le système lors du clic sur un lien apt.

Pour utiliser apturl comme gestionnaire de lien apt, entrer dans un terminal la commande suivante :

xdg-mime default apturl.desktop x-scheme-handler/apt

Pour plus d'informations sur le choix des gestionnaires associé au protocole apt consulter la section : choisir quel gestionnaire de paquet se lance avec les liens apt.

Firefox et Epiphany

Besoin d'activer les liens apturl ?

Cliquez sur ce lien : gimp. La fenêtre "lancement de l'application" (ci-contre) apparait. (Dans l'exemple ci-contre "apturl" est déjà sélectionné; si dans votre cas "apturl" n'est pas visible, cliquez sur le bouton "choisir", puis "système de fichiers", puis le répertoire /usr/bin puis le fichier "apturl".)

Ne pas oublier de cocher "se souvenir de mon choix" et validez.

Si ca ne fonctionne toujours pas, saisissez about:config (sans espace) dans la barre de navigation et rajoutez :

  • network.protocol-handler.app.apt en chaîne de caractères avec pour valeur /usr/bin/apturl,
  • network.protocol-handler.app.apt+http en chaîne de caractère avec pour valeur /usr/bin/apturl,
  • network.protocol-handler.warn-external.apt en valeur booléenne et mettez false comme valeur,
  • network.protocol-handler.warn-external.apt+http en valeur booléenne et mettez false comme valeur.
Si sous KDE (testé avec firefox 8), lorsque l'on clique sur le lien vlc, il apparaît un erreur qui indique que le protocole apt n'est relié à aucun logiciel, il suffit d'aller dans les préférences (édition/préférence)→applications→apt et changer "toujours demander" par le fichier /usr/bin/apturl.

Configurer Firefox 23.0 sur Ubuntu 13.04 64 bits et sous KDE

Installer en un clic les paquets apt depuis le navigateur firefox (Testé sous Kubuntu 13.04 64Bits)

Après s'être assuré d'avoir les paquets apturl et apturl-kde installés (commandes sudo apt-get install apturl et sudo apt-get install apturl-kde),

saisissez about:config (sans espace) dans la barre de navigation et rajoutez en faisant clic-droit puis nouvelle:

  • Une entrée chaîne de caractères en saisissant (le nom de l'option) network.protocol-handler.app.apt puis validez et saisissez /usr/bin/apturl pour valeur (chaine).
  • Une entrée chaîne de caractère en saisissant (le nom de l'option) network.protocol-handler.app.apt+http puis validez et saisissez /usr/bin/apturl pour valeur (chaine).
  • Une entrée valeur booléenne en saisissant (le nom de l'option) network.protocol-handler.warn-external.apt puis validez et sélectionnez false comme valeur.
  • Une entrée valeur booléenne en saisissant (le nom de l'option) network.protocol-handler.warn-external.apt+http puis validez et et sélectionnez false comme valeur.
  • Une entrée valeur booléenne en saisissant (le nom de l'option) network.protocol-handler.expose.apt puis validez et et sélectionnez false comme valeur.

Cliquez ensuite sur le lien apt d'une application que vous voulez installer, choisissez l'application pour l'ouvrir apturl dont le chemin est /usr/bin/apturl et cochez "se souvenir de mon choix" puis validez.

- -

Sous UBUNTU 13.10 ajout par malain

Aprés toutes les manips décrites ici , sous ubuntu 13.10 ( et firefox 26 ) , il me restait impossible d'utiliser les liens apt dans firefox. Rien ne se passait , et un rapport de bug s'ouvrait. En cliquant sur "détails" le gestionnaire de bugs donnait l' erreur suivante :

"apturl-gtk crashed …. icone deb pas presente dans le theme"

J'ai résolu ce problème par une manip pas super pro mais qui marche :

-lancer le gestionnaire de fichier en tant qu' administrateur en tapant dans un terminal: sudo nautilus ( attention à ne rien faire que vous ne compreniez pas , vous avez ici le pouvoir de détruire ou déplacer des fichiers vitaux )

puis

-copier une icone en 16x16 ( par ex depuis usr/share/icons/gnome) et la renommer en deb.png

-coller cette icone deb.png dans usr/share/icons/unity-icon-theme

-et aussi dans usr/share/icons/gnome

( je ne sais grace à quel dossier cela marche …). Pardon si le conseil est donné au mauvais endroit , merci aux auteurs de me le signaler, je suis inscrit sur le forum . malain

-

Sous Ubuntu 14.04.3 LTS ajout par Watchoum

J'ai pour ma part vu dans la fenêtre de la console où j'ai lancé firefox un message d'erreur me disant qu'il manquait un fichier nommé deb.png. Inspiré par les conseils de malain ci-dessus, j'ai fait cela : placer une icône nommée deb.png dans "/usr/share/icons/gnome/16x16/apps" et ça marche !

Konqueror

  • Exécutez l'éditeur de texte Kate en mode administrateur en saisissant dans un terminal la commande suivante:
    kdesudo kate
  • Créez un nouveau fichier texte contenant ces informations :
    apt.protocol
    [Protocol]
    exec=apturl "%u"
    protocol=apt
    input=none
    output=none
    helper=true
    reading=true
    writing=true

    Enregistrez ce fichier sous le nom apt.protocol dans le dossier /usr/share/services

  • Créez un second fichier texte contenant ces informations :
    apt+http.protocol
    [Protocol]
    exec=apturl "%u"
    protocol=apt+http
    input=none
    output=none
    helper=true
    reading=true
    writing=true

    Enregistrez ce fichier sous le nom apt+http.protocol dans le dossier /usr/share/services

Opera

Si vous utilisez Opera, il suffit d'aller dans le menu principal puis Réglages puis Préférences. Cliquez sur l'onglet Avancés puis Programmes, et choisissez Ajouter. Dans Protocole, entrez apt et dans Ouvrir avec une autre application, entrez /apturl. Appuyez sur le bouton OK.

Si vous utilisez une version d'Opera antérieure à la 10.5, allez dans le menu Outils puis Préférences puis suivez la même procédure que ci-dessus.

Si les modifications ne prennent pas effet immédiatement, redémarrez Opera.

Swiftfox

Pour profiter du protocole APT avec Swiftfox, saisissez about:config dans la barre d'adresse et modifiez les clés suivantes (ou créez-les si elles n'existent pas) afin qu'elles aient les valeurs suivantes :

  • network.protocol-handler.app.apt en chaîne de caractères avec pour valeur /usr/bin/apturl,
  • network.protocol-handler.app.apt+http en chaîne de caractère avec pour valeur /usr/bin/apturl,
  • network.protocol-handler.warn-external.apt en valeur booléenne et mettez false comme valeur,
  • network.protocol-handler.warn-external.apt+http en valeur booléenne et mettez false comme valeur.

Fermez et redémarrez Swiftfox pour prendre en compte ce changement.

Google Chrome (et probablement Chromium)

Pour info: Apturl est installé maintenant par défaut (constaté sur Xenial Xerus 16.04 et Chrome Version 50.0.2661.94 64-bit) et fonctionne…

Une fois le protocole pris en charge par votre système, vous trouverez parfois sur internet des liens du style nom_du_paquet qui vous permettront d'installer le paquet en question.

Sur cette documentation, vous trouverez une icône sur lequel vous pourrez cliquer pour installer divers logiciels ou paquets, se présentant sous cette forme :

Si vous voulez aider un ami ou un utilisateur d'ubuntu sur les forums d'Ubuntu-fr, vous pourrez lui donner de simples liens à cliquer. On peut alors construire ces liens de plusieurs façons détaillées si dessous.

Installer un seul paquet

Pour installer, par exemple, le paquet unrar : apt://unrar (tout simplement)

Installer plusieurs paquets d'un coup

Il suffit de séparer les paquets par une virgule : apt://unrar,vlc,vim

Utiliser un dépôt alternatif

On peut spécifier un dépôt à utiliser pour installer le paquet en question avec un lien du style : apt://archive.canonical.com?package=acroread?dist=feisty?section=commercial

Ici, on installera le paquet acroread disponible sur le dépôt Feisty Commercial de Canonical.

Tous les dépôts conformes à la norme Debian pourront être utilisés avec cette méthode

Attention : en utilisant des liens pointant sur des dépôts tiers, vous devez être sûr de la qualité du dépôt en question et personne ne pourra vous aider en cas de problèmes avec un dépôt non supporté.

Utiliser un PPA

La fermeture de la page GitHub de ce projet et le dernier message1) (datant de 2014) laissent penser que ce projet a été abandonné.

Il existe un projet de fork d'apturl permettant d'ajouter des ppa via un lien : voir le forum dédié : http://forum.ubuntu-fr.org/viewtopic.php?id=1441781


1)
" Michael Vogt c'est finalement décidé à me répondre. En réalité, l'idée avait déjà été abordé depuis un moment en interne et du code inclus à cet effet dans "apturl". Cependant, ce code partiellement créé à été désactivé (je m'en suis reservi) pour plusieurs raisons : éviter les malwares et autres softs malicieux, les softs mal codés etc. Du coup, Michael salut mon initiative mais est hésisant (je pense qu'il est plus qu'hésitant mais il a mis les formes) quant à l'inclusion de mon code pour les risques pré-cités. Ce qu'il manque d'après lui est une "évaluation par les pairs" (peer review) sur les PPA. Dans ce cas précis, un apturl "amélioré" aurait sa place… Du coup, on pourrait avoir, selon l'évaluation du ppa (négative ou positive), un message d'alerte ou non. Maintenant, il ne m'a pas précisé si le peer review était une fonctionnalité attendu de Launchpad. Je vais tenter d'en savoir plus à ce niveau… car maintenir un fork qui ne sera jamais inclus ne me semble pas judicieux. "
  • apturl.1462569505.txt.gz
  • Dernière modification: Le 06/05/2016, 23:18
  • par 104.207.144.52