Es gab eine Möglichkeit, URL-Protokoll-Handler bei Gconf zu registrieren, die inzwischen veraltet ist und bei DConf (oder Gsettings, dem von Gconf empfohlenen Wrapper) anscheinend nicht mehr möglich ist.
Wie kann man einen URL-Protokoll-Handler seit DConf richtig registrieren?
Außerdem erscheint mir auf meinem Ubuntu 12.04 etwas merkwürdig (so wie ich es nicht verstehe)
Das Protokoll apt://sollte vom apturlBefehl behandelt werden. Dies ist bei meinem Opera-Browser der Fall, allerdings nur, weil ich diese spezielle Zuordnung über die Konfigurationsfunktion des Browsers hinzugefügt habe. Ansonsten in der restlichen Umgebung:
- Laufen
xdg-open apt://foo.baröffnet sichelinks(meinewww-browserAlternative). - Laufen
gnome-open apt://foo.baröffnet das Software Center. - Beim Öffnen
gconf-editorwird ein Schlüssel angezeigt ,/desktop/gnome/url-handlers/aptdessen Wertapturl "%s"aktiviert ist. Diese Konfiguration scheint ignoriert zu werden, was vernünftigerweise erwartet wird, da GConf als veraltet angesehen wird. - Beim Öffnen
dconf-editorkann ich nichts im Zusammenhang mit URL-Handlern oder Protokollen in sehen/desktop/gnome
Es sieht ein bisschen chaotisch für meine Augen aus (nur mit dieser Formulierung zu necken, nichts Schlimmes)
Was ist darunter?
Nebenbemerkung: Ich suche nach etwas, das vorzugsweise auch dann funktioniert, wenn die vollständige Desktop-Umgebung nicht geladen ist, z gsettings-daemon.
Aktualisieren
Eine andere Möglichkeit, einen Protokollhandler zu „registrieren“, besteht darin, *.desktopDateien und ihren MIME-Typ zu verwenden. zb MimeType=application/<the-protocol>;.
Ich habe einen /usr/share/applications/ubuntu-software-center.desktopmit diesem Inhalt gefunden:
[Desktop Entry]
Name=Ubuntu Software Center
GenericName=Software Center
Comment=Lets you choose from thousands of applications available for 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;
Dieser erklärt, warum gnome-open apt://foo.bardas Software Center statt öffnet apturl.
Also habe ich das installiert apturl.desktopin ~/.local/share/applications:
[Desktop Entry]
Encoding=UTF-8
Version=1.0
Type=Application
Terminal=false
Exec=/usr/bin/apturl %u
Name=APT‑URL
Comment=APT‑URL handler
Icon=
Categories=Application;Network;
MimeType=x-scheme-handler/apt;
Nach update-desktop-databaseund auch nach dem Neustart beide xdg-openund gnome-openimmer noch das gleiche tun und die Benutzer - Desktop - Datei ignorieren, die wie üblich mit Benutzer - Desktop-Dateien, sollten mit dem in außer Kraft setzen /usr/share/applications/.
Vielleicht gibt es etwas Besonderes bei Desktop-Dateien, die den x-scheme-handlerMIME-Typ angeben, und sie werden nicht auf die übliche Weise behandelt.
Die Desktop-Dateiauswahl beantwortet die Frage nicht.