mirror of
https://git.in.rschanz.org/ryan77627/guix.git
synced 2024-11-07 07:26:13 -05:00
gnu: bootloader: Match records outside the module.
* gnu/bootloader.scm (match-bootloader-configuration, match-menu-entry): Add macros. Change-Id: I42cb7541045314c37ffef98fe6efe7f46acd9d9b
This commit is contained in:
parent
79fe92ae16
commit
10d2fc5890
1 changed files with 18 additions and 0 deletions
|
@ -8,6 +8,7 @@
|
|||
;;; Copyright © 2022 Reza Alizadeh Majd <r.majd@pantherx.org>
|
||||
;;; Copyright © 2024 Tomas Volf <~@wolfsden.cz>
|
||||
;;; Copyright © 2024 Lilah Tascheter <lilah@lunabee.space>
|
||||
;;; Copyright © 2024 Herman Rimm <herman@rimm.ee>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
|
@ -115,6 +116,9 @@ (define-module (gnu bootloader)
|
|||
bootloader-configuration->gexp
|
||||
bootloader-configurations->gexp
|
||||
|
||||
match-bootloader-configuration
|
||||
match-menu-entry
|
||||
|
||||
%efi-supported-systems
|
||||
efi-arch
|
||||
install-efi
|
||||
|
@ -642,6 +646,20 @@ (define (bootloader-configurations->gexp bootloader-configs . rest)
|
|||
(apply gbegin (filter-map (cut apply bootloader-configuration->gexp <> rest)
|
||||
bootloader-configs)))
|
||||
|
||||
;; In lieu of exporting bootloader-configuration and menu-entry RTDs.
|
||||
(define-syntax match-bootloader-configuration
|
||||
(syntax-rules ()
|
||||
"Bind each BOOTLOADER-CONFIGURATION field in FIELDS."
|
||||
((_ bootloader-configuration (fields ...) body ...)
|
||||
(match-record bootloader-configuration <bootloader-configuration>
|
||||
(fields ...) body ...))))
|
||||
|
||||
(define-syntax match-menu-entry
|
||||
(syntax-rules ()
|
||||
"Bind each MENU-ENTRY field in FIELDS."
|
||||
((_ menu-entry (fields ...) body ...)
|
||||
(match-record menu-entry <menu-entry> (fields ...) body ...))))
|
||||
|
||||
|
||||
;;;
|
||||
;;; Bootloader installation to ESP.
|
||||
|
|
Loading…
Reference in a new issue