Il y avait un moyen d'enregistrer des gestionnaires de protocole d'URL avec Gconf, qui est maintenant obsolète et il semble qu'il n'y ait aucun moyen de faire la même chose avec DConf (ou Gsettings, son wrapper recommandé).
Comment enregistrer correctement un gestionnaire de protocole d'URL depuis DConf ?
De plus, quelque chose me semble étrange (car je ne le comprends pas), sur mon Ubuntu 12.04
Le protocole apt://
devrait être géré par la commande apturl
. C'est le cas avec mon navigateur Opera, mais seulement parce que j'ai ajouté cette association spécifique en utilisant l'installation du navigateur. Sinon, dans le reste de l'environnement :
- En exécutant
xdg-open apt://foo.bar
ouvreelinks
(mon alternative àwww-browser
). - En exécutant
gnome-open apt://foo.bar
ouvre le Centre logiciel. - En ouvrant
gconf-editor
, je vois une clé/desktop/gnome/url-handlers/apt
dont la valeur estapturl "%s"
et elle est activée. Cette configuration semble être ignorée, ce qui est raisonnablement attendu, car GConf est considéré comme obsolète. - En ouvrant
dconf-editor
, je ne vois rien en rapport avec les gestionnaires d'URL ou les protocoles dans/desktop/gnome
Cela semble un peu confus à mes yeux (juste taquinerie avec ce terme, rien de mal)
Qu'y a-t-il en dessous ?
Note : Je recherche quelque chose qui fonctionne de préférence même lorsque l'environnement de bureau complet n'est pas chargé, comme lors de l'exécution d'une session i3wm seulement avec gsettings-daemon
(et d'autres choses non liées à ce cas) chargées.
Mise à jour
Une autre manière de "enregistrer" un gestionnaire de protocole est avec les fichiers *.desktop
et leur Type MIME ; par exemple MimeType=application/;
.
J'ai trouvé un /usr/share/applications/ubuntu-software-center.desktop
avec ce contenu :
[Desktop Entry]
Name=Ubuntu Software Center
GenericName=Software Center
Comment=Vous permet de choisir parmi des milliers d'applications disponibles pour Ubuntu
Exec=/usr/bin/software-center %u
Icon=softwarecenter
Terminal=false
Type=Application
Categories=PackageManager;GTK;System;Settings;
MimeType=application/x-deb;application/x-debian-package;x-scheme-handler/apt;
StartupNotify=true
X-Ubuntu-Gettext-Domain=software-center
Keywords=Sources;PPA;Install;Uninstall;Remove;Purchase;Catalogue;Store;
Cela explique pourquoi gnome-open apt://foo.bar
ouvre le Centre logiciel au lieu de apturl
.
J'ai donc installé ce apturl.desktop
dans ~/.local/share/applications
:
[Desktop Entry]
Encoding=UTF-8
Version=1.0
Type=Application
Terminal=false
Exec=/usr/bin/apturl %u
Name=APTURL
Comment=Gestionnaire APTURL
Icon=
Categories=Application;Network;
MimeType=x-scheme-handler/apt;
Après update-desktop-database
et même après le redémarrage, à la fois xdg-open
et gnome-open
continuent d'ignorer ce fichier de bureau utilisateur, qui, comme d'habitude avec les fichiers de bureau utilisateur, devrait remplacer celui dans /usr/share/applications/
.
Peut-être qu'il y a quelque chose de spécial avec les fichiers de bureau spécifiant le type MIME x-scheme-handler
et qu'ils ne sont pas traités de la manière habituelle.
La méthode des fichiers de bureau ne répond pas à la question.