Subject: bug#48538: D-Bus services do not work on foreign distributions/non-user profiles

From: Maxim Cournoyer <[email-masked]>
Date: Fri, 28 May 2021 01:10:12 -0400

Hi Leo & Simon,

Leo Prikler <[email-masked]> writes:

> Am Donnerstag, den 27.05.2021, 21:59 +0200 schrieb zimoun:
>> Hi Leo,
>> 
>> On Thu, 27 May 2021 at 15:20, Leo Famulari <[email-masked]> wrote:
>> > On Thu, May 27, 2021 at 08:54:49PM +0200, zimoun wrote:
>> > > ALSA lib conf.c:3725:(snd_config_hooks_call) Cannot open shared
>> > > library libasound_module_conf_pulse.so
>> > > (/gnu/store/z1iyvbvnkd7zkjxsx157n6qx2iwzxq7p-alsa-lib-
>> > > 1.2.4/lib/alsa-lib/libasound_module_conf_pulse.so: cannot open
>> > > shared object file: No such file or directory)
>> > [...]
>> > > Well, it means I have some misconfigured about ALSA, right?
>> > 
>> > Did you install alsa-plugins and alsa-plugins:pulseaudio ?
>> 
>> Do you mean
>> 
>>  guix environment --pure --ad-hoc jami-gnome dbus glib \
>>                   alsa-plugins alsa-plugins:pulseaudio \
>>       -- dbus-run-session jami-gnome

We're drifting off topic for this issue (which is supposed to be about
D-Bus rather than Jami on foreign distributions :-)), but for the sake
of completion, the following works (tested on a Debian 10 i386 VM):

$ guix environment --ad-hoc jami-gnome dbus glib gtk+ openssl nss-certs \
  -- dbus-run-session jami-gnome

Apparently the FileChooser schema is provided by gtk+.  I also found out
that OpenSSL from Guix wants the SSL_* environment variable sets, so I
added the nss-certs and openssl packages to the mix (otherwise you
wouldn't have been able to search for contacts).

I think for gtk+/glib this can be improved by adding the
glib-or-gtk-build-system phases to the jami-gnome package definition.

HTH!

Maxim