GNU bug report logs - #63427
gdk-pixbuf unable to recognize image formats (JPG, PNG, etc.)

Previous Next

Package: guix;

Reported by: Nathan Dehnel <ncdehnel <at> gmail.com>

Date: Wed, 10 May 2023 18:52:01 UTC

Severity: normal

Done: "pelzflorian (Florian Pelz)" <pelzflorian <at> pelzflorian.de>

Bug is archived. No further changes may be made.

Full log


View this message in rfc822 format

From: Maxim Cournoyer <maxim.cournoyer <at> gmail.com>
To: Liliana Marie Prikler <liliana.prikler <at> gmail.com>
Cc: Nathan Dehnel <ncdehnel <at> gmail.com>, Josselin Poiret <dev <at> jpoiret.xyz>, "pelzflorian \(Florian Pelz\)" <pelzflorian <at> pelzflorian.de>, 63427 <at> debbugs.gnu.org
Subject: bug#63427: gdk-pixbuf unable to recognize image formats (JPG, PNG, etc.)
Date: Fri, 17 Jan 2025 12:18:50 +0900
Hi!

Liliana Marie Prikler <liliana.prikler <at> gmail.com> writes:

[...]

> I've attached a patch that allows us to use
> "set if unspecified" semantics – not really sure how meaningful those
> are – but perhaps we would need a GUIX_-prefixed environment variable
> once again.  Barring an upstream change from GDK_PIXBUF_MODULE_FILE to
> GDK_PIXBUF_MODULE_PATH anyway.
>
> WDYT?
>
> diff --git a/guix/build/utils.scm b/guix/build/utils.scm
> index 94714bf397..d48b9112b8 100644
> --- a/guix/build/utils.scm
> +++ b/guix/build/utils.scm
> @@ -1393,6 +1393,9 @@ (define* (wrap-program prog #:key (sh (which "bash")) #:rest vars)
>        ((var sep '= rest)
>         (format #f "export ~a=\"~a\""
>                 var (string-join rest sep)))
> +      ((var sep ':- rest)
> +       (format #f "export ~a=\"${~a:-~a}\""
> +               var var (string-join rest sep)))
>        ((var sep 'prefix rest)
>         (format #f "export ~a=\"~a${~a:+~a}$~a\""
>                 var (string-join rest sep) var sep var))
> @@ -1402,6 +1405,9 @@ (define* (wrap-program prog #:key (sh (which "bash")) #:rest vars)
>        ((var '= rest)
>         (format #f "export ~a=\"~a\""
>                 var (string-join rest ":")))
> +      ((var ':- rest)
> +       (format #f "export ~a=\"${~a:-~a}\""
> +               var var (string-join rest ":")))
>        ((var 'prefix rest)
>         (format #f "export ~a=\"~a${~a:+:}$~a\""
>                 var (string-join rest ":") var var))
> @@ -1470,6 +1476,8 @@ (define wrap-script
>          (match-lambda
>            ((var sep '= rest)
>             `(setenv ,var ,(string-join rest sep)))
> +          ((var sep ':- rest)
> +           `(unless (getenv ,var) (setenv ,var ,(string-join rest sep))))
>            ((var sep 'prefix rest)
>             `(let ((current (getenv ,var)))
>                (setenv ,var (if current
> @@ -1484,6 +1492,8 @@ (define wrap-script
>                                 ,(string-join rest sep)))))
>            ((var '= rest)
>             `(setenv ,var ,(string-join rest ":")))
> +          ((var ':- rest)
> +           `(unless (getenv ,var) (setenv ,var ,(string-join rest ":"))))
>            ((var 'prefix rest)
>             `(let ((current (getenv ,var)))
>                (setenv ,var (if current

I like it!  It's something I've wanted in the past.  Perhaps you could
submit it as its own thing, referencing this issue in the commit message
perhaps.

Longer term, we probably work on an upstream true PATH-like solution,
but in the meantime this would be useful to have here, and probably
useful for other single-entry environment variables.

-- 
Thanks,
Maxim




This bug report was last modified 130 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.