summaryrefslogtreecommitdiff
path: root/gnu
diff options
context:
space:
mode:
authorLudovic Courtès <ludo@gnu.org>2023-10-13 16:50:28 +0200
committerLudovic Courtès <ludo@gnu.org>2023-10-23 11:56:53 +0200
commit64e678bdbc4dd139955c34dcdd8432e17c5f08b2 (patch)
treea7852530c9aa5ca6a55f4339669c15ba73739cdd /gnu
parent25043e01b6cb6696ffdc6cdedd9cdf8235bb695c (diff)
gnu: mutter: Remove dependency on (guix build syscalls).
* gnu/packages/gnome.scm (mutter)[arguments]: Remove #:imported-modules. Remove (guix build syscalls) from #:modules. Rewrite ‘check’ phase to reap processes from the build process. [native-inputs]: Remove TINI.
Diffstat (limited to 'gnu')
-rw-r--r--gnu/packages/gnome.scm32
1 files changed, 14 insertions, 18 deletions
diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm
index 2ffe8dfef2..ac3035e07d 100644
--- a/gnu/packages/gnome.scm
+++ b/gnu/packages/gnome.scm
@@ -7831,10 +7831,7 @@ to display dialog boxes from the commandline and shell scripts.")
(build-system meson-build-system)
(arguments
(list
- #:imported-modules `(,@%meson-build-system-modules
- (guix build syscalls))
#:modules '((guix build meson-build-system)
- (guix build syscalls)
(guix build utils)
(ice-9 match))
#:glib-or-gtk? #t
@@ -7928,22 +7925,22 @@ to display dialog boxes from the commandline and shell scripts.")
"1"))
(match (primitive-fork)
(0 ;child process
- (set-child-subreaper!)
- ;; Use tini so that signals are properly handled and
- ;; doubly-forked processes get reaped; otherwise,
- ;; python-dbusmock would waste time polling for the dbus
- ;; processes it spawns to be reaped, in vain.
- (apply execlp "tini" "--"
- "dbus-run-session" "--"
+ (apply execlp "dbus-run-session" "dbus-run-session"
"xvfb-run" "-a" "-s" (getenv "XVFB_SERVER_ARGS")
"meson" "test" "-t" "0" "--print-errorlogs"
test-options))
- (pid
- (match (waitpid pid)
- ((_ . status)
- (unless (zero? status)
- (error "`meson test' exited with status"
- status))))))))))))
+ (dbus-pid
+ (let loop ()
+ ;; Reap child processes; otherwise, python-dbusmock would
+ ;; waste time polling for the dbus processes it spawns to
+ ;; be reaped, in vain.
+ (match (waitpid WAIT_ANY)
+ ((pid . status)
+ (if (= pid dbus-pid)
+ (unless (zero? status)
+ (error "`meson test' exited with status"
+ status))
+ (loop)))))))))))))
(native-inputs
(list desktop-file-utils ;for update-desktop-database
`(,glib "bin") ;for glib-compile-schemas, etc.
@@ -7964,8 +7961,7 @@ to display dialog boxes from the commandline and shell scripts.")
pipewire
python
python-dbus
- python-dbusmock
- tini)) ;acting as init (zombie reaper)
+ python-dbusmock))
(propagated-inputs
(list gsettings-desktop-schemas-next ;required by libmutter.pc
gtk+ ;required by libmutter.pc