unofficial mirror of bug-guix@gnu.org 
 help / color / mirror / code / Atom feed
From: Josselin Poiret via Bug reports for GNU Guix <bug-guix@gnu.org>
To: Nathan Dehnel <ncdehnel@gmail.com>, 63427@debbugs.gnu.org
Subject: bug#63427: gdk-pixbuf unable to recognize image formats (JPG, PNG, etc.)
Date: Thu, 11 May 2023 10:05:41 +0200	[thread overview]
Message-ID: <874joje1ii.fsf@jpoiret.xyz> (raw)
In-Reply-To: <CAEEhgEtWyKdC-d-SYHMp5fDTx0CBw7pCcsJxFv-ZDCuPX909Cg@mail.gmail.com>

[-- Attachment #1: Type: text/plain, Size: 1995 bytes --]

Hi Nathan,

Nathan Dehnel <ncdehnel@gmail.com> writes:

> Gtk:ERROR:gtkiconhelper.c:494:
> ensure_surface_for_gicon: assertion
> failed (error == NULL): Failed to load
> /run/current-system/profile/share/icons/Adwaita/16x16/status/image-missing.png:
> Unrecognized image file format (gdk-pixbuf-error-quark, 3)
> Bail out! Gtk:ERROR:gtkiconhelper.c:494:ensure_surface_for_gicon:
> assertion failed (error == NULL): Failed to load
> /run/current-system/profile/share/icons/Adwaita/16x16/status/image-missing.png:
> Unrecognized image file format (gdk-pixbuf-error-quark, 3)
>
> This is breaking various apps like viewnior, xfce4-power-manager,
> causing firefox to crash when opening the file picker, making app
> icons not appear, etc.

So, GDK Pixbuf has a dynamic loader mechanism, where additional formats
can be added via additional loaders, which are usually all installed in
the same directory.  In Guix, this means that we need to point GDK
Pixbuf to a list of loaders to use that is dependent on what is
installed (there's no easy way to record this per-package, embed it
inside of it and then use that only there like with the ld cache).  For
that, we use the environment variable GDK_PIXBUF_MODULE_FILE, which is a
search-path for the package gdk-pixbuf, meaning that it is set only if
gdk-pixbuf is installed in your profile.

Now, if we had packaged everything properly, all the applications you
mention should *propagate* gdk-pixbuf and not just list it as an input,
so that it always gets installed to the profile as well, but that's not
the case!  The reason it doesn't happen for other users is because they
have some applications which pull in gdk-pixbuf inside the profile!  So
we should fix this and propagate gdk-pixbuf everywhere (something which
I'm not too much a fan of, but alas).

In the meantime, you can manually install gdk-pixbuf to your profile,
log-out and log-in and it should hopefully work.

Best,
-- 
Josselin Poiret

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 682 bytes --]

  parent reply	other threads:[~2023-05-11  8:12 UTC|newest]

Thread overview: 12+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-05-10 18:50 bug#63427: gdk-pixbuf unable to recognize image formats (JPG, PNG, etc.) Nathan Dehnel
2023-05-10 22:24 ` bug#63427: Sharlatan Hellseher
2023-05-11  8:05 ` Josselin Poiret via Bug reports for GNU Guix [this message]
2023-05-11 11:04   ` bug#63427: gdk-pixbuf unable to recognize image formats (JPG, PNG, etc.) pelzflorian (Florian Pelz)
2023-05-11 19:11   ` Liliana Marie Prikler
2023-05-11 21:22     ` Nathan Dehnel
2023-05-12  9:19       ` pelzflorian (Florian Pelz)
2023-05-12 21:21         ` Nathan Dehnel
2023-05-13 10:49           ` pelzflorian (Florian Pelz)
2023-05-13 13:50             ` Liliana Marie Prikler
2023-05-13 18:38               ` pelzflorian (Florian Pelz)
2023-05-15  5:18                 ` Nathan Dehnel

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://guix.gnu.org/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=874joje1ii.fsf@jpoiret.xyz \
    --to=bug-guix@gnu.org \
    --cc=63427@debbugs.gnu.org \
    --cc=dev@jpoiret.xyz \
    --cc=ncdehnel@gmail.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/guix.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).