From patchwork Sun May 24 22:32:07 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Danny Milosavljevic X-Patchwork-Id: 22339 Return-Path: X-Original-To: patchwork@mira.cbaines.net Delivered-To: patchwork@mira.cbaines.net Received: by mira.cbaines.net (Postfix, from userid 113) id 996FD27BBE1; Sun, 24 May 2020 23:33:09 +0100 (BST) X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on mira.cbaines.net X-Spam-Level: X-Spam-Status: No, score=-2.9 required=5.0 tests=BAYES_00,MAILING_LIST_MULTI, RCVD_IN_MSPIKE_H4,RCVD_IN_MSPIKE_WL,URIBL_BLOCKED autolearn=unavailable autolearn_force=no version=3.4.2 Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mira.cbaines.net (Postfix) with ESMTP id EB65627BBE3 for ; Sun, 24 May 2020 23:33:08 +0100 (BST) Received: from localhost ([::1]:43248 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1jczB6-00071I-GK for patchwork@mira.cbaines.net; Sun, 24 May 2020 18:33:08 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:52946) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1jczB0-00070j-Te for guix-patches@gnu.org; Sun, 24 May 2020 18:33:02 -0400 Received: from debbugs.gnu.org ([209.51.188.43]:55724) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1jczB0-00060N-Ki for guix-patches@gnu.org; Sun, 24 May 2020 18:33:02 -0400 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1jczB0-0002t6-IY for guix-patches@gnu.org; Sun, 24 May 2020 18:33:02 -0400 X-Loop: help-debbugs@gnu.org Subject: [bug#37466] [WIP v6 1/4] gnu: Add elfutils@0.174. Resent-From: Danny Milosavljevic Original-Sender: "Debbugs-submit" Resent-CC: guix-patches@gnu.org Resent-Date: Sun, 24 May 2020 22:33:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 37466 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: 37466@debbugs.gnu.org Cc: Danny Milosavljevic Received: via spool by 37466-submit@debbugs.gnu.org id=B37466.159035955511039 (code B ref 37466); Sun, 24 May 2020 22:33:02 +0000 Received: (at 37466) by debbugs.gnu.org; 24 May 2020 22:32:35 +0000 Received: from localhost ([127.0.0.1]:39030 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1jczAZ-0002ry-1h for submit@debbugs.gnu.org; Sun, 24 May 2020 18:32:35 -0400 Received: from dd26836.kasserver.com ([85.13.145.193]:42316) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1jczAQ-0002rE-3A for 37466@debbugs.gnu.org; Sun, 24 May 2020 18:32:27 -0400 Received: from dayas.lan (80-110-127-207.cgn.dynamic.surfer.at [80.110.127.207]) by dd26836.kasserver.com (Postfix) with ESMTPSA id 264BB33622FE; Mon, 25 May 2020 00:32:25 +0200 (CEST) From: Danny Milosavljevic Date: Mon, 25 May 2020 00:32:07 +0200 Message-Id: <20200524223210.10965-2-dannym@scratchpost.org> X-Mailer: git-send-email 2.26.2 In-Reply-To: <20200524223210.10965-1-dannym@scratchpost.org> References: <20200502171118.19989-1-dannym@scratchpost.org> <20200524223210.10965-1-dannym@scratchpost.org> MIME-Version: 1.0 Tags: patch X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-BeenThere: guix-patches@gnu.org List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-patches-bounces+patchwork=mira.cbaines.net@gnu.org Sender: "Guix-patches" X-getmail-retrieved-from-mailbox: Patches * gnu/packages/heads.scm (elfutils-0.174): New variable. --- gnu/packages/heads.scm | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/gnu/packages/heads.scm b/gnu/packages/heads.scm index b28433431c..86ab487b0f 100644 --- a/gnu/packages/heads.scm +++ b/gnu/packages/heads.scm @@ -161,3 +161,16 @@ done (synopsis "Musl-cross gcc 5 toolchain") (description "Musl-cross toolchain: binutils, gcc 5 and musl.") (license license:isc)))) + +(define elfutils-0.174 + (package + (inherit elfutils) + (version "0.174") + (source (origin + (method url-fetch) + (uri (string-append "https://sourceware.org/elfutils/ftp/" + version "/elfutils-" version ".tar.bz2")) + (sha256 + (base32 + "12nhr8zrw4sjzrvpf38vl55bq5nm05qkd7nq76as443f0xq7xwnd")) + (patches (search-patches "elfutils-tests-ptrace.patch")))))) From patchwork Sun May 24 22:32:08 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Danny Milosavljevic X-Patchwork-Id: 22342 Return-Path: X-Original-To: patchwork@mira.cbaines.net Delivered-To: patchwork@mira.cbaines.net Received: by mira.cbaines.net (Postfix, from userid 113) id 4C87727BBE1; Sun, 24 May 2020 23:33:23 +0100 (BST) X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on mira.cbaines.net X-Spam-Level: X-Spam-Status: No, score=-2.9 required=5.0 tests=BAYES_00,MAILING_LIST_MULTI, URIBL_BLOCKED autolearn=unavailable autolearn_force=no version=3.4.2 Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mira.cbaines.net (Postfix) with ESMTP id 2DEAD27BBE4 for ; Sun, 24 May 2020 23:33:15 +0100 (BST) Received: from localhost ([::1]:43666 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1jczBC-0007CZ-Ke for patchwork@mira.cbaines.net; Sun, 24 May 2020 18:33:14 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:52952) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1jczB2-000718-1V for guix-patches@gnu.org; Sun, 24 May 2020 18:33:04 -0400 Received: from debbugs.gnu.org ([209.51.188.43]:55727) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1jczB1-00060g-Oj for guix-patches@gnu.org; Sun, 24 May 2020 18:33:03 -0400 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1jczB1-0002tS-My for guix-patches@gnu.org; Sun, 24 May 2020 18:33:03 -0400 X-Loop: help-debbugs@gnu.org Subject: [bug#37466] [WIP v6 2/4] gnu: Add heads. Resent-From: Danny Milosavljevic Original-Sender: "Debbugs-submit" Resent-CC: guix-patches@gnu.org Resent-Date: Sun, 24 May 2020 22:33:03 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 37466 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: 37466@debbugs.gnu.org Cc: Danny Milosavljevic Received: via spool by 37466-submit@debbugs.gnu.org id=B37466.159035956611070 (code B ref 37466); Sun, 24 May 2020 22:33:03 +0000 Received: (at 37466) by debbugs.gnu.org; 24 May 2020 22:32:46 +0000 Received: from localhost ([127.0.0.1]:39036 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1jczAZ-0002sF-PR for submit@debbugs.gnu.org; Sun, 24 May 2020 18:32:46 -0400 Received: from dd26836.kasserver.com ([85.13.145.193]:42324) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1jczAQ-0002rK-PX for 37466@debbugs.gnu.org; Sun, 24 May 2020 18:32:34 -0400 Received: from dayas.lan (80-110-127-207.cgn.dynamic.surfer.at [80.110.127.207]) by dd26836.kasserver.com (Postfix) with ESMTPSA id 039F13364BED; Mon, 25 May 2020 00:32:25 +0200 (CEST) From: Danny Milosavljevic Date: Mon, 25 May 2020 00:32:08 +0200 Message-Id: <20200524223210.10965-3-dannym@scratchpost.org> X-Mailer: git-send-email 2.26.2 In-Reply-To: <20200524223210.10965-1-dannym@scratchpost.org> References: <20200502171118.19989-1-dannym@scratchpost.org> <20200524223210.10965-1-dannym@scratchpost.org> MIME-Version: 1.0 Tags: patch X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-BeenThere: guix-patches@gnu.org List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-patches-bounces+patchwork=mira.cbaines.net@gnu.org Sender: "Guix-patches" X-getmail-retrieved-from-mailbox: Patches * gnu/packages/heads.scm (heads): New variable. --- gnu/packages/heads.scm | 425 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 425 insertions(+) diff --git a/gnu/packages/heads.scm b/gnu/packages/heads.scm index 86ab487b0f..87ac871080 100644 --- a/gnu/packages/heads.scm +++ b/gnu/packages/heads.scm @@ -174,3 +174,428 @@ done (base32 "12nhr8zrw4sjzrvpf38vl55bq5nm05qkd7nq76as443f0xq7xwnd")) (patches (search-patches "elfutils-tests-ptrace.patch")))))) + +(define heads + (let ((revision "3") + (commit "4245aec85796523945da51596d4d4af864288843")) + (package + (name "heads") + (version (git-version "0.1" revision commit)) + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/osresearch/heads.git") + (commit commit))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "0ddph9bpbi6sf6dj5hp6018czfw46s553xzikw9xcd6x76j3q1c6")) + (patches (search-patches "heads-make-environment.patch")))) + (build-system gnu-build-system) + (native-inputs + `(("bash" ,bash) + ("git" ,git) + ("perl" ,perl) + ("cpio" ,cpio) + ("m4" ,m4) + ("bison" ,bison) + ("flex" ,flex) + ("curl" ,curl) ; unused + ("zlibx" ,zlib) + ("musl-cross" ,musl-cross) + ;("musl-cross-i386" ,musl-cross-i386) + ("target-musl-cross" + ,(origin + (method url-fetch) + (uri "https://github.com/richfelker/musl-cross-make/archive/38e52db8358c043ae82b346a2e6e66bc86a53bc1.tar.gz") + (file-name "musl-cross-38e52db8358c043ae82b346a2e6e66bc86a53bc1.tar.gz") + (sha256 + (base32 + "0071ml3d42w8m59dc1zvl9pk931zcxsyflqacnwg5c6s7mnmvf5l")))) + ;; Ours would be too new for musl-cross binutils. + ;; See also https://bbs.archlinux.org/viewtopic.php?id=242682 + ("elfutils" ,elfutils-0.174) + ("bc" ,bc) + ("findutils" ,findutils) + ("flashtools" + ,(origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/osresearch/flashtools.git") + (commit "9acce09aeb635c5bef01843e495b95e75e8da135"))) + (file-name "flashtools-checkout") + (sha256 + (base32 "0r4gj3nzr67ycd39k1vjzxfzkp90yacrdgxhc1z5jfvxfq4x91c1")))) + ("tpmtotp" + ,(origin + (method url-fetch) + (uri "https://github.com/osresearch/tpmtotp/archive/18b860fdcf5a55537c8395b891f2b2a5c24fc00a.tar.gz") + (file-name "tpmtotp-18b860fdcf5a55537c8395b891f2b2a5c24fc00a.tar.gz") + (sha256 + (base32 "0v30biwwqyqf06xnhmnwwjgb77m3476fvp8d4823x0xgwjqg50hh")))) + ("msrtools" + ,(origin + (method url-fetch) + (uri "https://github.com/osresearch/msr-tools/archive/572ef8a2b873eda15a322daa48861140a078b92c.tar.gz") + (file-name "msr-tools-572ef8a2b873eda15a322daa48861140a078b92c.tar.gz") + (sha256 + (base32 "1h3a1rai47r0dxiiv0i3xj0fjng15n6sxj8mw9gj0154s284fmc0")))) + ("coreboot-blobs" + ,(origin + (method url-fetch) + (uri "https://www.coreboot.org/releases/coreboot-blobs-4.8.1.tar.xz") + (sha256 + (base32 "15g222xj1zdn8i8qz0pw2jf28h66dljb1q5isw2ml05gwfd51ahq")))) + ("coreboot" + ,(origin + (method url-fetch) + (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")))) + ("musl" ; useless + ,(origin + (method url-fetch) + (uri "https://www.musl-libc.org/releases/musl-1.1.15.tar.gz") + (sha256 + (base32 "1ymhxkskivzph0q34zadwfglc5gyahqajm7chqqn2zraxv3lgr4p")))) + ("busybox" + ,(origin + (method url-fetch) + (uri "https://busybox.net/downloads/busybox-1.28.0.tar.bz2") + (sha256 + (base32 "1701carjf02y7r3djm1yvyd5kzrcxm4szinp7agfv7fmvfvm6ib0")))) + ("zlib" + ,(origin + (method url-fetch) + (uri "https://www.zlib.net/zlib-1.2.11.tar.gz") + (sha256 + (base32 "18dighcs333gsvajvvgqp8l4cx7h1x7yx9gd5xacnk80spyykrf3")))) + ("mbedtls" + ,(origin + (method url-fetch) + (uri "https://tls.mbed.org/download/mbedtls-2.4.2-gpl.tgz") + (sha256 + (base32 "17r9qs585gqghcf5yavb1cnvsigl0f8r0k8rklr5a855hrajs7yh")))) + ("kexec-tools" + ,(origin + (method url-fetch) + (uri "https://kernel.org/pub/linux/utils/kernel/kexec/kexec-tools-2.0.20.tar.gz") + (sha256 + (base32 "05ksnlzal3sfnix9qds6qql1sjn3fxbdwgp3ncxxxjg032cdf5nb")))) + ("qrencode" + ,(origin + (method url-fetch) + (uri "https://fukuchi.org/works/qrencode/qrencode-3.4.4.tar.gz") + (sha256 + (base32 "0wiagx7i8p9zal53smf5abrnh9lr31mv0p36wg017401jrmf5577")))) + ("pciutils" + ,(origin + (method url-fetch) + (uri "https://www.kernel.org/pub/software/utils/pciutils/pciutils-3.5.4.tar.xz") + (sha256 + (base32 "0rpy7kkb2y89wmbcbfjjjxsk2x89v5xxhxib4vpl131ip5m3qab4")))) + ("util-linux" + ,(origin + (method url-fetch) + (uri "https://www.kernel.org/pub/linux/utils/util-linux/v2.29/util-linux-2.29.2.tar.xz") + (sha256 + (base32 "1qz81w8vzrmy8xn9yx7ls4amkbgwx6vr62pl6kv9g7r0g3ba9kmc")))) + ("flashrom" + ,(origin + (method url-fetch) + (uri "https://download.flashrom.org/releases/flashrom-v1.2.tar.bz2") + (sha256 + (base32 "0ax4kqnh7kd3z120ypgp73qy1knz47l6qxsqzrfkd97mh5cdky71")))) + ("popt" + ,(origin + (method url-fetch) + (uri "https://launchpad.net/popt/head/1.16/+download/popt-1.16.tar.gz") + (sha256 + (base32 "1j2c61nn2n351nhj4d25mnf3vpiddcykq005w2h6kw79dwlysa77")))) + ("lvm2" + ,(origin + (method url-fetch) + (uri "https://mirrors.kernel.org/sourceware/lvm2/LVM2.2.02.168.tgz") + (sha256 + (base32 "03b62hcsj9z37ckd8c21wwpm07s9zblq7grfh58yzcs1vp6x38r3")))) + ("cryptsetup" + ,(origin + (method url-fetch) + (uri "https://www.kernel.org/pub/linux/utils/cryptsetup/v1.7/cryptsetup-1.7.3.tar.xz") + (sha256 + (base32 "00nwd96m9yq4k3cayc04i5y7iakkzana35zxky6hpx2w8zl08axg")))) + ("libgpg-error" + ,(origin + (method url-fetch) + (uri "https://gnupg.org/ftp/gcrypt/libgpg-error/libgpg-error-1.37.tar.bz2") + (sha256 + (base32 "0qwpx8mbc2l421a22l0l1hpzkip9jng06bbzgxwpkkvk5bvnybdk")))) + ("libgcrypt" + ,(origin + (method url-fetch) + (uri "https://gnupg.org/ftp/gcrypt/libgcrypt/libgcrypt-1.8.5.tar.bz2") + (sha256 + (base32 "1hvsazms1bfd769q0ngl0r9g5i4m9mpz9jmvvrdzyzk3rfa2ljiv")))) + ("libksba" + ,(origin + (method url-fetch) + (uri "https://gnupg.org/ftp/gcrypt/libksba/libksba-1.3.5.tar.bz2") + (sha256 + (base32 "0h53q4sns1jz1pkmhcz5wp9qrfn9f5g9i3vjv6dafwzzlvblyi21")))) + ("libassuan" + ,(origin + (method url-fetch) + (uri "https://gnupg.org/ftp/gcrypt/libassuan/libassuan-2.5.3.tar.bz2") + (sha256 + (base32 "00p7cpvzf0q3qwcgg51r9d0vbab4qga2xi8wpk2fgd36710b1g4i")))) + ("npth" + ,(origin + (method url-fetch) + (uri "https://gnupg.org/ftp/gcrypt/npth/npth-1.6.tar.bz2") + (sha256 + (base32 "1lg2lkdd3z1s3rpyf88786l243adrzyk9p4q8z9n41ygmpcsp4qk")))) + ("libusb" + ,(origin + (method url-fetch) + (uri "https://downloads.sourceforge.net/project/libusb/libusb-1.0/libusb-1.0.21/libusb-1.0.21.tar.bz2") + (sha256 + (base32 "0jw2n5kdnrqvp7zh792fd6mypzzfap6jp4gfcmq4n6c1kb79rkkx")))) + ("libusb-compat" + ,(origin + (method url-fetch) + (uri "https://downloads.sourceforge.net/project/libusb/libusb-compat-0.1/libusb-compat-0.1.5/libusb-compat-0.1.5.tar.bz2") + (sha256 + (base32 "0nn5icrfm9lkhzw1xjvaks9bq3w6mjg86ggv3fn7kgi4nfvg8kj0")))) + ("dropbear" + ,(origin + (method url-fetch) + (uri "https://matt.ucc.asn.au/dropbear/releases/dropbear-2016.74.tar.bz2") + (sha256 + (base32 "14c8f4gzixf0j9fkx68jgl85q7b05852kk0vf09gi6h0xmafl817")))) + ("pinentry" + ,(origin + (method url-fetch) + (uri "https://www.gnupg.org/ftp/gcrypt/pinentry/pinentry-1.1.0.tar.bz2") + (sha256 + (base32 "0w35ypl960pczg5kp6km3dyr000m1hf0vpwwlh72jjkjza36c1v8")))) + ("gnupg" + ,(origin + (method url-fetch) + (uri "https://www.gnupg.org/ftp/gcrypt/gnupg/gnupg-2.2.20.tar.bz2") + (sha256 + (base32 "0c6a4v9p6qzhsw1pfcwc459bxpc8hma0w9z8iqb9khvligack9q4")))) + ("slang" + ,(origin + (method url-fetch) + (uri "https://www.jedsoft.org/releases/slang/slang-2.3.1a.tar.bz2") + (sha256 + (base32 "0dlcy0hn0j6cj9qj5x6hpb0axifnvzzmv5jqq0wq14fygw0c7w2l")))) + ("newt" + ,(origin + (method url-fetch) + (uri "https://releases.pagure.org/newt/newt-0.52.20.tar.gz") + (sha256 + (base32 "1g3dpfnvaw7vljbr7nzq1rl88d6r8cmrvvng9inphgzwxxmvlrld")))) + + ;;; coreboot cross. + + ("gmp" + ,(origin + (method url-fetch) + (uri "https://ftpmirror.gnu.org/gmp/gmp-6.1.2.tar.xz") + (sha256 + (base32 "04hrwahdxyqdik559604r7wrj9ffklwvipgfxgj4ys4skbl6bdc7")))) + ("mpfr" + ,(origin + (method url-fetch) + (uri "https://ftpmirror.gnu.org/mpfr/mpfr-3.1.5.tar.xz") + (sha256 + (base32 "1g32l2fg8f62lcyzzh88y3fsh6rk539qc6ahhdgvx7wpnf1dwpq1")))) + ("mpc" + ,(origin + (method url-fetch) + (uri "https://ftpmirror.gnu.org/mpc/mpc-1.0.3.tar.gz") + (sha256 + (base32 "1hzci2zrrd7v3g1jk35qindq05hbl0bhjcyyisq9z209xb3fqzb1")))) + ("binutils-2.30" + ,(origin + (method url-fetch) + (uri "https://ftpmirror.gnu.org/binutils/binutils-2.30.tar.xz") + (sha256 + (base32 "1rhshw4m5m2pjz8g15hpiwhp52kn0pj0b5dxy0v7lwigmspbhikf")))) + ("gcc-8" + ,(origin + (method url-fetch) + (uri "https://ftpmirror.gnu.org/gcc/gcc-8.1.0/gcc-8.1.0.tar.xz") + (sha256 + (base32 "0lxil8x0jjx7zbf90cy1rli650akaa6hpk8wk8s62vk2jbwnc60x")))) + ;; Note: Non-coreboot heads really doesn't need that. + ("acpica-coreboot" + ,(origin + (method url-fetch) + (uri "https://acpica.org/sites/acpica/files/acpica-unix2-20180531.tar.gz") + (sha256 + (base32 "0q7vg1nr51f3rg16vjh4glz361a64r6gpm46fqkl2jf4fq7g43g5")))))) + (arguments + `(#:tests? #f ; Toplevel makefile has no tests. + #:make-flags + (list (string-append + "CROSS=" + (assoc-ref %build-inputs "musl-cross") + "/crossgcc/x86_64-linux-musl/bin/x86_64-linux-musl-")) + #:phases + (modify-phases %standard-phases + (replace 'configure + (lambda* (#:key inputs #:allow-other-keys) + ;; For edk2 and kexec-tools. + ;; FIXME: musl *musl-cross*/x86_64-linux-musl/bin/x86_64-linux-musl-gcc || ./x86_64-linux-musl/x86_64-linux-musl/bin/musl-gcc. + (setenv "BUILD_CC" + (string-append (assoc-ref inputs "musl-cross") + "/crossgcc/x86_64-linux-musl/bin/x86_64-linux-musl-gcc")) + ;; Disable wget. + (setenv "WGET" "true") + ; ;; Work around mcheck.h problem (in glibc!?) + ; (substitute* "modules/popt" + ; (("[.]/configure") "CFLAGS=\"-D__END_DECLS -D__BEGIN_DECLS -D__THROW\" ./configure")) + + ;; ??? +; (let ((gcc (assoc-ref inputs "gcc-8"))) +; (setenv "CPATH" +; (string-join +; (delete (string-append gcc "/include") +; (string-split (getenv "CPATH") +; #\:)) +; ":")) +; (format #t +; "environment variable `CPATH' changed to ~a~%" +; (getenv "CPATH"))) + + ;; Fix build error in busybox. + (let ((libc (assoc-ref inputs "libc"))) + (setenv "CPATH" + (string-join + (delete (string-append libc "/include") + (string-split (getenv "CPATH") + #\:)) + ":")) + (format #t + "environment variable `CPATH' changed to ~a~%" + (getenv "CPATH"))) + + ;; We don't have musl-cross for i386 target, so fake it. + (substitute* "modules/coreboot" + (("CROSS=\"[^\"]*\"") + "CROSS=\"$(CROSS)\"") + (("CFLAGS_x86_32=\"") + "CFLAGS_x86_32=\"-m32 ")) + #t)) + (add-after 'unpack 'unpack-heads-packages + (lambda* (#:key inputs #:allow-other-keys) + (define (install-file* source-key destination-directory destination-suffix) + (let* ((source-file (assoc-ref inputs source-key)) + (source-basename (basename source-file)) + (source-parts (string-split source-basename #\-)) + (drop (@ (srfi srfi-1) drop)) + (destination-file + (string-join (drop source-parts 1) "-"))) + (copy-file source-file + (string-append destination-directory "/" + destination-file destination-suffix)) + ;(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")) + (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" "target-musl-cross" "tpmtotp" "msrtools")) + (mkdir-p "build") + (mkdir-p "build/musl-cross-git/tarballs") + (mkdir-p "build/coreboot-4.8.1/util/crossgcc/tarballs") + (for-each (lambda (name) + (install-file* name "build/coreboot-4.8.1/util/crossgcc/tarballs" "")) + '("gmp" "mpfr" "mpc" "binutils-2.30" "gcc-8" "acpica-coreboot")) + (copy-recursively (assoc-ref inputs "musl-cross") "build/musl-cross-git") + ; musl-cross-38e52db8358c043ae82b346a2e6e66bc86a53bc1.tar.gz + (copy-recursively (assoc-ref inputs "flashtools") "build/flashtools-0.0.1") + + (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 our non-cross toolchain environment. + (("CROSS_TOOLS_NOCC := ") + ; CPP=" (getenv "CROSS") "cpp CXXCPP=" (getenv "CROSS") "cpp " + (string-append "CROSS_TOOLS_NOCC := C_INCLUDE_PATH= CPLUS_INCLUDE_PATH= LIBRARY_PATH= CPATH= ")) + ;; Disable git. + (("git submodule update --init") + "true submodule update --init") + ;; Re-enable our non-cross toolchain environment selectively. + (("^WGET.*") + (string-append "HOSTCC =" ; for busybox + " C_INCLUDE_PATH=" (or (getenv "GUIX_C_INCLUDE_PATH") "") + " CPLUS_INCLUDE_PATH=" (or (getenv "GUIX_CPLUS_INCLUDE_PATH") "") + " CPATH=" (or (getenv "GUIX_CPATH") "") + " LIBRARY_PATH=" (or (getenv "GUIX_LIBRARY_PATH") "") + " gcc\n" + "CC_FOR_BUILD = $(HOSTCC)\n" ; for libgpg-error + "BUILD_CC = $(HOSTCC)\n")) ; for kexec-tools + ;; Disable git, patch shebangs, and selectively re-enable host compiler. + ;; (Note: $HOSTCC is too complicated for bash, for example + ;; HOSTCC="a=b c=d gcc", then invoking $HOSTCC won't work). + (("(git clone.*)." _ tar) + (format #f "(~a) && (cd $(build)/$($1_base_dir) && for s in Makefile Makefile.in configure lib/configure config.sub config.guess tools/install.sh tools/scripts/Makefile.include tools/power/cpupower/Makefile Makefile.rules scripts/* applets/usage_compressed applets/busybox.mkll applets/busybox.mksuid po/Makefile.in.in po/Makefile.in po/Makefile make.tmpl.in *-config.in src/*-config.in src/Makefile.in applets/install.sh applets/busybox.mkll tests/pkits/* tests/openpgp/* tests/fake-pinentries/fake-pinentry.sh tests/*/Makefile tests/inittests tests/runtests tests/Makefile.in tests/runtest modules/test/runtests.sh src/test/runtests.sh mkfiles/build.sh autoconf/* demo/Makefile.in slsh/Makefile.in util/xcompile/xcompile util/genbuild_h/genbuild_h.sh ; do if [ -f \"$$$$s\" ] ; then sed -i -e 's;/bin/sh\\>;~a/bin/sh;' -e 's;/bin/pwd\\>;pwd;' -e 's;/bin/ln\\>;ln;' -e 's;/usr/bin/file\\>;file;' -e 's;/bin/false\\>;false;' -e 's;/bin/bash\\>;~a/bin/bash;' -e 's;/usr/bin/env bash;~a/bin/bash;' -e 's;git clone;true clone;' -e 's;^TERMCAP=-ltermcap;TERMCAP=;' -e 's;^HOSTCC.*$$$$;HOSTCC=C_INCLUDE_PATH=\"$(GUIX_C_INCLUDE_PATH)\" CPLUS_INCLUDE_PATH=\"$(GUIX_CPLUS_INCLUDE_PATH)\" CPATH=\"$(GUIX_CPATH)\" LIBRARY_PATH=\"$(GUIX_LIBRARY_PATH)\" gcc;' -e 's;^\\(\\$$$$HOSTCC[^|]*\\);(echo \\1 | bash);' \"$$$$s\" ; fi ; done) +" "true" (assoc-ref inputs "bash") (assoc-ref inputs "bash") (assoc-ref inputs "bash"))) + (("(tar -xf.*)." _ tar) + (format #f "(~a) && (cd $(build)/$($1_base_dir) && for s in Makefile Makefile.in configure lib/configure config.sub config.guess tools/install.sh tools/scripts/Makefile.include tools/power/cpupower/Makefile Makefile.rules scripts/* applets/usage_compressed applets/busybox.mkll applets/busybox.mksuid po/Makefile.in.in po/Makefile.in po/Makefile make.tmpl.in *-config.in src/*-config.in src/Makefile.in applets/install.sh applets/busybox.mkll tests/pkits/* tests/openpgp/* tests/fake-pinentries/fake-pinentry.sh tests/*/Makefile tests/inittests tests/runtests tests/Makefile.in tests/runtest modules/test/runtests.sh src/test/runtests.sh mkfiles/build.sh autoconf/* demo/Makefile.in slsh/Makefile.in util/xcompile/xcompile util/genbuild_h/genbuild_h.sh ; do if [ -f \"$$$$s\" ] ; then sed -i -e 's;/bin/sh\\>;~a/bin/sh;' -e 's;^TERMCAP=-ltermcap;TERMCAP=;' -e 's;/bin/pwd\\>;pwd;' -e 's;/bin/ln\\>;ln;' -e 's;/usr/bin/file\\>;file;' -e 's;/bin/false\\>;false;' -e 's;/bin/bash\\>;~a/bin/bash;' -e 's;/usr/bin/env bash;~a/bin/bash;' -e 's;git clone;true clone;' -e 's;^HOSTCC.*$$$$;HOSTCC=C_INCLUDE_PATH=\"$(GUIX_C_INCLUDE_PATH)\" CPLUS_INCLUDE_PATH=\"$(GUIX_CPLUS_INCLUDE_PATH)\" CPATH=\"$(GUIX_CPATH)\" LIBRARY_PATH=\"$(GUIX_LIBRARY_PATH)\" gcc;' -e 's;^\\(\\$$$$HOSTCC[^|]*\\);(echo \\1 | bash);' \"$$$$s\" ; fi ; done) +" tar (assoc-ref inputs "bash") (assoc-ref inputs "bash") (assoc-ref inputs "bash")))) + ;(substitute* "modules/musl-cross" + ; (("/bin/echo") "echo")) + (call-with-output-file "patches/coreboot-4.8.1/9999-shell.patch" + (lambda (port) + (format port "--- coreboot-4.8.1/util/crossgcc/buildgcc.orig 2019-09-13 14:45:12.463998974 +0200 ++++ coreboot-4.8.1/util/crossgcc/buildgcc 2019-09-13 14:46:49.808268216 +0200 +@@ -462,6 +462,13 @@ + } + done + touch \"${dir}/.unpack_success\" ++ for s in \"${dir}/Makefile\" \"${dir}/configure\" \"${dir}/config.sub\" \"${dir}/config.guess\" \"${dir}/mpn/cpp-ccas\" \"${dir}/mpn/m4-ccas\" \"${dir}/missing\" \"${dir}/\"*\"/configure\" \"${dir}/move-if-change\" \"${dir}/libgcc/mkheader.sh\" \"${dir}/gcc/genmultilib\" ++ do ++ if [ -f \"${s}\" ] ++ then ++ sed -i -e 's;/bin/sh\\>;~a/bin/sh;' \"${s}\" ++ fi ++ done + ) + } + +" (assoc-ref inputs "bash")))) + #t)) + (add-after 'install 'install-images + (lambda* (#:key outputs make-flags #:allow-other-keys) + (let* ((out (assoc-ref outputs "out")) + (make-flags-assoc (map (lambda (x) + (string-split x #\=)) + make-flags)) + (BOARD (car (assoc-ref make-flags-assoc "BOARD"))) + (out-images (string-append out "/libexec/heads/" BOARD "/images"))) + (mkdir-p out-images) + (copy-recursively (string-append "build/" BOARD) out-images) + ;; Contains timestamp. + (delete-file (string-append out-images "/hashes.txt")) + #t)))))) + (home-page "https://github.com/osresearch/heads") + (synopsis "Heads: coreboot/LinuxBoot payload") + (description "A minimal Linux that runs as a coreboot or LinuxBoot ROM +payload to provide a secure, flexible boot environment for laptops and +servers.") + (license license:gpl2+)))) From patchwork Sun May 24 22:32:09 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Danny Milosavljevic X-Patchwork-Id: 22338 Return-Path: X-Original-To: patchwork@mira.cbaines.net Delivered-To: patchwork@mira.cbaines.net Received: by mira.cbaines.net (Postfix, from userid 113) id 7637927BBE4; Sun, 24 May 2020 23:33:09 +0100 (BST) X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on mira.cbaines.net X-Spam-Level: X-Spam-Status: No, score=-2.9 required=5.0 tests=BAYES_00,MAILING_LIST_MULTI, RCVD_IN_MSPIKE_H4,RCVD_IN_MSPIKE_WL,URIBL_BLOCKED autolearn=unavailable autolearn_force=no version=3.4.2 Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mira.cbaines.net (Postfix) with ESMTP id D70E827BBE1 for ; Sun, 24 May 2020 23:33:08 +0100 (BST) Received: from localhost ([::1]:43246 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1jczB6-000717-E3 for patchwork@mira.cbaines.net; Sun, 24 May 2020 18:33:08 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:52948) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1jczB1-00070q-9j for guix-patches@gnu.org; Sun, 24 May 2020 18:33:03 -0400 Received: from debbugs.gnu.org ([209.51.188.43]:55725) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1jczB1-00060U-0e for guix-patches@gnu.org; Sun, 24 May 2020 18:33:03 -0400 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1jczB0-0002tD-Uj for guix-patches@gnu.org; Sun, 24 May 2020 18:33:02 -0400 X-Loop: help-debbugs@gnu.org Subject: [bug#37466] [WIP v6 3/4] gnu: Add heads-linuxboot. Resent-From: Danny Milosavljevic Original-Sender: "Debbugs-submit" Resent-CC: guix-patches@gnu.org Resent-Date: Sun, 24 May 2020 22:33:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 37466 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: 37466@debbugs.gnu.org Cc: Danny Milosavljevic Received: via spool by 37466-submit@debbugs.gnu.org id=B37466.159035955511046 (code B ref 37466); Sun, 24 May 2020 22:33:02 +0000 Received: (at 37466) by debbugs.gnu.org; 24 May 2020 22:32:35 +0000 Received: from localhost ([127.0.0.1]:39032 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1jczAZ-0002s0-9o for submit@debbugs.gnu.org; Sun, 24 May 2020 18:32:35 -0400 Received: from dd26836.kasserver.com ([85.13.145.193]:42328) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1jczAR-0002rT-Ex for 37466@debbugs.gnu.org; Sun, 24 May 2020 18:32:27 -0400 Received: from dayas.lan (80-110-127-207.cgn.dynamic.surfer.at [80.110.127.207]) by dd26836.kasserver.com (Postfix) with ESMTPSA id A91013361C04; Mon, 25 May 2020 00:32:26 +0200 (CEST) From: Danny Milosavljevic Date: Mon, 25 May 2020 00:32:09 +0200 Message-Id: <20200524223210.10965-4-dannym@scratchpost.org> X-Mailer: git-send-email 2.26.2 In-Reply-To: <20200524223210.10965-1-dannym@scratchpost.org> References: <20200502171118.19989-1-dannym@scratchpost.org> <20200524223210.10965-1-dannym@scratchpost.org> MIME-Version: 1.0 Tags: patch X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-BeenThere: guix-patches@gnu.org List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-patches-bounces+patchwork=mira.cbaines.net@gnu.org Sender: "Guix-patches" X-getmail-retrieved-from-mailbox: Patches * gnu/packages/heads.scm (heads-linuxboot): New variable. --- gnu/packages/heads.scm | 46 ++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 46 insertions(+) diff --git a/gnu/packages/heads.scm b/gnu/packages/heads.scm index 87ac871080..083a649783 100644 --- a/gnu/packages/heads.scm +++ b/gnu/packages/heads.scm @@ -599,3 +599,49 @@ done payload to provide a secure, flexible boot environment for laptops and servers.") (license license:gpl2+)))) + +(define heads-linuxboot + (package + (inherit heads) + (name "heads-linuxboot") + (arguments + (substitute-keyword-arguments (package-arguments heads) + ((#:phases phases) + `(modify-phases ,phases + (add-before 'unpack-heads-packages 'unpack-linuxboot + (lambda* (#:key inputs #:allow-other-keys) + (mkdir-p "build") + (copy-recursively (assoc-ref inputs "linuxboot") "build/linuxboot-git") + (copy-recursively (assoc-ref inputs "edk2") "build/linuxboot-git/edk2") + (invoke "chmod" "-R" "u+w" "build/linuxboot-git") + (chmod "build/linuxboot-git/Makefile" #o664) + (substitute* "build/linuxboot-git/dxe/Makefile" + (("/usr/bin/") "")) + #t)))))) + (native-inputs + `(("edk2" + ,(origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/linuxboot/edk2") + (commit "UDK2018") + (recursive? #t))) ; openssl + (file-name "edk2-checkout") + (sha256 + (base32 "0crjx1hg1m5mir2qm96dbcc3glrnww3ni0bc9f370qmm337wzlhi")))) + ("libuuid" ,util-linux) ; TODO: Move to heads' internal dependencies (for edk2). + ("nasm" ,nasm) ; TODO: Move to heads' internal dependencies (for edk2). + ("python" ,python-2) ; TODO: Move to heads' internal dependencies (for edk2). + ("acpica" ,acpica) ; TODO: Move to heads' internal dependencies (for edk2). + ("file" ,file) + ("linuxboot" + ,(origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/osresearch/linuxboot.git") + (commit "b5376a441e8e85cbf722e943bb8294958e87c784") + (recursive? #t))) + (file-name "linuxboot-checkout") + (sha256 + (base32 "1bdj4m9dvih9fhp5q5c6cp5sphzbpag5gp4bz1p8g9lqi49lb7av")))) + ,@(package-native-inputs heads))))) From patchwork Sun May 24 22:32:10 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Danny Milosavljevic X-Patchwork-Id: 22341 Return-Path: X-Original-To: patchwork@mira.cbaines.net Delivered-To: patchwork@mira.cbaines.net Received: by mira.cbaines.net (Postfix, from userid 113) id 9FC4C27BBE3; Sun, 24 May 2020 23:33:21 +0100 (BST) X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on mira.cbaines.net X-Spam-Level: X-Spam-Status: No, score=-2.9 required=5.0 tests=BAYES_00,MAILING_LIST_MULTI, RCVD_IN_MSPIKE_H4,RCVD_IN_MSPIKE_WL autolearn=unavailable autolearn_force=no version=3.4.2 Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mira.cbaines.net (Postfix) with ESMTP id 5FBB527BBE1 for ; Sun, 24 May 2020 23:33:21 +0100 (BST) Received: from localhost ([::1]:44070 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1jczBI-0007MV-To for patchwork@mira.cbaines.net; Sun, 24 May 2020 18:33:20 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:52950) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1jczB1-00070w-M0 for guix-patches@gnu.org; Sun, 24 May 2020 18:33:03 -0400 Received: from debbugs.gnu.org ([209.51.188.43]:55726) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1jczB1-00060Y-D0 for guix-patches@gnu.org; Sun, 24 May 2020 18:33:03 -0400 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1jczB1-0002tK-Ac for guix-patches@gnu.org; Sun, 24 May 2020 18:33:03 -0400 X-Loop: help-debbugs@gnu.org Subject: [bug#37466] [WIP v6 4/4] gnu: Add heads-qemu-linuxboot. Resent-From: Danny Milosavljevic Original-Sender: "Debbugs-submit" Resent-CC: guix-patches@gnu.org Resent-Date: Sun, 24 May 2020 22:33:03 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 37466 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: 37466@debbugs.gnu.org Cc: Danny Milosavljevic Received: via spool by 37466-submit@debbugs.gnu.org id=B37466.159035955511054 (code B ref 37466); Sun, 24 May 2020 22:33:03 +0000 Received: (at 37466) by debbugs.gnu.org; 24 May 2020 22:32:35 +0000 Received: from localhost ([127.0.0.1]:39034 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1jczAZ-0002s7-I4 for submit@debbugs.gnu.org; Sun, 24 May 2020 18:32:35 -0400 Received: from dd26836.kasserver.com ([85.13.145.193]:42330) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1jczAS-0002ra-4M for 37466@debbugs.gnu.org; Sun, 24 May 2020 18:32:28 -0400 Received: from dayas.lan (80-110-127-207.cgn.dynamic.surfer.at [80.110.127.207]) by dd26836.kasserver.com (Postfix) with ESMTPSA id 4D04E336520C; Mon, 25 May 2020 00:32:27 +0200 (CEST) From: Danny Milosavljevic Date: Mon, 25 May 2020 00:32:10 +0200 Message-Id: <20200524223210.10965-5-dannym@scratchpost.org> X-Mailer: git-send-email 2.26.2 In-Reply-To: <20200524223210.10965-1-dannym@scratchpost.org> References: <20200502171118.19989-1-dannym@scratchpost.org> <20200524223210.10965-1-dannym@scratchpost.org> MIME-Version: 1.0 Tags: patch X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-BeenThere: guix-patches@gnu.org List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-patches-bounces+patchwork=mira.cbaines.net@gnu.org Sender: "Guix-patches" X-getmail-retrieved-from-mailbox: Patches * gnu/packages/heads.scm (heads-qemu-linuxboot): New variable. --- gnu/packages/heads.scm | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/gnu/packages/heads.scm b/gnu/packages/heads.scm index 083a649783..b7e1969947 100644 --- a/gnu/packages/heads.scm +++ b/gnu/packages/heads.scm @@ -645,3 +645,12 @@ servers.") (sha256 (base32 "1bdj4m9dvih9fhp5q5c6cp5sphzbpag5gp4bz1p8g9lqi49lb7av")))) ,@(package-native-inputs heads))))) + +(define-public heads-qemu-linuxboot + (package + (inherit heads-linuxboot) + (name "heads-qemu-linuxboot") + (arguments + (substitute-keyword-arguments (package-arguments heads-linuxboot) + ((#:make-flags make-flags '()) + `(cons "BOARD=qemu-linuxboot" ,make-flags))))))