From unknown Sun Jun 15 08:45:46 2025 X-Loop: help-debbugs@gnu.org Subject: [bug#75010] [PATCH 0/7] Roll back when deployment fails. Resent-From: Herman Rimm Original-Sender: "Debbugs-submit" Resent-CC: guix-patches@gnu.org Resent-Date: Sat, 21 Dec 2024 17:04:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: report 75010 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: 75010@debbugs.gnu.org X-Debbugs-Original-To: guix-patches@gnu.org Received: via spool by submit@debbugs.gnu.org id=B.173480061520182 (code B ref -1); Sat, 21 Dec 2024 17:04:02 +0000 Received: (at submit) by debbugs.gnu.org; 21 Dec 2024 17:03:35 +0000 Received: from localhost ([127.0.0.1]:47501 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1tP2t5-0005FS-30 for submit@debbugs.gnu.org; Sat, 21 Dec 2024 12:03:35 -0500 Received: from lists.gnu.org ([209.51.188.17]:42782) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1tP2t1-0005FI-L0 for submit@debbugs.gnu.org; Sat, 21 Dec 2024 12:03:33 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1tP2t0-000541-Hl for guix-patches@gnu.org; Sat, 21 Dec 2024 12:03:31 -0500 Received: from 81-205-150-117.fixed.kpn.net ([81.205.150.117] helo=email.rimm.ee) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_CHACHA20_POLY1305:256) (Exim 4.90_1) (envelope-from ) id 1tP2sx-0002Tb-Fm for guix-patches@gnu.org; Sat, 21 Dec 2024 12:03:30 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=rimm.ee; s=herman; t=1734800596; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type; bh=nhT0nJ8hLTcNp807orlhORxWkUQwN/owqpSs/xAEbic=; b=TvdiH//QGNzyUlm8KgUfSLzkpGR7CpQAGwoHL+usAkxapCR3M88X3aEFEntDfESxrkAGIY 9o60uI0jwPoqDwwskLNkJjjOjs8fMqWl8Z+d+sy8pW5kshMPJl4SUIKhaEOpP6aOkPACw6 Hv4MMbi779YYCMR+bXa5rx/lot5qI7bYHWxZV9ahRfcEtkLlWfrj8dINWCzCFgJWuh/ZPi iFVBav/lXDjw0p15TBAZ370jFNR/WbuRuuRADATamF9ICD9Gy4cl6Z9xiZbZb4VpVp6HIO vQ0CvQ3J2WvIbVqh3SkbEJgYNKGY1wSxlFBszHbm+XN8/1d0eKNtLyQBCJouLA== Received: by 81-205-150-117.fixed.kpn.net (OpenSMTPD) with ESMTPSA id a3ddfb77 (TLSv1.3:TLS_CHACHA20_POLY1305_SHA256:256:NO) for ; Sat, 21 Dec 2024 17:03:16 +0000 (UTC) Date: Sat, 21 Dec 2024 18:02:35 +0100 From: Herman Rimm Message-ID: MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="vpnmmrdgs7wyx7tx" Content-Disposition: inline Received-SPF: pass client-ip=81.205.150.117; envelope-from=herman@rimm.ee; helo=email.rimm.ee X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_VALIDITY_CERTIFIED_BLOCKED=0.001, RCVD_IN_VALIDITY_RPBL_BLOCKED=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, TVD_RCVD_IP=0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-Spam-Score: -1.4 (-) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -2.4 (--) --vpnmmrdgs7wyx7tx Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Hello, Felix's patch is from issue #69343, one is also squashed into [PATCH 2/7]. In [PATCH 2/7], does the mbegin above the mlet work, or is its value discarded? Guix deploy seems to work the same way. In [PATCH 7/7] I try to add a test for the guix deploy rollback behavior. See attachment, why does this error occur? Cheers, Herman Felix Lechner (1): Rename two remote variables confusingly named 'generations'. Herman Rimm (6): monads: Add 'mmatch'. gnu: machine: ssh: Refactor roll-back-managed-host. gnu: machine: ssh: Return monadic value from roll-back-managed-host. gnu: machine: Remove &deploy-error. gnu: machine: ssh: Roll-back on failure. WIP: gnu: tests: Add module for guix deploy tests. doc/guix.texi | 6 ++ gnu/machine.scm | 17 +--- gnu/machine/ssh.scm | 122 +++++++++++------------- gnu/tests/deploy.scm | 203 ++++++++++++++++++++++++++++++++++++++++ guix/monads.scm | 11 +++ guix/scripts/deploy.scm | 8 +- 6 files changed, 279 insertions(+), 88 deletions(-) create mode 100644 gnu/tests/deploy.scm base-commit: 11855e1c2863c56d9a3364cdac614a529a1c7cc2 -- 2.45.2 --vpnmmrdgs7wyx7tx Content-Type: application/x-gunzip Content-Disposition: attachment; filename="1gv9mdpy6ygfgfvh4j56j4nq8c9a1m-module-import-compiled.drv.gz" Content-Transfer-Encoding: base64 H4sIAAAAAAACA+2a30/jOBDH3/kr5lrd0T64tOkvml2BON3uCukEEmJ1D9wJXMdpvU3synYK 5YG//cZJf2ShJau7AltUykM6/vozM3bsZJJeQeOgUe/U/4E/FQ2EHMB+7WAgkwOq7a3So5ph 8X6tVtu7Am+1sK+UjdDEdU7bXKNNRBQcUMZUIq3J6VvP6UMRcWKmxvI436f9XJ9IyOSOxCpI Ir7s9OHDB/hMEReAVUATq1zkENMRJ/eR6BMhx4klY6UtCAkVZ6v6aTepgKmAQ6g0ZNhZ8xtB VWJ/cuqvE65FOCXmdkgY11aEglHLj1PwIBF3gC3PwL8ZJdfCNR8rI6zSUxIIwxT6yrjC5tqe oT8S/kR+1JjL9+DDbR+4LnHcNGfO8u4cDjl+314fIddcMk4s1QNuc05mDYU+5ro3dMFUHAtL IqVGyXjBz6wF8JnozchWc74VXAckkTDL+XOWAmYqeT2iSfqZloypHS6wC3MBe6nbOdiAg0eL Zqtc5Pbehdi8Dz8sUob/8tJXrJ2XH/KCt86o9LA6EHbpoS+kK2ZMAX8h29HX0v86uTg7Pfvi w1fDQYVw4+D7jhdwFlFNrZjwZV9XkCSiWgM4CQIo+znRMZRDF+FUJRo7h0LyWWmJtInCqkYo uba6ZDSKyK2wQzK4F+NNVoOvQb43NnhCRttzZNf8wuQr6Kwu/2PKhjg/i5L/3U3I9pBz+6iQ oVrW/YOiO9K1SDwYcmnTBwlkyf8OTfKi/+jHWO0qySMllsUXHhfsPU6xI+aJqv8NS3GS56WW ImQmemWqCMhRNgSbyn7jxG0sd7fhPN2N6wut/+1ZU7mcNzjvG6Z+Ob28/nR2fvn5/OvZHwsy 11rpohvjmej1ye6SnEpI2ntR4VqdMFvEnqveBE5tmBFlAmPKRnSAFTobcjaagS+HWt26LiM+ hZtE9lUiAzKhWtB+xPfB3VYB1QMDN5WS5kZFE473QpbrkDJeghJGNitY4ObhJC1OZgE+nJSg 4gJY5b2KBUl1v/be4h5NE7oL/DUDd+/YcDtlcRq9+4YAbbgueC83V70Y93dMw2pM3d87lSAY J730TTPpucrO3wMAz/N8rweNHlRiOm7AdTVvPVxp7a60dlZa2yutrZXW5kqr98SKATQaM2ul 8v2E4Zd7EUUU5+xRS9lNIxxXHabZ9Loppg6VJ+cJrCFC2Tc8wptfuE5ByzG1Q81pYBaDCs1e 3T8EwEG9dnGvGfym1276mDXgMF//AK5bgGu3Wr5XB+ikODdYh82O3wLASTB0Mn/cQvgdS7QR eKKksma7g/06AK15GIkcSXUrwf1mIItg9oczNNYCr61i4h4e0yB7Cl5yzwzmA3YwH7ASlD+O tWI8SPTxUS5sPqHRIrmO1/Hx7APPJVf+uHztuG4WumEY8na322nT+lGWZq/pNzHNRoqoPPrk kMdHOG0r/1MOnq09H0Op/x/O3qMcU6YPny4uzi9cwo0a/IYLNqbW8oDE3BjMbz7IWYMPpQfq Y+6WDXGRWzTjPve3LM1UuMMlMdbmxodKCd1hiU7crw+yw1rar1Td+xeG4J/MliIAAA== --vpnmmrdgs7wyx7tx-- From unknown Sun Jun 15 08:45:46 2025 X-Loop: help-debbugs@gnu.org Subject: [bug#75010] [PATCH 1/7] monads: Add 'mmatch'. Resent-From: Herman Rimm Original-Sender: "Debbugs-submit" Resent-CC: guix@cbaines.net, dev@jpoiret.xyz, ludo@gnu.org, othacehe@gnu.org, maxim.cournoyer@gmail.com, zimon.toutoune@gmail.com, me@tobias.gr, guix-patches@gnu.org Resent-Date: Sat, 21 Dec 2024 17:06:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 75010 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: 75010@debbugs.gnu.org Cc: Christopher Baines , Josselin Poiret , Ludovic =?UTF-8?Q?Court=C3=A8s?= , Mathieu Othacehe , Maxim Cournoyer , Simon Tournier , Tobias Geerinckx-Rice X-Debbugs-Original-Xcc: Christopher Baines , Josselin Poiret , Ludovic =?UTF-8?Q?Court=C3=A8s?= , Mathieu Othacehe , Maxim Cournoyer , Simon Tournier , Tobias Geerinckx-Rice Received: via spool by 75010-submit@debbugs.gnu.org id=B75010.173480070920659 (code B ref 75010); Sat, 21 Dec 2024 17:06:02 +0000 Received: (at 75010) by debbugs.gnu.org; 21 Dec 2024 17:05:09 +0000 Received: from localhost ([127.0.0.1]:47509 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1tP2ua-0005Mj-MS for submit@debbugs.gnu.org; Sat, 21 Dec 2024 12:05:09 -0500 Received: from 81-205-150-117.fixed.kpn.net ([81.205.150.117]:38121 helo=email.rimm.ee) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1tP2uY-0005I2-Bd for 75010@debbugs.gnu.org; Sat, 21 Dec 2024 12:05:07 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=rimm.ee; s=herman; t=1734800696; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=XBnWVgPt+dXrwelp+ecr17pGs1zoO5nRvpNKyO4JC0o=; b=DH+pAVrZ7HAbYWtDndS5FRIBPhlzp4nq1BrN5dF1r2SNXjqRarAWh5aL+JZJ7MIgeDcYgS lSGTnIst7QBmb1RG1Lb1gXBcCnhngUTRKQ7p3PMczg28QOXEI5ysYzmJp8//39cps4CSbH cE2Zet2ONQW6chpTElZ73HTv1A566ymHteGmred+/a/iDgRL9LFs6DzSxAzumeeeBnWfBw hFimLDdtOjSRh9TQ6n+NZbAd7t4DoOKouqnBKj74U+SYlbA6pAUn3U0u7BNlm7Gy2gnn/Q TL8AxRJwCfu1aV8fb2arF3eTfs6zMJGaPJapWe+diaIE8SOQXtjptIfOiNL3pg== Received: by 81-205-150-117.fixed.kpn.net (OpenSMTPD) with ESMTPSA id 32d18722 (TLSv1.3:TLS_CHACHA20_POLY1305_SHA256:256:NO) for <75010@debbugs.gnu.org>; Sat, 21 Dec 2024 17:04:56 +0000 (UTC) From: Herman Rimm Date: Sat, 21 Dec 2024 18:04:05 +0100 Message-ID: <4bfa279cae2316d7a7a4e0640d13a0763ad86f92.1734798943.git.herman@rimm.ee> X-Mailer: git-send-email 2.45.2 In-Reply-To: References: MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Spam-Score: 0.0 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) * doc/guix.texi (The Store Monad): Document mmatch. * guix/monads.scm (mmatch): Add macro. Change-Id: I558f8e025f6cf788c9fc475e99d49690d7a98f41 --- doc/guix.texi | 6 ++++++ guix/monads.scm | 11 +++++++++++ 2 files changed, 17 insertions(+) diff --git a/doc/guix.texi b/doc/guix.texi index f7b7569887..c86f644360 100644 --- a/doc/guix.texi +++ b/doc/guix.texi @@ -11814,6 +11814,12 @@ The Store Monad (@pxref{Local Bindings,,, guile, GNU Guile Reference Manual}). @end defmac +@defmac mmatch monad mexp (pattern body) @dots{} +Match monadic object @var{mexp} against clause @var{pattern}s, in the +order in which they appear. The last expression of each clause +@var{body} must be a monadic expression. +@end defmac + @defmac mbegin monad mexp @dots{} Bind @var{mexp} and the following monadic expressions in sequence, returning the result of the last expression. Every expression in the diff --git a/guix/monads.scm b/guix/monads.scm index 0bd8ac9315..0e8ca868ce 100644 --- a/guix/monads.scm +++ b/guix/monads.scm @@ -1,5 +1,6 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2013, 2014, 2015, 2017, 2022 Ludovic Courtès +;;; Copyright © 2024 Herman Rimm ;;; ;;; This file is part of GNU Guix. ;;; @@ -37,6 +38,7 @@ (define-module (guix monads) with-monad mlet mlet* + mmatch mbegin mwhen munless @@ -355,6 +357,15 @@ (define-syntax mlet (let ((var temp) ...) body ...))))))) +(define-syntax mmatch + (syntax-rules () + "Match the monadic object MEXP against the patterns of CLAUSES ... +in the order in which they appear. The last expression of each clause +body must be a monadic expression." + ((_ monad mexp clauses ...) + (with-monad monad + (>>= mexp (match-lambda clauses ...)))))) + (define-syntax mbegin (syntax-rules (%current-monad) "Bind MEXP and the following monadic expressions in sequence, returning -- 2.45.2 From unknown Sun Jun 15 08:45:46 2025 X-Loop: help-debbugs@gnu.org Subject: [bug#75010] [PATCH 2/7] gnu: machine: ssh: Refactor roll-back-managed-host. Resent-From: Herman Rimm Original-Sender: "Debbugs-submit" Resent-CC: guix-patches@gnu.org Resent-Date: Sat, 21 Dec 2024 17:06:03 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 75010 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: 75010@debbugs.gnu.org Received: via spool by 75010-submit@debbugs.gnu.org id=B75010.173480071520785 (code B ref 75010); Sat, 21 Dec 2024 17:06:03 +0000 Received: (at 75010) by debbugs.gnu.org; 21 Dec 2024 17:05:15 +0000 Received: from localhost ([127.0.0.1]:47517 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1tP2ug-0005PA-GS for submit@debbugs.gnu.org; Sat, 21 Dec 2024 12:05:14 -0500 Received: from 81-205-150-117.fixed.kpn.net ([81.205.150.117]:38121 helo=email.rimm.ee) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1tP2uZ-0005I2-CI for 75010@debbugs.gnu.org; Sat, 21 Dec 2024 12:05:08 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=rimm.ee; s=herman; t=1734800696; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=ZTYy1cD46r8aq1jDrZf65hzcr3HDQHHFFvlUl8fXvto=; b=vN1DEqTjNoBYnNwy4Oay68R+N36O6mMiWxCCAEyBy8oDCHBzkwxyXHuiY/rJ2SnvySClI9 we+t4xgtFQy/U2RTQ05pWOW5AC8SdqUTA8rzqOWB8l4pAt+kWPZq7PF3Qqvn0kSaOHrz56 T/AsVid02uDXy5ibnzhuQqocXsrqIxkUrD2r9Meb+Q4DVPxznqurPbS0h17Kc7K2E8fBfU 4hcpD2RstBLDCgM4MrAduX5MCtr8sXSDYoYiHPbFY+6uep451/PcWrH87WjEp+CNbMfemo 0s3zdGcf4J5Rv7gilaKY5S/lHy8E/WMx/GtOXPxc+hdCrkZ1R7Il8d7V50bYIw== Received: by 81-205-150-117.fixed.kpn.net (OpenSMTPD) with ESMTPSA id 7c4c3846 (TLSv1.3:TLS_CHACHA20_POLY1305_SHA256:256:NO) for <75010@debbugs.gnu.org>; Sat, 21 Dec 2024 17:04:56 +0000 (UTC) From: Herman Rimm Date: Sat, 21 Dec 2024 18:04:06 +0100 Message-ID: X-Mailer: git-send-email 2.45.2 In-Reply-To: References: MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Spam-Score: 0.0 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) * gnu/machine/ssh.scm (roll-back-managed-host): Use let* and mbegin. Change-Id: Ic3d5039ecf01e1e965dce8a696e7dbd625d2b3c5 --- gnu/machine/ssh.scm | 53 ++++++++++++++++++++++----------------------- 1 file changed, 26 insertions(+), 27 deletions(-) diff --git a/gnu/machine/ssh.scm b/gnu/machine/ssh.scm index 3e10d984e7..24c36a1936 100644 --- a/gnu/machine/ssh.scm +++ b/gnu/machine/ssh.scm @@ -2,6 +2,8 @@ ;;; Copyright © 2019 Jakob L. Kreuze ;;; Copyright © 2020-2023 Ludovic Courtès ;;; Copyright © 2024 Ricardo +;;; Copyright © 2024 Felix Lechner +;;; Copyright © 2024 Herman Rimm ;;; ;;; This file is part of GNU Guix. ;;; @@ -589,33 +591,30 @@ (define (roll-back-managed-host machine) (define roll-back-failure (condition (&message (message (G_ "could not roll-back machine"))))) - (mlet* %store-monad ((boot-parameters (machine-boot-parameters machine)) - (_ -> (if (< (length boot-parameters) 2) - (raise roll-back-failure))) - (entries -> (map boot-parameters->menu-entry - (list (second boot-parameters)))) - (locale -> (boot-parameters-locale - (second boot-parameters))) - (crypto-dev -> (boot-parameters-store-crypto-devices - (second boot-parameters))) - (store-dir -> (boot-parameters-store-directory-prefix - (second boot-parameters))) - (old-entries -> (map boot-parameters->menu-entry - (drop boot-parameters 2))) - (bootloader -> (operating-system-bootloader - (machine-operating-system machine))) - (bootcfg (lower-object - ((bootloader-configuration-file-generator - (bootloader-configuration-bootloader - bootloader)) - bootloader entries - #:locale locale - #:store-crypto-devices crypto-dev - #:store-directory-prefix store-dir - #:old-entries old-entries))) - (remote-result (machine-remote-eval machine remote-exp))) - (when (eqv? 'error remote-result) - (raise roll-back-failure)))) + (mmatch %store-monad (machine-boot-parameters machine) + ((_ params rest ...) + (let* ((entries (list (boot-parameters->menu-entry params))) + (locale (boot-parameters-locale params)) + (crypto-dev (boot-parameters-store-crypto-devices params)) + (store-dir (boot-parameters-store-directory-prefix params)) + (old-entries (map boot-parameters->menu-entry rest)) + (bootloader (operating-system-bootloader + (machine-operating-system machine))) + (generate-bootloader-configuration-file + (bootloader-configuration-file-generator + (bootloader-configuration-bootloader bootloader)))) + (mbegin %store-monad + (lower-object (generate-bootloader-configuration-file + bootloader entries + #:locale locale + #:store-crypto-devices crypto-dev + #:store-directory-prefix store-dir + #:old-entries old-entries))) + (mlet %store-monad + ((remote-result (machine-remote-eval machine remote-exp))) + (when (eqv? 'error remote-result) + (raise roll-back-failure))))) + (_ (raise roll-back-failure)))) ;;; -- 2.45.2 From unknown Sun Jun 15 08:45:46 2025 X-Loop: help-debbugs@gnu.org Subject: [bug#75010] [PATCH 3/7] gnu: machine: ssh: Return monadic value from roll-back-managed-host. Resent-From: Herman Rimm Original-Sender: "Debbugs-submit" Resent-CC: guix-patches@gnu.org Resent-Date: Sat, 21 Dec 2024 17:06:03 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 75010 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: 75010@debbugs.gnu.org Received: via spool by 75010-submit@debbugs.gnu.org id=B75010.173480071520793 (code B ref 75010); Sat, 21 Dec 2024 17:06:03 +0000 Received: (at 75010) by debbugs.gnu.org; 21 Dec 2024 17:05:15 +0000 Received: from localhost ([127.0.0.1]:47519 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1tP2uh-0005PC-1C for submit@debbugs.gnu.org; Sat, 21 Dec 2024 12:05:15 -0500 Received: from 81-205-150-117.fixed.kpn.net ([81.205.150.117]:38121 helo=email.rimm.ee) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1tP2ua-0005I2-Eq for 75010@debbugs.gnu.org; Sat, 21 Dec 2024 12:05:09 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=rimm.ee; s=herman; t=1734800697; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=Q/q4Qebf9NGtSGG6njgIa5LiFgClro62TGrj78Uwy1g=; b=GlCjO/yyh+uSImac/iZTFcRIk7MFuqPlr8ERPFu43KOZlLMBNa+YTXvTDFi0PVVg/iTmJx +bB4mi+QZPi06Ud8lKZkgEs3JALCvJUCCBDmQRvQjctFkCZWT0BEqVogDt4coQrxaJH4cK UTyn7LnbTMTwCJu57WnmQU7jmk0264Yl6jy21lqNWQWJxH688zAcvDkm/j22/B5YVGusUB 18232AmswaSckhyrH+22RCxHWTw4I/F0jxXVTwqS0qMpFLR+eYtb1pptmfFwajekKfDwik sz2X0IG4Yrf4tb/o98mSpcJz3kMIuuof8X9wUyEFvmuDa80dqap+SOY9/RCJUw== Received: by 81-205-150-117.fixed.kpn.net (OpenSMTPD) with ESMTPSA id f6bd2c01 (TLSv1.3:TLS_CHACHA20_POLY1305_SHA256:256:NO) for <75010@debbugs.gnu.org>; Sat, 21 Dec 2024 17:04:57 +0000 (UTC) From: Herman Rimm Date: Sat, 21 Dec 2024 18:04:07 +0100 Message-ID: <9d7e69af958b651dd463d93822c0b493e201387a.1734798943.git.herman@rimm.ee> X-Mailer: git-send-email 2.45.2 In-Reply-To: References: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Spam-Score: 0.0 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) * gnu/machine/ssh.scm (roll-back-managed-host): Use return. Change-Id: Ibe7ddd5758173a6835d8796c9c5ae5ba306b3334 --- gnu/machine/ssh.scm | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/gnu/machine/ssh.scm b/gnu/machine/ssh.scm index 24c36a1936..c76b51c757 100644 --- a/gnu/machine/ssh.scm +++ b/gnu/machine/ssh.scm @@ -612,9 +612,9 @@ (define (roll-back-managed-host machine) #:old-entries old-entries))) (mlet %store-monad ((remote-result (machine-remote-eval machine remote-exp))) - (when (eqv? 'error remote-result) - (raise roll-back-failure))))) - (_ (raise roll-back-failure)))) + (mwhen (eqv? 'error remote-result) + (return (raise roll-back-failure)))))) + (_ (return (raise roll-back-failure))))) ;;; -- 2.45.2 From unknown Sun Jun 15 08:45:46 2025 X-Loop: help-debbugs@gnu.org Subject: [bug#75010] [PATCH 4/7] Rename two remote variables confusingly named 'generations'. Resent-From: Herman Rimm Original-Sender: "Debbugs-submit" Resent-CC: guix-patches@gnu.org Resent-Date: Sat, 21 Dec 2024 17:06:04 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 75010 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: 75010@debbugs.gnu.org Cc: Felix Lechner Received: via spool by 75010-submit@debbugs.gnu.org id=B75010.173480071520800 (code B ref 75010); Sat, 21 Dec 2024 17:06:04 +0000 Received: (at 75010) by debbugs.gnu.org; 21 Dec 2024 17:05:15 +0000 Received: from localhost ([127.0.0.1]:47521 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1tP2uh-0005PK-Bb for submit@debbugs.gnu.org; Sat, 21 Dec 2024 12:05:15 -0500 Received: from 81-205-150-117.fixed.kpn.net ([81.205.150.117]:38121 helo=email.rimm.ee) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1tP2ub-0005I2-Ab for 75010@debbugs.gnu.org; Sat, 21 Dec 2024 12:05:09 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=rimm.ee; s=herman; t=1734800698; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=EREHFR3ipWhtTXlI/zC1e2OV5zlEkHLR82/AvIEdK+o=; b=fxJVef1q+g2bHak/MbVtqICsjyu2K7C/7Qvdf38euotmhZaUGw1SCB+hoQ0hF9eu9pctze UghAaXE+RnhCVkk1ix0nc3i/jPvHTWANPhcXvhEihzsC7d8EIqzdyjZo6nymEMeKW/i+ZD 30eti20X8uccUoCoNjlgN3QsVm9hLu9Hf35kkZS3uWNvhHD3JVlLKxqzot8rMFgcamFA8n Dwufqw2AQvM1gz3OR1BANgzKlJVDWDATLPlcYHXMmuu7QGAllqXFqIKxIODlLtdgeVI2FN 5ak944QK7GhQhXJgr3UO+fOYj08gZ30msSaoWIC8G3TwQ84h8cthrfASjMz+Bg== Received: by 81-205-150-117.fixed.kpn.net (OpenSMTPD) with ESMTPSA id 6d2af424 (TLSv1.3:TLS_CHACHA20_POLY1305_SHA256:256:NO); Sat, 21 Dec 2024 17:04:58 +0000 (UTC) From: Herman Rimm Date: Sat, 21 Dec 2024 18:04:08 +0100 Message-ID: <9ae59065234a1d8215f94f2df13752cbfa438595.1734798943.git.herman@rimm.ee> X-Mailer: git-send-email 2.45.2 In-Reply-To: References: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Spam-Score: 0.0 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) From: Felix Lechner Both refer to data sets returned from the remote expression, and one of them shadowed an element of itself. * gnu/machine/ssh.scm (machine-boot-parameters): Rename generations to remote-results. Change-Id: Ibd8a3036126d9da1215cfc191884c0f54df637df --- gnu/machine/ssh.scm | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/gnu/machine/ssh.scm b/gnu/machine/ssh.scm index c76b51c757..3e69d4b9a3 100644 --- a/gnu/machine/ssh.scm +++ b/gnu/machine/ssh.scm @@ -455,10 +455,11 @@ (define (machine-boot-parameters machine) (read-file boot-parameters-path)))) (reverse (generation-numbers %system-profile))))))) - (mlet* %store-monad ((generations (machine-remote-eval machine remote-exp))) + (mlet %store-monad + ((remote-results (machine-remote-eval machine remote-exp))) (return - (map (lambda (generation) - (match generation + (map (lambda (remote-result) + (match remote-result ((generation system-path time serialized-params) (let* ((params (call-with-input-string serialized-params read-boot-parameters)) @@ -477,7 +478,7 @@ (define (machine-boot-parameters machine) (kernel-arguments (append (bootable-kernel-arguments system-path root version) (boot-parameters-kernel-arguments params)))))))) - generations)))) + remote-results)))) (define-syntax-rule (with-roll-back should-roll-back? mbody ...) "Catch exceptions that arise when binding MBODY, a monadic expression in -- 2.45.2 From unknown Sun Jun 15 08:45:46 2025 X-Loop: help-debbugs@gnu.org Subject: [bug#75010] [PATCH 5/7] gnu: machine: Remove &deploy-error. Resent-From: Herman Rimm Original-Sender: "Debbugs-submit" Resent-CC: guix@cbaines.net, dev@jpoiret.xyz, ludo@gnu.org, othacehe@gnu.org, zimon.toutoune@gmail.com, me@tobias.gr, guix-patches@gnu.org Resent-Date: Sat, 21 Dec 2024 17:06:04 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 75010 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: 75010@debbugs.gnu.org Cc: Christopher Baines , Josselin Poiret , Ludovic =?UTF-8?Q?Court=C3=A8s?= , Mathieu Othacehe , Simon Tournier , Tobias Geerinckx-Rice X-Debbugs-Original-Xcc: Christopher Baines , Josselin Poiret , Ludovic =?UTF-8?Q?Court=C3=A8s?= , Mathieu Othacehe , Simon Tournier , Tobias Geerinckx-Rice Received: via spool by 75010-submit@debbugs.gnu.org id=B75010.173480071620808 (code B ref 75010); Sat, 21 Dec 2024 17:06:04 +0000 Received: (at 75010) by debbugs.gnu.org; 21 Dec 2024 17:05:16 +0000 Received: from localhost ([127.0.0.1]:47523 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1tP2uh-0005PR-OI for submit@debbugs.gnu.org; Sat, 21 Dec 2024 12:05:16 -0500 Received: from 81-205-150-117.fixed.kpn.net ([81.205.150.117]:38121 helo=email.rimm.ee) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1tP2uc-0005I2-4r for 75010@debbugs.gnu.org; Sat, 21 Dec 2024 12:05:10 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=rimm.ee; s=herman; t=1734800700; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=GILwmmbUV5cxDgm2vE7mgAMn6SS5HAWz45VRyyCkjIU=; b=mnd73a6TS7e1pqVgvtQRNtFq38wE5BhUm/Yj2HEIdgAhHXOtqmtIzGY7PNFq5DL8+rMyeR 0usEneEv0XZ3ZB+qf/FIpQAiDPVA3Qg76vfkJ57J9RWHqWq0PDL8rO3G2QyGN9zTF/os+/ RwYUYLaM7DDfG9ot/eLDen2tiVEfPoUOhol/eviW2BAMKHQ8vFKkQUrVvw3d/WbWQZL1qX 0Vuo8OIUm26UoH+Yk4bWxm/gK2AomNfqkhwPin2zUtazj2NSbpHUaH9cnpn/6iFmHN2jBW 8WKSeJ9fWT4P4Y/6cdl4C+WnGJG//QZxdQzGJtBYsE+QqE3DnX84lkD2ZJz6bA== Received: by 81-205-150-117.fixed.kpn.net (OpenSMTPD) with ESMTPSA id 75f982c0 (TLSv1.3:TLS_CHACHA20_POLY1305_SHA256:256:NO) for <75010@debbugs.gnu.org>; Sat, 21 Dec 2024 17:05:00 +0000 (UTC) From: Herman Rimm Date: Sat, 21 Dec 2024 18:04:09 +0100 Message-ID: X-Mailer: git-send-email 2.45.2 In-Reply-To: References: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Spam-Score: 0.0 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) * gnu/machine.scm (&deploy-error): Remove. * gnu/machine/ssh.scm (with-roll-back): Remove. (deploy-managed-host): Remove with-roll-back. * guix/scripts/deploy.scm (deploy-machine*): Remove deploy-error? case. Change-Id: I719eafda0f5d12e1f4e3795631e78378f5376745 --- gnu/machine.scm | 17 +------------- gnu/machine/ssh.scm | 51 +++++++++++++++-------------------------- guix/scripts/deploy.scm | 8 +------ 3 files changed, 20 insertions(+), 56 deletions(-) diff --git a/gnu/machine.scm b/gnu/machine.scm index 60be674972..ede595d053 100644 --- a/gnu/machine.scm +++ b/gnu/machine.scm @@ -41,12 +41,7 @@ (define-module (gnu machine) deploy-machine roll-back-machine - machine-remote-eval - - &deploy-error - deploy-error? - deploy-error-should-roll-back - deploy-error-captured-args)) + machine-remote-eval)) ;;; Commentary: ;;; @@ -122,13 +117,3 @@ (define (roll-back-machine machine) and the new generation number." (let ((environment (machine-environment machine))) ((environment-type-roll-back-machine environment) machine))) - - -;;; -;;; Error types. -;;; - -(define-condition-type &deploy-error &error - deploy-error? - (should-roll-back deploy-error-should-roll-back) - (captured-args deploy-error-captured-args)) diff --git a/gnu/machine/ssh.scm b/gnu/machine/ssh.scm index 3e69d4b9a3..b954620b69 100644 --- a/gnu/machine/ssh.scm +++ b/gnu/machine/ssh.scm @@ -480,18 +480,6 @@ (define (machine-boot-parameters machine) (boot-parameters-kernel-arguments params)))))))) remote-results)))) -(define-syntax-rule (with-roll-back should-roll-back? mbody ...) - "Catch exceptions that arise when binding MBODY, a monadic expression in -%STORE-MONAD, and collect their arguments in a &deploy-error condition, with -the 'should-roll-back' field set to SHOULD-ROLL-BACK?" - (catch #t - (lambda () - mbody ...) - (lambda args - (raise (condition (&deploy-error - (should-roll-back should-roll-back?) - (captured-args args))))))) - (define (deploy-managed-host machine) "Internal implementation of 'deploy-machine' for MACHINE instances with an environment type of 'managed-host." @@ -536,32 +524,29 @@ (define (deploy-managed-host machine) store))))) (mbegin %store-monad - (with-roll-back #f - (switch-to-system (eval/error-handling c - (raise (formatted-message - (G_ "\ + (switch-to-system (eval/error-handling c + (raise (formatted-message + (G_ "\ failed to switch systems while deploying '~a':~%~{~s ~}") - host - (inferior-exception-arguments c)))) - os)) + host + (inferior-exception-arguments c)))) + os) (parameterize ((%current-system system) (%current-target-system #f)) - (with-roll-back #t - (mbegin %store-monad - (upgrade-shepherd-services (eval/error-handling c - (warning (G_ "\ + (mbegin %store-monad + (upgrade-shepherd-services + (eval/error-handling c + (warning (G_ "\ an error occurred while upgrading services on '~a':~%~{~s ~}~%") - host - (inferior-exception-arguments - c))) - os) - (install-bootloader (eval/error-handling c - (raise (formatted-message - (G_ "\ + host (inferior-exception-arguments c))) + os) + (install-bootloader + (eval/error-handling c + (raise (formatted-message + (G_ "\ failed to install bootloader on '~a':~%~{~s ~}~%") - host - (inferior-exception-arguments c)))) - bootloader-configuration bootcfg))))))))) + host (inferior-exception-arguments c)))) + bootloader-configuration bootcfg)))))))) ;;; diff --git a/guix/scripts/deploy.scm b/guix/scripts/deploy.scm index 4b1a603049..ca0e1c4023 100644 --- a/guix/scripts/deploy.scm +++ b/guix/scripts/deploy.scm @@ -156,13 +156,7 @@ (define (deploy-machine* store machine) (apply format #f (gettext (formatted-message-string c) %gettext-domain) - (formatted-message-arguments c)))) - ((deploy-error? c) - (when (deploy-error-should-roll-back c) - (info (G_ "rolling back ~a...~%") - (machine-display-name machine)) - (run-with-store store (roll-back-machine machine))) - (apply throw (deploy-error-captured-args c)))) + (formatted-message-arguments c))))) (run-with-store store (deploy-machine machine)) (info (G_ "successfully deployed ~a~%") -- 2.45.2 From unknown Sun Jun 15 08:45:46 2025 X-Loop: help-debbugs@gnu.org Subject: [bug#75010] [PATCH 6/7] gnu: machine: ssh: Roll-back on failure. Resent-From: Herman Rimm Original-Sender: "Debbugs-submit" Resent-CC: guix-patches@gnu.org Resent-Date: Sat, 21 Dec 2024 17:06:05 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 75010 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: 75010@debbugs.gnu.org Received: via spool by 75010-submit@debbugs.gnu.org id=B75010.173480071720815 (code B ref 75010); Sat, 21 Dec 2024 17:06:05 +0000 Received: (at 75010) by debbugs.gnu.org; 21 Dec 2024 17:05:17 +0000 Received: from localhost ([127.0.0.1]:47525 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1tP2ui-0005PZ-Bh for submit@debbugs.gnu.org; Sat, 21 Dec 2024 12:05:16 -0500 Received: from 81-205-150-117.fixed.kpn.net ([81.205.150.117]:38121 helo=email.rimm.ee) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1tP2ud-0005I2-10 for 75010@debbugs.gnu.org; Sat, 21 Dec 2024 12:05:11 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=rimm.ee; s=herman; t=1734800700; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=sg+tzSoNpo4NreLrmz4j1tsSAkk4dcN12IGGjeWhksU=; b=uzC3I+wp5im80GUQLs+gLQN8j9bLPSfA7yLGIRK0nG2a0pDr7Rtllwys9+yHZmwbQmE7G5 4LJ2sLdABhcIWtYSf+Mhtg7cvI7eGBDwqSYqNco4temizhmkUreYQ78SKAlqiY9EVpagtT O/j0sPg0wfNFZo0HhzQEEwv5B1ICfkHVRfn8tm4XAl6DRXUbTpq2IXdrIIFiLypdOVceXW Oo6BKim9eRIpjkpoenUjX9bPrfK5saMkgZXfNmaIywZcmLvcumHnzgPLR65XI8v7Pu51hF 4Wf7A1+lJbpcjSFnQipFxAfqkQJG9Sl7NDhiHvDvugqSbwBjfaIxiCmKFSDFgQ== Received: by 81-205-150-117.fixed.kpn.net (OpenSMTPD) with ESMTPSA id 981c04c1 (TLSv1.3:TLS_CHACHA20_POLY1305_SHA256:256:NO) for <75010@debbugs.gnu.org>; Sat, 21 Dec 2024 17:05:00 +0000 (UTC) From: Herman Rimm Date: Sat, 21 Dec 2024 18:04:10 +0100 Message-ID: X-Mailer: git-send-email 2.45.2 In-Reply-To: References: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Spam-Score: 0.0 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) This restores the roll-back behaviour which was disabled in 2885c35. * gnu/machine/ssh.scm (deploy-managed-host): Use roll-back-machine. Change-Id: I8636347541ee1e4e30da15dd43455329a46c3bdb --- gnu/machine/ssh.scm | 15 +++++++++++---- 1 file changed, 11 insertions(+), 4 deletions(-) diff --git a/gnu/machine/ssh.scm b/gnu/machine/ssh.scm index b954620b69..9cc9c8f099 100644 --- a/gnu/machine/ssh.scm +++ b/gnu/machine/ssh.scm @@ -512,7 +512,8 @@ (define (deploy-managed-host machine) (menu-entries (map boot-parameters->menu-entry boot-parameters)) (bootloader-configuration (operating-system-bootloader os)) (bootcfg (operating-system-bootcfg os menu-entries))) - (define-syntax-rule (eval/error-handling condition handler ...) + (define-syntax-rule (eval/error-handling condition store + handler ...) ;; Return a wrapper around EVAL such that HANDLER is evaluated if an ;; exception is raised. (lambda (exp) @@ -524,7 +525,7 @@ (define (deploy-managed-host machine) store))))) (mbegin %store-monad - (switch-to-system (eval/error-handling c + (switch-to-system (eval/error-handling c store (raise (formatted-message (G_ "\ failed to switch systems while deploying '~a':~%~{~s ~}") @@ -535,13 +536,19 @@ (define (deploy-managed-host machine) (%current-target-system #f)) (mbegin %store-monad (upgrade-shepherd-services - (eval/error-handling c + (eval/error-handling c store + (info (G_ "rolling back ~a...~%") host) + (run-with-store store (roll-back-machine machine) + #:system system) (warning (G_ "\ an error occurred while upgrading services on '~a':~%~{~s ~}~%") host (inferior-exception-arguments c))) os) (install-bootloader - (eval/error-handling c + (eval/error-handling c store + (info (G_ "rolling back ~a...~%") host) + (run-with-store store (roll-back-machine machine) + #:system system) (raise (formatted-message (G_ "\ failed to install bootloader on '~a':~%~{~s ~}~%") -- 2.45.2 From unknown Sun Jun 15 08:45:46 2025 X-Loop: help-debbugs@gnu.org Subject: [bug#75010] [PATCH 7/7] WIP: gnu: tests: Add module for guix deploy tests. Resent-From: Herman Rimm Original-Sender: "Debbugs-submit" Resent-CC: guix-patches@gnu.org Resent-Date: Sat, 21 Dec 2024 17:06:05 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 75010 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: 75010@debbugs.gnu.org Received: via spool by 75010-submit@debbugs.gnu.org id=B75010.173480071720822 (code B ref 75010); Sat, 21 Dec 2024 17:06:05 +0000 Received: (at 75010) by debbugs.gnu.org; 21 Dec 2024 17:05:17 +0000 Received: from localhost ([127.0.0.1]:47527 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1tP2ui-0005Pg-Qs for submit@debbugs.gnu.org; Sat, 21 Dec 2024 12:05:17 -0500 Received: from 81-205-150-117.fixed.kpn.net ([81.205.150.117]:43315 helo=email.rimm.ee) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1tP2ud-0005Kx-Jc for 75010@debbugs.gnu.org; Sat, 21 Dec 2024 12:05:12 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=rimm.ee; s=herman; t=1734800700; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=q8l2CGW8ua0o6eD68houCMsDsSN0DbJ0eXCyDxg2/X8=; b=eTWF4QOMTkmXKcYONocuNLyjGHAloL4444ByhYZJJuxovnRsVPjTrXnr5KR+J2oIR34U1i c1OBtNZHMJzs6XwLH/dK21+BDN+gOy+aWiI7DuES4WHhWJqWgxLouYjtYR3xnYcFlDigBx 0gNHu8rjCOYmHr4oyF0mlr734I/iETrkdafoe8j5qyZLxDf1PGjfI2kvuT1/CPr7Aks1bS MTzsJFT7/bzIuei7n3GRFkBWKVxDV582zulKwHXpg0c5u+FBAwN7lmwKHvZG5ufi/E0orY 062JhGuAFdVB69/vVU4gT8CNNls2StC2ruDlbdVgndUakkvn80QINv5DMAUm9A== Received: by 81-205-150-117.fixed.kpn.net (OpenSMTPD) with ESMTPSA id bdd870d6 (TLSv1.3:TLS_CHACHA20_POLY1305_SHA256:256:NO) for <75010@debbugs.gnu.org>; Sat, 21 Dec 2024 17:05:00 +0000 (UTC) From: Herman Rimm Date: Sat, 21 Dec 2024 18:04:11 +0100 Message-ID: <6438a457713360741155104b3b2c8af6fda50ee4.1734798943.git.herman@rimm.ee> X-Mailer: git-send-email 2.45.2 In-Reply-To: References: MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Spam-Score: 0.0 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) * gnu/tests/deploy.scm: Add file. Change-Id: I348c8bf2e518ec6c00af126993eaca3fcd453901 --- gnu/tests/deploy.scm | 203 +++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 203 insertions(+) create mode 100644 gnu/tests/deploy.scm diff --git a/gnu/tests/deploy.scm b/gnu/tests/deploy.scm new file mode 100644 index 0000000000..24671cddec --- /dev/null +++ b/gnu/tests/deploy.scm @@ -0,0 +1,203 @@ +;;; GNU Guix --- Functional package management for GNU +;;; Copyright © 2019 Jakob L. Kreuze +;;; Copyright © 2024 Herman Rimm +;;; +;;; This file is part of GNU Guix. +;;; +;;; GNU Guix is free software; you can redistribute it and/or modify it +;;; under the terms of the GNU General Public License as published by +;;; the Free Software Foundation; either version 3 of the License, or (at +;;; your option) any later version. +;;; +;;; GNU Guix is distributed in the hope that it will be useful, but +;;; WITHOUT ANY WARRANTY; without even the implied warranty of +;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +;;; GNU General Public License for more details. +;;; +;;; You should have received a copy of the GNU General Public License +;;; along with GNU Guix. If not, see . + +(define-module (gnu tests deploy) + #:use-module (gnu packages gnupg) + #:use-module ((guix self) #:select (make-config.scm)) + #:use-module (gnu services) + #:use-module (gnu services base) + #:use-module (gnu services ssh) + #:use-module (gnu system) + #:use-module (gnu system vm) + #:use-module (gnu tests) + #:use-module (guix gexp) + #:use-module (guix modules) + #:use-module (ice-9 match) + #:export (%test-deploy + %test-rollback)) + +;;; Commentary: +;;; +;;; Test in-place system deployment: advancing the system generation on +;;; a running instance of the Guix System. +;;; +;;; Code: + +(define (machines os) + (program-file "machines.scm" + #~(list (machine (configuration + (machine-ssh-configuration + (host-name "localhost") + (system (%current-system)))) + (environment managed-host-environment-type) + (operating-system #$os))))) + +(define not-config? + ;; Select (guix …) and (gnu …) modules, except (guix config). + (match-lambda + (('guix 'config) #f) + (('guix rest ...) #t) + (('gnu rest ...) #t) + (_ #f))) + +(define* (deploy-program #:optional (os #~%simple-os)) + (program-file "deploy.scm" + (with-extensions (list guile-gcrypt) + (with-imported-modules `(,@(source-module-closure + '((guix scripts deploy)) + #:select? not-config?) + ((guix config) => ,(make-config.scm))) + #~(begin + (use-modules (guix scripts deploy)) + (guix-deploy #$(machines os))))))) + +(define os + (marionette-operating-system + (simple-operating-system + (service openssh-service-type + (openssh-configuration + (permit-root-login #t) + (allow-empty-passwords? #t))) + (service static-networking-service-type + (list (static-networking + (inherit %loopback-static-networking) + (provision '(networking)))))) + #:imported-modules '((gnu services herd) + (guix combinators)))) + +(define vm (virtual-machine os)) + +(define* (run-deploy-test) + "Run a test of an OS running DEPLOY-PROGRAM, which creates a new +generation of the system profile." + (define (test script) + (with-imported-modules '((gnu build marionette)) + #~(begin + (use-modules (gnu build marionette) + (srfi srfi-64)) + + (define marionette + (make-marionette (list #$vm))) + + ;; Return the names of the generation symlinks on MARIONETTE. + (define (system-generations marionette) + (marionette-eval + '(begin + (use-modules (ice-9 ftw) + (srfi srfi-1)) + (let* ((profile-dir "/var/guix/profiles/") + (entries (map first (cddr (file-system-tree profile-dir))))) + (remove (lambda (entry) + (member entry '("per-user" "system"))) + entries))) + marionette)) + + (test-runner-current (system-test-runner #$output)) + (test-begin "deploy") + + (let ((generations-prior (system-generations marionette))) + (test-assert "script successfully evaluated" + (marionette-eval + '(primitive-load #$script) + marionette)) + + (test-equal "script created new generation" + (length (system-generations marionette)) + (1+ (length generations-prior))) + + (test-equal "script activated the new generation" + (string-append "/var/guix/profiles/system-" + (number->string (+ 1 (length generations-prior))) + "-link") + (marionette-eval '(readlink "/run/current-system") + marionette))) + + (test-end)))) + + (gexp->derivation "deploy" (test (deploy-program)))) + +(define* (run-rollback-test) + "Run a test of an OS with a faulty bootloader running DEPLOY-PROGRAM, +which causes a rollback." + (define os + #~(operating-system + (inherit %simple-os) + (bootloader + (bootloader-configuration + (inherit (operating-system-bootloader + %simple-os)) + (targets '("/dev/null")))))) + + (define (test script) + (with-imported-modules '((gnu build marionette)) + #~(begin + (use-modules (gnu build marionette) + (srfi srfi-64)) + + (define marionette + (make-marionette (list #$vm))) + + ;; Return the names of the generation symlinks on MARIONETTE. + (define (system-generations marionette) + (marionette-eval + '(begin + (use-modules (ice-9 ftw) + (srfi srfi-1)) + (let* ((profile-dir "/var/guix/profiles/") + (entries (map first (cddr (file-system-tree profile-dir))))) + (remove (lambda (entry) + (member entry '("per-user" "system"))) + entries))) + marionette)) + + (test-runner-current (system-test-runner #$output)) + (test-begin "rollback") + + (let ((generations-prior (system-generations marionette))) + (test-assert "script successfully evaluated" + (marionette-eval + '(primitive-load #$script) + marionette)) + + (test-equal "script created new generation" + (length (system-generations marionette)) + (1+ (length generations-prior))) + + (test-equal "script rolled back the new generation" + (string-append "/var/guix/profiles/system-" + (number->string (length generations-prior)) + "-link") + (marionette-eval '(readlink "/run/current-system") + marionette))) + + (test-end)))) + + (gexp->derivation "rollback" (test (deploy-program os)))) + +(define %test-deploy + (system-test + (name "deploy") + (description "Deploy to the local machine.") + (value (run-deploy-test)))) + +(define %test-rollback + (system-test + (name "rollback") + (description "Rollback the deployment of a faulty bootloader.") + (value (run-rollback-test)))) -- 2.45.2 From unknown Sun Jun 15 08:45:46 2025 X-Loop: help-debbugs@gnu.org Subject: [bug#75010] [PATCH 2/7] gnu: machine: ssh: Refactor roll-back-managed-host. Resent-From: Ludovic =?UTF-8?Q?Court=C3=A8s?= Original-Sender: "Debbugs-submit" Resent-CC: guix-patches@gnu.org Resent-Date: Mon, 30 Dec 2024 12:10:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 75010 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: Herman Rimm Cc: 75010@debbugs.gnu.org Received: via spool by 75010-submit@debbugs.gnu.org id=B75010.173556057022361 (code B ref 75010); Mon, 30 Dec 2024 12:10:02 +0000 Received: (at 75010) by debbugs.gnu.org; 30 Dec 2024 12:09:30 +0000 Received: from localhost ([127.0.0.1]:57602 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1tSEaQ-0005oa-6s for submit@debbugs.gnu.org; Mon, 30 Dec 2024 07:09:30 -0500 Received: from eggs.gnu.org ([209.51.188.92]:33872) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1tSEaO-0005oK-4f for 75010@debbugs.gnu.org; Mon, 30 Dec 2024 07:09:28 -0500 Received: from fencepost.gnu.org ([2001:470:142:3::e]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1tSEaG-0003PP-7V; Mon, 30 Dec 2024 07:09:20 -0500 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org; s=fencepost-gnu-org; h=MIME-Version:Date:References:In-Reply-To:Subject:To: From; bh=MSUI0vjXgVIzIcWY1kWgPXFJmSNrp3BBARSP8AeMU7E=; b=Ajoi5NcfjvhuMuPRuVLq lZf2Wes8JDMtoluuCWcbQWNe0Q0LZhy5jMUAdeDuxiKP/CHK6Atm6HNtdaVM0BkhpVdf6P37hDjNe xm9Z9QjefSOqXhp13GolE2BjfXtfXIaowCjEmRuNo106HMJv2LrLpZg80p+OchN8UnQVri7w/p6h6 91aWGy3w6yJI37EwI/1wh/gu8YWug0oy3kLGT6NUQvRkgNcvXH7ZhViJKKHzkGn7Ee2fO2FoiqaAX 8YSqOuZbV2fP3531Su9yEcmrAqGdPvb9NQHkvR7gtnH8Yc40ZQ9IQUKNkq445xMOV/bJ8zo60D7bK yaOhh3HioKpkDA==; From: Ludovic =?UTF-8?Q?Court=C3=A8s?= In-Reply-To: (Herman Rimm's message of "Sat, 21 Dec 2024 18:04:06 +0100") References: Date: Mon, 30 Dec 2024 13:09:04 +0100 Message-ID: <87ed1ptlsv.fsf@gnu.org> User-Agent: Gnus/5.13 (Gnus v5.13) MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-Spam-Score: -2.3 (--) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.3 (---) Hi, Herman Rimm skribis: > * gnu/machine/ssh.scm (roll-back-managed-host): Use let* and mbegin. > > Change-Id: Ic3d5039ecf01e1e965dce8a696e7dbd625d2b3c5 [...] > + (mmatch %store-monad (machine-boot-parameters machine) > + ((_ params rest ...) > + (let* ((entries (list (boot-parameters->menu-entry params))) > + (locale (boot-parameters-locale params)) > + (crypto-dev (boot-parameters-store-crypto-devices params)) > + (store-dir (boot-parameters-store-directory-prefix params)) > + (old-entries (map boot-parameters->menu-entry rest)) > + (bootloader (operating-system-bootloader > + (machine-operating-system machine))) > + (generate-bootloader-configuration-file > + (bootloader-configuration-file-generator > + (bootloader-configuration-bootloader bootloader)))) > + (mbegin %store-monad > + (lower-object (generate-bootloader-configuration-file > + bootloader entries > + #:locale locale > + #:store-crypto-devices crypto-dev > + #:store-directory-prefix store-dir > + #:old-entries old-entries))) > + (mlet %store-monad > + ((remote-result (machine-remote-eval machine remote-exp))) > + (when (eqv? 'error remote-result) > + (raise roll-back-failure))))) The (mbegin =E2=80=A6) expression has no effect because it=E2=80=99s not in= tail position (it expands to (lambda (=E2=80=A6) =E2=80=A6)). Even if it had an effect, generating the bootloader config file in itself does nothing: it has to at least be copied to the right place or passed as an argument to =E2=80=98grub-install=E2=80=99 or similar. The following =E2=80=98mlet=E2=80=99 should use =E2=80=98mwhen=E2=80=99 rat= her than =E2=80=98when=E2=80=99 to return a monadic value when the condition is false. These two bugs are actually already present in =E2=80=98master=E2=80=99, so= I guess we=E2=80=99re dealing with untested code. =F0=9F=98=B1 (We should come up with a strategy to test those things.) Ludo=E2=80=99. From unknown Sun Jun 15 08:45:46 2025 X-Loop: help-debbugs@gnu.org Subject: [bug#75010] [PATCH 7/7] WIP: gnu: tests: Add module for guix deploy tests. Resent-From: Ludovic =?UTF-8?Q?Court=C3=A8s?= Original-Sender: "Debbugs-submit" Resent-CC: guix-patches@gnu.org Resent-Date: Mon, 30 Dec 2024 12:22:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 75010 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: Herman Rimm Cc: 75010@debbugs.gnu.org Received: via spool by 75010-submit@debbugs.gnu.org id=B75010.173556129625194 (code B ref 75010); Mon, 30 Dec 2024 12:22:01 +0000 Received: (at 75010) by debbugs.gnu.org; 30 Dec 2024 12:21:36 +0000 Received: from localhost ([127.0.0.1]:57657 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1tSEm8-0006YG-1V for submit@debbugs.gnu.org; Mon, 30 Dec 2024 07:21:36 -0500 Received: from eggs.gnu.org ([209.51.188.92]:55732) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1tSEm5-0006Y1-GG for 75010@debbugs.gnu.org; Mon, 30 Dec 2024 07:21:34 -0500 Received: from fencepost.gnu.org ([2001:470:142:3::e]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1tSElx-0004uG-UA; Mon, 30 Dec 2024 07:21:25 -0500 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org; s=fencepost-gnu-org; h=MIME-Version:Date:References:In-Reply-To:Subject:To: From; bh=Agq7yUEZUIiwP0WeZZe0g5dw5Jo9UU+1Oxz4pUenljE=; b=GCsiHiCebkWq9Ycx4DK9 JWtK1h1QzKhVOPbBMb7FMVQkWnf0guK3SILHUdpF+UdltMUfOqWPCBius4Jp8v/R7ztsK0v2Q7yiP 8x4i+BTda5MX2bCfCJnW6LhgfOfeAr+QoDqJU/AoqmWnyxaL3X1wiFQwlBBbKGs5dQdo/DJOXul6j HsgtuC/QKlhODzg5lHvrFAkxOhYE4SVCi5SKl2SnbEPttNGnpEmWY0Doh+FdMA2pQXtk2A/iA0ldi 6H7Ci2uYAEyJFBVTBRy65ITWx+o3+NqK63kq0pTgdyAuKm34IxeE5jdGqPzNpP8np3H4DPVtmGIHn gB3ZwGeye+GA0A==; From: Ludovic =?UTF-8?Q?Court=C3=A8s?= In-Reply-To: <6438a457713360741155104b3b2c8af6fda50ee4.1734798943.git.herman@rimm.ee> (Herman Rimm's message of "Sat, 21 Dec 2024 18:04:11 +0100") References: <6438a457713360741155104b3b2c8af6fda50ee4.1734798943.git.herman@rimm.ee> Date: Mon, 30 Dec 2024 13:21:12 +0100 Message-ID: <8734i5tl8n.fsf@gnu.org> User-Agent: Gnus/5.13 (Gnus v5.13) MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-Spam-Score: -2.3 (--) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.3 (---) Herman Rimm skribis: > * gnu/tests/deploy.scm: Add file. > > Change-Id: I348c8bf2e518ec6c00af126993eaca3fcd453901 Yay, nice! Could you add it to =E2=80=98gnu/local.mk=E2=80=99? > +(define (machines os) > + (program-file "machines.scm" > + #~(list (machine (configuration This should be =E2=80=98scheme-file=E2=80=99 (with normal indentation). > +(define* (deploy-program #:optional (os #~%simple-os)) > + (program-file "deploy.scm" > + (with-extensions (list guile-gcrypt) > + (with-imported-modules `(,@(source-module-closure > + '((guix scripts deploy)) > + #:select? not-config?) > + ((guix config) =3D> ,(make-config.scm))) > + #~(begin > + (use-modules (guix scripts deploy)) > + (guix-deploy #$(machines os))))))) We could use the =E2=80=98guix=E2=80=99 package here: it would be faster, b= ut then we would be testing an older snapshot and not the code at hand. Not great. Still, maybe using =E2=80=98current-guix=E2=80=99 would be faster (fewer th= ings to build), as in: #~(execl #$(file-append (current-guix) "/bin/guix") "guix" "deploy=E2=80=9C #$(machines os)) > + (define (system-generations marionette) > + (marionette-eval > + '(begin > + (use-modules (ice-9 ftw) > + (srfi srfi-1)) > + (let* ((profile-dir "/var/guix/profiles/") > + (entries (map first (cddr (file-system-tree profi= le-dir))))) Please use =E2=80=98match=E2=80=99 rather than =E2=80=98first=E2=80=99 and = =E2=80=98cddr=E2=80=99 (info "(guix) Data Types and Pattern Matching"). Or maybe you could just as well use =E2=80=98scandir=E2=80=99? > + (test-equal "script created new generation" > + (length (system-generations marionette)) > + (1+ (length generations-prior))) > + > + (test-equal "script activated the new generation" > + (string-append "/var/guix/profiles/system-" > + (number->string (+ 1 (length generations-pr= ior))) > + "-link") > + (marionette-eval '(readlink "/run/current-system") > + marionette))) We could also check other things, like the host name. Ludo=E2=80=99. From unknown Sun Jun 15 08:45:46 2025 X-Loop: help-debbugs@gnu.org Subject: [bug#75010] [PATCH 1/7] monads: Add 'mmatch'. Resent-From: Ludovic =?UTF-8?Q?Court=C3=A8s?= Original-Sender: "Debbugs-submit" Resent-CC: guix-patches@gnu.org Resent-Date: Mon, 30 Dec 2024 12:35:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 75010 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: Herman Rimm Cc: Josselin Poiret , Maxim Cournoyer , Simon Tournier , Mathieu Othacehe , Tobias Geerinckx-Rice , 75010@debbugs.gnu.org, Christopher Baines Received: via spool by 75010-submit@debbugs.gnu.org id=B75010.173556207827415 (code B ref 75010); Mon, 30 Dec 2024 12:35:02 +0000 Received: (at 75010) by debbugs.gnu.org; 30 Dec 2024 12:34:38 +0000 Received: from localhost ([127.0.0.1]:57680 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1tSEyk-000786-2U for submit@debbugs.gnu.org; Mon, 30 Dec 2024 07:34:38 -0500 Received: from eggs.gnu.org ([209.51.188.92]:56272) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1tSEyh-00077r-Ok for 75010@debbugs.gnu.org; Mon, 30 Dec 2024 07:34:36 -0500 Received: from fencepost.gnu.org ([2001:470:142:3::e]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1tSEyW-0006Jv-7k; Mon, 30 Dec 2024 07:34:24 -0500 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org; s=fencepost-gnu-org; h=MIME-Version:Date:References:In-Reply-To:Subject:To: From; bh=NflHsyouIEs8G0ZrPoZsDxb9TmrVvPT/9EYxUxcEjrE=; b=lag8PAaYhhBvZsz5qvn2 SPEx1WNa8CvA1oRnvGi/iCN3G8yDPnLJ3JgvQpioSchjV9126R4IAanGdjl3Iqnxty2RiZbbdQJXt 2sn6o9nAROyvHIiDWMhXuPjlRDhMDBi/QP4rT+1Pq+1ffWwhoPI8qyKtGcwn8g2jduleelVQ2cxep FGN6HkQWBFOs8xxUqj8keB2PWnhwM6KtyP3rTe8ak2/nx8bYH1pK2ajovI6KkbsaZVgDhYOSNY14D J3uVaooh/qSxTnaHe7BZvTv2mQ0W8Q0ZW2bjBeXmGbd2L6OQkEXG4uBZPYXcjwHF8V00oTJ9sGNy6 C4EaJh8cPo2TDw==; From: Ludovic =?UTF-8?Q?Court=C3=A8s?= In-Reply-To: <4bfa279cae2316d7a7a4e0640d13a0763ad86f92.1734798943.git.herman@rimm.ee> (Herman Rimm's message of "Sat, 21 Dec 2024 18:04:05 +0100") References: <4bfa279cae2316d7a7a4e0640d13a0763ad86f92.1734798943.git.herman@rimm.ee> Date: Mon, 30 Dec 2024 13:34:19 +0100 Message-ID: <87y0zxs62c.fsf@gnu.org> User-Agent: Gnus/5.13 (Gnus v5.13) MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-Spam-Score: -2.3 (--) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.3 (---) Herman Rimm skribis: > * doc/guix.texi (The Store Monad): Document mmatch. > * guix/monads.scm (mmatch): Add macro. > > Change-Id: I558f8e025f6cf788c9fc475e99d49690d7a98f41 [...] > +@defmac mmatch monad mexp (pattern body) @dots{} > +Match monadic object @var{mexp} against clause @var{pattern}s, in the I=E2=80=99m not convinced by this one: usually, monadic procedures take a =E2=80=9Cnormal=E2=80=9D value and return a monadic value. So the style of= this macro is quite unusual. Also it doesn=E2=80=99t save much typing compared to an =E2=80=98mlet=E2=80=99 followed by =E2=80=98match=E2=80=99. WDYT? Ludo=E2=80=99. From unknown Sun Jun 15 08:45:46 2025 X-Loop: help-debbugs@gnu.org Subject: [bug#75010] [PATCH 3/7] gnu: machine: ssh: Return monadic value from roll-back-managed-host. Resent-From: Ludovic =?UTF-8?Q?Court=C3=A8s?= Original-Sender: "Debbugs-submit" Resent-CC: guix-patches@gnu.org Resent-Date: Mon, 30 Dec 2024 12:38:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 75010 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: Herman Rimm Cc: 75010@debbugs.gnu.org Received: via spool by 75010-submit@debbugs.gnu.org id=B75010.173556223728131 (code B ref 75010); Mon, 30 Dec 2024 12:38:02 +0000 Received: (at 75010) by debbugs.gnu.org; 30 Dec 2024 12:37:17 +0000 Received: from localhost ([127.0.0.1]:57688 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1tSF1I-0007Jf-Lh for submit@debbugs.gnu.org; Mon, 30 Dec 2024 07:37:16 -0500 Received: from eggs.gnu.org ([209.51.188.92]:49874) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1tSF1G-0007JL-Vb for 75010@debbugs.gnu.org; Mon, 30 Dec 2024 07:37:15 -0500 Received: from fencepost.gnu.org ([2001:470:142:3::e]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1tSF19-0006db-TJ; Mon, 30 Dec 2024 07:37:09 -0500 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org; s=fencepost-gnu-org; h=MIME-Version:Date:References:In-Reply-To:Subject:To: From; bh=GCrryRaG+bnl7vUwoo6Jjm9BWABvWhJ/UdbtCgsjngM=; b=l6MKqXIBvT0CYXVPs4TW 5RLmRGqwApUoa8oy1HnbwqJtA4t7AJu75smoqkqsXZ08/fpday7UFz6v9uPKS/wR5fMz59XCDlxJr zSbnO3TfPsNIuHWqnkl5Dnln2pcjKh3kOcT0hHVtEAM7ie5seM3I3Rsldg1v404L6pF3+OYVltJJd g0GDT7x3dKn5nO4nzx+T1Eobvh9miRFhecDDY0vYtRtrjTuKKpxOv8pWDHEn5G6uK2S19VWN0SnIV OFXHAkjCxUJBv9uyJLc2ShnefnVriop9GpnOkBBOwDL43iuAet7PaRLT1SksqgB8rS/0DFPSDkPqp lQECoAGKNumMzQ==; From: Ludovic =?UTF-8?Q?Court=C3=A8s?= In-Reply-To: <9d7e69af958b651dd463d93822c0b493e201387a.1734798943.git.herman@rimm.ee> (Herman Rimm's message of "Sat, 21 Dec 2024 18:04:07 +0100") References: <9d7e69af958b651dd463d93822c0b493e201387a.1734798943.git.herman@rimm.ee> Date: Mon, 30 Dec 2024 13:36:40 +0100 Message-ID: <87ttals5yf.fsf@gnu.org> User-Agent: Gnus/5.13 (Gnus v5.13) MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-Spam-Score: -2.3 (--) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.3 (---) Herman Rimm skribis: > * gnu/machine/ssh.scm (roll-back-managed-host): Use return. > > Change-Id: Ibe7ddd5758173a6835d8796c9c5ae5ba306b3334 [...] > - (_ (raise roll-back-failure)))) > + (mwhen (eqv? 'error remote-result) > + (return (raise roll-back-failure)))))) > + (_ (return (raise roll-back-failure))))) Definitely. :-) (=E2=80=98return=E2=80=99 could be omitted since it won=E2=80=99t return.) Ludo=E2=80=99. From unknown Sun Jun 15 08:45:46 2025 X-Loop: help-debbugs@gnu.org Subject: [bug#75010] [PATCH v2 0/2] Add module for guix deploy tests. References: In-Reply-To: Resent-From: Herman Rimm Original-Sender: "Debbugs-submit" Resent-CC: guix-patches@gnu.org Resent-Date: Fri, 31 Jan 2025 11:15:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 75010 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: Ludovic =?UTF-8?Q?Court=C3=A8s?= Cc: 75010@debbugs.gnu.org Received: via spool by 75010-submit@debbugs.gnu.org id=B75010.173832206014377 (code B ref 75010); Fri, 31 Jan 2025 11:15:02 +0000 Received: (at 75010) by debbugs.gnu.org; 31 Jan 2025 11:14:20 +0000 Received: from localhost ([127.0.0.1]:50189 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1tdoyX-0003jj-78 for submit@debbugs.gnu.org; Fri, 31 Jan 2025 06:14:20 -0500 Received: from 81-205-150-117.fixed.kpn.net ([81.205.150.117]:58167 helo=email.rimm.ee) by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.84_2) (envelope-from ) id 1tdoyS-0003jP-8r for 75010@debbugs.gnu.org; Fri, 31 Jan 2025 06:14:15 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=rimm.ee; s=herman; t=1738322041; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type; bh=zhSqmmwIp6T9sIKWPk374iVyrWdTVKMta6XrqvFocbk=; b=pXrpzl/EQ6XWJPDKe9mSnvvodYBiXVo6f3FAcnKlkUJBTgUH20s3qR/13wHwnxADCIuyfi iE6KCn+nJ106cE+bJxZM2jTL25MAP+i4dPyZzTwKqaFmC5KFL6CtnQO/SoLwoYCo0iZFr/ 99fmLkQiDPBq9uYmjOxwIV8D+QhDey669YQ9+5S/P4b7qfnEMSaLI2A5HPLewH9IYy5YJK vLC5TLMEts6li6HhbK6r1hXvxj++tdRsOC6i/z5Wdk1ElxRD8UgWPKZoCX15SaLzUDlypH tJNkXzN7KsMqZoSUF5SPoavi4sL0GwTP03a5sQSHxEQv1WRXo6dxyyvze9+KHQ== Received: by 81-205-150-117.fixed.kpn.net (OpenSMTPD) with ESMTPSA id cafe2f90 (TLSv1.3:TLS_CHACHA20_POLY1305_SHA256:256:NO); Fri, 31 Jan 2025 11:14:00 +0000 (UTC) Date: Fri, 31 Jan 2025 12:13:15 +0100 From: Herman Rimm Message-ID: MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="3nf2grkfdqkcowr4" Content-Disposition: inline X-Spam-Score: 0.0 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) --3nf2grkfdqkcowr4 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Hi Ludo', Thanks for your feedback. I'm not sure how to fix the bugs in guix deploy. For now I want to make the tests for guix deploy work, so I only submit [PATCH v2 1/2], previously [PATCH 7/7]. [PATCH v2 2/2] has workarounds, the one in (gnu packages file-systems) is because I don't know how to get the deploy tests to load e.g. (guix platforms x86). I run these commands: guix shell -D guix gnupg -CPWN make ./pre-inst-env guix build -f test.scm &> result I attached result, test.scm contains: (use-modules (gnu tests deploy) (gnu tests reconfigure)) ;%test-rollback %test-deploy ;%test-switch-to-system %test-deploy runs into an error I don't know how to fix or work around. Cheers, Herman Herman Rimm (2): gnu: tests: Add module for guix deploy tests. Fix deploy test errors. gnu/local.mk | 3 +- gnu/packages/file-systems.scm | 4 +- gnu/tests/deploy.scm | 224 ++++++++++++++++++++++++++++++++++ guix/channels.scm | 3 +- 4 files changed, 228 insertions(+), 6 deletions(-) create mode 100644 gnu/tests/deploy.scm base-commit: 5a6c66f7919fbe79251cd425ae6952e67acbe94c -- 2.47.1 --3nf2grkfdqkcowr4 Content-Type: text/plain; charset=us-ascii Content-Disposition: attachment; filename=result Content-Transfer-Encoding: quoted-printable Updating channel 'guix' from Git repository at '/home/herman/git/guix/'... guix build: warning: channel authentication disabled Computing Guix derivation for 'x86_64-linux'... =20 substitute: =0Dsubstitute: =1B[Klooking for substitutes on 'https://substit= utes.nonguix.org'... 0.0%=0Dsubstitute: =1B[Klooking for substitutes on '= https://substitutes.nonguix.org'... 100.0% substitute: =0Dsubstitute: =1B[Klooking for substitutes on 'https://guix.bo= rdeaux.inria.fr'... 0.0%=0Dsubstitute: =1B[Klooking for substitutes on 'h= ttps://guix.bordeaux.inria.fr'... 100.0% substitute: =0Dsubstitute: =1B[Klooking for substitutes on 'https://bordeau= x.guix.gnu.org'... 0.0%=0Dsubstitute: =1B[Klooking for substitutes on 'ht= tps://bordeaux.guix.gnu.org'... 100.0% substitute: =0Dsubstitute: =1B[Klooking for substitutes on 'https://ci.guix= =2Egnu.org'... 0.0%=0Dsubstitute: =1B[Klooking for substitutes on 'https:= //ci.guix.gnu.org'... 100.0% The following derivation will be built: /gnu/store/vw9857dzp7lvplkm9szyivg32f9yvdgm-deploy.drv building /gnu/store/vw9857dzp7lvplkm9szyivg32f9yvdgm-deploy.drv... =1Bc=1B[?7l=1B[2J=1B[0mSeaBIOS (version 1.16.2/GNU Guix) iPXE (https://ipxe.org) 00:03.0 CA00 PCI2.10 PnP PMM+0EFCAE60+0EF0AE60 CA00 Press Ctrl-B to configure iPXE (PCI 00:03.0)...=0D = =20 Booting from ROM... =1Bc=1B[?7l=1B[2J[ 0.000000] Linux version 6.12.11-gnu (guix@guix) (gcc = (GCC) 11.4.0, GNU ld (GNU Binutils) 2.41) #1 SMP PREEMPT_DYNAMIC 1 [ 0.000000] Command line: console=3DttyS0 root=3D/dev/vda1 gnu.system=3D= /gnu/store/2qbnwnl4lifdq8f5wa8nlj79bhxfg0pi-system gnu.load=3D/gnu/store/2q= bnwnl4lifdq8f5wa8nlj79bhxfg0pi-system/boot panic=3D1 modprobe.blacklist=3Du= sbmouse,usbkbd [ 0.000000] KERNEL supported cpus: [ 0.000000] Intel GenuineIntel [ 0.000000] AMD AuthenticAMD [ 0.000000] Hygon HygonGenuine [ 0.000000] Centaur CentaurHauls [ 0.000000] zhaoxin Shanghai =20 [ 0.000000] BIOS-provided physical RAM map: [ 0.000000] BIOS-e820: [mem 0x0000000000000000-0x000000000009fbff] usable [ 0.000000] BIOS-e820: [mem 0x000000000009fc00-0x000000000009ffff] reser= ved [ 0.000000] BIOS-e820: [mem 0x00000000000f0000-0x00000000000fffff] reser= ved [ 0.000000] BIOS-e820: [mem 0x0000000000100000-0x000000000ffdcfff] usable [ 0.000000] BIOS-e820: [mem 0x000000000ffdd000-0x000000000fffffff] reser= ved [ 0.000000] BIOS-e820: [mem 0x00000000fffc0000-0x00000000ffffffff] reser= ved [ 0.000000] BIOS-e820: [mem 0x000000fd00000000-0x000000ffffffffff] reser= ved [ 0.000000] NX (Execute Disable) protection: active [ 0.000000] APIC: Static calls initialized [ 0.000000] SMBIOS 3.0.0 present. [ 0.000000] DMI: QEMU Standard PC (i440FX + PIIX, 1996), BIOS 1.16.2/GNU= Guix 04/01/2014 [ 0.000000] DMI: Memory slots populated: 1/1 [ 0.000000] tsc: Fast TSC calibration using PIT [ 0.000000] tsc: Detected 3094.138 MHz processor [ 0.014246] AGP: No AGP bridge found [ 0.014564] last_pfn =3D 0xffdd max_arch_pfn =3D 0x400000000 [ 0.015358] MTRR map: 4 entries (3 fixed + 1 variable; max 19), built fr= om 8 variable MTRRs [ 0.015565] x86/PAT: Configuration [0-7]: WB WC UC- UC WB WP UC- WT= =20 [ 0.041300] found SMP MP-table at [mem 0x000f5b80-0x000f5b8f] [ 0.046909] RAMDISK: [mem 0x0f1bf000-0x0ffcffff] [ 0.047342] ACPI: Early table checksum verification disabled [ 0.047732] ACPI: RSDP 0x00000000000F59B0 000014 (v00 BOCHS ) [ 0.048067] ACPI: RSDT 0x000000000FFE1C58 000034 (v01 BOCHS BXPC 00= 000001 BXPC 00000001) [ 0.048640] ACPI: FACP 0x000000000FFE1B0C 000074 (v01 BOCHS BXPC 00= 000001 BXPC 00000001) [ 0.049236] ACPI: DSDT 0x000000000FFE0040 001ACC (v01 BOCHS BXPC 00= 000001 BXPC 00000001) [ 0.049314] ACPI: FACS 0x000000000FFE0000 000040 [ 0.049378] ACPI: APIC 0x000000000FFE1B80 000078 (v03 BOCHS BXPC 00= 000001 BXPC 00000001) [ 0.049418] ACPI: HPET 0x000000000FFE1BF8 000038 (v01 BOCHS BXPC 00= 000001 BXPC 00000001) [ 0.049444] ACPI: WAET 0x000000000FFE1C30 000028 (v01 BOCHS BXPC 00= 000001 BXPC 00000001) [ 0.049559] ACPI: Reserving FACP table memory at [mem 0xffe1b0c-0xffe1b7= f] [ 0.049590] ACPI: Reserving DSDT table memory at [mem 0xffe0040-0xffe1b0= b] [ 0.049600] ACPI: Reserving FACS table memory at [mem 0xffe0000-0xffe003= f] [ 0.049606] ACPI: Reserving APIC table memory at [mem 0xffe1b80-0xffe1bf= 7] [ 0.049613] ACPI: Reserving HPET table memory at [mem 0xffe1bf8-0xffe1c2= f] [ 0.049620] ACPI: Reserving WAET table memory at [mem 0xffe1c30-0xffe1c5= 7] [ 0.052246] No NUMA configuration found [ 0.052265] Faking a node at [mem 0x0000000000000000-0x000000000ffdcfff] [ 0.053073] NODE_DATA(0) allocated [mem 0x0ffd7ac0-0x0ffdcfff] [ 0.055487] Zone ranges: [ 0.055509] DMA [mem 0x0000000000001000-0x0000000000ffffff] [ 0.055577] DMA32 [mem 0x0000000001000000-0x000000000ffdcfff] [ 0.055591] Normal empty [ 0.055613] Device empty [ 0.055627] Movable zone start for each node [ 0.055662] Early memory node ranges [ 0.055691] node 0: [mem 0x0000000000001000-0x000000000009efff] [ 0.055905] node 0: [mem 0x0000000000100000-0x000000000ffdcfff] [ 0.056032] Initmem setup node 0 [mem 0x0000000000001000-0x000000000ffdc= fff] [ 0.057266] On node 0, zone DMA: 1 pages in unavailable ranges [ 0.057511] On node 0, zone DMA: 97 pages in unavailable ranges [ 0.058676] On node 0, zone DMA32: 35 pages in unavailable ranges [ 0.059226] ACPI: PM-Timer IO Port: 0x608 [ 0.059618] ACPI: LAPIC_NMI (acpi_id[0xff] dfl dfl lint[0x1]) [ 0.060018] IOAPIC[0]: apic_id 0, version 32, address 0xfec00000, GSI 0-= 23 [ 0.060147] ACPI: INT_SRC_OVR (bus 0 bus_irq 0 global_irq 2 dfl dfl) [ 0.060452] ACPI: INT_SRC_OVR (bus 0 bus_irq 5 global_irq 5 high level) [ 0.060482] ACPI: INT_SRC_OVR (bus 0 bus_irq 9 global_irq 9 high level) [ 0.060601] ACPI: INT_SRC_OVR (bus 0 bus_irq 10 global_irq 10 high level) [ 0.060613] ACPI: INT_SRC_OVR (bus 0 bus_irq 11 global_irq 11 high level) [ 0.060853] ACPI: Using ACPI (MADT) for SMP configuration information [ 0.060908] ACPI: HPET id: 0x8086a201 base: 0xfed00000 [ 0.061332] CPU topo: Max. logical packages: 1 [ 0.061346] CPU topo: Max. logical dies: 1 [ 0.061355] CPU topo: Max. dies per package: 1 [ 0.061403] CPU topo: Max. threads per core: 1 [ 0.061561] CPU topo: Num. cores per package: 1 [ 0.061576] CPU topo: Num. threads per package: 1 [ 0.061586] CPU topo: Allowing 1 present CPUs plus 0 hotplug CPUs [ 0.062566] PM: hibernation: Registered nosave memory: [mem 0x00000000-0= x00000fff] [ 0.062641] PM: hibernation: Registered nosave memory: [mem 0x0009f000-0= x0009ffff] [ 0.062676] PM: hibernation: Registered nosave memory: [mem 0x000a0000-0= x000effff] [ 0.062683] PM: hibernation: Registered nosave memory: [mem 0x000f0000-0= x000fffff] [ 0.062834] [mem 0x10000000-0xfffbffff] available for PCI devices [ 0.062911] Booting paravirtualized kernel on bare hardware [ 0.063229] clocksource: refined-jiffies: mask: 0xffffffff max_cycles: 0= xffffffff, max_idle_ns: 7645519600211568 ns [ 0.064047] setup_percpu: NR_CPUS:256 nr_cpumask_bits:1 nr_cpu_ids:1 nr_= node_ids:1 [ 0.074489] percpu: Embedded 92 pages/cpu s281304 r65536 d29992 u2097152 [ 0.076483] Kernel command line: console=3DttyS0 root=3D/dev/vda1 gnu.sy= stem=3D/gnu/store/2qbnwnl4lifdq8f5wa8nlj79bhxfg0pi-system gnu.load=3D/gnu/s= tore/2qbnwnl4lifdq8f5wa8nlj79bhxfg0pi-system/boot panic=3D1 modprobe.blackl= ist=3Dusbmouse,usbkbd [ 0.078411] Dentry cache hash table entries: 32768 (order: 6, 262144 byt= es, linear) [ 0.078589] Inode-cache hash table entries: 16384 (order: 5, 131072 byte= s, linear) [ 0.081266] Fallback order for Node 0: 0=20 [ 0.081553] Built 1 zonelists, mobility grouping on. Total pages: 65403 [ 0.081571] Policy zone: DMA32 [ 0.082151] mem auto-init: stack:off, heap alloc:on, heap free:off [ 0.082330] AGP: Checking aperture... [ 0.083956] AGP: No AGP bridge found [ 0.132487] SLUB: HWalign=3D64, Order=3D0-3, MinObjects=3D0, CPUs=3D1, N= odes=3D1 [ 0.134743] allocated 524288 bytes of page_ext [ 0.136945] ftrace: allocating 52652 entries in 206 pages [ 0.177576] ftrace: allocated 206 pages with 5 groups [ 0.187702] Dynamic Preempt: voluntary [ 0.191629] rcu: Preemptible hierarchical RCU implementation. [ 0.191664] rcu: RCU restricting CPUs from NR_CPUS=3D256 to nr_cpu_ids= =3D1. [ 0.191858] Trampoline variant of Tasks RCU enabled. [ 0.191869] Rude variant of Tasks RCU enabled. [ 0.191875] Tracing variant of Tasks RCU enabled. [ 0.191968] rcu: RCU calculated value of scheduler-enlistment delay is 2= 5 jiffies. [ 0.191994] rcu: Adjusting geometry for rcu_fanout_leaf=3D16, nr_cpu_ids= =3D1 [ 0.193113] RCU Tasks: Setting shift to 0 and lim to 1 rcu_task_cb_adjus= t=3D1 rcu_task_cpu_ids=3D1. [ 0.193144] RCU Tasks Rude: Setting shift to 0 and lim to 1 rcu_task_cb_= adjust=3D1 rcu_task_cpu_ids=3D1. [ 0.193155] RCU Tasks Trace: Setting shift to 0 and lim to 1 rcu_task_cb= _adjust=3D1 rcu_task_cpu_ids=3D1. [ 0.223346] NR_IRQS: 16640, nr_irqs: 256, preallocated irqs: 16 [ 0.232373] rcu: srcu_init: Setting srcu_struct sizes based on contentio= n. [ 0.238861] Console: colour VGA+ 80x25 [ 0.240714] printk: legacy console [ttyS0] enabled [ 0.257306] ACPI: Core revision 20240827 [ 0.262798] clocksource: hpet: mask: 0xffffffff max_cycles: 0xffffffff, = max_idle_ns: 19112604467 ns [ 0.267437] APIC: Switch to symmetric I/O mode setup [ 0.272561] ..TIMER: vector=3D0x30 apic1=3D0 pin1=3D2 apic2=3D-1 pin2=3D= -1 [ 0.292596] clocksource: tsc-early: mask: 0xffffffffffffffff max_cycles:= 0x2c99a652877, max_idle_ns: 440795264666 ns [ 0.293292] Calibrating delay loop (skipped), value calculated using tim= er frequency.. 6188.27 BogoMIPS (lpj=3D12376552) [ 0.297890] Last level iTLB entries: 4KB 512, 2MB 255, 4MB 127 [ 0.298020] Last level dTLB entries: 4KB 512, 2MB 255, 4MB 127, 1GB 0 [ 0.298548] Spectre V1 : Mitigation: usercopy/swapgs barriers and __user= pointer sanitization [ 0.298866] Spectre V2 : Mitigation: Retpolines [ 0.298986] Spectre V2 : Spectre v2 / SpectreRSB mitigation: Filling RSB= on context switch [ 0.299158] Spectre V2 : Spectre v2 / SpectreRSB : Filling RSB on VMEXIT [ 0.300209] x86/fpu: x87 FPU will use FXSAVE [ 0.648269] Freeing SMP alternatives memory: 44K [ 0.649346] pid_max: default: 32768 minimum: 301 [ 0.660472] LSM: initializing lsm=3Dcapability,yama,apparmor,tomoyo,ima,= evm [ 0.665293] Yama: becoming mindful. [ 0.669295] AppArmor: AppArmor initialized [ 0.669556] TOMOYO Linux initialized [ 0.675047] Mount-cache hash table entries: 512 (order: 0, 4096 bytes, l= inear) [ 0.675290] Mountpoint-cache hash table entries: 512 (order: 0, 4096 byt= es, linear) [ 0.814759] smpboot: CPU0: AMD QEMU Virtual CPU version 2.5+ (family: 0x= f, model: 0x6b, stepping: 0x1) [ 0.823277] Performance Events: PMU not available due to virtualization,= using software events only. [ 0.824444] signal: max sigframe size: 1440 [ 0.825952] rcu: Hierarchical SRCU implementation. [ 0.826070] rcu: Max phase no-delay instances is 1000. [ 0.834892] NMI watchdog: Perf NMI watchdog permanently disabled [ 0.836179] smp: Bringing up secondary CPUs ... [ 0.838158] smp: Brought up 1 node, 1 CPU [ 0.838367] smpboot: Total of 1 processors activated (6188.27 BogoMIPS) [ 0.844489] Memory: 192116K/261612K available (20480K kernel code, 3079K= rwdata, 13308K rodata, 4592K init, 2340K bss, 65040K reserved, 0K cma-rese= rved) [ 0.852384] devtmpfs: initialized [ 0.855515] x86/mm: Memory block size: 128MB [ 0.862992] clocksource: jiffies: mask: 0xffffffff max_cycles: 0xfffffff= f, max_idle_ns: 7645041785100000 ns [ 0.863585] futex hash table entries: 256 (order: 2, 16384 bytes, linear) [ 0.867187] pinctrl core: initialized pinctrl subsystem [ 0.873410] PM: RTC time: 10:26:40, date: 2025-01-31 [ 0.885429] NET: Registered PF_NETLINK/PF_ROUTE protocol family [ 0.888734] audit: initializing netlink subsys (disabled) [ 0.890600] audit: type=3D2000 audit(1738319200.624:1): state=3Dinitiali= zed audit_enabled=3D0 res=3D1 [ 0.895837] thermal_sys: Registered thermal governor 'fair_share' [ 0.895875] thermal_sys: Registered thermal governor 'bang_bang' [ 0.896001] thermal_sys: Registered thermal governor 'step_wise' [ 0.896101] thermal_sys: Registered thermal governor 'user_space' [ 0.896643] cpuidle: using governor ladder [ 0.896965] cpuidle: using governor menu [ 0.898529] acpiphp: ACPI Hot Plug PCI Controller Driver version: 0.5 [ 0.901774] PCI: Using configuration type 1 for base access [ 0.904351] kprobes: kprobe jump-optimization is enabled. All kprobes ar= e optimized if possible. [ 0.990229] HugeTLB: registered 2.00 MiB page size, pre-allocated 0 pages [ 0.990388] HugeTLB: 28 KiB vmemmap can be freed for a 2.00 MiB page [ 1.033470] ACPI: Added _OSI(Module Device) [ 1.033584] ACPI: Added _OSI(Processor Device) [ 1.033744] ACPI: Added _OSI(3.0 _SCP Extensions) [ 1.033920] ACPI: Added _OSI(Processor Aggregator Device) [ 1.056793] ACPI: 1 ACPI AML tables successfully acquired and loaded [ 1.090060] ACPI: Interpreter enabled [ 1.091146] ACPI: PM: (supports S0 S3 S4 S5) [ 1.091275] ACPI: Using IOAPIC for interrupt routing [ 1.092654] PCI: Using host bridge windows from ACPI; if necessary, use = "pci=3Dnocrs" and report a bug [ 1.092833] PCI: Using E820 reservations for host bridge windows [ 1.097705] ACPI: Enabled 2 GPEs in block 00 to 0F [ 1.127116] ACPI: PCI Root Bridge [PCI0] (domain 0000 [bus 00-ff]) [ 1.127828] acpi PNP0A03:00: _OSC: OS supports [ASPM ClockPM Segments MS= I HPX-Type3] [ 1.128124] acpi PNP0A03:00: _OSC: not requesting OS control; OS require= s [ExtendedConfig ASPM ClockPM MSI] [ 1.128865] acpi PNP0A03:00: fail to add MMCONFIG information, can't acc= ess extended configuration space under this bridge [ 1.134481] acpiphp: Slot [3] registered [ 1.134640] acpiphp: Slot [4] registered [ 1.134765] acpiphp: Slot [5] registered [ 1.134908] acpiphp: Slot [6] registered [ 1.135032] acpiphp: Slot [7] registered [ 1.135152] acpiphp: Slot [8] registered [ 1.135286] acpiphp: Slot [9] registered [ 1.135405] acpiphp: Slot [10] registered [ 1.135525] acpiphp: Slot [11] registered [ 1.135644] acpiphp: Slot [12] registered [ 1.135771] acpiphp: Slot [13] registered [ 1.135914] acpiphp: Slot [14] registered [ 1.136039] acpiphp: Slot [15] registered [ 1.136161] acpiphp: Slot [16] registered [ 1.136283] acpiphp: Slot [17] registered [ 1.136403] acpiphp: Slot [18] registered [ 1.136524] acpiphp: Slot [19] registered [ 1.136650] acpiphp: Slot [20] registered [ 1.136789] acpiphp: Slot [21] registered [ 1.136945] acpiphp: Slot [22] registered [ 1.137072] acpiphp: Slot [23] registered [ 1.137195] acpiphp: Slot [24] registered [ 1.137315] acpiphp: Slot [25] registered [ 1.137436] acpiphp: Slot [26] registered [ 1.137579] acpiphp: Slot [27] registered [ 1.137710] acpiphp: Slot [28] registered [ 1.137851] acpiphp: Slot [29] registered [ 1.137974] acpiphp: Slot [30] registered [ 1.138096] acpiphp: Slot [31] registered [ 1.138408] PCI host bridge to bus 0000:00 [ 1.138696] pci_bus 0000:00: root bus resource [io 0x0000-0x0cf7 window] [ 1.138954] pci_bus 0000:00: root bus resource [io 0x0d00-0xffff window] [ 1.139069] pci_bus 0000:00: root bus resource [mem 0x000a0000-0x000bfff= f window] [ 1.139239] pci_bus 0000:00: root bus resource [mem 0x10000000-0xfebffff= f window] [ 1.139363] pci_bus 0000:00: root bus resource [mem 0x100000000-0x17ffff= fff window] [ 1.139622] pci_bus 0000:00: root bus resource [bus 00-ff] [ 1.140822] pci 0000:00:00.0: [8086:1237] type 00 class 0x060000 convent= ional PCI endpoint [ 1.144686] pci 0000:00:01.0: [8086:7000] type 00 class 0x060100 convent= ional PCI endpoint [ 1.145456] pci 0000:00:01.1: [8086:7010] type 00 class 0x010180 convent= ional PCI endpoint [ 1.147648] pci 0000:00:01.1: BAR 4 [io 0xc160-0xc16f] [ 1.148769] pci 0000:00:01.1: BAR 0 [io 0x01f0-0x01f7]: legacy IDE quirk [ 1.148957] pci 0000:00:01.1: BAR 1 [io 0x03f6]: legacy IDE quirk [ 1.149089] pci 0000:00:01.1: BAR 2 [io 0x0170-0x0177]: legacy IDE quirk [ 1.149218] pci 0000:00:01.1: BAR 3 [io 0x0376]: legacy IDE quirk [ 1.149887] pci 0000:00:01.3: [8086:7113] type 00 class 0x068000 convent= ional PCI endpoint [ 1.150328] pci 0000:00:01.3: quirk: [io 0x0600-0x063f] claimed by PIIX= 4 ACPI [ 1.150484] pci 0000:00:01.3: quirk: [io 0x0700-0x070f] claimed by PIIX= 4 SMB [ 1.151068] pci 0000:00:02.0: [1234:1111] type 00 class 0x030000 convent= ional PCI endpoint [ 1.152108] pci 0000:00:02.0: BAR 0 [mem 0xfd000000-0xfdffffff pref] [ 1.152932] pci 0000:00:02.0: BAR 2 [mem 0xfebf0000-0xfebf0fff] [ 1.157310] pci 0000:00:02.0: ROM [mem 0xfebe0000-0xfebeffff pref] [ 1.157650] pci 0000:00:02.0: Video device with shadowed ROM at [mem 0x0= 00c0000-0x000dffff] [ 1.158382] pci 0000:00:03.0: [8086:100e] type 00 class 0x020000 convent= ional PCI endpoint [ 1.158945] pci 0000:00:03.0: BAR 0 [mem 0xfebc0000-0xfebdffff] [ 1.159485] pci 0000:00:03.0: BAR 1 [io 0xc080-0xc0bf] [ 1.161998] pci 0000:00:03.0: ROM [mem 0xfeb80000-0xfebbffff pref] [ 1.166527] pci 0000:00:04.0: [1af4:1005] type 00 class 0x00ff00 convent= ional PCI endpoint [ 1.167926] pci 0000:00:04.0: BAR 0 [io 0xc140-0xc15f] [ 1.168706] pci 0000:00:04.0: BAR 1 [mem 0xfebf1000-0xfebf1fff] [ 1.169231] pci 0000:00:04.0: BAR 4 [mem 0xfe000000-0xfe003fff 64bit pre= f] [ 1.174368] pci 0000:00:05.0: [1af4:1009] type 00 class 0x000200 convent= ional PCI endpoint [ 1.174988] pci 0000:00:05.0: BAR 0 [io 0xc0c0-0xc0ff] [ 1.176380] pci 0000:00:05.0: BAR 1 [mem 0xfebf2000-0xfebf2fff] [ 1.179168] pci 0000:00:05.0: BAR 4 [mem 0xfe004000-0xfe007fff 64bit pre= f] [ 1.184179] pci 0000:00:06.0: [1af4:1003] type 00 class 0x078000 convent= ional PCI endpoint [ 1.184950] pci 0000:00:06.0: BAR 0 [io 0xc100-0xc13f] [ 1.185579] pci 0000:00:06.0: BAR 1 [mem 0xfebf3000-0xfebf3fff] [ 1.187202] pci 0000:00:06.0: BAR 4 [mem 0xfe008000-0xfe00bfff 64bit pre= f] [ 1.191172] pci 0000:00:07.0: [1af4:1001] type 00 class 0x010000 convent= ional PCI endpoint [ 1.192522] pci 0000:00:07.0: BAR 0 [io 0xc000-0xc07f] [ 1.193403] pci 0000:00:07.0: BAR 1 [mem 0xfebf4000-0xfebf4fff] [ 1.194970] pci 0000:00:07.0: BAR 4 [mem 0xfe00c000-0xfe00ffff 64bit pre= f] [ 1.202231] ACPI: PCI: Interrupt link LNKA configured for IRQ 10 [ 1.202878] ACPI: PCI: Interrupt link LNKB configured for IRQ 10 [ 1.203300] ACPI: PCI: Interrupt link LNKC configured for IRQ 11 [ 1.203717] ACPI: PCI: Interrupt link LNKD configured for IRQ 11 [ 1.203979] ACPI: PCI: Interrupt link LNKS configured for IRQ 9 [ 1.207655] iommu: Default domain type: Translated [ 1.207781] iommu: DMA domain TLB invalidation policy: lazy mode [ 1.211666] SCSI subsystem initialized [ 1.213227] ACPI: bus type USB registered [ 1.213582] usbcore: registered new interface driver usbfs [ 1.213901] usbcore: registered new interface driver hub [ 1.214095] usbcore: registered new device driver usb [ 1.215278] EDAC MC: Ver: 3.0.0 [ 1.226937] NetLabel: Initializing [ 1.227019] NetLabel: domain hash size =3D 128 [ 1.227100] NetLabel: protocols =3D UNLABELED CIPSOv4 CALIPSO [ 1.228077] NetLabel: unlabeled traffic allowed by default [ 1.231868] mctp: management component transport protocol core [ 1.231982] NET: Registered PF_MCTP protocol family [ 1.232515] PCI: Using ACPI for IRQ routing [ 1.235054] pci 0000:00:02.0: vgaarb: setting as boot VGA device [ 1.235201] pci 0000:00:02.0: vgaarb: bridge control possible [ 1.235340] pci 0000:00:02.0: vgaarb: VGA device added: decodes=3Dio+mem= ,owns=3Dio+mem,locks=3Dnone [ 1.235521] vgaarb: loaded [ 1.237185] hpet: 3 channels of 0 reserved for per-cpu timers [ 1.237537] hpet0: at MMIO 0xfed00000, IRQs 2, 8, 0 [ 1.237709] hpet0: 3 comparators, 64-bit 100.000000 MHz counter [ 1.241933] clocksource: Switched to clocksource tsc-early [ 1.253837] VFS: Disk quotas dquot_6.6.0 [ 1.254163] VFS: Dquot-cache hash table entries: 512 (order 0, 4096 byte= s) [ 1.258755] AppArmor: AppArmor Filesystem Enabled [ 1.259221] pnp: PnP ACPI init [ 1.262967] pnp: PnP ACPI: found 6 devices [ 1.285826] clocksource: acpi_pm: mask: 0xffffff max_cycles: 0xffffff, m= ax_idle_ns: 2085701024 ns [ 1.287302] NET: Registered PF_INET protocol family [ 1.288379] IP idents hash table entries: 4096 (order: 3, 32768 bytes, l= inear) [ 1.348972] tcp_listen_portaddr_hash hash table entries: 256 (order: 0, = 4096 bytes, linear) [ 1.349291] Table-perturb hash table entries: 65536 (order: 6, 262144 by= tes, linear) [ 1.349486] TCP established hash table entries: 2048 (order: 2, 16384 by= tes, linear) [ 1.349773] TCP bind hash table entries: 2048 (order: 4, 65536 bytes, li= near) [ 1.350010] TCP: Hash tables configured (established 2048 bind 2048) [ 1.351489] MPTCP token hash table entries: 256 (order: 0, 6144 bytes, l= inear) [ 1.351938] UDP hash table entries: 256 (order: 1, 8192 bytes, linear) [ 1.352552] UDP-Lite hash table entries: 256 (order: 1, 8192 bytes, line= ar) [ 1.354147] NET: Registered PF_UNIX/PF_LOCAL protocol family [ 1.354699] NET: Registered PF_XDP protocol family [ 1.355613] pci_bus 0000:00: resource 4 [io 0x0000-0x0cf7 window] [ 1.355734] pci_bus 0000:00: resource 5 [io 0x0d00-0xffff window] [ 1.355840] pci_bus 0000:00: resource 6 [mem 0x000a0000-0x000bffff windo= w] [ 1.355956] pci_bus 0000:00: resource 7 [mem 0x10000000-0xfebfffff windo= w] [ 1.356181] pci_bus 0000:00: resource 8 [mem 0x100000000-0x17fffffff win= dow] [ 1.356776] pci 0000:00:01.0: PIIX3: Enabling Passive Release [ 1.356969] pci 0000:00:00.0: Limiting direct PCI/PCI transfers [ 1.357218] PCI: CLS 0 bytes, default 64 [ 1.363146] Trying to unpack rootfs image as initramfs... [ 1.370792] Initialise system trusted keyrings [ 1.376543] workingset: timestamp_bits=3D40 max_order=3D16 bucket_order= =3D0 [ 1.376866] zbud: loaded [ 1.552642] Key type asymmetric registered [ 1.552852] Asymmetric key parser 'x509' registered [ 1.553498] Block layer SCSI generic (bsg) driver version 0.4 loaded (ma= jor 247) [ 1.556672] io scheduler mq-deadline registered [ 1.560623] ledtrig-cpu: registered to indicate activity on CPUs [ 1.561465] shpchp: Standard Hot Plug PCI Controller Driver version: 0.4 [ 1.563661] input: Power Button as /devices/LNXSYSTM:00/LNXPWRBN:00/inpu= t/input0 [ 1.571723] ACPI: button: Power Button [PWRF] [ 1.579774] Serial: 8250/16550 driver, 32 ports, IRQ sharing enabled [ 1.589041] 00:04: ttyS0 at I/O 0x3f8 (irq =3D 4, base_baud =3D 115200) = is a 16550A [ 1.629915] Linux agpgart interface v0.103 [ 1.681460] brd: module loaded [ 1.701423] loop: module loaded [ 1.701834] SPI driver tps6594 has no spi_device_id for ti,tps6594-q1 [ 1.701951] SPI driver tps6594 has no spi_device_id for ti,tps6593-q1 [ 1.702063] SPI driver tps6594 has no spi_device_id for ti,lp8764-q1 [ 1.702167] SPI driver tps6594 has no spi_device_id for ti,tps65224-q1 [ 1.703361] Key type psk registered [ 1.725387] scsi host0: ata_piix [ 1.727230] scsi host1: ata_piix [ 1.727638] ata1: PATA max MWDMA2 cmd 0x1f0 ctl 0x3f6 bmdma 0xc160 irq 1= 4 lpm-pol 0 [ 1.727799] ata2: PATA max MWDMA2 cmd 0x170 ctl 0x376 bmdma 0xc168 irq 1= 5 lpm-pol 0 [ 1.734330] tun: Universal TUN/TAP device driver, 1.6 [ 1.740507] PPP generic driver version 2.4.2 [ 1.743159] i8042: PNP: PS/2 Controller [PNP0303:KBD,PNP0f13:MOU] at 0x6= 0,0x64 irq 1,12 [ 1.750063] serio: i8042 KBD port at 0x60,0x64 irq 1 [ 1.750349] serio: i8042 AUX port at 0x60,0x64 irq 12 [ 1.752319] mousedev: PS/2 mouse device common for all mice [ 1.754679] input: AT Translated Set 2 keyboard as /devices/platform/i80= 42/serio0/input/input1 [ 1.756526] rtc_cmos 00:05: RTC can wake from S4 [ 1.761285] rtc_cmos 00:05: registered as rtc0 [ 1.761877] rtc_cmos 00:05: setting system clock to 2025-01-31T10:26:41 = UTC (1738319201) [ 1.763085] rtc_cmos 00:05: alarms up to one day, y3k, 242 bytes nvram, = hpet irqs [ 1.763332] i2c_dev: i2c /dev entries driver [ 1.763907] device-mapper: uevent: version 1.0.3 [ 1.769162] device-mapper: ioctl: 4.48.0-ioctl (2023-03-01) initialised:= dm-devel@lists.linux.dev [ 1.769666] amd_pstate: the _CPC object is not present in SBIOS or ACPI = disabled [ 1.777113] NET: Registered PF_INET6 protocol family [ 1.790924] Segment Routing with IPv6 [ 1.791239] In-situ OAM (IOAM) with IPv6 [ 1.791839] NET: Registered PF_PACKET protocol family [ 1.796580] Key type dns_resolver registered [ 1.798692] IPI shorthand broadcast: enabled [ 1.831549] sched_clock: Marking stable (1796049004, 32028762)->(1829853= 714, -1775948) [ 1.841308] registered taskstats version 1 [ 1.844598] Loading compiled-in X.509 certificates [ 1.880310] Demotion targets for Node 0: null [ 1.884557] ata2: found unknown device (class 0) [ 1.893622] ata2.00: ATAPI: QEMU DVD-ROM, 2.5+, max UDMA/100 [ 1.903081] scsi 1:0:0:0: CD-ROM QEMU QEMU DVD-ROM 2.= 5+ PQ: 0 ANSI: 5 [ 1.933880] sr 1:0:0:0: [sr0] scsi3-mmc drive: 4x/4x cd/rw xa/form2 tray [ 1.934160] cdrom: Uniform CD-ROM driver Revision: 3.20 [ 1.957065] sr 1:0:0:0: Attached scsi generic sg0 type 5 [ 2.319882] Freeing initrd memory: 14404K [ 2.329205] Key type encrypted registered [ 2.329361] AppArmor: AppArmor sha256 policy hashing enabled [ 2.329875] ima: No TPM chip found, activating TPM-bypass! [ 2.330158] ima: Allocated hash algorithm: sha1 [ 2.332647] ima: No architecture policies found [ 2.333424] evm: Initialising EVM extended attributes: [ 2.333536] evm: security.selinux [ 2.333614] evm: security.SMACK64 [ 2.333675] evm: security.SMACK64EXEC [ 2.333738] evm: security.SMACK64TRANSMUTE [ 2.333806] evm: security.SMACK64MMAP [ 2.333869] evm: security.apparmor [ 2.333927] evm: security.ima [ 2.333979] evm: security.capability [ 2.334050] evm: HMAC attrs: 0x1 [ 2.337300] PM: Magic number: 9:732:427 [ 2.338388] powernow_k8: Power state transitions not supported [ 2.432512] tsc: Refined TSC clocksource calibration: 3094.187 MHz [ 2.432923] clocksource: tsc: mask: 0xffffffffffffffff max_cycles: 0x2c9= 9d3f920e, max_idle_ns: 440795207063 ns [ 2.433167] clocksource: Switched to clocksource tsc [ 2.434724] clk: Disabling unused clocks [ 2.435052] PM: genpd: Disabling unused power domains [ 2.524668] Freeing unused kernel image (initmem) memory: 4592K [ 2.525054] Write protecting the kernel read-only data: 34816k [ 2.527292] Freeing unused kernel image (rodata/data gap) memory: 1028K [ 2.527607] Run /init as init process GC Warning: pthread_getattr_np or pthread_attr_getstack failed for main thr= ead GC Warning: Could not open /proc/stat Welcome, this is GNU's early boot Guile. Use 'gnu.repl' for an initrd REPL. loading kernel modules... [ 3.458092] ACPI: bus type drm_connector registered [ 3.674625] usbcore: registered new interface driver usb-storage [ 3.685666] usbcore: registered new interface driver uas [ 3.696671] hid: raw HID events driver (C) Jiri Kosina [ 3.701918] usbcore: registered new interface driver usbhid [ 3.702042] usbhid: USB HID core driver [ 3.860826] isci: Intel(R) C600 SAS Controller Driver - version 1.2.0 [ 4.042724] ACPI: \_SB_.LNKD: Enabled at IRQ 11 [ 4.187830] ACPI: \_SB_.LNKA: Enabled at IRQ 10 [ 4.330956] ACPI: \_SB_.LNKB: Enabled at IRQ 10 [ 4.474033] ACPI: \_SB_.LNKC: Enabled at IRQ 11 [ 4.492249] virtio_blk virtio3: 1/0/0 default/read/poll queues [ 4.500445] virtio_blk virtio3: [vda] 4096 512-byte logical blocks (2.10= MB/2.00 MiB) [ 4.506147] vda: vda1 [ 4.586475] random: crng init done [ 4.650199] netfs: FS-Cache loaded [ 4.714127] 9pnet: Installing 9P2000 support [ 4.719768] 9p: Installing v9fs 9p2000 file system support [ 4.803959] EXT4-fs (vda1): mounted filesystem 4efbd36d-72ff-63f9-8948-e= 9934efbd36d ro without journal. Quota mode: none. [ 4.827145] 9pnet: Limiting 'msize' to 512000 as this is the maximum sup= ported by transport virtio loading '/gnu/store/2qbnwnl4lifdq8f5wa8nlj79bhxfg0pi-system/boot'... [ 5.045983] evm: overlay not supported making '/gnu/store/2qbnwnl4lifdq8f5wa8nlj79bhxfg0pi-system' the current sys= tem... populating /etc from /gnu/store/60h7d9v6biigvn0kglhf7xv6g128jzp9-etc... setting up privileged programs in '/run/privileged/bin'... Please wait while gathering entropy to generate the key pair; this may take time... ssh-keygen: generating new host keys: RSA ECDSA ED25519=20 [ 30.455376] shepherd[1]: GNU Shepherd 1.0.1 (Guile 3.0.9, x86_64-unknown= -linux-gnu) [ 30.456581] shepherd[1]: Starting service root... [ 30.459256] shepherd[1]: Service root started. [ 30.461618] shepherd[1]: Service root running with value #< id:= 1 command: #f>. [ 30.463821] shepherd[1]: Service root has been started. [ 30.497626] shepherd[1]: starting services... [ 30.498399] shepherd[1]: Configuration successfully loaded from '/gnu/st= ore/d4xgx9k9i20p1hv51cxfgsq59ijkvk92-shepherd.conf'. [ 30.730913] shepherd[1]: Starting service user-file-systems... [ 30.731711] shepherd[1]: Starting service root-file-system... [ 30.759276] shepherd[1]: Starting service host-name... [ 30.772576] shepherd[1]: Starting service pam... [ 30.788808] shepherd[1]: Starting service sysctl... [ 30.789927] shepherd[1]: Starting service transient... [ 30.802309] shepherd[1]: Starting service timer... [ 30.803256] shepherd[1]: Starting service log-rotation... [ 30.811938] shepherd[1]: Starting service loopback... [ 30.821456] shepherd[1]: Starting service networking... [ 30.823805] shepherd[1]: Service user-file-systems started. [ 30.829457] shepherd[1]: Service root-file-system started. [ 30.831092] shepherd[1]: Service host-name started. [ 30.831777] shepherd[1]: Service pam started. [ 30.845976] shepherd[1]: Service transient started. [ 30.846704] shepherd[1]: Service timer started. [ 30.855042] shepherd[1]: Service log-rotation started. [ 30.855914] shepherd[1]: Service user-file-systems running with value #t. [ 30.864009] shepherd[1]: Service user-file-systems has been started. [ 30.877421] shepherd[1]: Service root-file-system running with value #t. [ 31.154425] udevd[94]: starting version 3.2.14 [ 31.310363] udevd[94]: specified group 'sgx' unknown [ 31.536000] shepherd[1]: Service root-file-system has been started. [ 31.542496] udevd[94]: starting eudev-3.2.14 [ 31.553729] shepherd[1]: Service host-name running with value "komputilo= ". [ 31.595559] udevd[94]: no sender credentials received, message ignored [ 31.601316] shepherd[1]: Service host-name has been started. [ 31.603169] shepherd[1]: Service pam running with value #t. [ 31.615234] shepherd[1]: Service pam has been started. [ 31.630416] shepherd[1]: Service transient running with value #t. [ 31.643245] shepherd[1]: Service transient has been started. [ 31.673823] shepherd[1]: Service timer running with value #t. [ 31.690685] shepherd[1]: Service timer has been started. [ 31.691966] shepherd[1]: Service log-rotation running with value # seconds: (0) minutes: (0) hours: (22) days-of-month: (1= 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 2= 9 30 31) months: (1 2 3 4 5 6 7 8 9 10 11 12) days-of-week: (0)> # 7fda4a5fdf20>. [ 31.706559] shepherd[1]: Service log-rotation has been started. [ 31.707531] shepherd[1]: [sysctl] fs.protected_hardlinks =3D 1 [ 31.725902] shepherd[1]: Service sysctl has been started. [ 31.726694] shepherd[1]: Service sysctl started. [ 31.736905] shepherd[1]: [sysctl] fs.protected_symlinks =3D 1 [ 31.737948] shepherd[1]: Service sysctl running with value #t. [ 31.739526] shepherd[1]: Starting service udev... [ 31.746249] shepherd[1]: waiting for udevd... [ 31.747963] shepherd[1]: Registering new logger for udev. [ 31.799565] shepherd[1]: Starting service virtual-terminal... [ 31.809478] shepherd[1]: Service virtual-terminal started. [ 31.811801] shepherd[1]: Service virtual-terminal running with value #t. [ 31.829259] shepherd[1]: Service virtual-terminal has been started. [ 32.151030] shepherd[1]: Registering new logger for udev. [ 33.004991] shepherd[1]: [90bpic7a0hd7lc9h1nfgv1kxcw31dbx2-set-up-networ= k] Waiting for network device 'lo'... [ 33.042258] shepherd[1]: Service loopback has been started. [ 33.043274] shepherd[1]: Service loopback started. [ 33.055043] shepherd[1]: Service loopback running with value #t. [ 33.136415] Floppy drive(s): fd0 is 2.88M AMI BIOS [ 33.203202] FDC 0 is a S82078B [ 33.413999] parport_pc 00:03: reported by Plug and Play ACPI [ 33.414867] parport0: PC-style at 0x378, irq 7 [PCSPP,TRISTATE] [ 33.680933] shepherd[1]: [90bpic7a0hd7lc9h1nfgv1kxcw31dbx2-set-up-networ= k] Backtrace: [ 33.685030] piix4_smbus 0000:00:01.3: SMBus Host Controller at 0x700, re= vision 0 [ 33.692397] shepherd[1]: [90bpic7a0hd7lc9h1nfgv1kxcw31dbx2-set-up-networ= k] 2 (primitive-load "/gnu/store/90bpic7a0hd7lc9h1nfgv1kxcw3?") [ 33.695789] shepherd[1]: [90bpic7a0hd7lc9h1nfgv1kxcw31dbx2-set-up-networ= k] In ice-9/eval.scm: [ 33.702145] i2c i2c-0: Memory type 0x07 not supported yet, not instantia= ting SPD [ 33.707919] shepherd[1]: [90bpic7a0hd7lc9h1nfgv1kxcw31dbx2-set-up-networ= k] 619:8 1 (_ #f) [ 33.713945] shepherd[1]: Service networking could not be started. [ 33.722414] shepherd[1]: [90bpic7a0hd7lc9h1nfgv1kxcw31dbx2-set-up-networ= k] 619:8 0 (_ #(# "lo")) [ 33.723369] shepherd[1]: Service networking failed to start. [ 33.727643] shepherd[1]: [90bpic7a0hd7lc9h1nfgv1kxcw31dbx2-set-up-networ= k]=20 [ 33.734309] shepherd[1]: [90bpic7a0hd7lc9h1nfgv1kxcw31dbx2-set-up-networ= k] ice-9/eval.scm:619:8: ERROR: [ 33.741727] shepherd[1]: [90bpic7a0hd7lc9h1nfgv1kxcw31dbx2-set-up-networ= k] 1. &netlink-response-error: 17 [ 33.743773] shepherd[1]: [90bpic7a0hd7lc9h1nfgv1kxcw31dbx2-set-up-networ= k] Waiting for network device 'lo'... [ 33.827819] e1000: Intel(R) PRO/1000 Network Driver [ 33.827956] e1000: Copyright (c) 1999-2006 Intel Corporation. [ 33.829181] input: PC Speaker as /devices/platform/pcspkr/input/input3 [ 34.015905] bochs-drm 0000:00:02.0: vgaarb: deactivate vga console [ 34.037603] Console: switching to colour dummy device 80x25 [ 34.338092] Error: Driver 'pcspkr' is already registered, aborting... [ 34.732630] [drm] Found bochs VGA, ID 0xb0c5. [ 34.732764] [drm] Framebuffer size 16384 kB @ 0xfd000000, mmio @ 0xfebf0= 000. [ 34.750684] [drm] Found EDID data blob. [ 34.780233] [drm] Initialized bochs-drm 1.0.0 for 0000:00:02.0 on minor 0 [ 34.869326] input: ImExPS/2 Generic Explorer Mouse as /devices/platform/= i8042/serio1/input/input4 [ 35.046110] fbcon: bochs-drmdrmfb (fb0) is primary device [ 35.072232] Console: switching to colour frame buffer device 160x50 [ 35.097466] bochs-drm 0000:00:02.0: [drm] fb0: bochs-drmdrmfb frame buff= er device [ 35.394468] ppdev: user-space parallel port driver [ 35.440756] e1000 0000:00:03.0 eth0: (PCI:33MHz:32-bit) 52:54:00:12:34:56 [ 35.441246] e1000 0000:00:03.0 eth0: Intel(R) PRO/1000 Network Connection [ 35.488950] e1000 0000:00:03.0 ens3: renamed from eth0 [ 35.553306] kvm_amd: Nested Virtualization enabled [ 35.553515] kvm_amd: Nested Paging disabled [ 35.554011] kvm_amd: PMU virtualization is disabled [ 35.886147] shepherd[1]: Service udev has been started. [ 35.888935] shepherd[1]: Service udev started. [ 35.912309] shepherd[1]: Service udev running with value #< id:= 94 command: #f>. [ 36.009428] shepherd[1]: Starting service marionette... [ 36.010168] shepherd[1]: Starting service file-system-/dev/pts... [ 36.042372] shepherd[1]: Service marionette started. [ 36.043762] shepherd[1]: Service file-system-/dev/pts started. [ 36.074994] shepherd[1]: Service marionette running with value #< id: 115 command: ("/gnu/store/k3r056x67dbfibarvf8isflqvs37xq5d-marionett= e-repl.scm")>. [ 36.075940] shepherd[1]: Service marionette has been started. [ 36.094306] shepherd[1]: Starting service file-system-/sys/kernel/debug.= =2E. [ 36.095073] shepherd[1]: Service file-system-/dev/pts running with value= #t. [ 36.101476] shepherd[1]: Service file-system-/dev/pts has been started. [ 36.102212] shepherd[1]: Service file-system-/sys/kernel/debug started. [ 36.103893] shepherd[1]: Starting service file-system-/dev/shm... [ 36.109673] shepherd[1]: Service file-system-/sys/kernel/debug running w= ith value #t. [ 36.111389] shepherd[1]: Service file-system-/sys/kernel/debug has been = started. [ 36.116393] shepherd[1]: Service file-system-/dev/shm started. [ 36.118500] shepherd[1]: Starting service file-system-/sys/firmware/efi/= efivars... [ 36.119200] shepherd[1]: Service file-system-/dev/shm running with value= #t. [ 36.127446] shepherd[1]: Service file-system-/dev/shm has been started. [ 36.132488] shepherd[1]: Service file-system-/sys/firmware/efi/efivars s= tarted. [ 36.134591] shepherd[1]: Service file-system-/sys/firmware/efi/efivars r= unning with value #t. [ 36.135317] shepherd[1]: Service file-system-/sys/firmware/efi/efivars h= as been started. [ 36.157626] shepherd[1]: Starting service file-systems... [ 36.158346] shepherd[1]: Service file-systems started. [ 36.164229] shepherd[1]: Service file-systems running with value #t. [ 36.165097] shepherd[1]: Service file-systems has been started. [ 36.383402] shepherd[1]: Starting service user-homes... [ 36.385923] shepherd[1]: Service user-homes started. [ 36.394833] shepherd[1]: Service user-homes running with value #t. [ 36.395651] shepherd[1]: Service user-homes has been started. [ 36.429366] shepherd[1]: Starting service urandom-seed... [ 36.430112] shepherd[1]: Service urandom-seed started. [ 36.431681] shepherd[1]: Service urandom-seed running with value #t. [ 36.440554] shepherd[1]: Service urandom-seed has been started. [ 36.466489] shepherd[1]: Starting service user-processes... [ 36.467256] shepherd[1]: Service user-processes started. [ 36.473501] shepherd[1]: Service user-processes running with value #t. [ 36.474236] shepherd[1]: Service user-processes has been started. [ 36.525376] shepherd[1]: Starting service log-cleanup... [ 36.526245] shepherd[1]: Service log-cleanup started. [ 36.540243] shepherd[1]: Service log-cleanup running with value # seconds: (0) minutes: (30) hours: (12) days-of-month: (1= 8 15 22) months: (1 2 3 4 5 6 7 8 9 10 11 12) days-of-week: (0 1 2 3 4 5 6= )> #< arguments: ("/gnu/store/009nnqwra22fj75pdlcqjq8idw62nr5f-del= ete-old-logs") user: #f group: #f supplementary-groups: () environment-vari= ables: ("PATH=3D/run/current-system/profile/bin") directory: "/" resource-l= imits: ()> 7fda488a5320>. [ 36.541686] shepherd[1]: Service log-cleanup has been started. [ 36.611080] shepherd[1]: Starting service guix-daemon... [ 36.611886] shepherd[1]: Service guix-daemon started. [ 36.645680] shepherd[1]: Service guix-daemon running with value #< id: 116 command: #f>. [ 36.646505] shepherd[1]: Service guix-daemon has been started. [ 36.701544] shepherd[1]: Starting service syslogd... [ 36.903606] shepherd[1]: Starting service term-tty6... [ 36.909464] shepherd[1]: Service term-tty6 started. [ 36.949638] shepherd[1]: Service term-tty6 running with value #< id: 118 command: ("/gnu/store/zpm9yhsadznxc50qdxzmy653d5fhwpxs-mingetty-1= =2E08/sbin/mingetty" "--nohangup" "tty6")>. [ 36.950981] shepherd[1]: Service term-tty6 has been started. [ 37.061329] shepherd[1]: Starting service term-tty5... [ 37.062191] shepherd[1]: Service term-tty5 started. =0D This is the GNU system. Welcome. komputilo login: [ 50.140368] guix: page allocation failure: order:7, mod= e:0x40dc0(GFP_KERNEL|__GFP_COMP|__GFP_ZERO), nodemask=3D(null),cpuset=3D/,m= ems_allowed=3D0 [ 50.142093] CPU: 0 UID: 0 PID: 115 Comm: guix Not tainted 6.12.11-gnu #1= dd9436551024bc83fa81afd0342f0c0a62be23e7 [ 50.142453] Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS = 1.16.2/GNU Guix 04/01/2014 [ 50.142697] Call Trace: [ 50.143124] [ 50.143489] dump_stack_lvl+0x7a/0xa0 [ 50.143954] dump_stack+0x14/0x20 [ 50.144016] warn_alloc+0x14e/0x1d0 [ 50.144105] ? __alloc_pages_direct_compact+0x1f1/0x210 [ 50.144198] __alloc_pages_slowpath.constprop.0+0x9c4/0xea0 [ 50.144319] __alloc_pages_noprof+0x349/0x360 [ 50.144419] ? v9fs_alloc_rdir_buf.isra.0+0x56/0xa0 [9p 119d41d027c08fcf= 02ee70a711b6373108aa7632] [ 50.144614] ___kmalloc_large_node+0x88/0x120 [ 50.144692] __kmalloc_large_node_noprof+0x21/0xc0 [ 50.144773] __kmalloc_noprof+0x30a/0x420 [ 50.144848] v9fs_alloc_rdir_buf.isra.0+0x56/0xa0 [9p 119d41d027c08fcf02= ee70a711b6373108aa7632] [ 50.144986] ? v9fs_alloc_rdir_buf.isra.0+0x56/0xa0 [9p 119d41d027c08fcf= 02ee70a711b6373108aa7632] [ 50.145127] v9fs_dir_readdir_dotl+0x59/0x1c0 [9p 119d41d027c08fcf02ee70= a711b6373108aa7632] [ 50.145268] ? aa_file_perm+0x134/0x510 [ 50.145350] ? apparmor_file_permission+0x79/0x1b0 [ 50.145434] iterate_dir+0x135/0x220 [ 50.145501] __x64_sys_getdents64+0x84/0x130 [ 50.145571] ? __pfx_filldir64+0x10/0x10 [ 50.145643] x64_sys_call+0x1e1a/0x2680 [ 50.145710] do_syscall_64+0x74/0x160 [ 50.145796] entry_SYSCALL_64_after_hwframe+0x76/0x7e [ 50.145952] RIP: 0033:0x7f3eaa161033 [ 50.146272] Code: df 66 0f 1f 44 00 00 48 89 ef e8 78 77 fb ff 4c 89 e0 = 5b 5d 41 5c c3 b8 ff ff ff 7f 48 39 c2 48 0f 47 d0 b8 d9 00 00 00 0f 05 <48= > 3d 00 f0 ff ff 77 05 c3 0f 1f 40 00 48 8b 15 91 1d 10 00 f7 d8 [ 50.146569] RSP: 002b:00007fff6e819708 EFLAGS: 00000293 ORIG_RAX: 000000= 00000000d9 [ 50.146719] RAX: ffffffffffffffda RBX: 0000000036d4b1c0 RCX: 00007f3eaa1= 61033 [ 50.146831] RDX: 0000000000080000 RSI: 0000000036d4b1f0 RDI: 00000000000= 0000f [ 50.146941] RBP: 0000000036d4b1c4 R08: 0000000000000002 R09: 00000000000= 0416d [ 50.147065] R10: 0000000000000000 R11: 0000000000000293 R12: fffffffffff= fff80 [ 50.147176] R13: 0000000000000000 R14: 00007f3e94bd3760 R15: 00007f3eaa0= 22374 [ 50.147338] [ 50.147631] Mem-Info: [ 50.147858] active_anon:55 inactive_anon:34507 isolated_anon:0 [ 50.147858] active_file:2464 inactive_file:2406 isolated_file:32 [ 50.147858] unevictable:0 dirty:0 writeback:0 [ 50.147858] slab_reclaimable:1330 slab_unreclaimable:4783 [ 50.147858] mapped:2813 shmem:653 pagetables:411 [ 50.147858] sec_pagetables:0 bounce:0 [ 50.147858] kernel_misc_reclaimable:0 [ 50.147858] free:1589 free_pcp:0 free_cma:0 [ 50.148578] Node 0 active_anon:220kB inactive_anon:138028kB active_file:= 9856kB inactive_file:9624kB unevictable:0kB isolated(anon):0kB isolated(fil= e):128kB mapped:11252kB dirty:0kB writeback:0kB shmem:2612kB shmem_thp:0kB = shmem_pmdmapped:0kB anon_thp:0kB writeback_tmp:0kB kernel_stack:1488kB page= tables:1644kB sec_pagetables:0kB all_unreclaimable? no [ 50.149061] Node 0 DMA free:492kB boost:0kB min:136kB low:168kB high:200= kB reserved_highatomic:0KB active_anon:0kB inactive_anon:13044kB active_fil= e:1124kB inactive_file:136kB unevictable:0kB writepending:0kB present:15992= kB managed:15360kB mlocked:0kB bounce:0kB free_pcp:0kB local_pcp:0kB free_c= ma:0kB [ 50.149507] lowmem_reserve[]: 0 176 0 0 0 [ 50.149618] Node 0 DMA32 free:5864kB boost:0kB min:1632kB low:2040kB hig= h:2448kB reserved_highatomic:0KB active_anon:220kB inactive_anon:124984kB a= ctive_file:8732kB inactive_file:9492kB unevictable:0kB writepending:0kB pre= sent:245620kB managed:201236kB mlocked:0kB bounce:0kB free_pcp:0kB local_pc= p:0kB free_cma:0kB [ 50.149996] lowmem_reserve[]: 0 0 0 0 0 [ 50.150137] Node 0 DMA: 2*4kB (U) 9*8kB (UM) 10*16kB (UM) 8*32kB (U) 0*6= 4kB 0*128kB 0*256kB 0*512kB 0*1024kB 0*2048kB 0*4096kB =3D 496kB [ 50.150546] Node 0 DMA32: 36*4kB (UME) 261*8kB (UME) 87*16kB (UME) 70*32= kB (UME) 0*64kB 0*128kB 0*256kB 0*512kB 0*1024kB 0*2048kB 0*4096kB =3D 5864= kB [ 50.150881] Node 0 hugepages_total=3D0 hugepages_free=3D0 hugepages_surp= =3D0 hugepages_size=3D2048kB [ 50.151055] 5540 total pagecache pages [ 50.151156] 0 pages in swap cache [ 50.151219] Free swap =3D 0kB [ 50.151273] Total swap =3D 0kB [ 50.151378] 65403 pages RAM [ 50.151431] 0 pages HighMem/MovableOnly [ 50.151495] 11254 pages reserved [ 50.151551] 0 pages cma reserved [ 50.151607] 0 pages hwpoisoned [ 50.153035] Memory allocations: [ 50.153264] 80.4 MiB 20585 mm/memory.c:1062 func:folio_prealloc [ 50.153423] 52.1 MiB 13326 mm/memory.c:1064 func:folio_prealloc [ 50.153521] 19.1 MiB 4889 mm/readahead.c:263 func:page_cache_ra_= unbounded [ 50.153631] 18.3 MiB 2917 mm/slub.c:2433 func:alloc_slab_page [ 50.153736] 8.16 MiB 2093 mm/percpu.c:512 func:pcpu_mem_zalloc [ 50.153835] 8.11 MiB 2292 mm/execmem.c:31 func:__execmem_alloc [ 50.153933] 7.54 MiB 0 mm/compaction.c:1880 func:compaction_a= lloc [ 50.154047] 3.91 MiB 1003 drivers/gpu/drm/drm_fbdev_ttm.c:98 [dr= m_ttm_helper] func:drm_fbdev_ttm_helper_fb_probe [ 50.154208] 3.05 MiB 23515 fs/kernfs/dir.c:624 func:__kernfs_new_= node [ 50.154312] 2.55 MiB 653 mm/shmem.c:1774 func:shmem_alloc_folio guix deploy: =1B[1;31merror: =1B[0mcreating directory `/gnu/store/.links': = Read-only file system QEMU runs as PID 18 connected to QEMU's monitor read QEMU monitor prompt connected to guest REPL %%%% Starting test deploy (Writing full log to "/gnu/store/kh05hj3aljrvj48= 71j3m8h35zixix5ag-deploy/deploy.log") marionette is ready PASS: script successfully evaluated /gnu/store/xgi6gds4lg8ysal8gd2wa5fraq12iava-deploy-builder:1: FAIL script c= reated new generation /gnu/store/xgi6gds4lg8ysal8gd2wa5fraq12iava-deploy-builder:1: FAIL script a= ctivated the new generation PASS: uname # of expected passes 2 # of unexpected failures 2 Tests failed, dumping log file '/gnu/store/kh05hj3aljrvj4871j3m8h35zixix5ag= -deploy/deploy.log'. %%%% Starting test deploy Group begin: deploy Test begin: test-name: "script successfully evaluated" source-file: "/gnu/store/xgi6gds4lg8ysal8gd2wa5fraq12iava-deploy-builder" source-line: 1 source-form: (test-assert "script successfully evaluated" (marionette-eva= l (quote (primitive-load "/gnu/store/msrjgz3n5np9wmmnksh78jxhasmbb9pn-deplo= y.scm")) marionette)) Test end: result-kind: pass actual-value: ready Test begin: test-name: "script created new generation" source-file: "/gnu/store/xgi6gds4lg8ysal8gd2wa5fraq12iava-deploy-builder" source-line: 1 source-form: (test-equal "script created new generation" (length (system-= generations marionette)) (#{1+}# (length generations-prior))) Test end: result-kind: fail actual-value: 2 expected-value: 1 Test begin: test-name: "script activated the new generation" source-file: "/gnu/store/xgi6gds4lg8ysal8gd2wa5fraq12iava-deploy-builder" source-line: 1 source-form: (test-equal "script activated the new generation" (string-ap= pend "/var/guix/profiles/system-" (number->string (+ 1 (length generations-= prior))) "-link") (marionette-eval (quote (readlink "/run/current-system"))= marionette)) Test end: result-kind: fail actual-value: "/gnu/store/2qbnwnl4lifdq8f5wa8nlj79bhxfg0pi-system" expected-value: "/var/guix/profiles/system-2-link" Test begin: test-name: "uname" source-file: "/gnu/store/xgi6gds4lg8ysal8gd2wa5fraq12iava-deploy-builder" source-line: 1 source-form: (test-assert "uname" (match (marionette-eval (quote (uname))= marionette) (#("Linux" host-name _ ...) (string=3D? host-name "komputilo")= ))) Test end: result-kind: pass actual-value: #t Group end: deploy # of expected passes 2 # of unexpected failures 2 builder for `/gnu/store/vw9857dzp7lvplkm9szyivg32f9yvdgm-deploy.drv' failed= with exit code 1 build of /gnu/store/vw9857dzp7lvplkm9szyivg32f9yvdgm-deploy.drv failed Could not find build log for '/gnu/store/vw9857dzp7lvplkm9szyivg32f9yvdgm-d= eploy.drv'. guix build: error: build of `/gnu/store/vw9857dzp7lvplkm9szyivg32f9yvdgm-de= ploy.drv' failed --3nf2grkfdqkcowr4-- From unknown Sun Jun 15 08:45:46 2025 X-Loop: help-debbugs@gnu.org Subject: [bug#75010] [PATCH v2 1/2] gnu: tests: Add module for guix deploy tests. Resent-From: Herman Rimm Original-Sender: "Debbugs-submit" Resent-CC: guix-patches@gnu.org Resent-Date: Fri, 31 Jan 2025 11:16:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 75010 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: 75010@debbugs.gnu.org Received: via spool by 75010-submit@debbugs.gnu.org id=B75010.173832212714891 (code B ref 75010); Fri, 31 Jan 2025 11:16:01 +0000 Received: (at 75010) by debbugs.gnu.org; 31 Jan 2025 11:15:27 +0000 Received: from localhost ([127.0.0.1]:50197 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1tdozZ-0003ry-1C for submit@debbugs.gnu.org; Fri, 31 Jan 2025 06:15:27 -0500 Received: from 81-205-150-117.fixed.kpn.net ([81.205.150.117]:60723 helo=email.rimm.ee) by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.84_2) (envelope-from ) id 1tdozV-0003ra-CA for 75010@debbugs.gnu.org; Fri, 31 Jan 2025 06:15:19 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=rimm.ee; s=herman; t=1738322109; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=GkCknNlNF2tbf41QzLgdY8r/cCLWNSwwVPGdgf+721g=; b=mdBs/05If5MBLgoCCv6cuctD7Jub9875yDo2Voz4ZBURn4gK624q7lKDZMIyfBoBIyqH+V wyUomEA1bSIqOUgyrKjDNLfD3cTuFlEJWtwgW9D9wgQtNjuW62U1p3SuWmq2MzsEphgPtm taM2DmJBMLwAfKNECFSHK91N6Gucmrzvv3kGAmTX3lLCEMxx5Q0AkXsXocQAugdtCFBDOY LMyllFxUJwusEKrvWyJ5PrTW9emnxV6b6ZXQYVZ0iUp22a2Fbg61Ls4qTluZyz7SvAo0gy PNXnQDFzdLM44G33Qm2lbFW8izduhOffbWs1FOWYXk1euQBPxC3IBZuM37JRzQ== Received: by 81-205-150-117.fixed.kpn.net (OpenSMTPD) with ESMTPSA id ac7bbc66 (TLSv1.3:TLS_CHACHA20_POLY1305_SHA256:256:NO) for <75010@debbugs.gnu.org>; Fri, 31 Jan 2025 11:15:09 +0000 (UTC) From: Herman Rimm Date: Fri, 31 Jan 2025 12:14:23 +0100 Message-ID: <1e5edf7f36933c07e1f2218c9b6ff239381092da.1738319693.git.herman@rimm.ee> X-Mailer: git-send-email 2.47.1 In-Reply-To: References: MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Spam-Score: 0.0 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) * gnu/tests/deploy.scm: Add file. * gnu/local.mk (GNU_SYSTEM_MODULES): Register file. Change-Id: I348c8bf2e518ec6c00af126993eaca3fcd453901 --- gnu/local.mk | 3 +- gnu/tests/deploy.scm | 224 +++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 226 insertions(+), 1 deletion(-) create mode 100644 gnu/tests/deploy.scm diff --git a/gnu/local.mk b/gnu/local.mk index e8c807cf630..3addd69746a 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -62,7 +62,7 @@ # Copyright © 2023 B. Wilson # Copyright © 2023 Bruno Victal # Copyright © 2023, 2024 gemmaro -# Copyright © 2023 Herman Rimm +# Copyright © 2023, 2025 Herman Rimm # Copyright © 2023 Troy Figiel # Copyright © 2024, 2025 David Elsing # Copyright © 2024 Ashish SHUKLA @@ -840,6 +840,7 @@ GNU_SYSTEM_MODULES = \ %D%/tests/containers.scm \ %D%/tests/cups.scm \ %D%/tests/databases.scm \ + %D%/tests/deploy.scm \ %D%/tests/desktop.scm \ %D%/tests/dns.scm \ %D%/tests/dict.scm \ diff --git a/gnu/tests/deploy.scm b/gnu/tests/deploy.scm new file mode 100644 index 00000000000..96f074d1f90 --- /dev/null +++ b/gnu/tests/deploy.scm @@ -0,0 +1,224 @@ +;;; GNU Guix --- Functional package management for GNU +;;; Copyright © 2019 Jakob L. Kreuze +;;; Copyright © 2024 Herman Rimm +;;; +;;; This file is part of GNU Guix. +;;; +;;; GNU Guix is free software; you can redistribute it and/or modify it +;;; under the terms of the GNU General Public License as published by +;;; the Free Software Foundation; either version 3 of the License, or (at +;;; your option) any later version. +;;; +;;; GNU Guix is distributed in the hope that it will be useful, but +;;; WITHOUT ANY WARRANTY; without even the implied warranty of +;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +;;; GNU General Public License for more details. +;;; +;;; You should have received a copy of the GNU General Public License +;;; along with GNU Guix. If not, see . + +(define-module (gnu tests deploy) + #:use-module (gnu packages gnupg) + #:use-module (gnu packages package-management) + #:use-module (gnu packages ssh) + #:use-module ((guix self) #:select (make-config.scm)) + #:use-module (gnu services) + #:use-module (gnu services base) + #:use-module (gnu services ssh) + #:use-module (gnu system) + #:use-module (gnu system vm) + #:use-module (gnu tests) + #:use-module (guix gexp) + #:use-module (guix modules) + #:use-module (ice-9 match) + #:export (%test-deploy + %test-rollback)) + +;;; Commentary: +;;; +;;; Test in-place system deployment: advancing the system generation on +;;; a running instance of the Guix System. +;;; +;;; Code: + +(define (machines os) + (scheme-file + "machines.scm" + #~(begin (use-modules (gnu machine ssh) + (guix utils) + (ice-9 ftw) + (ssh key)) + ;; XXX: (guix platforms ...) are not found in %load-path. + (set! (@ (guix platform) systems) + (compose list %current-system)) + (list (machine + (configuration + (machine-ssh-configuration + (host-name "localhost") + (host-key + (string-append + "ssh-ed25519 " + (public-key->string + (public-key-from-file + "/etc/ssh/ssh_host_ed25519_key.pub")))) + (system (%current-system)))) + (environment managed-host-environment-type) + ;; XXX: First S-expression is for operating-system. + (operating-system + (call-with-input-file + "/run/current-system/configuration.scm" + read))))))) + +(define not-config? + ;; Select (guix …) and (gnu …) modules, except (guix config). + (match-lambda + (('guix 'config) #f) + (('guix rest ...) #t) + (('gnu rest ...) #t) + (_ #f))) + +(define* (deploy-program #:optional (os #~%simple-os)) + (program-file "deploy.scm" + (with-extensions (list guile-gcrypt guile-ssh) + (with-imported-modules + `(((guix config) => ,(make-config.scm))) + #~(execl #$(file-append (current-guix) "/bin/guix") + "guix" "deploy" #$(machines os)))))) + +(define os + (marionette-operating-system + (operating-system-with-provenance + (simple-operating-system + (service openssh-service-type + (openssh-configuration + (permit-root-login #t) + (allow-empty-passwords? #t))) + (service static-networking-service-type + (list (static-networking + (inherit %loopback-static-networking) + (provision '(networking))))))) + #:imported-modules '((gnu services herd) + (guix combinators)))) + +(define vm (virtual-machine os)) + +(define system-generations-definition + #~(define (system-generations marionette) + "Return the names of the generation symlinks on MARIONETTE." + (marionette-eval + '(begin (use-modules (ice-9 ftw)) + (define (select? entry) + (not (member entry '("per-user" "system" "." "..")))) + (scandir "/var/guix/profiles/" select?)) + marionette))) + +(define* (run-deploy-test) + "Run a test of an OS running DEPLOY-PROGRAM, which creates a new +generation of the system profile." + (define (test script) + (with-imported-modules '((gnu build marionette)) + #~(begin + (use-modules (gnu build marionette) + (ice-9 match) + (srfi srfi-64)) + + (define marionette + (make-marionette (list #$vm))) + + #$system-generations-definition + + (test-runner-current (system-test-runner #$output)) + (test-begin "deploy") + + (let ((generations-prior (system-generations marionette))) + (test-assert "script successfully evaluated" + (marionette-eval + '(primitive-load #$script) + marionette)) + + (test-equal "script created new generation" + (length (system-generations marionette)) + (1+ (length generations-prior))) + + (test-equal "script activated the new generation" + (string-append "/var/guix/profiles/system-" + (number->string (+ 1 (length generations-prior))) + "-link") + (marionette-eval '(readlink "/run/current-system") + marionette))) + + (test-assert "uname" + (match (marionette-eval '(uname) marionette) + (#("Linux" host-name _ ...) + (string=? host-name #$(operating-system-host-name os))))) + + (test-end)))) + + (gexp->derivation "deploy" (test (deploy-program)))) + +(define* (run-rollback-test) + "Run a test of an OS with a faulty bootloader running DEPLOY-PROGRAM, +which causes a rollback." + (define new-os + #~(operating-system + (inherit %simple-os) + (host-name (substring (operating-system-host-name %simple-os) + 0 1)) + (bootloader + (bootloader-configuration + (inherit (operating-system-bootloader + %simple-os)) + (targets '("/dev/null")))))) + + (define (test script) + (with-imported-modules '((gnu build marionette)) + #~(begin + (use-modules (gnu build marionette) + (ice-9 match) + (srfi srfi-64)) + + (define marionette + (make-marionette (list #$vm))) + + #$system-generations-definition + + (test-runner-current (system-test-runner #$output)) + (test-begin "rollback") + + (let ((generations-prior (system-generations marionette))) + (test-assert "script successfully evaluated" + (marionette-eval + '(primitive-load #$script) + marionette)) + + (test-equal "script created new generation" + (length (system-generations marionette)) + (1+ (length generations-prior))) + + (test-equal "script rolled back the new generation" + (string-append "/var/guix/profiles/system-" + (number->string (length generations-prior)) + "-link") + (marionette-eval '(readlink "/run/current-system") + marionette))) + + (test-assert "uname" + (match (marionette-eval '(uname) marionette) + (#("Linux" host-name _ ...) + (string=? host-name #$(operating-system-host-name os))))) + + (test-end)))) + + (gexp->derivation "rollback" (test (deploy-program new-os)))) + +(define %test-deploy + (system-test + (name "deploy") + (description "Deploy to the local machine.") + (value (run-deploy-test)))) + +(define %test-rollback + (system-test + (name "rollback") + (description "Rollback the deployment of a faulty bootloader.") + (value (run-rollback-test)))) -- 2.47.1 From unknown Sun Jun 15 08:45:46 2025 X-Loop: help-debbugs@gnu.org Subject: [bug#75010] [PATCH v2 2/2] Fix deploy test errors. Resent-From: Herman Rimm Original-Sender: "Debbugs-submit" Resent-CC: guix-patches@gnu.org Resent-Date: Fri, 31 Jan 2025 11:16:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 75010 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: 75010@debbugs.gnu.org Received: via spool by 75010-submit@debbugs.gnu.org id=B75010.173832212814898 (code B ref 75010); Fri, 31 Jan 2025 11:16:02 +0000 Received: (at 75010) by debbugs.gnu.org; 31 Jan 2025 11:15:28 +0000 Received: from localhost ([127.0.0.1]:50199 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1tdozf-0003s8-FU for submit@debbugs.gnu.org; Fri, 31 Jan 2025 06:15:27 -0500 Received: from 81-205-150-117.fixed.kpn.net ([81.205.150.117]:60723 helo=email.rimm.ee) by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.84_2) (envelope-from ) id 1tdozX-0003ra-AG for 75010@debbugs.gnu.org; Fri, 31 Jan 2025 06:15:19 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=rimm.ee; s=herman; t=1738322111; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=pZ/PV1Gl0KqucAF0jOJLSrmsndCOwF1T+Gzr6E73k0g=; b=bfd1T5wL5n2ORL1PhxXpkPQ+Imm6v4OyPp9Fr0bmcajKnQYJ++G+4/UsLakpBdpusZ6How zbRE+L415Y43Df0/ME3FQdk+UCKLywd+pqbis+A7TfQ1IcwPBC3Ljn8rgdlqkpSeRemqTt COmQ91ptvxyniFrNYYLAUS3OkpRjjGxEJHzDeDhJWpYrhh7SlB6EOOGsGFQEGl+upsPfJs L9aX6re4G+nHz70eDQWANgtrHXnJNu15xA8fDtVs/YAmHFr/ck1S+bg/TdIWX5pAXLwudR ZqasMr81yw/zGpUiPhJ0ewKzZKUbaudZNDvZ9fnqpTnknSre7EVyXk7oz8H8AQ== Received: by 81-205-150-117.fixed.kpn.net (OpenSMTPD) with ESMTPSA id 5cea52a9 (TLSv1.3:TLS_CHACHA20_POLY1305_SHA256:256:NO) for <75010@debbugs.gnu.org>; Fri, 31 Jan 2025 11:15:11 +0000 (UTC) From: Herman Rimm Date: Fri, 31 Jan 2025 12:14:24 +0100 Message-ID: X-Mailer: git-send-email 2.47.1 In-Reply-To: References: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Spam-Score: 0.0 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) Change-Id: I5e321124cade4ce46209688c94b7c340940fce21 --- gnu/packages/file-systems.scm | 4 +--- guix/channels.scm | 3 +-- 2 files changed, 2 insertions(+), 5 deletions(-) diff --git a/gnu/packages/file-systems.scm b/gnu/packages/file-systems.scm index 5fd92d08fb1..c66642bb39a 100644 --- a/gnu/packages/file-systems.scm +++ b/gnu/packages/file-systems.scm @@ -601,9 +601,7 @@ (define-public gphotofs (license license:gpl2+))) (define bcachefs-tools-rust-target - (platform-rust-target (lookup-platform-by-target-or-system - (or (%current-target-system) - (%current-system))))) + "x86_64-unknown-linux-gnu") (define bcachefs-tools-target/release (string-append "target/" bcachefs-tools-rust-target "/release")) diff --git a/guix/channels.scm b/guix/channels.scm index 4700f7a45d0..d6425a31dfb 100644 --- a/guix/channels.scm +++ b/guix/channels.scm @@ -565,8 +565,7 @@ (define* (latest-channel-instances store channels (let* ((current (current-commit (channel-name channel))) (instance (latest-channel-instance store channel - #:authenticate? - authenticate? + #:authenticate? #f #:validate-pull validate-pull #:starting-commit -- 2.47.1 From unknown Sun Jun 15 08:45:46 2025 X-Loop: help-debbugs@gnu.org Subject: [bug#75010] [PATCH v2 1/2] gnu: tests: Add module for guix deploy tests. Resent-From: Ludovic =?UTF-8?Q?Court=C3=A8s?= Original-Sender: "Debbugs-submit" Resent-CC: guix-patches@gnu.org Resent-Date: Sun, 09 Feb 2025 16:32:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 75010 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: Herman Rimm Cc: 75010@debbugs.gnu.org Received: via spool by 75010-submit@debbugs.gnu.org id=B75010.173911870722674 (code B ref 75010); Sun, 09 Feb 2025 16:32:01 +0000 Received: (at 75010) by debbugs.gnu.org; 9 Feb 2025 16:31:47 +0000 Received: from localhost ([127.0.0.1]:45961 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1thADj-0005tc-4J for submit@debbugs.gnu.org; Sun, 09 Feb 2025 11:31:47 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:42442) by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.84_2) (envelope-from ) id 1thADf-0005tH-Nm for 75010@debbugs.gnu.org; Sun, 09 Feb 2025 11:31:44 -0500 Received: from fencepost.gnu.org ([2001:470:142:3::e]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1thADX-00043f-Dk; Sun, 09 Feb 2025 11:31:35 -0500 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org; s=fencepost-gnu-org; h=MIME-Version:Date:References:In-Reply-To:Subject:To: From; bh=XzbLtf8XB1S8iabrYU5NGJKU7HF7TmtDe1quAq95ib4=; b=I77TJ7wemVH5KYrfXduG HLjNSadi2v26z3gRsxtzv5XngvgLsXs/Kb1q5kquQMzerlef2oPCRqvU51/457iNxm2zL4e6fdxKU JHIrf0ZVZD42hiMCgC98te5x1EdDC2/mV+LyEb1KE43rCIeVwRNPY7vateVsv3/tA0YIObvBuqBtM MAuuU4o9cPFc75qN7nvpQjEa08srx9S3uQU+hAKNuZVKaS7uv4Hc5KwIAOE/k3pYy5+0P0VsRtc3O XbAbgcE8j593yAKGBqNlMWrQ8aERVTZIvNpdktuN5GATBl1Qra4AL4gemzJuCjhAoIiNl5516ps0s T7TFWWoGtF4RuA==; From: Ludovic =?UTF-8?Q?Court=C3=A8s?= In-Reply-To: <1e5edf7f36933c07e1f2218c9b6ff239381092da.1738319693.git.herman@rimm.ee> (Herman Rimm's message of "Fri, 31 Jan 2025 12:14:23 +0100") References: <1e5edf7f36933c07e1f2218c9b6ff239381092da.1738319693.git.herman@rimm.ee> Date: Sun, 09 Feb 2025 17:31:32 +0100 Message-ID: <87pljrqduj.fsf@gnu.org> User-Agent: Gnus/5.13 (Gnus v5.13) MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-Spam-Score: -2.3 (--) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.3 (---) Herman Rimm skribis: > * gnu/tests/deploy.scm: Add file. > * gnu/local.mk (GNU_SYSTEM_MODULES): Register file. > > Change-Id: I348c8bf2e518ec6c00af126993eaca3fcd453901 Nice! [...] > +(define (machines os) Unless I=E2=80=99m mistaken, =E2=80=98os=E2=80=99 is actually unused. I=E2= =80=99d suggest making =E2=80=98os=E2=80=99 an sexp and actually using it instead of reading /run/current-system/configuration.scm. The OS to deploy should be different from the one already running (at least a different host name, etc.) as a way to ensure that an actual deployment occurs. So you should probably have: (define target-os-source '(begin (use-modules (gnu)) =E2=80=A6 (operating-system =E2=80=A6))) (This is similar to uses of =E2=80=98define-os-with-source=E2=80=99 in othe= r tests except that we probably only need the source in this case.) > + (scheme-file > + "machines.scm" > + #~(begin (use-modules (gnu machine ssh) Please indent the usual way: (scheme-file "machines.scm" #~(begin (use-modules =E2=80=A6) =E2=80=A6)) > + ;; XXX: (guix platforms ...) are not found in %load-path. > + (set! (@ (guix platform) systems) > + (compose list %current-system)) What=E2=80=99s the problem here? > + (machine-ssh-configuration > + (host-name "localhost") > + (host-key > + (string-append > + "ssh-ed25519 " > + (public-key->string > + (public-key-from-file > + "/etc/ssh/ssh_host_ed25519_key.pub")))) It=E2=80=99s enough to do: (call-with-input-file "/etc/ssh/ssh_host_ed25519_key.pub" get-string-all) > +(define %test-deploy > + (system-test > + (name "deploy") > + (description "Deploy to the local machine.") > + (value (run-deploy-test)))) > + > +(define %test-rollback > + (system-test > + (name "rollback") > + (description "Rollback the deployment of a faulty bootloader.") > + (value (run-rollback-test)))) For clarity, I=E2=80=99d change =E2=80=98name=E2=80=99 of the 2nd one to "d= eploy-rollback" and clarify in the description that this is about =E2=80=98guix deploy=E2=80=99. Could you send an updated version? Thanks, Ludo=E2=80=99. From debbugs-submit-bounces@debbugs.gnu.org Tue Feb 18 11:55:05 2025 Received: (at control) by debbugs.gnu.org; 18 Feb 2025 16:55:05 +0000 Received: from localhost ([127.0.0.1]:60013 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1tkQsC-0003Np-LA for submit@debbugs.gnu.org; Tue, 18 Feb 2025 11:55:05 -0500 Received: from mail2-relais-roc.national.inria.fr ([192.134.164.83]:20499) by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.84_2) (envelope-from ) id 1tkQsA-0003MC-BE for control@debbugs.gnu.org; Tue, 18 Feb 2025 11:55:03 -0500 Authentication-Results: mail2-relais-roc.national.inria.fr; dkim=none (message not signed) header.i=none; spf=SoftFail smtp.mailfrom=ludo@gnu.org; dmarc=fail (p=none dis=none) d=gnu.org X-IronPort-AV: E=Sophos;i="6.13,296,1732575600"; d="scan'208";a="208871511" Received: from unknown (HELO ribbon) ([193.50.110.84]) by mail2-relais-roc.national.inria.fr with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 18 Feb 2025 17:54:55 +0100 Date: Tue, 18 Feb 2025 17:54:55 +0100 Message-Id: <87ikp7jiqo.fsf@gnu.org> To: control@debbugs.gnu.org From: =?utf-8?Q?Ludovic_Court=C3=A8s?= Subject: control message for bug #75010 MIME-version: 1.0 Content-type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Spam-Score: -1.3 (-) X-Debbugs-Envelope-To: control X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -2.3 (--) tags 75010 + moreinfo quit From unknown Sun Jun 15 08:45:46 2025 X-Loop: help-debbugs@gnu.org Subject: [bug#75010] [PATCH v3 2/2] Fix deploy test errors. Resent-From: Herman Rimm Original-Sender: "Debbugs-submit" Resent-CC: guix-patches@gnu.org Resent-Date: Wed, 30 Apr 2025 13:29:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 75010 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch moreinfo To: 75010@debbugs.gnu.org Received: via spool by 75010-submit@debbugs.gnu.org id=B75010.17460196981512 (code B ref 75010); Wed, 30 Apr 2025 13:29:02 +0000 Received: (at 75010) by debbugs.gnu.org; 30 Apr 2025 13:28:18 +0000 Received: from localhost ([127.0.0.1]:40785 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1uA7U1-0000OJ-JA for submit@debbugs.gnu.org; Wed, 30 Apr 2025 09:28:17 -0400 Received: from 81-205-150-117.fixed.kpn.net ([81.205.150.117]:58107 helo=email.rimm.ee) by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.84_2) (envelope-from ) id 1uA7Tu-0000NL-Qe for 75010@debbugs.gnu.org; Wed, 30 Apr 2025 09:28:11 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=rimm.ee; s=herman; t=1746018384; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=JRRYWz6DgQu3hfWxvU8r3+Mc80i+rTq3uge+e3JKrdg=; b=ImmrtHdn+AcmuWngPD2B2Zdfh6jWZ1GvGn2ui/Vw7Hr9Pq5FyPc9oUkbMAWZvG12ZU8ElG lNFYQxoLKdz+j9RE5BV5O77dMTVGHgnN35xbJmviyVLt6tm8+932e7urIuMfosSCpjKDsI OOhY6PwKbSJVOibmkPAH3h9mT9DSaXGNR5uxLKd2QDKZJsUtK+ULgp+CqeA3pJngCCozUN P0EVW8GQ7OWklmbzGvDEdtB/XaH9jjsXAh/TLubxUPcy/ZDBno2/gPuNg337uqvD0/J/ka i6XJELFp00fYD7aV6dZzMhqYt2+Y/hCawftKcMf/eojTp2BDhzOFvllY0KrVHQ== Received: by 81-205-150-117.fixed.kpn.net (OpenSMTPD) with ESMTPSA id fd3c13ad (TLSv1.3:TLS_CHACHA20_POLY1305_SHA256:256:NO) for <75010@debbugs.gnu.org>; Wed, 30 Apr 2025 13:06:24 +0000 (UTC) From: Herman Rimm Date: Wed, 30 Apr 2025 15:05:28 +0200 Message-ID: <7b6f4c590034352f33ab2c206df668966541928d.1746016819.git.herman@rimm.ee> X-Mailer: git-send-email 2.47.1 In-Reply-To: References: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Spam-Score: 0.0 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) Change-Id: I5e321124cade4ce46209688c94b7c340940fce21 --- gnu/packages/file-systems.scm | 4 +--- guix/channels.scm | 3 +-- 2 files changed, 2 insertions(+), 5 deletions(-) diff --git a/gnu/packages/file-systems.scm b/gnu/packages/file-systems.scm index b7ebf61beb0..3242a2dcdeb 100644 --- a/gnu/packages/file-systems.scm +++ b/gnu/packages/file-systems.scm @@ -713,9 +713,7 @@ (define-public gphotofs (license license:gpl2+))) (define bcachefs-tools-rust-target - (platform-rust-target (lookup-platform-by-target-or-system - (or (%current-target-system) - (%current-system))))) + "x86_64-unknown-linux-gnu") (define bcachefs-tools-target/release (string-append "target/" bcachefs-tools-rust-target "/release")) diff --git a/guix/channels.scm b/guix/channels.scm index 4700f7a45d0..d6425a31dfb 100644 --- a/guix/channels.scm +++ b/guix/channels.scm @@ -565,8 +565,7 @@ (define* (latest-channel-instances store channels (let* ((current (current-commit (channel-name channel))) (instance (latest-channel-instance store channel - #:authenticate? - authenticate? + #:authenticate? #f #:validate-pull validate-pull #:starting-commit -- 2.48.1 From unknown Sun Jun 15 08:45:46 2025 X-Loop: help-debbugs@gnu.org Subject: [bug#75010] [PATCH v3 1/2] gnu: tests: Add module for guix deploy tests. Resent-From: Herman Rimm Original-Sender: "Debbugs-submit" Resent-CC: guix-patches@gnu.org Resent-Date: Wed, 30 Apr 2025 13:29:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 75010 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch moreinfo To: 75010@debbugs.gnu.org Received: via spool by 75010-submit@debbugs.gnu.org id=B75010.17460197011526 (code B ref 75010); Wed, 30 Apr 2025 13:29:02 +0000 Received: (at 75010) by debbugs.gnu.org; 30 Apr 2025 13:28:21 +0000 Received: from localhost ([127.0.0.1]:40787 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1uA7U2-0000OQ-1Q for submit@debbugs.gnu.org; Wed, 30 Apr 2025 09:28:21 -0400 Received: from 81-205-150-117.fixed.kpn.net ([81.205.150.117]:58107 helo=email.rimm.ee) by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.84_2) (envelope-from ) id 1uA7Tr-0000NL-3w for 75010@debbugs.gnu.org; Wed, 30 Apr 2025 09:28:10 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=rimm.ee; s=herman; t=1746018384; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=6ATbnesFkTVYijs1SR30TjZ44nzq2KDcu6BNPmH3NCA=; b=dqXrGPqoxn7nPxGQMLxsBizp7E4nJjY2cc7Wng5D7ZqR/ncUy4zn9BdtvrFr8mZtCslpiN hvhEHB2cP69NKahSBnRl/nxbs1v78t/OoYqXCNYGZ/zSlcQoPhPdYnOCmlORbGbPLQGGsW 7uIhTJvgPS7Sh67/1uulifcGmVvqOs+JiWaIfmt8VPGVeucmksXVOhVn99QTwKhp3lJJOu z0ZnBfc/2b22KZPBlhsEQ7NkMS34QSDzNeL3BjSZztIkdcKc3LTDqafcU6ToDGUa2qCgIH QT9y/tWmfKy7BSYgcUHKajRK61sgDNeH7jGndOTfHcKZPBILeZR2q+O7ncKNiA== Received: by 81-205-150-117.fixed.kpn.net (OpenSMTPD) with ESMTPSA id 6b84a44b (TLSv1.3:TLS_CHACHA20_POLY1305_SHA256:256:NO) for <75010@debbugs.gnu.org>; Wed, 30 Apr 2025 13:06:23 +0000 (UTC) From: Herman Rimm Date: Wed, 30 Apr 2025 15:05:27 +0200 Message-ID: <4149c0f631101dcfe8f9a0d50fd9c1605a26cd76.1746016819.git.herman@rimm.ee> X-Mailer: git-send-email 2.47.1 In-Reply-To: References: MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Spam-Score: 0.0 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) * gnu/tests/deploy.scm: Add file. * gnu/local.mk (GNU_SYSTEM_MODULES): Register file. Change-Id: I348c8bf2e518ec6c00af126993eaca3fcd453901 --- gnu/local.mk | 3 +- gnu/tests/deploy.scm | 223 +++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 225 insertions(+), 1 deletion(-) create mode 100644 gnu/tests/deploy.scm diff --git a/gnu/local.mk b/gnu/local.mk index adbb893a419..a100bfb0aa2 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -62,7 +62,7 @@ # Copyright © 2023 B. Wilson # Copyright © 2023 Bruno Victal # Copyright © 2023, 2024 gemmaro -# Copyright © 2023 Herman Rimm +# Copyright © 2023, 2025 Herman Rimm # Copyright © 2023 Troy Figiel # Copyright © 2024, 2025 David Elsing # Copyright © 2024 Ashish SHUKLA @@ -847,6 +847,7 @@ GNU_SYSTEM_MODULES = \ %D%/tests/containers.scm \ %D%/tests/cups.scm \ %D%/tests/databases.scm \ + %D%/tests/deploy.scm \ %D%/tests/desktop.scm \ %D%/tests/dns.scm \ %D%/tests/dict.scm \ diff --git a/gnu/tests/deploy.scm b/gnu/tests/deploy.scm new file mode 100644 index 00000000000..55d3edb78ef --- /dev/null +++ b/gnu/tests/deploy.scm @@ -0,0 +1,223 @@ +;;; GNU Guix --- Functional package management for GNU +;;; Copyright © 2019 Jakob L. Kreuze +;;; Copyright © 2024, 2025 Herman Rimm +;;; +;;; This file is part of GNU Guix. +;;; +;;; GNU Guix is free software; you can redistribute it and/or modify it +;;; under the terms of the GNU General Public License as published by +;;; the Free Software Foundation; either version 3 of the License, or (at +;;; your option) any later version. +;;; +;;; GNU Guix is distributed in the hope that it will be useful, but +;;; WITHOUT ANY WARRANTY; without even the implied warranty of +;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +;;; GNU General Public License for more details. +;;; +;;; You should have received a copy of the GNU General Public License +;;; along with GNU Guix. If not, see . + +(define-module (gnu tests deploy) + #:use-module (gnu packages gnupg) + #:use-module (gnu packages package-management) + #:use-module (gnu packages ssh) + #:use-module ((guix self) #:select (make-config.scm)) + #:use-module (gnu services) + #:use-module (gnu services base) + #:use-module (gnu services ssh) + #:use-module (gnu system) + #:use-module (gnu system vm) + #:use-module (gnu tests) + #:use-module (guix gexp) + #:use-module (guix modules) + #:use-module (ice-9 match) + #:export (%test-deploy + %test-rollback)) + +;;; Commentary: +;;; +;;; Test in-place system deployment: advancing the system generation on +;;; a running instance of the Guix System. +;;; +;;; Code: + +(define (machines os-source) + (scheme-file "machines.scm" + #~(begin (use-modules (gnu machine ssh) + (guix utils) + (ice-9 textual-ports)) + ;; XXX: (guix platforms ...) are not found in %load-path. + (set! (@ (guix platform) systems) + (compose list %current-system)) + (list (machine + (configuration + (machine-ssh-configuration + (host-name "localhost") + (host-key + (call-with-input-file "/etc/ssh/ssh_host_ed25519_key.pub" + get-string-all)) + (system (%current-system)))) + (environment managed-host-environment-type) + (operating-system #$os-source)))))) + +(define not-config? + ;; Select (guix …) and (gnu …) modules, except (guix config). + (match-lambda + (('guix 'config) #f) + (('guix rest ...) #t) + (('gnu rest ...) #t) + (_ #f))) + +(define (deploy-program os-source) + (program-file "deploy.scm" + (with-extensions (list guile-gcrypt guile-ssh) + (with-imported-modules + `(((guix config) => ,(make-config.scm))) + #~(execl #$(file-append (current-guix) "/bin/guix") + "guix" "deploy" #$(machines os-source)))))) + +(define os + (marionette-operating-system + (simple-operating-system + (service openssh-service-type + (openssh-configuration + (permit-root-login #t) + (allow-empty-passwords? #t))) + (service static-networking-service-type + (list (static-networking + (inherit %loopback-static-networking) + (provision '(networking)))))) + #:imported-modules '((gnu services herd) + (guix combinators)))) + +(define vm (virtual-machine os)) + +(define system-generations-definition + #~(define (system-generations marionette) + "Return the names of the generation symlinks on MARIONETTE." + (marionette-eval + '(begin (use-modules (ice-9 ftw)) + (define (select? entry) + (not (member entry '("per-user" "system" "." "..")))) + (scandir "/var/guix/profiles/" select?)) + marionette))) + +(define* (run-deploy-test) + "Run a test of an OS running DEPLOY-PROGRAM, which creates a new +generation of the system profile." + (define new-os-source + '(begin + (use-modules (gnu tests)) + (operating-system + (inherit %simple-os) + (host-name (substring (operating-system-host-name %simple-os) + 0 1))))) + + (define (test script) + (with-imported-modules '((gnu build marionette)) + #~(begin + (use-modules (gnu build marionette) + (ice-9 match) + (srfi srfi-64)) + + (define marionette + (make-marionette (list #$vm))) + + #$system-generations-definition + + (test-runner-current (system-test-runner #$output)) + (test-begin "deploy") + + (let ((generations-prior (system-generations marionette))) + (test-assert "script successfully evaluated" + (marionette-eval + '(primitive-load #$script) + marionette)) + + (test-equal "script created new generation" + (length (system-generations marionette)) + (1+ (length generations-prior))) + + (test-equal "script activated the new generation" + (string-append "/var/guix/profiles/system-" + (number->string (+ 1 (length generations-prior))) + "-link") + (marionette-eval '(readlink "/run/current-system") + marionette))) + + (test-assert "uname" + (match (marionette-eval '(uname) marionette) + (#("Linux" host-name _ ...) + (string=? host-name #$(operating-system-host-name os))))) + + (test-end)))) + + (gexp->derivation "deploy" (test (deploy-program new-os-source)))) + +(define* (run-rollback-test) + "Run a test of an OS with a faulty bootloader running DEPLOY-PROGRAM, +which causes a rollback." + (define bad-os-source + '(begin + (use-modules (gnu tests)) + (operating-system + (inherit %simple-os) + (host-name (substring (operating-system-host-name %simple-os) + 0 1)) + (bootloader + (bootloader-configuration + (inherit (operating-system-bootloader %simple-os)) + (targets '("/dev/null"))))))) + + (define (test script) + (with-imported-modules '((gnu build marionette)) + #~(begin + (use-modules (gnu build marionette) + (ice-9 match) + (srfi srfi-64)) + + (define marionette + (make-marionette (list #$vm))) + + #$system-generations-definition + + (test-runner-current (system-test-runner #$output)) + (test-begin "rollback") + + (let ((generations-prior (system-generations marionette))) + (test-assert "script successfully evaluated" + (marionette-eval + '(primitive-load #$script) + marionette)) + + (test-equal "script created new generation" + (length (system-generations marionette)) + (1+ (length generations-prior))) + + (test-equal "script rolled back the new generation" + (string-append "/var/guix/profiles/system-" + (number->string (length generations-prior)) + "-link") + (marionette-eval '(readlink "/run/current-system") + marionette))) + + (test-assert "uname" + (match (marionette-eval '(uname) marionette) + (#("Linux" host-name _ ...) + (string=? host-name #$(operating-system-host-name os))))) + + (test-end)))) + + (gexp->derivation "rollback" (test (deploy-program bad-os-source)))) + +(define %test-deploy + (system-test + (name "deploy") + (description "Deploy to the local machine.") + (value (run-deploy-test)))) + +(define %test-rollback + (system-test + (name "deploy-rollback") + (description "Rollback guix deploy with a faulty bootloader.") + (value (run-rollback-test)))) -- 2.48.1 From unknown Sun Jun 15 08:45:46 2025 X-Loop: help-debbugs@gnu.org Subject: [bug#75010] [PATCH v2 1/2] gnu: tests: Add module for guix deploy tests. Resent-From: Herman Rimm Original-Sender: "Debbugs-submit" Resent-CC: guix-patches@gnu.org Resent-Date: Wed, 30 Apr 2025 13:49:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 75010 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch moreinfo To: Ludovic =?UTF-8?Q?Court=C3=A8s?= , 75010@debbugs.gnu.org Received: via spool by 75010-submit@debbugs.gnu.org id=B75010.174602090117309 (code B ref 75010); Wed, 30 Apr 2025 13:49:02 +0000 Received: (at 75010) by debbugs.gnu.org; 30 Apr 2025 13:48:21 +0000 Received: from localhost ([127.0.0.1]:40901 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1uA7nP-0004V1-2c for submit@debbugs.gnu.org; Wed, 30 Apr 2025 09:48:21 -0400 Received: from 81-205-150-117.fixed.kpn.net ([81.205.150.117]:46561 helo=email.rimm.ee) by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.84_2) (envelope-from ) id 1uA7nJ-0004Ub-UX for 75010@debbugs.gnu.org; Wed, 30 Apr 2025 09:48:17 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=rimm.ee; s=herman; t=1746020884; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=GQGgHYbPVM++fEOj0IBegM62FAhPeXDuCIJ3eiSGQbE=; b=oI0xyr7IcxxAPgHdS2IJV/8y4CCnZ0mC/ekclRBaHXL7419jZ8EJayOKC3zEY4UTH9X3sr xyzdrNZO0an5nLWvjtE8pw/qHlFLWRjuw0eRrEU1I5lAH7IEhvAid+8lBlSj5dvcvXogJl HO99hmB1SmO84pfgh5YMIti76bpEJBquYjo92ymC0i+4Q/BbxZ2qF4p06rnmSFt59mqyaT IEendWQc2f6ewOrcEtSpYiTZfPeTT8A6TmugNcSLKHmPWZg+nFxczCo07bnFcj3CjXJexw bIOaiutv7F+wg00NUgd612JyttBfF/07ig8cwpy6dUCAcnUA4DrWBsrTi/0LnA== Received: by 81-205-150-117.fixed.kpn.net (OpenSMTPD) with ESMTPSA id af6077c9 (TLSv1.3:TLS_CHACHA20_POLY1305_SHA256:256:NO); Wed, 30 Apr 2025 13:48:04 +0000 (UTC) Date: Wed, 30 Apr 2025 15:47:06 +0200 From: Herman Rimm Message-ID: <3xnaaedflpokr2vajumrylhnynhhoeakvtlgqj7epzfpkco6ao@svrkeiuopukv> References: <1e5edf7f36933c07e1f2218c9b6ff239381092da.1738319693.git.herman@rimm.ee> <87pljrqduj.fsf@gnu.org> MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="wvq5sleaopemthqn" Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: <87pljrqduj.fsf@gnu.org> X-Spam-Score: 0.0 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) --wvq5sleaopemthqn Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: 8bit Hi, On Sun, Feb 09, 2025 at 05:31:32PM +0100, Ludovic Courtès wrote: > > + ;; XXX: (guix platforms ...) are not found in %load-path. > > + (set! (@ (guix platform) systems) > > + (compose list %current-system)) > > What’s the problem here? I attached the log I get when running %test-deploy without this code. Cheers, Herman --wvq5sleaopemthqn Content-Type: text/plain; charset=us-ascii Content-Disposition: attachment; filename=result2 Content-Transfer-Encoding: quoted-printable Updating channel 'guix' from Git repository at '/home/herman/git/guix/'... guix build: warning: channel authentication disabled Computing Guix derivation for 'x86_64-linux'... =20 substitute: =0Dsubstitute: =1B[Klooking for substitutes on 'https://substit= utes.nonguix.org'... 0.0%=0Dsubstitute: =1B[Klooking for substitutes on '= https://substitutes.nonguix.org'... 100.0% substitute: =0Dsubstitute: =1B[Klooking for substitutes on 'https://guix.bo= rdeaux.inria.fr'... 0.0%=0Dsubstitute: =1B[Klooking for substitutes on 'h= ttps://guix.bordeaux.inria.fr'... 100.0% substitute: =0Dsubstitute: =1B[Klooking for substitutes on 'https://bordeau= x.guix.gnu.org'... 0.0%=0Dsubstitute: =1B[Klooking for substitutes on 'ht= tps://bordeaux.guix.gnu.org'... 100.0% substitute: =0Dsubstitute: =1B[Klooking for substitutes on 'https://ci.guix= =2Egnu.org'... 0.0%=0Dsubstitute: =1B[Klooking for substitutes on 'https:= //ci.guix.gnu.org'... 100.0% The following derivation will be built: /gnu/store/13g6z4f8l1vnwl4dmj9zh6xcdf0ilgp4-deploy.drv building /gnu/store/13g6z4f8l1vnwl4dmj9zh6xcdf0ilgp4-deploy.drv... =1Bc=1B[?7l=1B[2J=1B[0mSeaBIOS (version 1.16.2/GNU Guix) iPXE (https://ipxe.org) 00:03.0 CA00 PCI2.10 PnP PMM+0EFCAE60+0EF0AE60 CA00 Press Ctrl-B to configure iPXE (PCI 00:03.0)...=0D = =20 Booting from ROM... =1Bc=1B[?7l=1B[2J[ 0.000000] Linux version 6.13.11-gnu (guix@guix) (gcc = (GCC) 11.4.0, GNU ld (GNU Binutils) 2.41) #1 SMP PREEMPT_DYNAMIC 1 [ 0.000000] Command line: console=3DttyS0 root=3D/dev/vda1 gnu.system=3D= /gnu/store/ijhdvnwphamj37r8rhj1822zdf5hsgk4-system gnu.load=3D/gnu/store/ij= hdvnwphamj37r8rhj1822zdf5hsgk4-system/boot panic=3D1 modprobe.blacklist=3Du= sbmouse,usbkbd [ 0.000000] KERNEL supported cpus: [ 0.000000] Intel GenuineIntel [ 0.000000] AMD AuthenticAMD [ 0.000000] Hygon HygonGenuine [ 0.000000] Centaur CentaurHauls [ 0.000000] zhaoxin Shanghai =20 [ 0.000000] BIOS-provided physical RAM map: [ 0.000000] BIOS-e820: [mem 0x0000000000000000-0x000000000009fbff] usable [ 0.000000] BIOS-e820: [mem 0x000000000009fc00-0x000000000009ffff] reser= ved [ 0.000000] BIOS-e820: [mem 0x00000000000f0000-0x00000000000fffff] reser= ved [ 0.000000] BIOS-e820: [mem 0x0000000000100000-0x000000000ffdcfff] usable [ 0.000000] BIOS-e820: [mem 0x000000000ffdd000-0x000000000fffffff] reser= ved [ 0.000000] BIOS-e820: [mem 0x00000000fffc0000-0x00000000ffffffff] reser= ved [ 0.000000] BIOS-e820: [mem 0x000000fd00000000-0x000000ffffffffff] reser= ved [ 0.000000] NX (Execute Disable) protection: active [ 0.000000] APIC: Static calls initialized [ 0.000000] SMBIOS 2.8 present. [ 0.000000] DMI: QEMU Standard PC (i440FX + PIIX, 1996), BIOS 1.16.2/GNU= Guix 04/01/2014 [ 0.000000] DMI: Memory slots populated: 1/1 [ 0.000000] tsc: Fast TSC calibration using PIT [ 0.000000] tsc: Detected 3094.186 MHz processor [ 0.016000] AGP: No AGP bridge found [ 0.016429] last_pfn =3D 0xffdd max_arch_pfn =3D 0x400000000 [ 0.017389] MTRR map: 4 entries (3 fixed + 1 variable; max 19), built fr= om 8 variable MTRRs [ 0.017630] x86/PAT: Configuration [0-7]: WB WC UC- UC WB WP UC- WT= =20 [ 0.043140] found SMP MP-table at [mem 0x000f5b80-0x000f5b8f] [ 0.050384] RAMDISK: [mem 0x0f19f000-0x0ffcffff] [ 0.050909] ACPI: Early table checksum verification disabled [ 0.051372] ACPI: RSDP 0x00000000000F59C0 000014 (v00 BOCHS ) [ 0.051771] ACPI: RSDT 0x000000000FFE1C6A 000034 (v01 BOCHS BXPC 00= 000001 BXPC 00000001) [ 0.052455] ACPI: FACP 0x000000000FFE1B1E 000074 (v01 BOCHS BXPC 00= 000001 BXPC 00000001) [ 0.053147] ACPI: DSDT 0x000000000FFE0040 001ADE (v01 BOCHS BXPC 00= 000001 BXPC 00000001) [ 0.053239] ACPI: FACS 0x000000000FFE0000 000040 [ 0.053312] ACPI: APIC 0x000000000FFE1B92 000078 (v03 BOCHS BXPC 00= 000001 BXPC 00000001) [ 0.053356] ACPI: HPET 0x000000000FFE1C0A 000038 (v01 BOCHS BXPC 00= 000001 BXPC 00000001) [ 0.053382] ACPI: WAET 0x000000000FFE1C42 000028 (v01 BOCHS BXPC 00= 000001 BXPC 00000001) [ 0.053520] ACPI: Reserving FACP table memory at [mem 0xffe1b1e-0xffe1b9= 1] [ 0.053550] ACPI: Reserving DSDT table memory at [mem 0xffe0040-0xffe1b1= d] [ 0.053558] ACPI: Reserving FACS table memory at [mem 0xffe0000-0xffe003= f] [ 0.053565] ACPI: Reserving APIC table memory at [mem 0xffe1b92-0xffe1c0= 9] [ 0.053572] ACPI: Reserving HPET table memory at [mem 0xffe1c0a-0xffe1c4= 1] [ 0.053578] ACPI: Reserving WAET table memory at [mem 0xffe1c42-0xffe1c6= 9] [ 0.056735] No NUMA configuration found [ 0.056761] Faking a node at [mem 0x0000000000000000-0x000000000ffdcfff] [ 0.057707] NODE_DATA(0) allocated [mem 0x0ffd7ac0-0x0ffdcfff] [ 0.060679] Zone ranges: [ 0.060705] DMA [mem 0x0000000000001000-0x0000000000ffffff] [ 0.060782] DMA32 [mem 0x0000000001000000-0x000000000ffdcfff] [ 0.060794] Normal empty [ 0.060817] Device empty [ 0.060833] Movable zone start for each node [ 0.060881] Early memory node ranges [ 0.060917] node 0: [mem 0x0000000000001000-0x000000000009efff] [ 0.061157] node 0: [mem 0x0000000000100000-0x000000000ffdcfff] [ 0.061305] Initmem setup node 0 [mem 0x0000000000001000-0x000000000ffdc= fff] [ 0.062711] On node 0, zone DMA: 1 pages in unavailable ranges [ 0.063001] On node 0, zone DMA: 97 pages in unavailable ranges [ 0.073811] On node 0, zone DMA32: 35 pages in unavailable ranges [ 0.074493] ACPI: PM-Timer IO Port: 0x608 [ 0.075071] ACPI: LAPIC_NMI (acpi_id[0xff] dfl dfl lint[0x1]) [ 0.075559] IOAPIC[0]: apic_id 0, version 32, address 0xfec00000, GSI 0-= 23 [ 0.075732] ACPI: INT_SRC_OVR (bus 0 bus_irq 0 global_irq 2 dfl dfl) [ 0.076104] ACPI: INT_SRC_OVR (bus 0 bus_irq 5 global_irq 5 high level) [ 0.076138] ACPI: INT_SRC_OVR (bus 0 bus_irq 9 global_irq 9 high level) [ 0.076286] ACPI: INT_SRC_OVR (bus 0 bus_irq 10 global_irq 10 high level) [ 0.076297] ACPI: INT_SRC_OVR (bus 0 bus_irq 11 global_irq 11 high level) [ 0.076592] ACPI: Using ACPI (MADT) for SMP configuration information [ 0.076658] ACPI: HPET id: 0x8086a201 base: 0xfed00000 [ 0.077183] CPU topo: Max. logical packages: 1 [ 0.077198] CPU topo: Max. logical dies: 1 [ 0.077209] CPU topo: Max. dies per package: 1 [ 0.077258] CPU topo: Max. threads per core: 1 [ 0.077454] CPU topo: Num. cores per package: 1 [ 0.077472] CPU topo: Num. threads per package: 1 [ 0.077483] CPU topo: Allowing 1 present CPUs plus 0 hotplug CPUs [ 0.078667] PM: hibernation: Registered nosave memory: [mem 0x00000000-0= x00000fff] [ 0.078766] PM: hibernation: Registered nosave memory: [mem 0x0009f000-0= x0009ffff] [ 0.078808] PM: hibernation: Registered nosave memory: [mem 0x000a0000-0= x000effff] [ 0.078815] PM: hibernation: Registered nosave memory: [mem 0x000f0000-0= x000fffff] [ 0.078999] [mem 0x10000000-0xfffbffff] available for PCI devices [ 0.079092] Booting paravirtualized kernel on bare hardware [ 0.079473] clocksource: refined-jiffies: mask: 0xffffffff max_cycles: 0= xffffffff, max_idle_ns: 7645519600211568 ns [ 0.080398] setup_percpu: NR_CPUS:256 nr_cpumask_bits:1 nr_cpu_ids:1 nr_= node_ids:1 [ 0.081982] percpu: Embedded 92 pages/cpu s281816 r65536 d29480 u2097152 [ 0.084358] Kernel command line: console=3DttyS0 root=3D/dev/vda1 gnu.sy= stem=3D/gnu/store/ijhdvnwphamj37r8rhj1822zdf5hsgk4-system gnu.load=3D/gnu/s= tore/ijhdvnwphamj37r8rhj1822zdf5hsgk4-system/boot panic=3D1 modprobe.blackl= ist=3Dusbmouse,usbkbd [ 0.086296] printk: log buffer data + meta data: 262144 + 917504 =3D 117= 9648 bytes [ 0.086637] Dentry cache hash table entries: 32768 (order: 6, 262144 byt= es, linear) [ 0.086822] Inode-cache hash table entries: 16384 (order: 5, 131072 byte= s, linear) [ 0.090176] Fallback order for Node 0: 0=20 [ 0.090533] Built 1 zonelists, mobility grouping on. Total pages: 65403 [ 0.090553] Policy zone: DMA32 [ 0.091416] mem auto-init: stack:off, heap alloc:on, heap free:off [ 0.091631] AGP: Checking aperture... [ 0.093319] AGP: No AGP bridge found [ 0.147809] SLUB: HWalign=3D64, Order=3D0-3, MinObjects=3D0, CPUs=3D1, N= odes=3D1 [ 0.150611] allocated 524288 bytes of page_ext [ 0.153351] ftrace: allocating 53195 entries in 208 pages [ 1.421488] ftrace: allocated 208 pages with 3 groups [ 1.433633] Dynamic Preempt: voluntary [ 1.438359] rcu: Preemptible hierarchical RCU implementation. [ 1.438398] rcu: RCU restricting CPUs from NR_CPUS=3D256 to nr_cpu_ids= =3D1. [ 1.438616] Trampoline variant of Tasks RCU enabled. [ 1.438626] Rude variant of Tasks RCU enabled. [ 1.438633] Tracing variant of Tasks RCU enabled. [ 1.438739] rcu: RCU calculated value of scheduler-enlistment delay is 2= 5 jiffies. [ 1.438769] rcu: Adjusting geometry for rcu_fanout_leaf=3D16, nr_cpu_ids= =3D1 [ 1.440082] RCU Tasks: Setting shift to 0 and lim to 1 rcu_task_cb_adjus= t=3D1 rcu_task_cpu_ids=3D1. [ 1.440118] RCU Tasks Rude: Setting shift to 0 and lim to 1 rcu_task_cb_= adjust=3D1 rcu_task_cpu_ids=3D1. [ 1.440131] RCU Tasks Trace: Setting shift to 0 and lim to 1 rcu_task_cb= _adjust=3D1 rcu_task_cpu_ids=3D1. [ 1.478936] NR_IRQS: 16640, nr_irqs: 256, preallocated irqs: 16 [ 1.489462] rcu: srcu_init: Setting srcu_struct sizes based on contentio= n. [ 1.496979] Console: colour VGA+ 80x25 [ 1.499222] printk: legacy console [ttyS0] enabled [ 1.515571] ACPI: Core revision 20240827 [ 1.522121] clocksource: hpet: mask: 0xffffffff max_cycles: 0xffffffff, = max_idle_ns: 19112604467 ns [ 1.528174] APIC: Switch to symmetric I/O mode setup [ 1.533694] ..TIMER: vector=3D0x30 apic1=3D0 pin1=3D2 apic2=3D-1 pin2=3D= -1 [ 1.551917] clocksource: tsc-early: mask: 0xffffffffffffffff max_cycles:= 0x2c99d37ccd0, max_idle_ns: 440795225167 ns [ 1.552777] Calibrating delay loop (skipped), value calculated using tim= er frequency.. 6188.37 BogoMIPS (lpj=3D12376744) [ 1.558034] Last level iTLB entries: 4KB 512, 2MB 255, 4MB 127 [ 1.558180] Last level dTLB entries: 4KB 512, 2MB 255, 4MB 127, 1GB 0 [ 1.558805] Spectre V1 : Mitigation: usercopy/swapgs barriers and __user= pointer sanitization [ 1.559181] Spectre V2 : Mitigation: Retpolines [ 1.559314] Spectre V2 : Spectre v2 / SpectreRSB mitigation: Filling RSB= on context switch [ 1.559519] Spectre V2 : Spectre v2 / SpectreRSB : Filling RSB on VMEXIT [ 1.562387] x86/fpu: x87 FPU will use FXSAVE [ 1.921638] Freeing SMP alternatives memory: 44K [ 1.923148] pid_max: default: 32768 minimum: 301 [ 1.935930] LSM: initializing lsm=3Dcapability,yama,apparmor,tomoyo,ima,= evm [ 1.941597] Yama: becoming mindful. [ 1.946848] AppArmor: AppArmor initialized [ 1.947125] TOMOYO Linux initialized [ 1.953711] Mount-cache hash table entries: 512 (order: 0, 4096 bytes, l= inear) [ 1.953975] Mountpoint-cache hash table entries: 512 (order: 0, 4096 byt= es, linear) [ 2.101691] smpboot: CPU0: AMD QEMU Virtual CPU version 2.5+ (family: 0x= f, model: 0x6b, stepping: 0x1) [ 2.112731] Performance Events: PMU not available due to virtualization,= using software events only. [ 2.114097] signal: max sigframe size: 1440 [ 2.115846] rcu: Hierarchical SRCU implementation. [ 2.115973] rcu: Max phase no-delay instances is 1000. [ 2.126397] NMI watchdog: Perf NMI watchdog permanently disabled [ 2.127909] smp: Bringing up secondary CPUs ... [ 2.130199] smp: Brought up 1 node, 1 CPU [ 2.130439] smpboot: Total of 1 processors activated (6188.37 BogoMIPS) [ 2.137850] Memory: 191956K/261612K available (20480K kernel code, 3105K= rwdata, 13440K rodata, 4680K init, 2228K bss, 65172K reserved, 0K cma-rese= rved) [ 2.146849] devtmpfs: initialized [ 2.150223] x86/mm: Memory block size: 128MB [ 2.158896] clocksource: jiffies: mask: 0xffffffff max_cycles: 0xfffffff= f, max_idle_ns: 7645041785100000 ns [ 2.159606] futex hash table entries: 256 (order: 2, 16384 bytes, linear) [ 2.163768] pinctrl core: initialized pinctrl subsystem [ 2.171630] PM: RTC time: 12:25:36, date: 2025-04-30 [ 2.183421] NET: Registered PF_NETLINK/PF_ROUTE protocol family [ 2.187091] audit: initializing netlink subsys (disabled) [ 2.189313] audit: type=3D2000 audit(1746015935.668:1): state=3Dinitiali= zed audit_enabled=3D0 res=3D1 [ 2.195353] thermal_sys: Registered thermal governor 'fair_share' [ 2.195398] thermal_sys: Registered thermal governor 'bang_bang' [ 2.195530] thermal_sys: Registered thermal governor 'step_wise' [ 2.195632] thermal_sys: Registered thermal governor 'user_space' [ 2.196274] cpuidle: using governor ladder [ 2.196569] cpuidle: using governor menu [ 2.198334] acpiphp: ACPI Hot Plug PCI Controller Driver version: 0.5 [ 2.202012] PCI: Using configuration type 1 for base access [ 2.205009] kprobes: kprobe jump-optimization is enabled. All kprobes ar= e optimized if possible. [ 2.355198] HugeTLB: registered 2.00 MiB page size, pre-allocated 0 pages [ 2.355396] HugeTLB: 28 KiB vmemmap can be freed for a 2.00 MiB page [ 2.403670] ACPI: Added _OSI(Module Device) [ 2.403791] ACPI: Added _OSI(Processor Device) [ 2.403874] ACPI: Added _OSI(3.0 _SCP Extensions) [ 2.403959] ACPI: Added _OSI(Processor Aggregator Device) [ 2.430264] ACPI: 1 ACPI AML tables successfully acquired and loaded [ 2.468031] ACPI: Interpreter enabled [ 2.473760] ACPI: PM: (supports S0 S3 S4 S5) [ 2.473907] ACPI: Using IOAPIC for interrupt routing [ 2.475326] PCI: Using host bridge windows from ACPI; if necessary, use = "pci=3Dnocrs" and report a bug [ 2.475514] PCI: Using E820 reservations for host bridge windows [ 2.477503] ACPI: Enabled 2 GPEs in block 00 to 0F [ 2.526327] ACPI: PCI Root Bridge [PCI0] (domain 0000 [bus 00-ff]) [ 2.527246] acpi PNP0A03:00: _OSC: OS supports [ASPM ClockPM Segments MS= I HPX-Type3] [ 2.527589] acpi PNP0A03:00: _OSC: not requesting OS control; OS require= s [ExtendedConfig ASPM ClockPM MSI] [ 2.528504] acpi PNP0A03:00: fail to add MMCONFIG information, can't acc= ess extended configuration space under this bridge [ 2.535022] acpiphp: Slot [3] registered [ 2.535196] acpiphp: Slot [4] registered [ 2.535323] acpiphp: Slot [5] registered [ 2.535446] acpiphp: Slot [6] registered [ 2.535568] acpiphp: Slot [7] registered [ 2.535689] acpiphp: Slot [8] registered [ 2.535851] acpiphp: Slot [9] registered [ 2.535976] acpiphp: Slot [10] registered [ 2.536097] acpiphp: Slot [11] registered [ 2.536235] acpiphp: Slot [12] registered [ 2.536420] acpiphp: Slot [13] registered [ 2.536549] acpiphp: Slot [14] registered [ 2.536671] acpiphp: Slot [15] registered [ 2.536813] acpiphp: Slot [16] registered [ 2.536938] acpiphp: Slot [17] registered [ 2.537058] acpiphp: Slot [18] registered [ 2.537177] acpiphp: Slot [19] registered [ 2.537297] acpiphp: Slot [20] registered [ 2.537419] acpiphp: Slot [21] registered [ 2.537541] acpiphp: Slot [22] registered [ 2.537664] acpiphp: Slot [23] registered [ 2.537805] acpiphp: Slot [24] registered [ 2.537930] acpiphp: Slot [25] registered [ 2.538088] acpiphp: Slot [26] registered [ 2.538214] acpiphp: Slot [27] registered [ 2.538338] acpiphp: Slot [28] registered [ 2.538482] acpiphp: Slot [29] registered [ 2.538608] acpiphp: Slot [30] registered [ 2.538749] acpiphp: Slot [31] registered [ 2.539113] PCI host bridge to bus 0000:00 [ 2.539443] pci_bus 0000:00: root bus resource [io 0x0000-0x0cf7 window] [ 2.539731] pci_bus 0000:00: root bus resource [io 0x0d00-0xffff window] [ 2.539850] pci_bus 0000:00: root bus resource [mem 0x000a0000-0x000bfff= f window] [ 2.540037] pci_bus 0000:00: root bus resource [mem 0x10000000-0xfebffff= f window] [ 2.540184] pci_bus 0000:00: root bus resource [mem 0x100000000-0x17ffff= fff window] [ 2.540515] pci_bus 0000:00: root bus resource [bus 00-ff] [ 2.542059] pci 0000:00:00.0: [8086:1237] type 00 class 0x060000 convent= ional PCI endpoint [ 2.546972] pci 0000:00:01.0: [8086:7000] type 00 class 0x060100 convent= ional PCI endpoint [ 2.547722] pci 0000:00:01.1: [8086:7010] type 00 class 0x010180 convent= ional PCI endpoint [ 2.549838] pci 0000:00:01.1: BAR 4 [io 0xc160-0xc16f] [ 2.551028] pci 0000:00:01.1: BAR 0 [io 0x01f0-0x01f7]: legacy IDE quirk [ 2.551245] pci 0000:00:01.1: BAR 1 [io 0x03f6]: legacy IDE quirk [ 2.551419] pci 0000:00:01.1: BAR 2 [io 0x0170-0x0177]: legacy IDE quirk [ 2.551593] pci 0000:00:01.1: BAR 3 [io 0x0376]: legacy IDE quirk [ 2.552576] pci 0000:00:01.3: [8086:7113] type 00 class 0x068000 convent= ional PCI endpoint [ 2.553109] pci 0000:00:01.3: quirk: [io 0x0600-0x063f] claimed by PIIX= 4 ACPI [ 2.553321] pci 0000:00:01.3: quirk: [io 0x0700-0x070f] claimed by PIIX= 4 SMB [ 2.553991] pci 0000:00:02.0: [1234:1111] type 00 class 0x030000 convent= ional PCI endpoint [ 2.555091] pci 0000:00:02.0: BAR 0 [mem 0xfd000000-0xfdffffff pref] [ 2.556578] pci 0000:00:02.0: BAR 2 [mem 0xfebf0000-0xfebf0fff] [ 2.559859] pci 0000:00:02.0: ROM [mem 0xfebe0000-0xfebeffff pref] [ 2.560503] pci 0000:00:02.0: Video device with shadowed ROM at [mem 0x0= 00c0000-0x000dffff] [ 2.561423] pci 0000:00:03.0: [8086:100e] type 00 class 0x020000 convent= ional PCI endpoint [ 2.562571] pci 0000:00:03.0: BAR 0 [mem 0xfebc0000-0xfebdffff] [ 2.563651] pci 0000:00:03.0: BAR 1 [io 0xc080-0xc0bf] [ 2.568068] pci 0000:00:03.0: ROM [mem 0xfeb80000-0xfebbffff pref] [ 2.574859] pci 0000:00:04.0: [1af4:1005] type 00 class 0x00ff00 convent= ional PCI endpoint [ 2.575657] pci 0000:00:04.0: BAR 0 [io 0xc140-0xc15f] [ 2.576494] pci 0000:00:04.0: BAR 1 [mem 0xfebf1000-0xfebf1fff] [ 2.578683] pci 0000:00:04.0: BAR 4 [mem 0xfe000000-0xfe003fff 64bit pre= f] [ 2.583508] pci 0000:00:05.0: [1af4:1009] type 00 class 0x000200 convent= ional PCI endpoint [ 2.584372] pci 0000:00:05.0: BAR 0 [io 0xc0c0-0xc0ff] [ 2.585041] pci 0000:00:05.0: BAR 1 [mem 0xfebf2000-0xfebf2fff] [ 2.586866] pci 0000:00:05.0: BAR 4 [mem 0xfe004000-0xfe007fff 64bit pre= f] [ 2.591523] pci 0000:00:06.0: [1af4:1003] type 00 class 0x078000 convent= ional PCI endpoint [ 2.592398] pci 0000:00:06.0: BAR 0 [io 0xc100-0xc13f] [ 2.593123] pci 0000:00:06.0: BAR 1 [mem 0xfebf3000-0xfebf3fff] [ 2.596389] pci 0000:00:06.0: BAR 4 [mem 0xfe008000-0xfe00bfff 64bit pre= f] [ 2.601523] pci 0000:00:07.0: [1af4:1001] type 00 class 0x010000 convent= ional PCI endpoint [ 2.602329] pci 0000:00:07.0: BAR 0 [io 0xc000-0xc07f] [ 2.603064] pci 0000:00:07.0: BAR 1 [mem 0xfebf4000-0xfebf4fff] [ 2.604870] pci 0000:00:07.0: BAR 4 [mem 0xfe00c000-0xfe00ffff 64bit pre= f] [ 2.613729] ACPI: PCI: Interrupt link LNKA configured for IRQ 10 [ 2.614423] ACPI: PCI: Interrupt link LNKB configured for IRQ 10 [ 2.614841] ACPI: PCI: Interrupt link LNKC configured for IRQ 11 [ 2.615281] ACPI: PCI: Interrupt link LNKD configured for IRQ 11 [ 2.615537] ACPI: PCI: Interrupt link LNKS configured for IRQ 9 [ 2.619904] iommu: Default domain type: Translated [ 2.620049] iommu: DMA domain TLB invalidation policy: lazy mode [ 2.625205] SCSI subsystem initialized [ 2.627030] ACPI: bus type USB registered [ 2.627414] usbcore: registered new interface driver usbfs [ 2.627772] usbcore: registered new interface driver hub [ 2.628507] usbcore: registered new device driver usb [ 2.629864] EDAC MC: Ver: 3.0.0 [ 2.641021] NetLabel: Initializing [ 2.641106] NetLabel: domain hash size =3D 128 [ 2.641191] NetLabel: protocols =3D UNLABELED CIPSOv4 CALIPSO [ 2.642336] NetLabel: unlabeled traffic allowed by default [ 2.647059] mctp: management component transport protocol core [ 2.647179] NET: Registered PF_MCTP protocol family [ 2.647908] PCI: Using ACPI for IRQ routing [ 2.650676] pci 0000:00:02.0: vgaarb: setting as boot VGA device [ 2.650832] pci 0000:00:02.0: vgaarb: bridge control possible [ 2.650976] pci 0000:00:02.0: vgaarb: VGA device added: decodes=3Dio+mem= ,owns=3Dio+mem,locks=3Dnone [ 2.651170] vgaarb: loaded [ 2.652991] hpet: 3 channels of 0 reserved for per-cpu timers [ 2.653416] hpet0: at MMIO 0xfed00000, IRQs 2, 8, 0 [ 2.653593] hpet0: 3 comparators, 64-bit 100.000000 MHz counter [ 2.657562] clocksource: Switched to clocksource tsc-early [ 2.665964] VFS: Disk quotas dquot_6.6.0 [ 2.670319] VFS: Dquot-cache hash table entries: 512 (order 0, 4096 byte= s) [ 2.677044] AppArmor: AppArmor Filesystem Enabled [ 2.677575] pnp: PnP ACPI init [ 2.681821] pnp: PnP ACPI: found 6 devices [ 2.706597] clocksource: acpi_pm: mask: 0xffffff max_cycles: 0xffffff, m= ax_idle_ns: 2085701024 ns [ 2.708227] NET: Registered PF_INET protocol family [ 2.709453] IP idents hash table entries: 4096 (order: 3, 32768 bytes, l= inear) [ 2.779758] tcp_listen_portaddr_hash hash table entries: 256 (order: 0, = 4096 bytes, linear) [ 2.780102] Table-perturb hash table entries: 65536 (order: 6, 262144 by= tes, linear) [ 2.780309] TCP established hash table entries: 2048 (order: 2, 16384 by= tes, linear) [ 2.780626] TCP bind hash table entries: 2048 (order: 4, 65536 bytes, li= near) [ 2.780886] TCP: Hash tables configured (established 2048 bind 2048) [ 2.782825] MPTCP token hash table entries: 256 (order: 0, 6144 bytes, l= inear) [ 2.783514] UDP hash table entries: 256 (order: 2, 16384 bytes, linear) [ 2.784074] UDP-Lite hash table entries: 256 (order: 2, 16384 bytes, lin= ear) [ 2.787395] NET: Registered PF_UNIX/PF_LOCAL protocol family [ 2.788544] NET: Registered PF_XDP protocol family [ 2.789862] pci_bus 0000:00: resource 4 [io 0x0000-0x0cf7 window] [ 2.790020] pci_bus 0000:00: resource 5 [io 0x0d00-0xffff window] [ 2.790148] pci_bus 0000:00: resource 6 [mem 0x000a0000-0x000bffff windo= w] [ 2.790452] pci_bus 0000:00: resource 7 [mem 0x10000000-0xfebfffff windo= w] [ 2.790594] pci_bus 0000:00: resource 8 [mem 0x100000000-0x17fffffff win= dow] [ 2.791386] pci 0000:00:01.0: PIIX3: Enabling Passive Release [ 2.791646] pci 0000:00:00.0: Limiting direct PCI/PCI transfers [ 2.792005] PCI: CLS 0 bytes, default 64 [ 2.805192] Initialise system trusted keyrings [ 2.806709] Trying to unpack rootfs image as initramfs... [ 2.814845] workingset: timestamp_bits=3D40 max_order=3D16 bucket_order= =3D0 [ 2.815224] zbud: loaded [ 2.986693] Key type asymmetric registered [ 2.986915] Asymmetric key parser 'x509' registered [ 2.987476] Block layer SCSI generic (bsg) driver version 0.4 loaded (ma= jor 247) [ 2.988429] io scheduler mq-deadline registered [ 2.995612] ledtrig-cpu: registered to indicate activity on CPUs [ 2.996587] shpchp: Standard Hot Plug PCI Controller Driver version: 0.4 [ 3.003150] input: Power Button as /devices/LNXSYSTM:00/LNXPWRBN:00/inpu= t/input0 [ 3.007662] ACPI: button: Power Button [PWRF] [ 3.016704] Serial: 8250/16550 driver, 32 ports, IRQ sharing enabled [ 3.024990] 00:04: ttyS0 at I/O 0x3f8 (irq =3D 4, base_baud =3D 115200) = is a 16550A [ 3.068008] Linux agpgart interface v0.103 [ 3.127564] brd: module loaded [ 3.154905] loop: module loaded [ 3.155385] SPI driver tps6594 has no spi_device_id for ti,tps6594-q1 [ 3.155504] SPI driver tps6594 has no spi_device_id for ti,tps6593-q1 [ 3.155612] SPI driver tps6594 has no spi_device_id for ti,lp8764-q1 [ 3.155717] SPI driver tps6594 has no spi_device_id for ti,tps65224-q1 [ 3.157023] Key type psk registered [ 3.180838] scsi host0: ata_piix [ 3.186912] scsi host1: ata_piix [ 3.187382] ata1: PATA max MWDMA2 cmd 0x1f0 ctl 0x3f6 bmdma 0xc160 irq 1= 4 lpm-pol 0 [ 3.187566] ata2: PATA max MWDMA2 cmd 0x170 ctl 0x376 bmdma 0xc168 irq 1= 5 lpm-pol 0 [ 3.193720] tun: Universal TUN/TAP device driver, 1.6 [ 3.198443] PPP generic driver version 2.4.2 [ 3.201500] i8042: PNP: PS/2 Controller [PNP0303:KBD,PNP0f13:MOU] at 0x6= 0,0x64 irq 1,12 [ 3.208908] serio: i8042 KBD port at 0x60,0x64 irq 1 [ 3.209216] serio: i8042 AUX port at 0x60,0x64 irq 12 [ 3.215557] mousedev: PS/2 mouse device common for all mice [ 3.219186] rtc_cmos 00:05: RTC can wake from S4 [ 3.221696] input: AT Translated Set 2 keyboard as /devices/platform/i80= 42/serio0/input/input1 [ 3.227612] rtc_cmos 00:05: registered as rtc0 [ 3.228252] rtc_cmos 00:05: setting system clock to 2025-04-30T12:25:37 = UTC (1746015937) [ 3.229649] rtc_cmos 00:05: alarms up to one day, y3k, 242 bytes nvram, = hpet irqs [ 3.229938] i2c_dev: i2c /dev entries driver [ 3.234661] device-mapper: uevent: version 1.0.3 [ 3.235576] device-mapper: ioctl: 4.48.0-ioctl (2023-03-01) initialised:= dm-devel@lists.linux.dev [ 3.236315] amd_pstate: the _CPC object is not present in SBIOS or ACPI = disabled [ 3.244028] NET: Registered PF_INET6 protocol family [ 3.261923] Segment Routing with IPv6 [ 3.266396] In-situ OAM (IOAM) with IPv6 [ 3.267110] NET: Registered PF_PACKET protocol family [ 3.267836] Key type dns_resolver registered [ 3.270366] IPI shorthand broadcast: enabled [ 3.307617] sched_clock: Marking stable (3276034926, 30141725)->(3307835= 711, -1659060) [ 3.311425] registered taskstats version 1 [ 3.318609] Loading compiled-in X.509 certificates [ 3.346735] ata2: found unknown device (class 0) [ 3.357139] ata2.00: ATAPI: QEMU DVD-ROM, 2.5+, max UDMA/100 [ 3.375563] scsi 1:0:0:0: CD-ROM QEMU QEMU DVD-ROM 2.= 5+ PQ: 0 ANSI: 5 [ 3.377085] Demotion targets for Node 0: null [ 3.378878] Key type .fscrypt registered [ 3.378978] Key type fscrypt-provisioning registered [ 3.412060] sr 1:0:0:0: [sr0] scsi3-mmc drive: 4x/4x cd/rw xa/form2 tray [ 3.412391] cdrom: Uniform CD-ROM driver Revision: 3.20 [ 3.429280] sr 1:0:0:0: Attached scsi generic sg0 type 5 [ 3.826462] tsc: Refined TSC clocksource calibration: 3094.186 MHz [ 3.827000] clocksource: tsc: mask: 0xffffffffffffffff max_cycles: 0x2c9= 9d37ccd0, max_idle_ns: 440795225167 ns [ 3.830483] clocksource: Switched to clocksource tsc [ 3.878643] Freeing initrd memory: 14532K [ 3.889325] Key type encrypted registered [ 3.889494] AppArmor: AppArmor sha256 policy hashing enabled [ 3.890029] ima: No TPM chip found, activating TPM-bypass! [ 3.890426] ima: Allocated hash algorithm: sha1 [ 3.892821] ima: No architecture policies found [ 3.893763] evm: Initialising EVM extended attributes: [ 3.893892] evm: security.selinux [ 3.893977] evm: security.SMACK64 [ 3.894038] evm: security.SMACK64EXEC [ 3.894102] evm: security.SMACK64TRANSMUTE [ 3.894875] evm: security.SMACK64MMAP [ 3.894949] evm: security.apparmor [ 3.895010] evm: security.ima [ 3.895064] evm: security.capability [ 3.895140] evm: HMAC attrs: 0x1 [ 3.898396] PM: Magic number: 5:888:431 [ 3.899627] powernow_k8: Power state transitions not supported [ 3.958802] clk: Disabling unused clocks [ 3.959205] PM: genpd: Disabling unused power domains [ 4.059855] Freeing unused kernel image (initmem) memory: 4680K [ 4.061641] Write protecting the kernel read-only data: 34816k [ 4.063787] Freeing unused kernel image (rodata/data gap) memory: 896K [ 4.064144] Run /init as init process GC Warning: pthread_getattr_np or pthread_attr_getstack failed for main thr= ead GC Warning: Could not open /proc/stat Welcome, this is GNU's early boot Guile. Use 'gnu.repl' for an initrd REPL. loading kernel modules... [ 5.140198] ACPI: bus type drm_connector registered [ 5.499754] usbcore: registered new interface driver usb-storage [ 5.512195] usbcore: registered new interface driver uas [ 5.526940] hid: raw HID events driver (C) Jiri Kosina [ 5.533944] usbcore: registered new interface driver usbhid [ 5.534070] usbhid: USB HID core driver [ 5.745988] isci: Intel(R) C600 SAS Controller Driver - version 1.2.0 [ 5.912493] ACPI: \_SB_.LNKD: Enabled at IRQ 11 [ 6.055667] ACPI: \_SB_.LNKA: Enabled at IRQ 10 [ 6.195942] ACPI: \_SB_.LNKB: Enabled at IRQ 10 [ 6.336100] ACPI: \_SB_.LNKC: Enabled at IRQ 11 [ 6.402023] virtio_blk virtio3: 1/0/0 default/read/poll queues [ 6.411455] virtio_blk virtio3: [vda] 4096 512-byte logical blocks (2.10= MB/2.00 MiB) [ 6.417941] vda: vda1 [ 6.461270] random: crng init done [ 6.595017] netfs: FS-Cache loaded [ 6.626120] 9pnet: Installing 9P2000 support [ 6.635169] 9p: Installing v9fs 9p2000 file system support [ 6.739221] EXT4-fs (vda1): mounted filesystem 4efbd36d-72ff-63f9-f360-d= 0b14efbd36d ro without journal. Quota mode: none. [ 6.768027] 9pnet: Limiting 'msize' to 512000 as this is the maximum sup= ported by transport virtio loading '/gnu/store/ijhdvnwphamj37r8rhj1822zdf5hsgk4-system/boot'... [ 6.957584] evm: overlay not supported making '/gnu/store/ijhdvnwphamj37r8rhj1822zdf5hsgk4-system' the current sys= tem... populating /etc from /gnu/store/8vycp85qs0vcz7vnwvgjkc6cj3a3jrzi-etc... setting up privileged programs in '/run/privileged/bin'... Please wait while gathering entropy to generate the key pair; this may take time... ssh-keygen: generating new host keys: RSA ECDSA ED25519=20 [ 16.442028] shepherd[1]: GNU Shepherd 1.0.4 (Guile 3.0.9, x86_64-unknown= -linux-gnu) [ 16.443052] shepherd[1]: Starting service root... [ 16.445806] shepherd[1]: Service root started. [ 16.446602] shepherd[1]: Service root running with value #< id:= 1 command: #f>. [ 16.450134] shepherd[1]: Service root has been started. [ 16.484365] shepherd[1]: starting services... [ 16.484993] shepherd[1]: Configuration successfully loaded from '/gnu/st= ore/8l6mzmgvxa7rdfnnbnc2z9ydcn5navac-shepherd.conf'. [ 16.690896] shepherd[1]: Starting service user-file-systems... [ 16.691658] shepherd[1]: Starting service root-file-system... [ 16.717866] shepherd[1]: Starting service host-name... [ 16.721743] shepherd[1]: Starting service pam... [ 16.729708] shepherd[1]: Starting service sysctl... [ 16.743292] shepherd[1]: Starting service log-rotation... [ 16.751177] shepherd[1]: Starting service loopback... [ 16.751997] shepherd[1]: Starting service networking... [ 16.753755] shepherd[1]: Service user-file-systems started. [ 16.763458] shepherd[1]: Service root-file-system started. [ 16.765249] shepherd[1]: Service host-name started. [ 16.765869] shepherd[1]: Service pam started. [ 16.776384] shepherd[1]: Service log-rotation started. [ 16.777225] shepherd[1]: Service user-file-systems running with value #t. [ 16.787362] shepherd[1]: Service user-file-systems has been started. [ 16.788169] shepherd[1]: Service root-file-system running with value #t. [ 16.799529] shepherd[1]: Service root-file-system has been started. [ 16.800586] shepherd[1]: Service host-name running with value "komputilo= ". [ 16.929396] shepherd[1]: Service host-name has been started. [ 16.933968] shepherd[1]: Service pam running with value #t. [ 17.074049] udevd[95]: starting version 3.2.14 [ 17.235069] udevd[95]: specified group 'sgx' unknown [ 17.464513] udevd[95]: starting eudev-3.2.14 [ 17.513087] udevd[95]: no sender credentials received, message ignored [ 17.515969] shepherd[1]: Service pam has been started. [ 17.517409] shepherd[1]: Service log-rotation running with value # seconds: (0) minutes: (0) hours: (22) days-of-month: (1= 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 2= 9 30 31) months: (1 2 3 4 5 6 7 8 9 10 11 12) days-of-week: (0)> # 7fb01168caa0>. [ 17.550315] shepherd[1]: Service log-rotation has been started. [ 17.551612] shepherd[1]: [sysctl] fs.protected_hardlinks =3D 1 [ 17.553170] shepherd[1]: [sysctl] fs.protected_symlinks =3D 1 [ 17.569459] shepherd[1]: Service sysctl has been started. [ 17.580532] shepherd[1]: Service sysctl started. [ 17.599994] shepherd[1]: Service sysctl running with value #t. [ 17.601933] shepherd[1]: Starting service udev... [ 17.617302] shepherd[1]: waiting for udevd... [ 17.628853] shepherd[1]: Registering new logger for udev. [ 17.871236] udevd[95]: specified group 'sgx' unknown [ 19.502707] Floppy drive(s): fd0 is 2.88M AMI BIOS [ 19.521919] FDC 0 is a S82078B [ 19.540806] parport_pc 00:03: reported by Plug and Play ACPI [ 19.541611] parport0: PC-style at 0x378, irq 7 [PCSPP,TRISTATE] [ 19.751562] piix4_smbus 0000:00:01.3: SMBus Host Controller at 0x700, re= vision 0 [ 19.795952] i2c i2c-0: Memory type 0x07 not supported yet, not instantia= ting SPD [ 19.821365] bochs-drm 0000:00:02.0: vgaarb: deactivate vga console [ 19.874970] Console: switching to colour dummy device 80x25 [ 19.884360] [drm] Found bochs VGA, ID 0xb0c5. [ 19.884401] [drm] Framebuffer size 16384 kB @ 0xfd000000, mmio @ 0xfebf0= 000. [ 20.035751] e1000: Intel(R) PRO/1000 Network Driver [ 20.035894] e1000: Copyright (c) 1999-2006 Intel Corporation. [ 20.049853] [drm] Initialized bochs-drm 1.0.0 for 0000:00:02.0 on minor 0 [ 20.081282] input: PC Speaker as /devices/platform/pcspkr/input/input3 [ 20.662491] fbcon: bochs-drmdrmfb (fb0) is primary device [ 20.880332] Console: switching to colour frame buffer device 160x50 [ 21.002860] bochs-drm 0000:00:02.0: [drm] fb0: bochs-drmdrmfb frame buff= er device [ 21.664010] input: ImExPS/2 Generic Explorer Mouse as /devices/platform/= i8042/serio1/input/input4 [ 21.898297] Error: Driver 'pcspkr' is already registered, aborting... [ 22.422520] ppdev: user-space parallel port driver [ 23.065611] e1000 0000:00:03.0 eth0: (PCI:33MHz:32-bit) 52:54:00:12:34:56 [ 23.066243] e1000 0000:00:03.0 eth0: Intel(R) PRO/1000 Network Connection [ 23.111950] e1000 0000:00:03.0 ens3: renamed from eth0 [ 23.197315] kvm_amd: Nested Virtualization enabled [ 23.197542] kvm_amd: Nested Paging disabled [ 23.198116] kvm_amd: PMU virtualization is disabled This is the GNU system. Welcome. komputilo login: [ 37.080160] guix: page allocation failure: order:7, mod= e:0x40dc0(GFP_KERNEL|__GFP_COMP|__GFP_ZERO), nodemask=3D(null),cpuset=3D/,m= ems_allowed=3D0 [ 37.084115] CPU: 0 UID: 0 PID: 119 Comm: guix Not tainted 6.13.11-gnu #1= 1abbc4831c7457e020ccf7e312e845a67af1c8c1 [ 37.084471] Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS = 1.16.2/GNU Guix 04/01/2014 [ 37.084617] Call Trace: [ 37.085061] [ 37.085420] dump_stack_lvl+0x7a/0xa0 [ 37.085901] dump_stack+0x14/0x20 [ 37.085910] warn_alloc+0x14e/0x1d0 [ 37.085933] ? __alloc_pages_direct_compact+0x1f1/0x210 [ 37.085950] __alloc_pages_slowpath.constprop.0+0x9db/0xec0 [ 37.085987] __alloc_pages_noprof+0x349/0x360 [ 37.086023] ? v9fs_alloc_rdir_buf.isra.0+0x58/0xb0 [9p 8e28a49ec42a27c6= 72f52c6bf17c126450fc5000] [ 37.086121] ___kmalloc_large_node+0x88/0x120 [ 37.086140] __kmalloc_large_node_noprof+0x21/0xc0 [ 37.086156] __kmalloc_noprof+0x379/0x4f0 [ 37.086192] v9fs_alloc_rdir_buf.isra.0+0x58/0xb0 [9p 8e28a49ec42a27c672= f52c6bf17c126450fc5000] [ 37.086222] ? v9fs_alloc_rdir_buf.isra.0+0x58/0xb0 [9p 8e28a49ec42a27c6= 72f52c6bf17c126450fc5000] [ 37.086251] v9fs_dir_readdir_dotl+0x59/0x1c0 [9p 8e28a49ec42a27c672f52c= 6bf17c126450fc5000] [ 37.086292] ? aa_file_perm+0x134/0x510 [ 37.086322] ? apparmor_file_permission+0x79/0x1b0 [ 37.086339] iterate_dir+0x135/0x220 [ 37.086354] __x64_sys_getdents64+0x87/0x120 [ 37.086364] ? __pfx_filldir64+0x10/0x10 [ 37.086380] x64_sys_call+0x1222/0x26f0 [ 37.086390] do_syscall_64+0x74/0x160 [ 37.086425] entry_SYSCALL_64_after_hwframe+0x76/0x7e [ 37.086529] RIP: 0033:0x7f5999950033 [ 37.086859] Code: df 66 0f 1f 44 00 00 48 89 ef e8 78 77 fb ff 4c 89 e0 = 5b 5d 41 5c c3 b8 ff ff ff 7f 48 39 c2 48 0f 47 d0 b8 d9 00 00 00 0f 05 <48= > 3d 00 f0 ff ff 77 05 c3 0f 1f 40 00 48 8b 15 91 1d 10 00 f7 d8 [ 37.086919] RSP: 002b:00007ffdc105f4f8 EFLAGS: 00000293 ORIG_RAX: 000000= 00000000d9 [ 37.086970] RAX: ffffffffffffffda RBX: 0000000025575fc0 RCX: 00007f59999= 50033 [ 37.086984] RDX: 0000000000080000 RSI: 0000000025575ff0 RDI: 00000000000= 0000f [ 37.086998] RBP: 0000000025575fc4 R08: 0000000000000003 R09: 00000000000= 0416d [ 37.087011] R10: 0000000000000000 R11: 0000000000000293 R12: fffffffffff= fff80 [ 37.087023] R13: 0000000000000000 R14: 00007f5982fb9280 R15: 00007f59998= 11374 [ 37.087087] [ 37.090074] Mem-Info: [ 37.090387] active_anon:49 inactive_anon:35361 isolated_anon:0 [ 37.090387] active_file:2286 inactive_file:2008 isolated_file:0 [ 37.090387] unevictable:1000 dirty:0 writeback:0 [ 37.090387] slab_reclaimable:1420 slab_unreclaimable:4794 [ 37.090387] mapped:2481 shmem:1652 pagetables:384 [ 37.090387] sec_pagetables:0 bounce:0 [ 37.090387] kernel_misc_reclaimable:0 [ 37.090387] free:1237 free_pcp:0 free_cma:0 [ 37.091171] Node 0 active_anon:196kB inactive_anon:141444kB active_file:= 9144kB inactive_file:8032kB unevictable:4000kB isolated(anon):0kB isolated(= file):0kB mapped:9924kB dirty:0kB writeback:0kB shmem:6608kB shmem_thp:0kB = shmem_pmdmapped:0kB anon_thp:0kB writeback_tmp:0kB kernel_stack:1472kB page= tables:1536kB sec_pagetables:0kB all_unreclaimable? no [ 37.091693] Node 0 DMA free:1016kB boost:0kB min:136kB low:168kB high:20= 0kB reserved_highatomic:0KB active_anon:0kB inactive_anon:12232kB active_fi= le:964kB inactive_file:624kB unevictable:0kB writepending:0kB present:15992= kB managed:15360kB mlocked:0kB bounce:0kB free_pcp:0kB local_pcp:0kB free_c= ma:0kB [ 37.092220] lowmem_reserve[]: 0 196 196 196 196 [ 37.092365] Node 0 DMA32 free:3932kB boost:0kB min:1632kB low:2040kB hig= h:2448kB reserved_highatomic:0KB active_anon:196kB inactive_anon:129220kB a= ctive_file:8172kB inactive_file:7408kB unevictable:4000kB writepending:0kB = present:245620kB managed:201188kB mlocked:0kB bounce:0kB free_pcp:0kB local= _pcp:0kB free_cma:0kB [ 37.092760] lowmem_reserve[]: 0 0 0 0 0 [ 37.092914] Node 0 DMA: 20*4kB (M) 3*8kB (UM) 15*16kB (UM) 15*32kB (UM) = 3*64kB (UM) 0*128kB 0*256kB 0*512kB 0*1024kB 0*2048kB 0*4096kB =3D 1016kB [ 37.093361] Node 0 DMA32: 152*4kB (UME) 123*8kB (UME) 33*16kB (UME) 57*3= 2kB (UE) 0*64kB 0*128kB 0*256kB 0*512kB 0*1024kB 0*2048kB 0*4096kB =3D 3944= kB [ 37.093707] Node 0 hugepages_total=3D0 hugepages_free=3D0 hugepages_surp= =3D0 hugepages_size=3D2048kB [ 37.093889] 5949 total pagecache pages [ 37.093985] 0 pages in swap cache [ 37.094049] Free swap =3D 0kB [ 37.094103] Total swap =3D 0kB [ 37.094261] 65403 pages RAM [ 37.094318] 0 pages HighMem/MovableOnly [ 37.094382] 11266 pages reserved [ 37.094439] 0 pages cma reserved [ 37.094494] 0 pages hwpoisoned [ 37.095989] Memory allocations: [ 37.096258] 83.0 MiB 21240 mm/memory.c:1060 func:folio_prealloc [ 37.096436] 52.8 MiB 13522 mm/memory.c:1062 func:folio_prealloc [ 37.096541] 18.7 MiB 3027 mm/slub.c:2423 func:alloc_slab_page [ 37.096642] 16.8 MiB 4297 mm/readahead.c:268 func:page_cache_ra_= unbounded [ 37.096764] 8.16 MiB 2093 mm/percpu.c:512 func:pcpu_mem_zalloc [ 37.096868] 8.13 MiB 2309 mm/execmem.c:44 func:execmem_vmalloc [ 37.096971] 6.45 MiB 1652 mm/shmem.c:1799 func:shmem_alloc_folio [ 37.097073] 3.08 MiB 23724 fs/kernfs/dir.c:624 func:__kernfs_new_= node [ 37.097180] 2.25 MiB 62 kernel/bpf/btf.c:1602 func:btf_add_type [ 37.097286] 1.77 MiB 320 mm/slub.c:2425 func:alloc_slab_page =1B[1m=1B]8;;file://komputilo/gnu/store/zf5fv4f3jjlf4gbp1431jzps7xni6s8i-ma= chines.scm=1B\/gnu/store/zf5fv4f3jjlf4gbp1431jzps7xni6s8i-machines.scm:1:24= 8=1B]8;;=1B\=1B[0m: =1B[1;31merror: =1B[0m=1B[1mx86_64-linux=1B[0m: unknown= system type QEMU runs as PID 18 connected to QEMU's monitor read QEMU monitor prompt connected to guest REPL %%%% Starting test deploy (Writing full log to "/gnu/store/csrqxp2r3275488= hfbxpmjy9nhx7hggk-deploy/deploy.log") marionette is ready PASS: script successfully evaluated /gnu/store/6kqbz9lqci19q9wsgciy1fnwbivyhd4j-deploy-builder:1: FAIL script c= reated new generation /gnu/store/6kqbz9lqci19q9wsgciy1fnwbivyhd4j-deploy-builder:1: FAIL script a= ctivated the new generation PASS: uname # of expected passes 2 # of unexpected failures 2 Tests failed, dumping log file '/gnu/store/csrqxp2r3275488hfbxpmjy9nhx7hggk= -deploy/deploy.log'. %%%% Starting test deploy Group begin: deploy Test begin: test-name: "script successfully evaluated" source-file: "/gnu/store/6kqbz9lqci19q9wsgciy1fnwbivyhd4j-deploy-builder" source-line: 1 source-form: (test-assert "script successfully evaluated" (marionette-eva= l (quote (primitive-load "/gnu/store/jpf42m0hxismjqr6a9b37142zl546wi7-deplo= y.scm")) marionette)) Test end: result-kind: pass actual-value: ready Test begin: test-name: "script created new generation" source-file: "/gnu/store/6kqbz9lqci19q9wsgciy1fnwbivyhd4j-deploy-builder" source-line: 1 source-form: (test-equal "script created new generation" (length (system-= generations marionette)) (#{1+}# (length generations-prior))) Test end: result-kind: fail actual-value: 2 expected-value: 1 Test begin: test-name: "script activated the new generation" source-file: "/gnu/store/6kqbz9lqci19q9wsgciy1fnwbivyhd4j-deploy-builder" source-line: 1 source-form: (test-equal "script activated the new generation" (string-ap= pend "/var/guix/profiles/system-" (number->string (+ 1 (length generations-= prior))) "-link") (marionette-eval (quote (readlink "/run/current-system"))= marionette)) Test end: result-kind: fail actual-value: "/gnu/store/ijhdvnwphamj37r8rhj1822zdf5hsgk4-system" expected-value: "/var/guix/profiles/system-2-link" Test begin: test-name: "uname" source-file: "/gnu/store/6kqbz9lqci19q9wsgciy1fnwbivyhd4j-deploy-builder" source-line: 1 source-form: (test-assert "uname" (match (marionette-eval (quote (uname))= marionette) (#("Linux" host-name _ ...) (string=3D? host-name "komputilo")= ))) Test end: result-kind: pass actual-value: #t Group end: deploy # of expected passes 2 # of unexpected failures 2 builder for `/gnu/store/13g6z4f8l1vnwl4dmj9zh6xcdf0ilgp4-deploy.drv' failed= with exit code 1 build of /gnu/store/13g6z4f8l1vnwl4dmj9zh6xcdf0ilgp4-deploy.drv failed Could not find build log for '/gnu/store/13g6z4f8l1vnwl4dmj9zh6xcdf0ilgp4-d= eploy.drv'. guix build: error: build of `/gnu/store/13g6z4f8l1vnwl4dmj9zh6xcdf0ilgp4-de= ploy.drv' failed --wvq5sleaopemthqn-- From unknown Sun Jun 15 08:45:46 2025 X-Loop: help-debbugs@gnu.org Subject: [bug#75010] [PATCH v3 1/2] gnu: tests: Add module for guix deploy tests. Resent-From: Ludovic =?UTF-8?Q?Court=C3=A8s?= Original-Sender: "Debbugs-submit" Resent-CC: guix-patches@gnu.org Resent-Date: Tue, 06 May 2025 10:32:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 75010 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch moreinfo To: Herman Rimm Cc: 75010@debbugs.gnu.org Received: via spool by 75010-submit@debbugs.gnu.org id=B75010.17465274726726 (code B ref 75010); Tue, 06 May 2025 10:32:02 +0000 Received: (at 75010) by debbugs.gnu.org; 6 May 2025 10:31:12 +0000 Received: from localhost ([127.0.0.1]:52863 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1uCFZw-0001kP-6t for submit@debbugs.gnu.org; Tue, 06 May 2025 06:31:12 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:54390) by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.84_2) (envelope-from ) id 1uCFZb-0001hE-8i for 75010@debbugs.gnu.org; Tue, 06 May 2025 06:30:52 -0400 Received: from fencepost.gnu.org ([2001:470:142:3::e]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1uCFZT-0003TY-0N; Tue, 06 May 2025 06:30:43 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org; s=fencepost-gnu-org; h=MIME-Version:Date:References:In-Reply-To:Subject:To: From; bh=AaNQzhAhLfXNQlekwVxuo+3HpexTQrPk4Q6S5UGmfPM=; b=ICfJrDn1SzqwzEuM5wlw G+UjK+X6x51sqEJOPgvcjxHHnm8bFWvOp1k43NZgTm3zg+seEMWsCRHIdu1kssr+fkGJPUDWzU6t6 0vz4US1K86mWlwbQgfTiDcQurM1R/Yb4MsIR6uXSGv09kpKXA45VL42MWjOQVfLEeK9XJq7JHxwpm 3fX/o1u3mFPmQPVXVEA0td6DC5VPH/vIWtAfA3Tdbdzn6BhJvh7s5oqKmqgY8liZJd5e+SQ3y128E NJCqX58vJF3ZO/6az3ZQq57sQ4hDwpZ/YB/z6aVItU+Gp/XjiiP7/J0Dj+JCByRzVIulH1rDDP6C1 sMDSxqvtx0S4WQ==; From: Ludovic =?UTF-8?Q?Court=C3=A8s?= In-Reply-To: <4149c0f631101dcfe8f9a0d50fd9c1605a26cd76.1746016819.git.herman@rimm.ee> (Herman Rimm's message of "Wed, 30 Apr 2025 15:05:27 +0200") References: <4149c0f631101dcfe8f9a0d50fd9c1605a26cd76.1746016819.git.herman@rimm.ee> Date: Tue, 06 May 2025 12:01:49 +0200 Message-ID: <87msbqvz02.fsf@gnu.org> User-Agent: Gnus/5.13 (Gnus v5.13) MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-Spam-Score: -2.3 (--) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.3 (---) Hi Herman, Herman Rimm writes: > * gnu/tests/deploy.scm: Add file. > * gnu/local.mk (GNU_SYSTEM_MODULES): Register file. > > Change-Id: I348c8bf2e518ec6c00af126993eaca3fcd453901 This patch LGTM. What about the rest of the initial series though (7 patches)? From what I can see, there are two outstanding issues on patches #1 and #2, but I didn=E2=80=99t get your feedback on these. Let me know what you think. Thanks, Ludo=E2=80=99. From unknown Sun Jun 15 08:45:46 2025 X-Loop: help-debbugs@gnu.org Subject: [bug#75010] [PATCH v4 0/5] Roll back when deployment fails. References: In-Reply-To: Resent-From: Herman Rimm Original-Sender: "Debbugs-submit" Resent-CC: guix-patches@gnu.org Resent-Date: Fri, 09 May 2025 06:04:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 75010 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch moreinfo To: 75010@debbugs.gnu.org Received: via spool by 75010-submit@debbugs.gnu.org id=B75010.17467706159782 (code B ref 75010); Fri, 09 May 2025 06:04:01 +0000 Received: (at 75010) by debbugs.gnu.org; 9 May 2025 06:03:35 +0000 Received: from localhost ([127.0.0.1]:34605 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1uDGpb-0002Xh-92 for submit@debbugs.gnu.org; Fri, 09 May 2025 02:03:35 -0400 Received: from 81-205-150-117.fixed.kpn.net ([81.205.150.117]:50871 helo=email.rimm.ee) by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.84_2) (envelope-from ) id 1uDGpX-0002XI-0E for 75010@debbugs.gnu.org; Fri, 09 May 2025 02:03:33 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=rimm.ee; s=herman; t=1746770602; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=xqFxklOybSZ01M94rEuxDfW6G6NbsfCfbtqE1oTmnRw=; b=lCKOP5/duUE4gFzLg6tJfkEiSawd7XQ5w1unJZFr2s7dZnbJCmjLJLOmJkFHbUyhY1zFGc 31eqOYHu2Cr4BX8GagNqTh1h6t3L5rXiSjtBv+s+zGNmdb55GXLKWY76+9J16+RI8MjMun vXxUFzAXuK60BYq5GWiamlyDyvNF/Qo7BOLoh5Ryld272phMu97mj4Yw4785UqMx7dQZLl ByBhEJMEfsfb6zvT9dPJ83ub1df14Xu9sK8Q2QqU0aPZCkJiq6E6BZF3IFIubKIMz+I8u2 K/prIQcptFYR4kHgJXM7iQAcJVnZ3JCDHb9hrrH368RV2yFTmKvvGPrk7qEt4A== Received: by 81-205-150-117.fixed.kpn.net (OpenSMTPD) with ESMTPSA id 41d12218 (TLSv1.3:TLS_CHACHA20_POLY1305_SHA256:256:NO) for <75010@debbugs.gnu.org>; Fri, 9 May 2025 06:03:22 +0000 (UTC) From: Herman Rimm Date: Fri, 9 May 2025 08:02:24 +0200 Message-ID: X-Mailer: git-send-email 2.47.1 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Spam-Score: 0.0 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) Hi, I removed [PATCH 1/7] and adjusted [PATCH 2/7], now [PATCH v4 1/5]. > The (mbegin …) expression has no effect because it’s not in tail > position (it expands to (lambda (…) …)). > > Even if it had an effect, generating the bootloader config file in > Itself does nothing: it has to at least be copied to the right place or > Passed as an argument to ‘grub-install’ or similar. I do not want to fix this bug in [PATCH v4 1/5]. If it should be fixed first, I can send another [PATCH v4 1/5] revision once it is. I still do not know how to fix it. 55a5181e745131e5369beaf59d4d406da92b5617 made [PATCH 3/7] obsolete. Cheers, Herman Felix Lechner (1): Rename two remote variables confusingly named 'generations'. Herman Rimm (4): gnu: machine: ssh: Refactor roll-back-managed-host. gnu: machine: Remove &deploy-error. gnu: machine: ssh: Roll-back on failure. gnu: tests: Add module for guix deploy tests. gnu/local.mk | 3 +- gnu/machine.scm | 17 +-- gnu/machine/ssh.scm | 140 ++++++++++++------------- gnu/tests/deploy.scm | 223 ++++++++++++++++++++++++++++++++++++++++ guix/scripts/deploy.scm | 8 +- 5 files changed, 295 insertions(+), 96 deletions(-) create mode 100644 gnu/tests/deploy.scm base-commit: 2e1ead7c8b449b58d571d8f16c1586b675c13ab4 -- 2.48.1 From unknown Sun Jun 15 08:45:46 2025 X-Loop: help-debbugs@gnu.org Subject: [bug#75010] [PATCH v4 1/5] gnu: machine: ssh: Refactor roll-back-managed-host. Resent-From: Herman Rimm Original-Sender: "Debbugs-submit" Resent-CC: guix-patches@gnu.org Resent-Date: Fri, 09 May 2025 06:04:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 75010 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch moreinfo To: 75010@debbugs.gnu.org Received: via spool by 75010-submit@debbugs.gnu.org id=B75010.17467706189804 (code B ref 75010); Fri, 09 May 2025 06:04:02 +0000 Received: (at 75010) by debbugs.gnu.org; 9 May 2025 06:03:38 +0000 Received: from localhost ([127.0.0.1]:34609 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1uDGpd-0002Y2-OC for submit@debbugs.gnu.org; Fri, 09 May 2025 02:03:38 -0400 Received: from 81-205-150-117.fixed.kpn.net ([81.205.150.117]:50871 helo=email.rimm.ee) by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.84_2) (envelope-from ) id 1uDGpZ-0002XI-OK for 75010@debbugs.gnu.org; Fri, 09 May 2025 02:03:35 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=rimm.ee; s=herman; t=1746770603; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=KovGb9q5Hzxl+fhWRoiB5wNgqVKByyi3gnd/e5c5+Zo=; b=A/IqKLEBEKbz3Kv1NnUPutl0i/Ja2Rnyr1A4mPVyJuVPTEu8bEbwR5+4EIzbhb7T7+5OOr JpjrBRGohYKp+YH7C4BkiNFY6RgF7Oe7C5bnx0XO3gfnCkB3Wr1a/nKS0tQZTBQpqYMH+8 GSEMzFIp6k8IZCQz/viT//1GFnR2j+27HEwUyytpg9CkUQYQPkpKg1WVDXlpjnhtyOkqfq 4f+6E2WEXEmRha4u4b/axd9R0fHmDI7ig34Zdv5CEcYv3GZ3+LVL9bHL1YUo8vQfcwdLuV LiWmLYJJSqVrxyIMqUyVxUbK9Buc4xbHXmzm5e4hGNp3nPw4gRumOSGSrR1NFA== Received: by 81-205-150-117.fixed.kpn.net (OpenSMTPD) with ESMTPSA id b4f98ec1 (TLSv1.3:TLS_CHACHA20_POLY1305_SHA256:256:NO) for <75010@debbugs.gnu.org>; Fri, 9 May 2025 06:03:23 +0000 (UTC) From: Herman Rimm Date: Fri, 9 May 2025 08:02:25 +0200 Message-ID: <1b5bd68abb306b6102202f2ef8c194c7c26a1507.1746769714.git.herman@rimm.ee> X-Mailer: git-send-email 2.47.1 In-Reply-To: References: MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Spam-Score: 0.0 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) * gnu/machine/ssh.scm (roll-back-managed-host): Use let* and mbegin. Change-Id: Ic3d5039ecf01e1e965dce8a696e7dbd625d2b3c5 --- gnu/machine/ssh.scm | 57 +++++++++++++++++++++++---------------------- 1 file changed, 29 insertions(+), 28 deletions(-) diff --git a/gnu/machine/ssh.scm b/gnu/machine/ssh.scm index 73d5dc513ee..696b349a303 100644 --- a/gnu/machine/ssh.scm +++ b/gnu/machine/ssh.scm @@ -3,6 +3,8 @@ ;;; Copyright © 2020-2024 Ludovic Courtès ;;; Copyright © 2024 Ricardo ;;; Copyright © 2025 Arun Isaac +;;; Copyright © 2024 Felix Lechner +;;; Copyright © 2025 Herman Rimm ;;; ;;; This file is part of GNU Guix. ;;; @@ -597,34 +599,33 @@ (define (roll-back-managed-host machine) (define roll-back-failure (condition (&message (message (G_ "could not roll-back machine"))))) - (mlet* %store-monad ((boot-parameters (machine-boot-parameters machine)) - (_ -> (if (< (length boot-parameters) 2) - (raise roll-back-failure))) - (entries -> (map boot-parameters->menu-entry - (list (second boot-parameters)))) - (locale -> (boot-parameters-locale - (second boot-parameters))) - (crypto-dev -> (boot-parameters-store-crypto-devices - (second boot-parameters))) - (store-dir -> (boot-parameters-store-directory-prefix - (second boot-parameters))) - (old-entries -> (map boot-parameters->menu-entry - (drop boot-parameters 2))) - (bootloader -> (operating-system-bootloader - (machine-operating-system machine))) - (bootcfg (lower-object - ((bootloader-configuration-file-generator - (bootloader-configuration-bootloader - bootloader)) - bootloader entries - #:locale locale - #:store-crypto-devices crypto-dev - #:store-directory-prefix store-dir - #:old-entries old-entries))) - (remote-result (machine-remote-eval machine remote-exp))) - (if (eqv? 'error remote-result) - (raise roll-back-failure) - (return remote-result)))) + (mlet %store-monad + ((boot-parameters (machine-boot-parameters machine))) + (match boot-parameters + ((_ params rest ...) + (let* ((entries (list (boot-parameters->menu-entry params))) + (locale (boot-parameters-locale params)) + (crypto-dev (boot-parameters-store-crypto-devices params)) + (store-dir (boot-parameters-store-directory-prefix params)) + (old-entries (map boot-parameters->menu-entry rest)) + (bootloader (operating-system-bootloader + (machine-operating-system machine))) + (generate-bootloader-configuration-file + (bootloader-configuration-file-generator + (bootloader-configuration-bootloader bootloader)))) + (mbegin %store-monad + (lower-object (generate-bootloader-configuration-file + bootloader entries + #:locale locale + #:store-crypto-devices crypto-dev + #:store-directory-prefix store-dir + #:old-entries old-entries))) + (mlet %store-monad + ((remote-result (machine-remote-eval machine remote-exp))) + (if (eqv? 'error remote-result) + (raise roll-back-failure) + (return remote-result))))) + (_ (raise roll-back-failure))))) ;;; -- 2.48.1 From unknown Sun Jun 15 08:45:46 2025 X-Loop: help-debbugs@gnu.org Subject: [bug#75010] [PATCH v4 3/5] gnu: machine: Remove &deploy-error. Resent-From: Herman Rimm Original-Sender: "Debbugs-submit" Resent-CC: guix-patches@gnu.org Resent-Date: Fri, 09 May 2025 06:04:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 75010 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch moreinfo To: 75010@debbugs.gnu.org Received: via spool by 75010-submit@debbugs.gnu.org id=B75010.17467706229825 (code B ref 75010); Fri, 09 May 2025 06:04:02 +0000 Received: (at 75010) by debbugs.gnu.org; 9 May 2025 06:03:42 +0000 Received: from localhost ([127.0.0.1]:34613 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1uDGph-0002YO-8X for submit@debbugs.gnu.org; Fri, 09 May 2025 02:03:41 -0400 Received: from 81-205-150-117.fixed.kpn.net ([81.205.150.117]:52169 helo=email.rimm.ee) by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.84_2) (envelope-from ) id 1uDGpc-0002XQ-NN for 75010@debbugs.gnu.org; Fri, 09 May 2025 02:03:37 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=rimm.ee; s=herman; t=1746770604; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=30QiySZrk8Vsw3in5KBxGqsvGL6poSAmwkyZL5AqbSw=; b=j7SBkIOewUSpQ3/aaDybiZEALMGLMAXPJN8FuG0/YwB62XnrmOhUpi/8usogqBktQOMBtD 1JYxYOM/+JNFd75L4d/vCgcxWJ2AtHv454Xwu9JhTYYAYHqqXboSxVaZU8yUzPRtJR6wxz svdLb6Zqp1bZ1SIoiLrWzo2Ojwx+IY7qnUvY9KYL+4E97AR5RcDcG0C47Sd0Aq9ELH2w1l R87kSELI6xaMpEvbojblDegtVtBdQKgHJo3i0wKaGe//70ipPFNGa7yd1ReC3WMu/0KTl7 kHVaXr4L8IWXPEPJ7KCCj95tywbo+s/B1Fu59HupbmNk8SoHc5rACoD2LZWoCA== Received: by 81-205-150-117.fixed.kpn.net (OpenSMTPD) with ESMTPSA id 22121843 (TLSv1.3:TLS_CHACHA20_POLY1305_SHA256:256:NO) for <75010@debbugs.gnu.org>; Fri, 9 May 2025 06:03:24 +0000 (UTC) From: Herman Rimm Date: Fri, 9 May 2025 08:02:27 +0200 Message-ID: <863bef6e18135cc897c2a8ddfd2634d696fe41c6.1746769714.git.herman@rimm.ee> X-Mailer: git-send-email 2.47.1 In-Reply-To: References: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Spam-Score: 0.0 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) * gnu/machine.scm (&deploy-error): Remove. * gnu/machine/ssh.scm (with-roll-back): Remove. (deploy-managed-host): Remove with-roll-back. * guix/scripts/deploy.scm (deploy-machine*): Remove deploy-error? case. Change-Id: I719eafda0f5d12e1f4e3795631e78378f5376745 --- gnu/machine.scm | 17 +---------- gnu/machine/ssh.scm | 62 +++++++++++++++-------------------------- guix/scripts/deploy.scm | 8 +----- 3 files changed, 25 insertions(+), 62 deletions(-) diff --git a/gnu/machine.scm b/gnu/machine.scm index 60be6749727..ede595d053d 100644 --- a/gnu/machine.scm +++ b/gnu/machine.scm @@ -41,12 +41,7 @@ (define-module (gnu machine) deploy-machine roll-back-machine - machine-remote-eval - - &deploy-error - deploy-error? - deploy-error-should-roll-back - deploy-error-captured-args)) + machine-remote-eval)) ;;; Commentary: ;;; @@ -122,13 +117,3 @@ (define (roll-back-machine machine) and the new generation number." (let ((environment (machine-environment machine))) ((environment-type-roll-back-machine environment) machine))) - - -;;; -;;; Error types. -;;; - -(define-condition-type &deploy-error &error - deploy-error? - (should-roll-back deploy-error-should-roll-back) - (captured-args deploy-error-captured-args)) diff --git a/gnu/machine/ssh.scm b/gnu/machine/ssh.scm index 47f379c57e3..aea390fe0b3 100644 --- a/gnu/machine/ssh.scm +++ b/gnu/machine/ssh.scm @@ -481,18 +481,6 @@ (define (machine-boot-parameters machine) (boot-parameters-kernel-arguments params)))))))) remote-results)))) -(define-syntax-rule (with-roll-back should-roll-back? mbody ...) - "Catch exceptions that arise when binding MBODY, a monadic expression in -%STORE-MONAD, and collect their arguments in a &deploy-error condition, with -the 'should-roll-back' field set to SHOULD-ROLL-BACK?" - (catch #t - (lambda () - mbody ...) - (lambda args - (raise (condition (&deploy-error - (should-roll-back should-roll-back?) - (captured-args args))))))) - (define (deploy-managed-host machine) "Internal implementation of 'deploy-machine' for MACHINE instances with an environment type of 'managed-host." @@ -537,39 +525,35 @@ (define (deploy-managed-host machine) store))))) (mbegin %store-monad - (with-roll-back #f - (switch-to-system (eval/error-handling c - (raise (formatted-message - (G_ "\ + (switch-to-system (eval/error-handling c + (raise (formatted-message + (G_ "\ failed to switch systems while deploying '~a':~%~{~s ~}") - host - (inferior-exception-arguments c)))) - os)) + host + (inferior-exception-arguments c)))) + os) (parameterize ((%current-system system) (%current-target-system #f)) - (with-roll-back #t - (mbegin %store-monad - (upgrade-shepherd-services (eval/error-handling c - (warning (G_ "\ + (mbegin %store-monad + (upgrade-shepherd-services + (eval/error-handling c + (warning (G_ "\ an error occurred while upgrading services on '~a':~%~{~s ~}~%") - host - (inferior-exception-arguments - c))) - os) - (load-system-for-kexec (eval/error-handling c - (warning (G_ "\ + host (inferior-exception-arguments c))) + os) + (load-system-for-kexec + (eval/error-handling c + (warning (G_ "\ failed to load system of '~a' for kexec reboot:~%~{~s~^ ~}~%") - host - (inferior-exception-arguments - c))) - os) - (install-bootloader (eval/error-handling c - (raise (formatted-message - (G_ "\ + host (inferior-exception-arguments c))) + os) + (install-bootloader + (eval/error-handling c + (raise (formatted-message + (G_ "\ failed to install bootloader on '~a':~%~{~s ~}~%") - host - (inferior-exception-arguments c)))) - bootloader-configuration bootcfg))))))))) + host (inferior-exception-arguments c)))) + bootloader-configuration bootcfg)))))))) ;;; diff --git a/guix/scripts/deploy.scm b/guix/scripts/deploy.scm index e2ef0006e06..f80982b6d18 100644 --- a/guix/scripts/deploy.scm +++ b/guix/scripts/deploy.scm @@ -181,13 +181,7 @@ (define (deploy-machine* store machine) (apply format #f (gettext (formatted-message-string c) %gettext-domain) - (formatted-message-arguments c)))) - ((deploy-error? c) - (when (deploy-error-should-roll-back c) - (info (G_ "rolling back ~a...~%") - (machine-display-name machine)) - (run-with-store store (roll-back-machine machine))) - (apply throw (deploy-error-captured-args c)))) + (formatted-message-arguments c))))) (run-with-store store (deploy-machine machine)) (info (G_ "successfully deployed ~a~%") -- 2.48.1 From unknown Sun Jun 15 08:45:46 2025 X-Loop: help-debbugs@gnu.org Subject: [bug#75010] [PATCH v4 2/5] Rename two remote variables confusingly named 'generations'. Resent-From: Herman Rimm Original-Sender: "Debbugs-submit" Resent-CC: guix-patches@gnu.org Resent-Date: Fri, 09 May 2025 06:04:03 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 75010 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch moreinfo To: 75010@debbugs.gnu.org Cc: Felix Lechner Received: via spool by 75010-submit@debbugs.gnu.org id=B75010.17467706229832 (code B ref 75010); Fri, 09 May 2025 06:04:03 +0000 Received: (at 75010) by debbugs.gnu.org; 9 May 2025 06:03:42 +0000 Received: from localhost ([127.0.0.1]:34615 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1uDGpi-0002YQ-0B for submit@debbugs.gnu.org; Fri, 09 May 2025 02:03:42 -0400 Received: from 81-205-150-117.fixed.kpn.net ([81.205.150.117]:50871 helo=email.rimm.ee) by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.84_2) (envelope-from ) id 1uDGpb-0002XI-C4 for 75010@debbugs.gnu.org; Fri, 09 May 2025 02:03:37 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=rimm.ee; s=herman; t=1746770603; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=A0OT8GbcURu8PLGiAj++IjE06n0Ltb5bVSP75tS3CNI=; b=JA3OXYklK/fbY0HEF4nfNPDJOtF9AXzYxNJbUtwhc6XsQOm+j3xGPaunCdq2EqeIBy06LC qEtRyEk2kzTpU+BrXbc8KgwfUxtmjrQAxu/cbMhR/Q3uAqwm23Dg9vhqQuYwfh2SrUXpOz WNI0XTnarcBFSpBnDu8nAIJnsesh0JaPnakB6kaAWC6qXi2Se/7KnuXUzmcBWucYUYiFL/ e+6e1t8UpdeD8RLkHMEPO10B6jCjl3vLVdoLFHsNjt0MplWHnq1SwAMGbmY6fBTRVKb8/p 3ToSzRRvYxtpr7tSDC8aRF/55Y9O9jZrYhn8viRmPSC327XXQq/qgVbt+puu3g== Received: by 81-205-150-117.fixed.kpn.net (OpenSMTPD) with ESMTPSA id 3ecfd81b (TLSv1.3:TLS_CHACHA20_POLY1305_SHA256:256:NO); Fri, 9 May 2025 06:03:23 +0000 (UTC) From: Herman Rimm Date: Fri, 9 May 2025 08:02:26 +0200 Message-ID: <06dd6b3f55cfdf7fb7610618d1071058b7db0b2a.1746769714.git.herman@rimm.ee> X-Mailer: git-send-email 2.47.1 In-Reply-To: References: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Spam-Score: 0.0 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) From: Felix Lechner Both refer to data sets returned from the remote expression, and one of them shadowed an element of itself. * gnu/machine/ssh.scm (machine-boot-parameters): Rename generations to remote-results. Change-Id: Ibd8a3036126d9da1215cfc191884c0f54df637df --- gnu/machine/ssh.scm | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/gnu/machine/ssh.scm b/gnu/machine/ssh.scm index 696b349a303..47f379c57e3 100644 --- a/gnu/machine/ssh.scm +++ b/gnu/machine/ssh.scm @@ -456,10 +456,11 @@ (define (machine-boot-parameters machine) (read-file boot-parameters-path)))) (reverse (generation-numbers %system-profile))))))) - (mlet* %store-monad ((generations (machine-remote-eval machine remote-exp))) + (mlet %store-monad + ((remote-results (machine-remote-eval machine remote-exp))) (return - (map (lambda (generation) - (match generation + (map (lambda (remote-result) + (match remote-result ((generation system-path time serialized-params) (let* ((params (call-with-input-string serialized-params read-boot-parameters)) @@ -478,7 +479,7 @@ (define (machine-boot-parameters machine) (kernel-arguments (append (bootable-kernel-arguments system-path root version) (boot-parameters-kernel-arguments params)))))))) - generations)))) + remote-results)))) (define-syntax-rule (with-roll-back should-roll-back? mbody ...) "Catch exceptions that arise when binding MBODY, a monadic expression in -- 2.48.1 From unknown Sun Jun 15 08:45:46 2025 X-Loop: help-debbugs@gnu.org Subject: [bug#75010] [PATCH v4 4/5] gnu: machine: ssh: Roll-back on failure. Resent-From: Herman Rimm Original-Sender: "Debbugs-submit" Resent-CC: guix-patches@gnu.org Resent-Date: Fri, 09 May 2025 06:04:03 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 75010 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch moreinfo To: 75010@debbugs.gnu.org Received: via spool by 75010-submit@debbugs.gnu.org id=B75010.17467706229839 (code B ref 75010); Fri, 09 May 2025 06:04:03 +0000 Received: (at 75010) by debbugs.gnu.org; 9 May 2025 06:03:42 +0000 Received: from localhost ([127.0.0.1]:34617 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1uDGpi-0002Yd-G5 for submit@debbugs.gnu.org; Fri, 09 May 2025 02:03:42 -0400 Received: from 81-205-150-117.fixed.kpn.net ([81.205.150.117]:52169 helo=email.rimm.ee) by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.84_2) (envelope-from ) id 1uDGpd-0002XQ-NZ for 75010@debbugs.gnu.org; Fri, 09 May 2025 02:03:38 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=rimm.ee; s=herman; t=1746770604; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=8CpqUDf8ZdlC4gJ5DMubcB+Q8rCQz8bC3HBoU4fo3vc=; b=XyYrt/Nrc/P4LXE2Cd0n1UO1bPeBQEGB6YXvGOI6/D9pY1kJvOVvv0onpabZ7wdQcttc+E z36J7SNSel/fPH+nV3WzC0k4W8NKZqE2mjLILisOAX8kkEkNoASsQb1OCYAC2Ao4rJqxxK EaZ77JOXfJcvxCq9Wyf03WwdELcgptO5kerIBbLg8fq4dhH71YHy1ag6N1pj7aH2jZtR77 G28kWXC15KS2Sin++GOFCcorVA8Rz0dKznYqlz7QIStPVHPf72+li5iW4/2Gf+jYag8eh2 6GFItmzFjZir66EkLO0hs6V5JPgPoHfJPIWplBt9MrNc3YLeBOEVIFfQCgEMhw== Received: by 81-205-150-117.fixed.kpn.net (OpenSMTPD) with ESMTPSA id 4f7648c3 (TLSv1.3:TLS_CHACHA20_POLY1305_SHA256:256:NO) for <75010@debbugs.gnu.org>; Fri, 9 May 2025 06:03:24 +0000 (UTC) From: Herman Rimm Date: Fri, 9 May 2025 08:02:28 +0200 Message-ID: <4d35b3b044f8a61a4683d12dd71c835fb3d57864.1746769714.git.herman@rimm.ee> X-Mailer: git-send-email 2.47.1 In-Reply-To: References: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Spam-Score: 0.0 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) This restores the roll-back behaviour which was disabled in 2885c35. * gnu/machine/ssh.scm (deploy-managed-host): Use roll-back-machine. Change-Id: I8636347541ee1e4e30da15dd43455329a46c3bdb --- gnu/machine/ssh.scm | 20 +++++++++++++++----- 1 file changed, 15 insertions(+), 5 deletions(-) diff --git a/gnu/machine/ssh.scm b/gnu/machine/ssh.scm index aea390fe0b3..357b4376d4b 100644 --- a/gnu/machine/ssh.scm +++ b/gnu/machine/ssh.scm @@ -513,7 +513,8 @@ (define (deploy-managed-host machine) (menu-entries (map boot-parameters->menu-entry boot-parameters)) (bootloader-configuration (operating-system-bootloader os)) (bootcfg (operating-system-bootcfg os menu-entries))) - (define-syntax-rule (eval/error-handling condition handler ...) + (define-syntax-rule (eval/error-handling condition store + handler ...) ;; Return a wrapper around EVAL such that HANDLER is evaluated if an ;; exception is raised. (lambda (exp) @@ -525,7 +526,7 @@ (define (deploy-managed-host machine) store))))) (mbegin %store-monad - (switch-to-system (eval/error-handling c + (switch-to-system (eval/error-handling c store (raise (formatted-message (G_ "\ failed to switch systems while deploying '~a':~%~{~s ~}") @@ -536,19 +537,28 @@ (define (deploy-managed-host machine) (%current-target-system #f)) (mbegin %store-monad (upgrade-shepherd-services - (eval/error-handling c + (eval/error-handling c store + (info (G_ "rolling back ~a...~%") host) + (run-with-store store (roll-back-machine machine) + #:system system) (warning (G_ "\ an error occurred while upgrading services on '~a':~%~{~s ~}~%") host (inferior-exception-arguments c))) os) (load-system-for-kexec - (eval/error-handling c + (eval/error-handling c store + (info (G_ "rolling back ~a...~%") host) + (run-with-store store (roll-back-machine machine) + #:system system) (warning (G_ "\ failed to load system of '~a' for kexec reboot:~%~{~s~^ ~}~%") host (inferior-exception-arguments c))) os) (install-bootloader - (eval/error-handling c + (eval/error-handling c store + (info (G_ "rolling back ~a...~%") host) + (run-with-store store (roll-back-machine machine) + #:system system) (raise (formatted-message (G_ "\ failed to install bootloader on '~a':~%~{~s ~}~%") -- 2.48.1 From unknown Sun Jun 15 08:45:46 2025 X-Loop: help-debbugs@gnu.org Subject: [bug#75010] [PATCH v4 5/5] gnu: tests: Add module for guix deploy tests. Resent-From: Herman Rimm Original-Sender: "Debbugs-submit" Resent-CC: guix-patches@gnu.org Resent-Date: Fri, 09 May 2025 06:04:04 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 75010 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch moreinfo To: 75010@debbugs.gnu.org Received: via spool by 75010-submit@debbugs.gnu.org id=B75010.17467706239847 (code B ref 75010); Fri, 09 May 2025 06:04:04 +0000 Received: (at 75010) by debbugs.gnu.org; 9 May 2025 06:03:43 +0000 Received: from localhost ([127.0.0.1]:34619 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1uDGpi-0002Yj-Sw for submit@debbugs.gnu.org; Fri, 09 May 2025 02:03:43 -0400 Received: from 81-205-150-117.fixed.kpn.net ([81.205.150.117]:50871 helo=email.rimm.ee) by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.84_2) (envelope-from ) id 1uDGpd-0002XI-Oi for 75010@debbugs.gnu.org; Fri, 09 May 2025 02:03:39 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=rimm.ee; s=herman; t=1746770604; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=S+NO9SJzxQE2zGlSlbZzl/g8uHPAbQ6vrrt/Gbbp7+w=; b=bgbZGVH9Vj42+TATxJXwXCGvC5NuPCPHRpte/aMrR2EvMU3XcAOiclwLkyZb492x919Bjh JuCAjFolkvMXdEXhydScOKQNFsWT5EwTtXDLYc7NUXOMCYXnihvUF+vkrSi+OsOMjn1cqk OWulNwA1g9B2IoThMEvJQNyn2xftOmp9takfaIZPsY/XhNA5MI6wSULe/+VCq1rAPD6FXG 6/Y71rLbqSbN0amVlyLQT8FpeKVqBWzrBf3k8vzA9yzwPbKwNTMVp2enCQPhoOO/U7pby6 /ysk08Q2QwBd04rofb6G9wWT0h0BpO18N+vBNs2F0r6WixvOS9UjpKvLhExLGA== Received: by 81-205-150-117.fixed.kpn.net (OpenSMTPD) with ESMTPSA id cebc9fe7 (TLSv1.3:TLS_CHACHA20_POLY1305_SHA256:256:NO) for <75010@debbugs.gnu.org>; Fri, 9 May 2025 06:03:24 +0000 (UTC) From: Herman Rimm Date: Fri, 9 May 2025 08:02:29 +0200 Message-ID: <23f3850c0d0d62fb78137e694dc96b34a54c15ec.1746769714.git.herman@rimm.ee> X-Mailer: git-send-email 2.47.1 In-Reply-To: References: MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Spam-Score: 0.0 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) * gnu/tests/deploy.scm: Add file. * gnu/local.mk (GNU_SYSTEM_MODULES): Register file. Change-Id: I348c8bf2e518ec6c00af126993eaca3fcd453901 --- gnu/local.mk | 3 +- gnu/tests/deploy.scm | 223 +++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 225 insertions(+), 1 deletion(-) create mode 100644 gnu/tests/deploy.scm diff --git a/gnu/local.mk b/gnu/local.mk index e6ece8cc483..157d327e53b 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -62,7 +62,7 @@ # Copyright © 2023 B. Wilson # Copyright © 2023 Bruno Victal # Copyright © 2023, 2024 gemmaro -# Copyright © 2023 Herman Rimm +# Copyright © 2023, 2025 Herman Rimm # Copyright © 2023 Troy Figiel # Copyright © 2024, 2025 David Elsing # Copyright © 2024 Ashish SHUKLA @@ -847,6 +847,7 @@ GNU_SYSTEM_MODULES = \ %D%/tests/containers.scm \ %D%/tests/cups.scm \ %D%/tests/databases.scm \ + %D%/tests/deploy.scm \ %D%/tests/desktop.scm \ %D%/tests/dns.scm \ %D%/tests/dict.scm \ diff --git a/gnu/tests/deploy.scm b/gnu/tests/deploy.scm new file mode 100644 index 00000000000..55d3edb78ef --- /dev/null +++ b/gnu/tests/deploy.scm @@ -0,0 +1,223 @@ +;;; GNU Guix --- Functional package management for GNU +;;; Copyright © 2019 Jakob L. Kreuze +;;; Copyright © 2024, 2025 Herman Rimm +;;; +;;; This file is part of GNU Guix. +;;; +;;; GNU Guix is free software; you can redistribute it and/or modify it +;;; under the terms of the GNU General Public License as published by +;;; the Free Software Foundation; either version 3 of the License, or (at +;;; your option) any later version. +;;; +;;; GNU Guix is distributed in the hope that it will be useful, but +;;; WITHOUT ANY WARRANTY; without even the implied warranty of +;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +;;; GNU General Public License for more details. +;;; +;;; You should have received a copy of the GNU General Public License +;;; along with GNU Guix. If not, see . + +(define-module (gnu tests deploy) + #:use-module (gnu packages gnupg) + #:use-module (gnu packages package-management) + #:use-module (gnu packages ssh) + #:use-module ((guix self) #:select (make-config.scm)) + #:use-module (gnu services) + #:use-module (gnu services base) + #:use-module (gnu services ssh) + #:use-module (gnu system) + #:use-module (gnu system vm) + #:use-module (gnu tests) + #:use-module (guix gexp) + #:use-module (guix modules) + #:use-module (ice-9 match) + #:export (%test-deploy + %test-rollback)) + +;;; Commentary: +;;; +;;; Test in-place system deployment: advancing the system generation on +;;; a running instance of the Guix System. +;;; +;;; Code: + +(define (machines os-source) + (scheme-file "machines.scm" + #~(begin (use-modules (gnu machine ssh) + (guix utils) + (ice-9 textual-ports)) + ;; XXX: (guix platforms ...) are not found in %load-path. + (set! (@ (guix platform) systems) + (compose list %current-system)) + (list (machine + (configuration + (machine-ssh-configuration + (host-name "localhost") + (host-key + (call-with-input-file "/etc/ssh/ssh_host_ed25519_key.pub" + get-string-all)) + (system (%current-system)))) + (environment managed-host-environment-type) + (operating-system #$os-source)))))) + +(define not-config? + ;; Select (guix …) and (gnu …) modules, except (guix config). + (match-lambda + (('guix 'config) #f) + (('guix rest ...) #t) + (('gnu rest ...) #t) + (_ #f))) + +(define (deploy-program os-source) + (program-file "deploy.scm" + (with-extensions (list guile-gcrypt guile-ssh) + (with-imported-modules + `(((guix config) => ,(make-config.scm))) + #~(execl #$(file-append (current-guix) "/bin/guix") + "guix" "deploy" #$(machines os-source)))))) + +(define os + (marionette-operating-system + (simple-operating-system + (service openssh-service-type + (openssh-configuration + (permit-root-login #t) + (allow-empty-passwords? #t))) + (service static-networking-service-type + (list (static-networking + (inherit %loopback-static-networking) + (provision '(networking)))))) + #:imported-modules '((gnu services herd) + (guix combinators)))) + +(define vm (virtual-machine os)) + +(define system-generations-definition + #~(define (system-generations marionette) + "Return the names of the generation symlinks on MARIONETTE." + (marionette-eval + '(begin (use-modules (ice-9 ftw)) + (define (select? entry) + (not (member entry '("per-user" "system" "." "..")))) + (scandir "/var/guix/profiles/" select?)) + marionette))) + +(define* (run-deploy-test) + "Run a test of an OS running DEPLOY-PROGRAM, which creates a new +generation of the system profile." + (define new-os-source + '(begin + (use-modules (gnu tests)) + (operating-system + (inherit %simple-os) + (host-name (substring (operating-system-host-name %simple-os) + 0 1))))) + + (define (test script) + (with-imported-modules '((gnu build marionette)) + #~(begin + (use-modules (gnu build marionette) + (ice-9 match) + (srfi srfi-64)) + + (define marionette + (make-marionette (list #$vm))) + + #$system-generations-definition + + (test-runner-current (system-test-runner #$output)) + (test-begin "deploy") + + (let ((generations-prior (system-generations marionette))) + (test-assert "script successfully evaluated" + (marionette-eval + '(primitive-load #$script) + marionette)) + + (test-equal "script created new generation" + (length (system-generations marionette)) + (1+ (length generations-prior))) + + (test-equal "script activated the new generation" + (string-append "/var/guix/profiles/system-" + (number->string (+ 1 (length generations-prior))) + "-link") + (marionette-eval '(readlink "/run/current-system") + marionette))) + + (test-assert "uname" + (match (marionette-eval '(uname) marionette) + (#("Linux" host-name _ ...) + (string=? host-name #$(operating-system-host-name os))))) + + (test-end)))) + + (gexp->derivation "deploy" (test (deploy-program new-os-source)))) + +(define* (run-rollback-test) + "Run a test of an OS with a faulty bootloader running DEPLOY-PROGRAM, +which causes a rollback." + (define bad-os-source + '(begin + (use-modules (gnu tests)) + (operating-system + (inherit %simple-os) + (host-name (substring (operating-system-host-name %simple-os) + 0 1)) + (bootloader + (bootloader-configuration + (inherit (operating-system-bootloader %simple-os)) + (targets '("/dev/null"))))))) + + (define (test script) + (with-imported-modules '((gnu build marionette)) + #~(begin + (use-modules (gnu build marionette) + (ice-9 match) + (srfi srfi-64)) + + (define marionette + (make-marionette (list #$vm))) + + #$system-generations-definition + + (test-runner-current (system-test-runner #$output)) + (test-begin "rollback") + + (let ((generations-prior (system-generations marionette))) + (test-assert "script successfully evaluated" + (marionette-eval + '(primitive-load #$script) + marionette)) + + (test-equal "script created new generation" + (length (system-generations marionette)) + (1+ (length generations-prior))) + + (test-equal "script rolled back the new generation" + (string-append "/var/guix/profiles/system-" + (number->string (length generations-prior)) + "-link") + (marionette-eval '(readlink "/run/current-system") + marionette))) + + (test-assert "uname" + (match (marionette-eval '(uname) marionette) + (#("Linux" host-name _ ...) + (string=? host-name #$(operating-system-host-name os))))) + + (test-end)))) + + (gexp->derivation "rollback" (test (deploy-program bad-os-source)))) + +(define %test-deploy + (system-test + (name "deploy") + (description "Deploy to the local machine.") + (value (run-deploy-test)))) + +(define %test-rollback + (system-test + (name "deploy-rollback") + (description "Rollback guix deploy with a faulty bootloader.") + (value (run-rollback-test)))) -- 2.48.1 From unknown Sun Jun 15 08:45:46 2025 X-Loop: help-debbugs@gnu.org Subject: [bug#75010] Roll back when deployment fails. Resent-From: Herman Rimm Original-Sender: "Debbugs-submit" Resent-CC: guix-patches@gnu.org Resent-Date: Sun, 01 Jun 2025 16:29:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 75010 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch moreinfo To: 75010@debbugs.gnu.org Cc: Lilah Tascheter , Ludovic =?UTF-8?Q?Court=C3=A8s?= , Sergey Trofimov Received: via spool by 75010-submit@debbugs.gnu.org id=B75010.174879528416178 (code B ref 75010); Sun, 01 Jun 2025 16:29:02 +0000 Received: (at 75010) by debbugs.gnu.org; 1 Jun 2025 16:28:04 +0000 Received: from localhost ([127.0.0.1]:40958 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1uLlXY-0004Cs-Gv for submit@debbugs.gnu.org; Sun, 01 Jun 2025 12:28:04 -0400 Received: from 81-205-150-117.fixed.kpn.net ([81.205.150.117]:59587 helo=email.rimm.ee) by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.84_2) (envelope-from ) id 1uLlXV-0004C6-2x for 75010@debbugs.gnu.org; Sun, 01 Jun 2025 12:28:02 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=rimm.ee; s=herman; t=1748795274; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=S5W+AJMF2S8P6b1o+6PDi3yVe6RHg9IL5OQITlYuDCM=; b=fYmhIwmraiPpFoiA+kQFbaOFGcnapNLDI5wUu1iClk2NQerf10TuRLHs6XiLc728/XwhQm ircUhWef3/fDwWs2yzQlDs8lLmRrIUX3gS0T0ku16aZGuVimIvt5/yRrKQbvStBFnMXm60 jPdx6jmzERmltM2gFYd9YcIk7P/eK7/bz21BcL2pnWyM7Tk50XGlrMbCXa9fftasxqzXhi FzqQtjToG0geb5vRUWD29xLAIjwap7h3h5bYkBFL7WVdU/fTlPiNVbrhu7p7Pu6xym7f2q xqsvtYyrB2dx0mUHcmZu6qVNfF0XWeqtdrEToefVapsla4NpB5bZevY7eUHi8A== Received: by 81-205-150-117.fixed.kpn.net (OpenSMTPD) with ESMTPSA id b1e136a9 (TLSv1.3:TLS_CHACHA20_POLY1305_SHA256:256:NO); Sun, 1 Jun 2025 16:27:54 +0000 (UTC) Date: Sun, 1 Jun 2025 18:26:46 +0200 From: Herman Rimm Message-ID: References: <20240912165818.21580-1-herman@rimm.ee> <875xhhhzaj.fsf@sarg.org.ru> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <875xhhhzaj.fsf@sarg.org.ru> X-Spam-Score: 0.0 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) Hello, For now, I opened a pull request on Codeberg for issue #75010: https://codeberg.org/guix/guix/pulls/372 Cheers, Herman