system: 'kernel->boot-label' now accepts inferior packages.

* gnu/system.scm (kernel->boot-label): Get package name and version
using the functions for inferior packages if the kernel is an
inferior package. Return "GNU" if the kernel is not a package.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
This commit is contained in:
Pkill -9 2018-12-19 20:22:20 +00:00 committed by Ludovic Courtès
parent 4b33a74138
commit bdc61ff97d
No known key found for this signature in database
GPG Key ID: 090B11993D9AEBB5
1 changed files with 12 additions and 4 deletions

View File

@ -21,6 +21,7 @@
;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
(define-module (gnu system)
#:use-module (guix inferior)
#:use-module (guix store)
#:use-module (guix monads)
#:use-module (guix gexp)
@ -905,10 +906,17 @@ listed in OS. The C library expects to find it under
(define (kernel->boot-label kernel)
"Return a label for the bootloader menu entry that boots KERNEL."
(string-append "GNU with "
(string-titlecase (package-name kernel)) " "
(package-version kernel)
" (beta)"))
(cond ((package? kernel)
(string-append "GNU with "
(string-titlecase (package-name kernel)) " "
(package-version kernel)
" (beta)"))
((inferior-package? kernel)
(string-append "GNU with "
(string-titlecase (inferior-package-name kernel))
(inferior-package-version kernel)
" (beta)"))
(else "GNU")))
(define (store-file-system file-systems)
"Return the file system object among FILE-SYSTEMS that contains the store."