Subject: [bug#37466] [PATCH 2/4] gnu: Add heads.

From: Danny Milosavljevic <[email-masked]>
Date: Tue, 24 Sep 2019 16:41:39 +0200

To use our linux-libre (with the mentioned problems):

diff --git a/gnu/packages/heads.scm b/gnu/packages/heads.scm
index 9128a4f426..e9c0b6b41c 100644
--- a/gnu/packages/heads.scm
+++ b/gnu/packages/heads.scm
@@ -202,12 +202,13 @@ done
            (uri "https://www.coreboot.org/releases/coreboot-4.8.1.tar.xz")
            (sha256
             (base32 "08xdd5drk8yd37a3z5hc81qmgsybv6201i28hcggxh980vdz9pgh"))))
-       ("linux"
-        ,(origin
-           (method url-fetch)
-           (uri "https://cdn.kernel.org/pub/linux/kernel/v4.x/linux-4.14.62.tar.xz")
-           (sha256
-            (base32 "1ar29ikway5im17iw9ag1fxivr7sbj8nhxxw347xqmp1irz4vjji"))))
+;       ("linux"
+;        ,(origin
+;           (method url-fetch)
+;           (uri "https://cdn.kernel.org/pub/linux/kernel/v4.x/linux-4.14.62.tar.xz")
+;           (sha256
+;            (base32 "1ar29ikway5im17iw9ag1fxivr7sbj8nhxxw347xqmp1irz4vjji"))))
+       ("linux" ,linux-libre-4.14-source)
        ("musl" ; useless
         ,(origin
            (method url-fetch)
@@ -422,13 +423,16 @@ done
                  ;(invoke "tar" "-xf" source-file "-C" "build")
 ))
              (mkdir-p "packages")
+             (setenv "V" "1") ; verbose
              (setenv "GUIX_C_INCLUDE_PATH" (getenv "C_INCLUDE_PATH"))
              (setenv "GUIX_CPLUS_INCLUDE_PATH" (getenv "CPLUS_INCLUDE_PATH"))
              (setenv "GUIX_LIBRARY_PATH" (getenv "LIBRARY_PATH"))
              (setenv "GUIX_CPATH" (getenv "CPATH"))
+             (copy-file (assoc-ref inputs "linux")
+                        "packages/linux-4.14.62.tar.xz.tmp")
              (for-each (lambda (name)
                          (install-file* name "packages" ".tmp"))
-                       '("linux" "coreboot-blobs" "coreboot" "busybox" "zlib" "mbedtls" "kexec-tools" "qrencode" "pciutils" "util-linux" "flashrom" "popt" "lvm2" "cryptsetup" "libgpg-error" "libgcrypt" "libksba" "libassuan" "npth" "libusb" "libusb-compat" "dropbear" "pinentry" "gnupg" "slang" "newt" "musl"))
+                       '("coreboot-blobs" "coreboot" "busybox" "zlib" "mbedtls" "kexec-tools" "qrencode" "pciutils" "util-linux" "flashrom" "popt" "lvm2" "cryptsetup" "libgpg-error" "libgcrypt" "libksba" "libassuan" "npth" "libusb" "libusb-compat" "dropbear" "pinentry" "gnupg" "slang" "newt" "musl"))
              (mkdir-p "build")
              (mkdir-p "build/musl-cross-git/tarballs")
              (mkdir-p "build/coreboot-4.8.1/util/crossgcc/tarballs")
@@ -443,6 +447,9 @@ done
              (setenv "MUSL_DIR" (assoc-ref inputs "musl-cross"))
              (setenv "CROSS" (string-append (getenv "MUSL_DIR") "/crossgcc/x86_64-linux-musl/bin/x86_64-musl-linux-")) ; Note: Useless
              (substitute* "Makefile"
+              ;; Disable checksum verification--we do it ourselves.
+              (("sha256sum --check")
+               "cat")
               ;; Disable our non-cross toolchain environment.
               (("CROSS_TOOLS_NOCC := ")
                ; CPP=" (getenv "CROSS") "cpp CXXCPP=" (getenv "CROSS") "cpp "