Subject: Re: bug#56169: [PATCH] gnu: Add cambalache.

From: Daniel Meißner <[email-masked]>
Date: Thu, 30 Jun 2022 11:16:30 +0200

Liliana Marie Prikler writes:

> Am Mittwoch, dem 29.06.2022 um 09:21 +0200 schrieb Daniel Meißner:
>> Hi Liliana,
>> 
>> Thanks for packaging Cambalache :-) I have applied your patch to my
>> local Guix checkout and it builds fine.  However, running
>> 
>>     ./pre-inst-env guix shell cambalache -- cambalace
>> 
>> Cambalache starts up but I am unable to add any widgets.  There are
>> some error messages written to stderr that complain about a missing
>> typelib: CambalachePrivate.  I see that you wrap the programme but
>> you did not include the path to the CambalachePrivate typelib.  So
>> maybe this is causing the problem?
> Thanks, I'll update the patch accordingly soon™.

I did a first try by wrapping the programme as follows:

--8<---------------cut here---------------start------------->8---
(wrap-program prog
              `("GI_TYPELIB_PATH"
                suffix
                (,(getenv "GI_TYPELIB_PATH")
                 ,(string-append #$output "/lib/girepository-1.0"))))
--8<---------------cut here---------------end--------------->8---

Now, with this, cambalache finds the typelib but complains on two other
things:

1. There's another typelib called Adw which is not found
2. gi.repository.GLib.GError: gdk-pixbuf-error-quark: Format der Bilddatei unbekannt (3)

Now 2. is more severe since it occurs when I add for example a
GtkApplicationWindow to the project.  This widget does not show up and I
cannot add other widgets to the application window.

>> Additionally, the icons in the headerbar are missing.  This seems to
>> be related to:
>> 
>> Missing dependency for Xournal++
>> https://issues.guix.gnu.org/51968
> For this class of bugs, I'd always try to include glib in the guix
> shell and check if the issue persists.  We don't build icon caches per
> package, so the only way to fix that is to get XDG_DATA_DIRS into your
> profile.

Thanks for the hint.  IIUC, the inclusion of glib into the profile
triggers a hook for generating the appropiate XDG_DATA_DIRS env variable
into the profile, right?  Is the reason why icon caches are not
per-package so that different icon-themes can work?  Sorry, this is
taking an orthogonal direction.

Best

-- 
Daniel