Hello,
 
I'm using guix home on Debian Stable.
A number of applications have issues due to mismatches between the guix home 
glibc version, and the host distribution glibc version. I fixed it by removing 
the package from my guix home profile and installed them with apt again (like 
fcitx5). But now I have run into a problem I don't know how to work around, 
because the application was not installed with guix home in the first place.
 
Example with lxappearance (installed with apt, not guix):
 
(lxappearance:210625): Gtk-WARNING **: 15:02:28.835: Error loading theme icon 
'help-about' for stock: Unable to load image-loading module: 
/gnu/store/79hkr6dm4bc9dslmr848q7b3ad9lac9z-librsvg-2.56.4/lib/gdk-pixbuf-2.0/2.10.0/loaders/libpixbufloader-svg.so:
 /lib/x86_64-linux-gnu/libm.so.6: version `GLIBC_2.38' not found (required by 
/gnu/store/79hkr6dm4bc9dslmr848q7b3ad9lac9z-librsvg-2.56.4/lib/librsvg-2.so.2)
 
It uses the guix module because this is hardcoded in 
/home/nl/.guix-home/profile/lib/gdk-pixbuf-2.0/2.10.0/loaders.cache , which in 
turn is set via GDK_PIXBUF_MODULE_FILE.
As far as I can tell, this is automatically done for all profiles, as it is 
part of %default-profile-hooks.
If I unset GDK_PIXBUF_MODULE_FILE, the warnings / errors from lxappearance also 
disappear.
 
What I don't understand are the following:
Where does glibc 2.38 come from? As far as I can tell, guix has 2.39, 2.35, and 
lower. My Debian system has 2.36.
 
Why does libpixbufloader use any modules outside of the guix profile at all?
ldd 
/gnu/store/79hkr6dm4bc9dslmr848q7b3ad9lac9z-librsvg-2.56.4/lib/gdk-pixbuf-2.0/2.10.0/loaders/libpixbufloader-svg.so
 | rg -v /gnu
linux-vdso.so.1 (0x00007ffd6e5ae000)
/lib64/ld-linux-x86-64.so.2 (0x00007f42ebd87000)
 
Should GDK_PIXBUF_MODULE_FILE even be set? Is this something that all Guix 
System profiles need, but maybe home profiles don't?
 
Nils

Reply via email to