Note: this page is outdated. The most recent method for c11y is using xdg-utils. I’ll write more about this shortly.

gnome

As of today, gnfodiz is compatible with gnome (recent versions). Of course there is not a big field of functions where compatibility subject could change anything, but as the project will grow bigger, this list may grow.

The main point as of today is default browser detection. When clicked on an URL, gnfodiz will detect the currently selected Gnome web browser, and launch it, feeding the URL to the active view.

This setting is taken from gconf mechanism, from this key:

/desktop/gnome/applications/browser/name

There are few properties in this key, but two of them are most important: exec, and needs_term. Exec property specifies the browser’s command line, and needs_term tells us about the nature of the browser; if it needs the terminal for running, or not (f.e. links will require the terminal).

Terminal settings can be taken from a different key:

/desktop/gnome/applications/terminal

gnfodiz will use and respect these settings when the user will click on an URL. Also, gnome allows the user to lock the possibility of opening a browser by activating this boolean value:

/desktop/gnome/lockdown/disable_application_handlers

gnfodiz will respect this setting as well.

It’s easy to imagine that reading from gconf requires to pull the gnome dependency at compilation and/or runtime, but as it’s built using gtk, it fits gnome anyway. In future I’ll consider using dynamic linking functions to dynamically probe gconf for existence, and use it only when it’ll be proven to exist.

kde

There are no compatibility improvements for KDE at this time.

TODO

There’s a FreeDesktop’s Portland project which aims to provide an environment-independent common application experience. Generally it tries to provide a mechanism for an application to detect a default software for some tasks, including a default web browser, or default email client. You can install it by installing xdgutils on your favourite distribution. For example, for Ubuntu, Mint, and similar:

$ apt-cache search xdg-utils
xdg-utils - Narzędzia integracji pulpitu dla freedesktop.org

There’s a plan to integrate gnfodiz with this spec.