Service files in lib/datadir
John (J5) Palmieri
johnp at redhat.com
Fri Dec 17 09:52:41 PST 2004
On Fri, 2004-12-17 at 12:07 -0500, Havoc Pennington wrote:
> On Fri, 2004-12-17 at 12:20 +0100, Richard Hult wrote:
> > Hi,
> >
> > A while ago, the default conf for the session bus was changed to look up
> > service files in datadir rather than libdir. The reason was to fix 64/32
> > bit parallel installations, but I don't think this is the correct fix
> > since it breaks the semantics of datadir (services are not shareable
> > across different archs for example). It also breaks existing installed
> > services since the service files have to be moved, which is bad even
> > though dbus isn't supposed to be stable yet.
> >
> > Is there some other way to fix the 64/32 bit problem?
> >
>
> I'm not sure. So on Linux there are several 32/64 configurations as I
> understand it:
>
> /lib is 32-bit and /lib64 is 64-bit
> - within this configuration, either 32 or 64 can be the default;
> e.g. on ppc64 we would expect GNOME to run in 32, and on
> x86_64 GNOME would run in 64
>
> /lib is 64-bit and 32-bit is in the /emul-ia32 hack directory
> - this is Itanium; apps normally run in 64-bit and 32-bit binaries
> get routed to the 32-bit libs "transparently" (it doesn't really
> work well)
>
> bindir is always shared, and we've ended up with binaries ending in -64
> and other ad hoc hacks.
>
> What we want to happen is:
> - for a desktop session always use the services from the
> default mode; e.g. on ppc64 we want the 32-bit services
> and on x86_64/Itanium we want the 64-bit services. The
> bus itself will also be in this mode.
> Here we could say "the bus uses the libdir it was built with
> to find services" and I think it would work...
>
> With libdir, to make this happen we need to use /lib on ppc64 and
> Itanium and /lib64 on x86_64 for the service files.
>
> I guess I don't really see how the previous usage of libdir was breaking
> things...
The configuration files in /etc can't have the same name and have
different content. That was the real problem. BTW we checked a 32bit
HAL using a 64bit dbus bus. It seemed to work.
--
John (J5) Palmieri
Associate Software Engineer
Desktop Group
Red Hat, Inc.
Blog: http://martianrock.com
More information about the dbus
mailing list