Był sposób na zarejestrowanie procedur obsługi protokołu URL w Gconf, który jest już przestarzały i wydaje się, że nie ma sposobu, aby zrobić to samo z DConf (lub Gsettings, jego zalecanym opakowaniem).
Jak poprawnie zarejestrować programy obsługi protokołu URL od czasu DConf?
Dodatkowo coś wydaje mi się dziwne (bo tego nie rozumiem) na moim Ubuntu 12.04
Polecenie apt://powinno obsługiwać protokół apturl. Dzieje się tak w mojej przeglądarce Opera, ale tylko dlatego, że dodałem to konkretne powiązanie za pomocą narzędzia konfiguracji przeglądarki. W przeciwnym razie w pozostałej części środowiska:
- Bieganie
xdg-open apt://foo.barotwiera sięelinks(mojawww-browseralternatywa). - Uruchomienie
gnome-open apt://foo.barotwiera Centrum oprogramowania. - Po otwarciu
gconf-editorwidzę klucz,/desktop/gnome/url-handlers/aptktórego wartość jestapturl "%s"włączona. Ta konfiguracja wydaje się być ignorowana, co jest uzasadnione, ponieważ GConf jest uważany za przestarzały. - Po otwarciu
dconf-editornie widzę nic związanego z programami obsługi adresów URL lub protokołami/desktop/gnome
Wygląda mi trochę niechlujnie (po prostu droczę się z tym sformułowaniem, nic złego)
Co jest pod spodem
Uwaga dodatkowa: szukam czegoś, co najlepiej działa, nawet gdy pełne środowisko pulpitu nie jest załadowane, na przykład podczas uruchamiania sesji i3wm z załadowanym tylko gsettings-daemon(i innymi rzeczami niezwiązanymi z tym przypadkiem).
Aktualizacja
Innym sposobem „zarejestrowania” procedury obsługi protokołu są *.desktoppliki i ich typ MIME; np MimeType=application/<the-protocol>;.
Znalazłem /usr/share/applications/ubuntu-software-center.desktopz tą zawartością:
[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;
To wyjaśnia, dlaczego gnome-open apt://foo.barzamiast tego otwiera Centrum oprogramowania apturl.
Więc zainstalowałem to apturl.desktopw ~/.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;
Po update-desktop-databasei nawet po ponownym uruchomieniu komputera, zarówno xdg-openi gnome-openciągle to samo i zignorować ten plik na pulpicie użytkownika, który jak zwykle z użytkowników komputerów stacjonarnych plików, należy zastąpić jeden w /usr/share/applications/.
Może jest coś specjalnego w plikach pulpitu określających x-scheme-handlertyp MIME i nie są one obsługiwane w zwykły sposób.
Plik typu desktop nie odpowiada na pytanie.