Bug#1039581: fenix: FTBFS in schroot with libsdl1.2-compat-dev: XDG_RUNTIME_DIR is invalid or not set in the environment
Simon McVittie
smcv at debian.org
Tue Jun 27 13:41:25 BST 2023
Source: fenix
Version: 0.92a.dfsg1-12.1
Severity: important
Tags: ftbfs trixie sid
User: pkg-sdl-maintainers at lists.alioth.debian.org
Usertags: ftbfs-libsdl1.2-compat-dev
I tried recompiling fenix on a porterbox with libsdl1.2-compat-dev
instead of libsdl1.2-dev, in preparation for having src:sdl12-compat
take over the libsdl1.2-dev package name.
I found that fenix failed its build-time tests in the schroot I was
using for this, with two test failures similar to this:
> prove -r -v debian/tests/t
>
> # Failed test 'stderr_is_eq: /home/smcv/tmp/fenix/fxi/src/fxi fhello.dcb, '
> # at /home/smcv/tmp/fenix/debian/tests/t/lib/Test/Fenix/Run.pm line 48.
> # got: 'error: XDG_RUNTIME_DIR is invalid or not set in the environment.
> # '
> # expected: ''
> # Looks like you failed 1 test of 2.
>
> # Failed test 'run a Fenix program'
> # at /home/smcv/tmp/fenix/debian/tests/t/lib/Test/Fenix/Run.pm line 51.
> # Looks like you failed 1 test of 4.
This is related to <https://bugs.debian.org/858466>, which is arguably
a schroot bug; but official Debian buildds and porterboxes use schroot,
so we have to work around it. There are a few possible ways to do that:
debian/rules could export SDL_VIDEODRIVER=dummy to prevent SDL from
trying to use X11 (which fails) or Wayland (which also fails, but
libwayland emits the message "XDG_RUNTIME_DIR is invalid or not set
in the environment" in the process). This is probably the cleanest and
simplest solution, and I've checked that it's sufficient.
Or debian/rules could use xvfb-run to run the build-time tests, so that
X11 will succeed, therefore Wayland will not be tried, therefore that
message will not be produced.
Or, debhelper compat level 13 sets a temporary XDG_RUNTIME_DIR by default
while running build-time tests.
Or, if debhelper compat level 13 is unsuitable for whatever reason,
debian/rules could open-code creation of a temporary XDG_RUNTIME_DIR,
similar to the code that was removed in
<https://salsa.debian.org/gnome-team/glib/-/commit/2ab2db4b9c04ca4c99e329af3c93e642fa478806>.
Please do one of those. If this is still happening when we are ready to
make src:sdl12-compat take over the libsdl1.2-dev name, then this bug
will become RC.
Thanks,
smcv
More information about the Pkg-games-devel
mailing list