From: Lilah Tascheter via Guix-patches <guix-patches@gnu.org>
To: 69343@debbugs.gnu.org
Cc: Herman Rimm <herman@rimm.ee>,
Felix Lechner <felix.lechner@lease-up.com>,
Christopher Baines <guix@cbaines.net>,
Josselin Poiret <dev@jpoiret.xyz>,
Ludovic Court??s <ludo@gnu.org>,
Mathieu Othacehe <othacehe@gnu.org>,
Simon Tournier <zimon.toutoune@gmail.com>,
Tobias Geerinckx-Rice <me@tobias.gr>
Subject: [bug#69343] [PATCH v4 04/11] Move epoch->date-string to gnu/system/boot.scm and use it elsewhere.
Date: Thu, 19 Sep 2024 23:15:58 -0500 [thread overview]
Message-ID: <a7f035efc6e491e7e462fa1b5887a3e680ec4ad8.1726805765.git.lilah@lunabee.space> (raw)
In-Reply-To: <cover.1726805765.git.lilah@lunabee.space>
From: Felix Lechner <felix.lechner@lease-up.com>
* guix/scripts/system.scm (profile-boot-parameters): Rename time to
epoch to fit new procedure name.
(epoch->date-string): Move to...
* gnu/system/boot.scm (epoch->date-string): ...here.
* gnu/machine/ssh.scm (machine-boot-parameters): Rename time to epoch.
(machine-boot-parameters)[boot-parameters]: Use epoch->date-string.
Change-Id: I6a5f793567221f81edd7b2d8d9f0f3e801d1b113
---
gnu/machine/ssh.scm | 10 ++++------
gnu/system/boot.scm | 8 ++++++++
guix/scripts/system.scm | 10 ++--------
3 files changed, 14 insertions(+), 14 deletions(-)
diff --git a/gnu/machine/ssh.scm b/gnu/machine/ssh.scm
index 749aa2b6d8..e68e64527e 100644
--- a/gnu/machine/ssh.scm
+++ b/gnu/machine/ssh.scm
@@ -442,10 +442,10 @@ (define (machine-boot-parameters machine)
generation))
(boot-parameters-path (string-append system-path
"/parameters"))
- (time (stat:mtime (lstat system-path))))
+ (epoch (stat:mtime (lstat system-path))))
(list generation
system-path
- time
+ epoch
(read-file boot-parameters-path))))
(reverse (generation-numbers %system-profile)))))))
@@ -453,7 +453,7 @@ (define (machine-boot-parameters machine)
(return
(map (lambda (generation)
(match generation
- ((generation system-path time serialized-params)
+ ((generation system-path epoch serialized-params)
(let* ((params (call-with-input-string serialized-params
read-boot-parameters))
(root (boot-parameters-root-device params))
@@ -464,9 +464,7 @@ (define (machine-boot-parameters machine)
(label
(string-append label " (#"
(number->string generation) ", "
- (let ((time (make-time time-utc 0 time)))
- (date->string (time-utc->date time)
- "~Y-~m-~d ~H:~M"))
+ (epoch->date-string epoch)
")"))
(kernel-arguments
(append (bootable-kernel-arguments system-path root version)
diff --git a/gnu/system/boot.scm b/gnu/system/boot.scm
index df27b8aea4..01e3a965e4 100644
--- a/gnu/system/boot.scm
+++ b/gnu/system/boot.scm
@@ -45,6 +45,7 @@ (define-module (gnu system boot)
#:use-module (ice-9 format)
#:use-module (ice-9 match)
#:use-module (srfi srfi-1)
+ #:use-module (srfi srfi-19)
#:use-module (srfi srfi-34)
#:use-module (srfi srfi-35)
#:use-module (rnrs bytevectors)
@@ -70,6 +71,7 @@ (define-module (gnu system boot)
read-boot-parameters-file
bootable-kernel-arguments
+ epoch->date-string
boot-parameters->menu-entry
ensure-not-/dev
@@ -296,6 +298,12 @@ (define* (bootable-kernel-arguments system root-device version)
#~(string-append (if #$version>0? "gnu.load=" "--load=")
#$system "/boot")))))
+(define (epoch->date-string epoch)
+ "Return a string representing the date for EPOCH seconds."
+ (let ((time (make-time time-utc 0 epoch)))
+ (date->string (time-utc->date time)
+ "~Y-~m-~d ~H:~M")))
+
(define (boot-parameters->menu-entry conf)
"Return a <menu-entry> instance given CONF, a <boot-parameters> instance."
(let* ((kernel (boot-parameters-kernel conf))
diff --git a/guix/scripts/system.scm b/guix/scripts/system.scm
index cb70d36219..b197812e63 100644
--- a/guix/scripts/system.scm
+++ b/guix/scripts/system.scm
@@ -328,19 +328,13 @@ (define-syntax-rule (unless-file-not-found exp)
#f
(apply throw args)))))
-(define (epoch->date-string epoch)
- "Return a string representing the date for EPOCH seconds."
- (let ((time (make-time time-utc 0 epoch)))
- (date->string (time-utc->date time)
- "~Y-~m-~d ~H:~M")))
-
(define* (profile-boot-parameters #:optional (profile %system-profile)
(numbers
(reverse (generation-numbers profile))))
"Return a list of 'boot-parameters' for the generations of PROFILE specified
by NUMBERS, which is a list of generation numbers. The list is ordered from
the most recent to the oldest profiles."
- (define (system->boot-parameters system number time)
+ (define (system->boot-parameters system number epoch)
(unless-file-not-found
(let* ((params (read-boot-parameters-file system))
(label (boot-parameters-label params)))
@@ -348,7 +342,7 @@ (define* (profile-boot-parameters #:optional (profile %system-profile)
(inherit params)
(label (string-append label " (#"
(number->string number) ", "
- (epoch->date-string time) ")"))))))
+ (epoch->date-string epoch) ")"))))))
(let* ((systems (map (cut generation-file-name profile <>)
numbers))
(times (map (lambda (system)
--
2.45.2
next prev parent reply other threads:[~2024-09-20 4:18 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 ` Lilah Tascheter via Guix-patches [this message]
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 ` [bug#69343] [PATCH v5 08/10] Give a separate name to a commonly used expression Herman Rimm via Guix-patches via
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
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=a7f035efc6e491e7e462fa1b5887a3e680ec4ad8.1726805765.git.lilah@lunabee.space \
--to=guix-patches@gnu.org \
--cc=69343@debbugs.gnu.org \
--cc=dev@jpoiret.xyz \
--cc=felix.lechner@lease-up.com \
--cc=guix@cbaines.net \
--cc=herman@rimm.ee \
--cc=lilah@lunabee.space \
--cc=ludo@gnu.org \
--cc=me@tobias.gr \
--cc=othacehe@gnu.org \
--cc=zimon.toutoune@gmail.com \
/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.