diff --git a/guix/scripts/system.scm b/guix/scripts/system.scm index eee4422d6897e218a7e7efe95954ca3054bb5d97..5bc40ed7350538d63449854549b628ed6534296b 100644 --- a/guix/scripts/system.scm +++ b/guix/scripts/system.scm @@ -366,8 +366,10 @@ (define (seconds->string seconds) (date->string (time-utc->date time) "~Y-~m-~d ~H:~M"))) -(define* (profile-grub-entries #:optional (profile %system-profile)) - "Return a list of 'menu-entry' for the generations of PROFILE." +(define* (profile-grub-entries #:optional (profile %system-profile) + (numbers (generation-numbers profile))) + "Return a list of 'menu-entry' for the generations of PROFILE specified by +NUMBERS, which is a list of generation numbers." (define (system->grub-entry system number time) (unless-file-not-found (let* ((file (string-append system "/parameters")) @@ -395,8 +397,7 @@ (define (system->grub-entry system number time) kernel-arguments)) (initrd initrd))))) - (let* ((numbers (generation-numbers profile)) - (systems (map (cut generation-file-name profile <>) + (let* ((systems (map (cut generation-file-name profile <>) numbers)) (times (map (lambda (system) (unless-file-not-found