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

From: Leo Prikler <[email-masked]>
Date: Fri, 28 May 2021 01:17:33 +0200

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
> 
> ?  If yes, there is still errors:
> 
> --8<---------------cut here---------------start------------->8---
> ** Message: 21:45:49.955: Jami GNOME client version: development
> ** Message: 21:45:49.956: git ref: unknown
> dbus-daemon[12101]: [session uid=1001 pid=12101] Activating service
> name='cx.ring.Ring' requested by ':1.1' (uid=1001 pid=12102
> comm="jami-gnome ")
> Jami Daemon 9.10.0, by Savoir-faire Linux 2004-2019
> https://jami.net/
> [Video support enabled]
> [Plugins support enabled]
> 
> dbus-daemon[12101]: [session uid=1001 pid=12101] Successfully
> activated service 'cx.ring.Ring'
> 21:45:50.388         os_core_unix.c !pjlib 2.10 for POSIX initialized
> No accounts to migrate
> 
> (jami-gnome:12102): libnotify-WARNING **: 21:45:50.693: Failed to
> connect to proxy
> QDBusMarshaller: type `VectorString' attempts to redefine basic D-BUS 
> type 'as' (QStringList) (Did you forget to call beginStructure() ?)
> QDBusMarshaller: type `MapStringVectorString' produces invalid D-BUS
> signature `a{s}' (Did you forget to call beginStructure() ?)
> QDBusMarshaller: type `QMap<QString,MapStringVectorString>' produces
> invalid D-BUS signature `a{s}' (Did you forget to call
> beginStructure() ?)
> 
> (jami-gnome:12102): GLib-GIO-ERROR **: 21:45:50.807: Settings schema
> 'org.gtk.Settings.FileChooser' is not installed
> --8<---------------cut here---------------end--------------->8---
> 
> the ’--pure’ is not the issue.  It is probably different but it rings
> a
> bell with bug#47106.
> 
> <http://issues.guix.gnu.org/issue/47106>
It is different.  The cause of your issue is probably, that you're
lacking gsettings-desktop-schemas or something similar to it inside
your environment.  Perhaps we could try forming a "gnome-base"
metapackage, that propagates all of dbus, glib, gsettings-schemas etc.
for such purposes (maybe on wip-gnome first)?

Regards,
Leo

PS: Command just ran through

--8<---------------cut here---------------start------------->8---
** Message: 00:57:50.154: Jami GNOME client version: development
** Message: 00:57:50.154: git ref: unknown
No protocol specified

** (jami-gnome:27881): ERROR **: 00:57:50.217: Could not init clutter :
0
--8<---------------cut here---------------end--------------->8---

I'm sure you know about -E XAUTHORITY by now, but imo we should have a
switch similar to --networking for container operations.  

PPS: Just adding gsettings-desktop-schemas didn't work.  "jami-gnome
glib gnome" obviously works, but that's a little overkill (also it
appears that you'll have to get credentials into this thing, which I
haven't bothered worrying about).