From: Maxim Cournoyer <maxim.cournoyer@gmail.com>
To: "Ludovic Courtès" <ludo@gnu.org>
Cc: 66525@debbugs.gnu.org,
Liliana Marie Prikler <liliana.prikler@gmail.com>,
Raghav Gururajan <rg@raghavgururajan.name>
Subject: [bug#66525] [PATCH 1/7] gnu: mutter: Remove dependency on (guix build syscalls).
Date: Sat, 14 Oct 2023 08:52:45 -0400 [thread overview]
Message-ID: <874jit5psy.fsf@gmail.com> (raw)
In-Reply-To: <51c7e4c608c40f38c83a4ac9db88e8e1c2985ac1.1697211312.git.ludo@gnu.org> ("Ludovic Courtès"'s message of "Fri, 13 Oct 2023 17:47:44 +0200")
Hi Ludo,
Ludovic Courtès <ludo@gnu.org> writes:
> * 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.
> ---
> gnu/packages/gnome.scm | 25 +++++++++++--------------
> 1 file changed, 11 insertions(+), 14 deletions(-)
>
> diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm
> index 908b5782b5..a4993b7aa9 100644
> --- a/gnu/packages/gnome.scm
> +++ b/gnu/packages/gnome.scm
> @@ -7831,10 +7831,7 @@ (define-public mutter
> (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,23 @@ (define-public mutter
> "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.
As Bruno mentioned, the comment above has gone stale.
> - (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 ()
> + (match (waitpid WAIT_ANY)
> + ((pid . status)
> + (if (= pid dbus-pid)
> + (unless (zero? status)
> + (error "`meson test' exited with status"
> + status))
> + (loop)))))))))))))
Interesting simplification! I obviously wasn't aware this could work
instead of the more intricate set-child-subreaper! + fake init (tini).
I guess it solves a very narrow subset signal handling behavior compared
to a real init, but that it is sufficient here.
LGTM with comments from Bruno taken into account.
I think it could go to core-updates since we're already prepping the
branch. It may give some respite to the berlin aarch64 workers, which
have been working non-stop for days or weeks.
--
Thanks,
Maxim
next prev parent reply other threads:[~2023-10-14 12:54 UTC|newest]
Thread overview: 34+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-10-13 15:45 [bug#66525] [PATCH 0/7] Remove dependency of polkit, python-dbusmock, etc. on (guix build syscalls) Ludovic Courtès
2023-10-13 15:47 ` [bug#66525] [PATCH 1/7] gnu: mutter: Remove dependency " Ludovic Courtès
2023-10-13 16:49 ` Liliana Marie Prikler
2023-10-14 12:53 ` Maxim Cournoyer
2023-10-14 17:48 ` Ludovic Courtès
2023-10-13 17:05 ` Bruno Victal
2023-10-14 17:48 ` Ludovic Courtès
2023-10-14 12:52 ` Maxim Cournoyer [this message]
2023-10-14 17:50 ` Ludovic Courtès
2023-10-15 19:54 ` Maxim Cournoyer
2023-10-16 15:16 ` Ludovic Courtès
2023-10-16 16:19 ` Maxim Cournoyer
2023-10-22 13:43 ` [bug#66525] [PATCH v2 00/10] Remove dependency of polkit, python-dbusmock, etc. " Ludovic Courtès
2023-10-22 13:43 ` [bug#66525] [PATCH v2 01/10] gnu: mutter: Remove dependency " Ludovic Courtès
2023-10-22 13:43 ` [bug#66525] [PATCH v2 02/10] gnu: python-ipykernel: " Ludovic Courtès
2023-10-22 13:43 ` [bug#66525] [PATCH v2 03/10] gnu: python-dbusmock: " Ludovic Courtès
2023-10-22 13:43 ` [bug#66525] [PATCH v2 04/10] gnu: python-dbusmock: Rewrite phases as a gexp Ludovic Courtès
2023-10-22 13:43 ` [bug#66525] [PATCH v2 05/10] gnu: python-dbusmock: Use ‘search-input-file’ Ludovic Courtès
2023-10-22 13:43 ` [bug#66525] [PATCH v2 06/10] gnu: polkit: Remove dependency on (guix build syscalls) Ludovic Courtès
2023-10-22 13:43 ` [bug#66525] [PATCH v2 07/10] gnu: public-inbox: " Ludovic Courtès
2023-10-22 13:43 ` [bug#66525] [PATCH v2 08/10] build-system/ant: " Ludovic Courtès
2023-10-22 13:43 ` [bug#66525] [PATCH v2 09/10] build-system/android-ndk: " Ludovic Courtès
2023-10-22 13:43 ` [bug#66525] [PATCH v2 10/10] build-system/dub: " Ludovic Courtès
2023-10-23 1:54 ` [bug#66525] [PATCH v2 00/10] Remove dependency of polkit, python-dbusmock, etc. " Maxim Cournoyer
2023-10-23 10:09 ` Ludovic Courtès
2023-10-23 15:12 ` Maxim Cournoyer
2023-10-13 15:47 ` [bug#66525] [PATCH 2/7] gnu: python-ipykernel: Remove dependency " Ludovic Courtès
2023-10-13 15:47 ` [bug#66525] [PATCH 3/7] gnu: python-dbusmock: " Ludovic Courtès
2023-10-13 15:47 ` [bug#66525] [PATCH 4/7] gnu: python-dbusmock: Rewrite phases as a gexp Ludovic Courtès
2023-10-13 15:47 ` [bug#66525] [PATCH 5/7] gnu: python-dbusmock: Use ‘search-input-file’ Ludovic Courtès
2023-10-13 15:47 ` [bug#66525] [PATCH 6/7] gnu: polkit: Remove dependency on (guix build syscalls) Ludovic Courtès
2023-10-13 15:47 ` [bug#66525] [PATCH 7/7] gnu: public-inbox: " Ludovic Courtès
2023-10-14 12:56 ` [bug#66525] [PATCH 0/7] Remove dependency of polkit, python-dbusmock, etc. " Maxim Cournoyer
2023-10-17 8:56 ` Efraim Flashner
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=874jit5psy.fsf@gmail.com \
--to=maxim.cournoyer@gmail.com \
--cc=66525@debbugs.gnu.org \
--cc=liliana.prikler@gmail.com \
--cc=ludo@gnu.org \
--cc=rg@raghavgururajan.name \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
Code repositories for project(s) associated with this external index
https://git.savannah.gnu.org/cgit/guix.git
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.