by default in /var and not in /usr/var/ ?

Simon McVittie simon.mcvittie at collabora.co.uk
Fri Oct 23 05:42:54 PDT 2015


On 23/10/15 13:29, linuxcbon linuxcbon wrote:
> Is it possible to have them in /var instead by default ?

Not without breaking the ability to use --prefix=/opt/my-app-bundle for
people who want to do that.

D-Bus is normally built by OS distributors, who already have
well-established ways to configure all their Autotools packages to use
their preferred filesystem hierarchy, so this isn't usually a problem in
prctice - most distribution build systems have some abbreviated way to
set the --prefix, --sysconfdir, --localstatedir, etc. that are normally
right for the distribution, like RPM's %configure macro or Debian's
dh_auto_configure.

A typical Linux (or *BSD) distribution version of any Autotools project
like D-Bus would be configured with at least

    ./configure --prefix=/usr --sysconfdir=/etc --localstatedir=/var

and perhaps also --libdir='${exec_prefix}/lib64' or
--libdir="\${exec_prefix}/$(dpkg-architecture -qDEB_HOST_MULTIARCH)/lib"
depending how your distribution does biarch/multiarch.

If you are using D-Bus on an OS distribution, I strongly recommend using
the distribution's D-Bus packages: as well as getting the benefits of
the packaging system, your distribution might have special D-Bus
configuration or patches that are required by the distribution but not
present in upstream D-Bus, as Ubuntu did until recently. If you want to
modify a core OS component like D-Bus, rebuilding the distribution's
packages with your modifications is likely to be a better approach than
going behind the OS' back.

If you are building your own OS distribution from scratch, I recommend
learning from what other distributions have done, and having something
analogous to dh_auto_configure to encapsulate the configure options that
are correct (on your distribution) for 90% of packages.

-- 
Simon McVittie
Collabora Ltd. <http://www.collabora.com/>



More information about the dbus mailing list