guix-commits
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

01/02: bootloader: extlinux: Add extlinux-bootloader-gpt.


From: Mathieu Othacehe
Subject: 01/02: bootloader: extlinux: Add extlinux-bootloader-gpt.
Date: Wed, 21 Jun 2017 03:58:48 -0400 (EDT)

mothacehe pushed a commit to branch master
in repository guix.

commit dbaef95aabfd8a90f11f513b65a8ebfe8d0b93c2
Author: Mathieu Othacehe <address@hidden>
Date:   Thu May 18 12:06:36 2017 +0200

    bootloader: extlinux: Add extlinux-bootloader-gpt.
    
    * gnu/bootloader/extlinux.scm (extlinux-bootloader-gpt): New exported
      variable.
     (install-extlinux)[mbr]: New argument.
     (install-extlinux-mbr, install-extlinux-gpt): New variables.
     (extlinux-bootloader)[installer]: Use install-extlinux-mbr.
---
 gnu/bootloader/extlinux.scm | 20 ++++++++++++++++----
 1 file changed, 16 insertions(+), 4 deletions(-)

diff --git a/gnu/bootloader/extlinux.scm b/gnu/bootloader/extlinux.scm
index 0a1263a..219b058 100644
--- a/gnu/bootloader/extlinux.scm
+++ b/gnu/bootloader/extlinux.scm
@@ -25,7 +25,8 @@
   #:use-module (guix monads)
   #:use-module (guix records)
   #:use-module (guix utils)
-  #:export (extlinux-bootloader))
+  #:export (extlinux-bootloader
+            extlinux-bootloader-gpt))
 
 (define* (extlinux-configuration-file config entries
                                       #:key
@@ -93,7 +94,7 @@ TIMEOUT ~a~%"
                       (string-append "if=" if)
                       (string-append "of=" of)))))
 
-(define install-extlinux
+(define (install-extlinux mbr)
   #~(lambda (bootloader device mount-point)
       (let ((extlinux (string-append bootloader "/sbin/extlinux"))
             (install-dir (string-append mount-point "/boot/extlinux"))
@@ -103,9 +104,15 @@ TIMEOUT ~a~%"
                   (find-files syslinux-dir "\\.c32$"))
 
         (unless (and (zero? (system* extlinux "--install" install-dir))
-                     (#$dd 440 1 (string-append syslinux-dir "/mbr.bin") 
device))
+                     (#$dd 440 1 (string-append syslinux-dir "/" #$mbr) 
device))
           (error "failed to install SYSLINUX")))))
 
+(define install-extlinux-mbr
+  (install-extlinux "mbr.bin"))
+
+(define install-extlinux-gpt
+  (install-extlinux "gptmbr.bin"))
+
 
 
 ;;;
@@ -116,6 +123,11 @@ TIMEOUT ~a~%"
   (bootloader
    (name 'extlinux)
    (package syslinux)
-   (installer install-extlinux)
+   (installer install-extlinux-mbr)
    (configuration-file "/boot/extlinux/extlinux.conf")
    (configuration-file-generator extlinux-configuration-file)))
+
+(define extlinux-bootloader-gpt
+  (bootloader
+   (inherit extlinux-bootloader)
+   (installer install-extlinux-gpt)))



reply via email to

[Prev in Thread] Current Thread [Next in Thread]