all messages for Guix-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
From: Ricardo Wurmus <rekado@elephly.net>
To: 69092@debbugs.gnu.org
Cc: Ricardo Wurmus <rekado@elephly.net>
Subject: [bug#69092] [PATCH v2] machine/ssh: Refresh parameterization of %CURRENT-SYSTEM.
Date: Tue, 13 Feb 2024 11:50:02 +0100	[thread overview]
Message-ID: <20240213105213.9508-2-rekado@elephly.net> (raw)
In-Reply-To: <9915f5dc0cea842a9c4c3f3a13f2c97e6ee60432.1707778239.git.rekado@elephly.net>

The inversion actually didn't help.  For some reason, the effect of
PARAMETERIZE is lost.  With the patch below I can deploy to the
i686-linux laptop from my x86_64-linux machine again.


From 0a37481608e4ec02c96ef9b54a417bade55528da Mon Sep 17 00:00:00 2001
Message-ID: <0a37481608e4ec02c96ef9b54a417bade55528da.1707821400.git.rekado@elephly.net>
From: Ricardo Wurmus <rekado@elephly.net>
Date: Mon, 12 Feb 2024 23:45:54 +0100
Subject: [PATCH v2] machine/ssh: Refresh parameterization of %CURRENT-SYSTEM.

When using "guix deploy" on an x86_64-linux machine to deploy a system to
i686-linux, DEPLOY-MANAGED-HOST would revert %CURRENT-SYSTEM to the host
system's value by the time it evaluated UPGRADE-SHEPHERD-SERVICES.  The
earlier PARAMETERIZE would no longer be effective.

* gnu/machine/ssh.scm (deploy-managed-host): Ensure that
UPGRADE-SHEPHERD-SERVICES is evaluated for the architecture of the target
machine.

Change-Id: I0816da79cd7c46a69418717fa33b2fe4e2fabae0
---
 gnu/machine/ssh.scm | 31 +++++++++++++++++--------------
 1 file changed, 17 insertions(+), 14 deletions(-)

diff --git a/gnu/machine/ssh.scm b/gnu/machine/ssh.scm
index b5984dc732..b47ce7c225 100644
--- a/gnu/machine/ssh.scm
+++ b/gnu/machine/ssh.scm
@@ -1,6 +1,7 @@
 ;;; GNU Guix --- Functional package management for GNU
 ;;; Copyright © 2019 Jakob L. Kreuze <zerodaysfordays@sdf.org>
 ;;; Copyright © 2020-2023 Ludovic Courtès <ludo@gnu.org>
+;;; Copyright © 2024 Ricardo <rekado@elephly.net>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -537,22 +538,24 @@ (define (deploy-managed-host machine)
                                         host
                                         (inferior-exception-arguments c))))
                               os))
-          (with-roll-back #t
-            (mbegin %store-monad
-              (upgrade-shepherd-services (eval/error-handling c
-                                           (warning (G_ "\
+          (parameterize ((%current-system system)
+                         (%current-target-system #f))
+            (with-roll-back #t
+              (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)))))))))
 
 \f
 ;;;

base-commit: bb4f0509b7cce750fc944e604aa919ea89910ea7
prerequisite-patch-id: 94eb24b4353a5dec691918e2258cab6f0873fd98
prerequisite-patch-id: d9e728fe0e2597792f468fea405c04845b31bc75
prerequisite-patch-id: a4c47cb27daff30f775243af50a8ae9d8af0300e
prerequisite-patch-id: 7258bad0bbb2065c66be06c685d6dd237d8d0670
prerequisite-patch-id: 2bc8562f64bd31a92045dabeb0e9749eadb1b562
prerequisite-patch-id: fadcf73ca0278af9f58f5bd2ddb6b1ad1b223dc3
prerequisite-patch-id: d1f94c163297151b41e6febed26f5833cd1b2ea8
prerequisite-patch-id: 9a9328cc3a35f5a8903f43e164749a62d48d697e
prerequisite-patch-id: f1e33c0ea08b372c33edbcacc750c74897e0b5ab
-- 
2.41.0





  reply	other threads:[~2024-02-13 10:54 UTC|newest]

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-02-12 22:50 [bug#69092] [PATCH] machine/ssh: Invert WITH-ROLL-BACK and MBEGIN Ricardo Wurmus
2024-02-13 10:50 ` Ricardo Wurmus [this message]
2024-02-20 13:48 ` bug#69092: " Ricardo Wurmus

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20240213105213.9508-2-rekado@elephly.net \
    --to=rekado@elephly.net \
    --cc=69092@debbugs.gnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this external index

	https://git.savannah.gnu.org/cgit/guix.git

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.