unofficial mirror of guix-patches@gnu.org 
 help / color / mirror / code / Atom feed
From: Herman Rimm via Guix-patches via <guix-patches@gnu.org>
To: 69343@debbugs.gnu.org
Cc: Felix Lechner <felix.lechner@lease-up.com>
Subject: [bug#69343] [PATCH v5 08/10] Give a separate name to a commonly used expression.
Date: Sat, 21 Sep 2024 12:23:21 +0200	[thread overview]
Message-ID: <0780c8928d26c112af681337065755bc84697487.1726913452.git.herman@rimm.ee> (raw)
In-Reply-To: <cover.1726913452.git.herman@rimm.ee>

From: Felix Lechner <felix.lechner@lease-up.com>

* gnu/machine/ssh.scm (roll-back-managed-host): Factor out a
  subexpression into new variable parameters.

Change-Id: I8d70684142bea736042d6c9dc8276ea7bdb9c181
---
 gnu/machine/ssh.scm | 48 ++++++++++++++++++++++-----------------------
 1 file changed, 23 insertions(+), 25 deletions(-)

diff --git a/gnu/machine/ssh.scm b/gnu/machine/ssh.scm
index efe056dab7..eb8dba3120 100644
--- a/gnu/machine/ssh.scm
+++ b/gnu/machine/ssh.scm
@@ -582,31 +582,29 @@ (define (roll-back-managed-host machine)
   (define roll-back-failure
     (condition (&message (message (G_ "could not roll-back machine")))))
 
-  (mlet* %store-monad ((boot-alternatives (machine->boot-alternatives machine))
-                       (_ -> (if (< (length boot-alternatives) 2)
-                                 (raise roll-back-failure)))
-                       (entries -> (map boot-parameters->menu-entry
-                                        (list (second boot-alternatives))))
-                       (locale -> (boot-parameters-locale
-                                   (second boot-alternatives)))
-                       (crypto-dev -> (boot-parameters-store-crypto-devices
-                                       (second boot-alternatives)))
-                       (store-dir -> (boot-parameters-store-directory-prefix
-                                      (second boot-alternatives)))
-                       (old-entries -> (map boot-parameters->menu-entry
-                                            (drop boot-alternatives 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)))
+  (mlet* %store-monad
+         ((boot-alternatives (machine->boot-alternatives machine))
+          (_ -> (when (< (length boot-alternatives) 2)
+                  (raise roll-back-failure)))
+          (parameters (second boot-alternatives))
+          (entries -> (list (boot-parameters->menu-entry parameters)))
+          (locale -> (boot-parameters-locale parameters))
+          (crypto-dev -> (boot-parameters-store-crypto-devices parameters))
+          (store-dir -> (boot-parameters-store-directory-prefix parameters))
+          (old-entries -> (map boot-parameters->menu-entry
+                               (drop boot-alternatives 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))))
 
-- 
2.45.2





  parent reply	other threads:[~2024-09-21 10:26 UTC|newest]

Thread overview: 65+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-02-24  1:05 [bug#69343] [PATCH 00/12] Simplify bootloader data structures and procedures Felix Lechner via Guix-patches via
2024-02-24  1:51 ` [bug#69343] [PATCH 01/12] Fix bug where the extra menu entries for a bootloader were shown twice Felix Lechner via Guix-patches via
2024-02-24  1:51 ` [bug#69343] [PATCH 02/12] Move <boot-parameters> record to a separate file Felix Lechner via Guix-patches via
2024-02-24  1:51 ` [bug#69343] [PATCH 03/12] Also move boot-parameters->menu-entry Felix Lechner via Guix-patches via
2024-02-24  1:51 ` [bug#69343] [PATCH 04/12] Rename seconds->string procedure to epoch->date-string Felix Lechner via Guix-patches via
2024-02-24  1:51 ` [bug#69343] [PATCH 05/12] Move epoch->date-string to gnu/system/boot.scm and use it elsewhere Felix Lechner via Guix-patches via
2024-02-24  1:51 ` [bug#69343] [PATCH 06/12] Offer a uniform decorated-boot-label and use it Felix Lechner via Guix-patches via
2024-02-24  1:51 ` [bug#69343] [PATCH 07/12] Rename boot-parameters to boot-alternatives when appropriate Felix Lechner via Guix-patches via
2024-02-24  1:51 ` [bug#69343] [PATCH 08/12] Rename two remote variables confusingly named 'generations' Felix Lechner via Guix-patches via
2024-02-24  1:51 ` [bug#69343] [PATCH 09/12] Give a separate name to a commonly used expression Felix Lechner via Guix-patches via
2024-02-24  1:51 ` [bug#69343] [PATCH 10/12] Simplify profile->boot-alternatives Felix Lechner via Guix-patches via
2024-02-24  1:51 ` [bug#69343] [PATCH 11/12] Split generation->boot-parameters out of profile->boot-alternatives Felix Lechner via Guix-patches via
2024-02-24  1:51 ` [bug#69343] [PATCH 12/12] Encapsulate <boot-parameters> to retain generation, system-path and epoch Felix Lechner via Guix-patches via
2024-03-02 23:46 ` [bug#69343] Simplify bootloader data structures and procedures Lilah Tascheter via Guix-patches
2024-03-08  8:11 ` [bug#69343] [PATCH v2 00/12] " Lilah Tascheter via Guix-patches
2024-03-08  8:11   ` [bug#69343] [PATCH v2 01/12] Fix bug where the extra menu entries for a bootloader were shown twice Lilah Tascheter via Guix-patches
2024-03-08  8:11   ` [bug#69343] [PATCH v2 02/12] Move <boot-parameters> record to a separate file Lilah Tascheter via Guix-patches
2024-03-08  8:11   ` [bug#69343] [PATCH v2 03/12] Also move boot-parameters->menu-entry Lilah Tascheter via Guix-patches
2024-03-08  8:12   ` [bug#69343] [PATCH v2 04/12] Rename seconds->string procedure to epoch->date-string Lilah Tascheter via Guix-patches
2024-03-08  8:12   ` [bug#69343] [PATCH v2 05/12] Move epoch->date-string to gnu/system/boot.scm and use it elsewhere Lilah Tascheter via Guix-patches
2024-03-08  8:12   ` [bug#69343] [PATCH v2 06/12] Offer a uniform decorated-boot-label and use it Lilah Tascheter via Guix-patches
2024-03-08  8:12   ` [bug#69343] [PATCH v2 07/12] Rename boot-parameters to boot-alternatives when appropriate Lilah Tascheter via Guix-patches
2024-03-08  8:12   ` [bug#69343] [PATCH v2 08/12] Rename two remote variables confusingly named 'generations' Lilah Tascheter via Guix-patches
2024-03-08  8:12   ` [bug#69343] [PATCH v2 09/12] Give a separate name to a commonly used expression Lilah Tascheter via Guix-patches
2024-03-08  8:12   ` [bug#69343] [PATCH v2 10/12] Simplify profile->boot-alternatives Lilah Tascheter via Guix-patches
2024-03-08  8:12   ` [bug#69343] [PATCH v2 11/12] Split generation->boot-parameters out of profile->boot-alternatives Lilah Tascheter via Guix-patches
2024-03-08  8:12   ` [bug#69343] [PATCH v2 12/12] Encapsulate <boot-parameters> to retain generation, system-path and epoch Lilah Tascheter via Guix-patches
2024-03-08 16:33   ` [bug#69343] Simplify bootloader data structures and procedures Felix Lechner via Guix-patches via
2024-08-04  3:13 ` [bug#69343] [PATCH v3 00/12] " Lilah Tascheter via Guix-patches
2024-08-04  3:13   ` [bug#69343] [PATCH v3 01/12] Fix bug where the extra menu entries for a bootloader were shown twice Lilah Tascheter via Guix-patches
2024-08-04  3:13   ` [bug#69343] [PATCH v3 02/12] Move <boot-parameters> record to a separate file Lilah Tascheter via Guix-patches
2024-08-04  3:13   ` [bug#69343] [PATCH v3 03/12] Also move boot-parameters->menu-entry Lilah Tascheter via Guix-patches
2024-08-04  3:13   ` [bug#69343] [PATCH v3 04/12] Rename seconds->string procedure to epoch->date-string Lilah Tascheter via Guix-patches
2024-08-04  3:13   ` [bug#69343] [PATCH v3 05/12] Move epoch->date-string to gnu/system/boot.scm and use it elsewhere Lilah Tascheter via Guix-patches
2024-08-04  3:13   ` [bug#69343] [PATCH v3 06/12] Offer a uniform decorated-boot-label and use it Lilah Tascheter via Guix-patches
2024-08-04  3:13   ` [bug#69343] [PATCH v3 07/12] Rename boot-parameters to boot-alternatives when appropriate Lilah Tascheter via Guix-patches
2024-08-04  3:13   ` [bug#69343] [PATCH v3 08/12] Rename two remote variables confusingly named 'generations' Lilah Tascheter via Guix-patches
2024-08-04  3:13   ` [bug#69343] [PATCH v3 09/12] Give a separate name to a commonly used expression Lilah Tascheter via Guix-patches
2024-08-04  3:13   ` [bug#69343] [PATCH v3 10/12] Simplify profile->boot-alternatives Lilah Tascheter via Guix-patches
2024-08-04  3:13   ` [bug#69343] [PATCH v3 11/12] Split generation->boot-parameters out of profile->boot-alternatives Lilah Tascheter via Guix-patches
2024-08-04  3:13   ` [bug#69343] [PATCH v3 12/12] Encapsulate <boot-parameters> to retain generation, system-path and epoch Lilah Tascheter via Guix-patches
2024-09-05  7:13   ` [bug#69343] [PATCH v3 00/12] Simplify bootloader data structures and procedures Herman Rimm via Guix-patches via
2024-09-20  4:15 ` [bug#69343] [PATCH v4 00/11] " Lilah Tascheter via Guix-patches
2024-09-20  4:15   ` [bug#69343] [PATCH v4 01/11] Fix bug where the extra menu entries for a bootloader were shown twice Lilah Tascheter via Guix-patches
2024-09-20  4:15   ` [bug#69343] [PATCH v4 02/11] Move <boot-parameters> record to a separate file Lilah Tascheter via Guix-patches
2024-09-20  4:15   ` [bug#69343] [PATCH v4 03/11] Rename seconds->string procedure to epoch->date-string Lilah Tascheter via Guix-patches
2024-09-20  4:15   ` [bug#69343] [PATCH v4 04/11] Move epoch->date-string to gnu/system/boot.scm and use it elsewhere Lilah Tascheter via Guix-patches
2024-09-20  4:15   ` [bug#69343] [PATCH v4 05/11] Offer a uniform decorated-boot-label and use it Lilah Tascheter via Guix-patches
2024-09-20  4:16   ` [bug#69343] [PATCH v4 06/11] Rename boot-parameters to boot-alternatives when appropriate Lilah Tascheter via Guix-patches
2024-09-20  4:16   ` [bug#69343] [PATCH v4 07/11] Rename two remote variables confusingly named 'generations' Lilah Tascheter via Guix-patches
2024-09-20  4:16   ` [bug#69343] [PATCH v4 08/11] Give a separate name to a commonly used expression Lilah Tascheter via Guix-patches
2024-09-20  4:16   ` [bug#69343] [PATCH v4 09/11] Simplify profile->boot-alternatives Lilah Tascheter via Guix-patches
2024-09-20  4:16   ` [bug#69343] [PATCH v4 10/11] Split generation->boot-parameters out of profile->boot-alternatives Lilah Tascheter via Guix-patches
2024-09-20  4:16   ` [bug#69343] [PATCH v4 11/11] Encapsulate <boot-parameters> to retain generation, system-path and epoch Lilah Tascheter via Guix-patches
2024-09-21 10:23 ` [bug#69343] [PATCH v5 00/10] Simplify bootloader data structures and procedures Herman Rimm via Guix-patches via
2024-09-21 10:23   ` [bug#69343] [PATCH v5 01/10] Fix bug where the extra menu entries for a bootloader were shown twice Herman Rimm via Guix-patches via
2024-09-21 10:23   ` [bug#69343] [PATCH v5 02/10] Move <boot-parameters> record to a separate file Herman Rimm via Guix-patches via
2024-09-21 10:23   ` [bug#69343] [PATCH v5 03/10] Rename seconds->string procedure to epoch->date-string Herman Rimm via Guix-patches via
2024-09-21 10:23   ` [bug#69343] [PATCH v5 04/10] Move epoch->date-string to gnu/system/boot.scm and use it elsewhere Herman Rimm via Guix-patches via
2024-09-21 10:23   ` [bug#69343] [PATCH v5 05/10] Offer a uniform decorated-boot-label and use it Herman Rimm via Guix-patches via
2024-09-21 10:23   ` [bug#69343] [PATCH v5 06/10] Rename boot-parameters to boot-alternatives when appropriate Herman Rimm via Guix-patches via
2024-09-21 10:23   ` [bug#69343] [PATCH v5 07/10] Rename two remote variables confusingly named 'generations' Herman Rimm via Guix-patches via
2024-09-21 10:23   ` Herman Rimm via Guix-patches via [this message]
2024-09-21 10:23   ` [bug#69343] [PATCH v5 09/10] Split system->boot-parameters out of profile->boot-alternatives Herman Rimm via Guix-patches via
2024-09-21 10:23   ` [bug#69343] [PATCH v5 10/10] Encapsulate <boot-parameters> to retain generation, system-path and epoch Herman Rimm via Guix-patches via

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

  List information: https://guix.gnu.org/

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

  git send-email \
    --in-reply-to=0780c8928d26c112af681337065755bc84697487.1726913452.git.herman@rimm.ee \
    --to=guix-patches@gnu.org \
    --cc=69343@debbugs.gnu.org \
    --cc=felix.lechner@lease-up.com \
    --cc=herman@rimm.ee \
    /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 public inbox

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

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).