dconf Install Instructions

Dependencies

dconf currently has a rather large number of run-time and build dependencies. This will be scaled back in the future.

  • GLib/GObject 2.12
  • DValue from git, built with dbus and gserialise support.
  • DBus 1.0.2
  • DBus-GLib 0.73
  • Gtk+ (for tests/examples)

If you are building directly out of git (which is currently the only option) then the following are additionally required:

Obtaining

Currently, your only choice for obtaining dconf is to use git. The git repository is located at http://git.desrt.ca/dconf.git.

  moonpix:~$ git-clone http://git.desrt.ca/dconf.git dconf

Building

The git repository contains only original source files and no generated files. As such, it does not directly contain the normal "./configure" script.

You can build and run the ./configure script using the included autogen.sh script.

  moonpix:~/dconf$ ./autogen.sh --prefix=/opt/gnome

Once DValue has been configured, you can build it and install it as you'd normally expect to be able to.

  moonpix:~/dconf$ make

Installing

Of course, this part is easy.

  moonpix:~/dconf$ sudo make install

If you're installing to a non-standard prefix then you must ensure that your PKG_CONFIG_PATH environment variable is configured properly. You must also ensure that you include the library path in your /etc/ld.so.conf or in the LD_LIBRARY_PATH environment variable. Failure to do either of these may prevent you from building or using programs that depend on dconf.

You should also ensure that your XDG_CONFIG_DIRS environment variable is correctly set to point to the path where dconf-setup.xml was installed. If you used the option --prefix=/opt/gnome then this path is /opt/gnome/etc/xdg.

DBus Activation

Note that the dconf server may fail to activate due to all sorts of problems. A common case is that you have LD_LIBRARY_PATH set in your shell's profile but your dbus-daemon doesn't have it. This will cause the activated dconf-server to fail to find its required libraries.

A general workaround to these problems is to manually execute the dconf-server. It lives in ${prefix}/libexec/.

Projects/dconf/Installation (last edited 2013-12-03 17:42:22 by WilliamJonMcCann)