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.
This commit is contained in:
parent
25043e01b6
commit
64e678bdbc
1 changed files with 14 additions and 18 deletions
|
@ -7831,10 +7831,7 @@ to display dialog boxes from the commandline and shell scripts.")
|
||||||
(build-system meson-build-system)
|
(build-system meson-build-system)
|
||||||
(arguments
|
(arguments
|
||||||
(list
|
(list
|
||||||
#:imported-modules `(,@%meson-build-system-modules
|
|
||||||
(guix build syscalls))
|
|
||||||
#:modules '((guix build meson-build-system)
|
#:modules '((guix build meson-build-system)
|
||||||
(guix build syscalls)
|
|
||||||
(guix build utils)
|
(guix build utils)
|
||||||
(ice-9 match))
|
(ice-9 match))
|
||||||
#:glib-or-gtk? #t
|
#:glib-or-gtk? #t
|
||||||
|
@ -7928,22 +7925,22 @@ to display dialog boxes from the commandline and shell scripts.")
|
||||||
"1"))
|
"1"))
|
||||||
(match (primitive-fork)
|
(match (primitive-fork)
|
||||||
(0 ;child process
|
(0 ;child process
|
||||||
(set-child-subreaper!)
|
(apply execlp "dbus-run-session" "dbus-run-session"
|
||||||
;; 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" "--"
|
|
||||||
"xvfb-run" "-a" "-s" (getenv "XVFB_SERVER_ARGS")
|
"xvfb-run" "-a" "-s" (getenv "XVFB_SERVER_ARGS")
|
||||||
"meson" "test" "-t" "0" "--print-errorlogs"
|
"meson" "test" "-t" "0" "--print-errorlogs"
|
||||||
test-options))
|
test-options))
|
||||||
(pid
|
(dbus-pid
|
||||||
(match (waitpid pid)
|
(let loop ()
|
||||||
((_ . status)
|
;; Reap child processes; otherwise, python-dbusmock would
|
||||||
(unless (zero? status)
|
;; waste time polling for the dbus processes it spawns to
|
||||||
(error "`meson test' exited with status"
|
;; be reaped, in vain.
|
||||||
status))))))))))))
|
(match (waitpid WAIT_ANY)
|
||||||
|
((pid . status)
|
||||||
|
(if (= pid dbus-pid)
|
||||||
|
(unless (zero? status)
|
||||||
|
(error "`meson test' exited with status"
|
||||||
|
status))
|
||||||
|
(loop)))))))))))))
|
||||||
(native-inputs
|
(native-inputs
|
||||||
(list desktop-file-utils ;for update-desktop-database
|
(list desktop-file-utils ;for update-desktop-database
|
||||||
`(,glib "bin") ;for glib-compile-schemas, etc.
|
`(,glib "bin") ;for glib-compile-schemas, etc.
|
||||||
|
@ -7964,8 +7961,7 @@ to display dialog boxes from the commandline and shell scripts.")
|
||||||
pipewire
|
pipewire
|
||||||
python
|
python
|
||||||
python-dbus
|
python-dbus
|
||||||
python-dbusmock
|
python-dbusmock))
|
||||||
tini)) ;acting as init (zombie reaper)
|
|
||||||
(propagated-inputs
|
(propagated-inputs
|
||||||
(list gsettings-desktop-schemas-next ;required by libmutter.pc
|
(list gsettings-desktop-schemas-next ;required by libmutter.pc
|
||||||
gtk+ ;required by libmutter.pc
|
gtk+ ;required by libmutter.pc
|
||||||
|
|
Reference in a new issue