Gtk is unsupported on i686-linux

  • Done
  • quality assurance status badge
Details
2 participants
  • Ludovic Courtès
  • Mathieu Othacehe
Owner
unassigned
Submitted by
Mathieu Othacehe
Severity
normal
M
M
Mathieu Othacehe wrote on 19 Sep 2022 13:41
(address . bug-guix@gnu.org)
87leqf382h.fsf@gnu.org
Hello,

I had the following error while trying out `make release` for
`i686-linux` specifically.

Toggle snippet (12 lines)
+ for example in gnu/system/examples/*.tmpl
+ case "$example" in
+ options=
+ guix system -n disk-image gnu/system/examples/desktop.tmpl
accepted connection from pid 17139, user nixbld
guix system: warning: 'disk-image' is deprecated: use 'image' instead
guix system: error: package gvfs@1.50.2 does not support i686-linux
+ rm -f t-guix-system-16656 t-guix-system-error-16656 /tmp/guix-build-guix-1.3.0.24760-34049.drv-0/t-guix-system-16656/config.scm /tmp/guix-build-guix-1.3.0.24760-34049.drv-0/t-guix-system-16656/my-torrc
+ rmdir /tmp/guix-build-guix-1.3.0.24760-34049.drv-0/t-guix-system-16656
FAIL tests/guix-system.sh (exit status: 1)

Turns out, Gtk is unsupported on i686-linux which is problematic to
build the desktop.tmpl image.

Toggle snippet (4 lines)
mathieu@meije ~/guix [env]$ make -j8 && ./pre-inst-env guix build gtk -s i686-linux
gnu/packages/gtk.scm:1182:2: warning: package gtk@4.8.0 does not support i686-linux

That's because `gst-plugins-bad` and `librsvg-bootstrap` both refer to
`librsvg` which depends on Rust which is only supported on x86_64-linux.

There are other packages in (gnu packages gnome) relying on librsvg
directly. I'm not sure what's our best option here. Use
librsvg-for-system for the entire desktop.tmpl closure?

Thanks,

Mathieu
L
L
Ludovic Courtès wrote on 9 Oct 2022 22:36
(name . Mathieu Othacehe)(address . othacehe@gnu.org)(address . 57933@debbugs.gnu.org)
87y1to3faw.fsf@gnu.org
Hi,

Mathieu Othacehe <othacehe@gnu.org> skribis:

Toggle quote (14 lines)
> I had the following error while trying out `make release` for
> `i686-linux` specifically.
>
> + for example in gnu/system/examples/*.tmpl
> + case "$example" in
> + options=
> + guix system -n disk-image gnu/system/examples/desktop.tmpl
> accepted connection from pid 17139, user nixbld
> guix system: warning: 'disk-image' is deprecated: use 'image' instead
> guix system: error: package gvfs@1.50.2 does not support i686-linux
> + rm -f t-guix-system-16656 t-guix-system-error-16656 /tmp/guix-build-guix-1.3.0.24760-34049.drv-0/t-guix-system-16656/config.scm /tmp/guix-build-guix-1.3.0.24760-34049.drv-0/t-guix-system-16656/my-torrc
> + rmdir /tmp/guix-build-guix-1.3.0.24760-34049.drv-0/t-guix-system-16656
> FAIL tests/guix-system.sh (exit status: 1)

I reported and fixed this one recently:


Toggle quote (6 lines)
> Turns out, Gtk is unsupported on i686-linux which is problematic to
> build the desktop.tmpl image.
>
> mathieu@meije ~/guix [env]$ make -j8 && ./pre-inst-env guix build gtk -s i686-linux
> gnu/packages/gtk.scm:1182:2: warning: package gtk@4.8.0 does not support i686-linux

That is still the case due to Rust being pulled in via librsvg:

Toggle snippet (6 lines)
$ ./pre-inst-env guix graph --path gtk librsvg
gtk@4.8.1
gst-plugins-bad@1.18.5
librsvg@2.50.7

(Time passes…)

I pushed things to make ‘gst-plugins-bad’ supported on i686-linux:

Toggle snippet (6 lines)
27a3a5d193 gnu: svt-hevc: Mark as supported on x86_64-linux only.
e3362e249a gnu: directfb: Remove input labels.
3714c8bdcd gnu: gst-plugins-bad: Use 'librsvg-for-system'.
c3b0be1fa2 gnu: directfb: Use 'librsvg-for-system'.

But now there’s an ‘openexr’ test failure on i686.

And GTK has another path to unsupported software on i686-linux.

(Note that we’re talking about GTK 4.x, not GTK+, so maybe we can live
with that for now. At least it no longer affects ‘desktop.tmpl’ and GTK
has relatively few dependents at this point.)

Ludo’.
L
L
Ludovic Courtès wrote on 10 Oct 2022 17:40
(name . Mathieu Othacehe)(address . othacehe@gnu.org)(address . 57933-done@debbugs.gnu.org)
87o7ujznya.fsf@gnu.org
Hi,

Ludovic Courtès <ludo@gnu.org> skribis:

Toggle quote (11 lines)
> I pushed things to make ‘gst-plugins-bad’ supported on i686-linux:
>
> 27a3a5d193 gnu: svt-hevc: Mark as supported on x86_64-linux only.
> e3362e249a gnu: directfb: Remove input labels.
> 3714c8bdcd gnu: gst-plugins-bad: Use 'librsvg-for-system'.
> c3b0be1fa2 gnu: directfb: Use 'librsvg-for-system'.
>
> But now there’s an ‘openexr’ test failure on i686.
>
> And GTK has another path to unsupported software on i686-linux.

Thanks to GNUtoo’s work in https://issues.guix.gnu.org/57931, this is
now fixed:

75e24eec1e * gnu: gtk: Use librsvg-2.40 for non-x86_64.
4133e50026 * gnu: openexr: Skip failing tests on i686.
831e038dff * gnu: openexr: Apply 'guix style'.

Ludo’.
Closed
?