Message ID | 20200412232831.5876-1-me@tobias.gr |
---|---|
State | Superseded |
Headers | show |
Series | [bug#40579,v2] gnu: Add iPXE. | expand |
Context | Check | Description |
---|---|---|
cbaines/comparison | success | View comparision |
cbaines/git branch | success | View Git branch |
cbaines/applying patch | success | View Laminar job |
Thanks. ipxe.iso is not reproducible it seems. --- /gnu/store/gbik17qks3cijj2jazx9a6z1v7a5mari-ipxe-1.20.1 +++ /gnu/store/gbik17qks3cijj2jazx9a6z1v7a5mari-ipxe-1.20.1-check ├── share │ ├── ipxe │ │ ├── ipxe.iso │ │ │┄ xxd not available in path. Falling back to Python hexlify. │ │ │┄ 'isoinfo' not available in path. Falling back to binary comparison. │ │ │ @@ -7,15 +7,15 @@ │ │ │ 206d697373696e67206f7220636f72727570742e0d0a66606631d2660306f87b │ │ │ 661316fc7b6652665006536a016a1089e666f736e87bc0e40688e188c592f636 │ │ │ ee7b88c608e141b801028a16f27bcd138d64106661c3e81e004f706572617469 │ │ │ 6e672073797374656d206c6f6164206572726f722e0d0a5eacb40e8a3e6204b3 │ │ │ 07cd103c0a75f1cd18f4ebfd0000000000000000000000000000000000000000 │ │ │ 0000000000000000000000000000000000000000000000000000000000000000 │ │ │ 0000000000000000000000000000000000000000000000000000000000000000 │ │ │ -0000000000000000000000000000000088000000000000005e67d53200008000 │ │ │ +00000000000000000000000000000000880000000000000067458b6b00008000 │ │ │ 0100173f20000000000000080000000000000000000000000000000000000000 │ │ │ 00000000000000000000000000000000000000000000000000000000000055aa │ │ │ 0000000000000000000000000000000000000000000000000000000000000000 │ │ │ 0000000000000000000000000000000000000000000000000000000000000000 │ │ │ 0000000000000000000000000000000000000000000000000000000000000000 │ │ │ 0000000000000000000000000000000000000000000000000000000000000000 │ │ │ 0000000000000000000000000000000000000000000000000000000000000000 │ │ │ @@ -1023,15 +1023,15 @@ │ │ │ 0000000000000000000000000000000000000000000000000000000000000000 │ │ │ 0000000000000000000000000000000000000000000000000000000000000000 │ │ │ 0143443030310100202020202020202020202020202020202020202020202020 │ │ │ 2020202020202020695058452020202020202020202020202020202020202020 │ │ │ 2020202020202020000000000000000070010000000001700000000000000000 │ │ │ 0000000000000000000000000000000000000000000000000100000101000001 │ │ │ 000808000a0000000000000a1500000000000000000000160000000022001300 │ │ │ -000000000013000800000000080078040f142712000200000100000101002020 │ │ │ +000000000013000800000000080078040f142617000200000100000101002020 │ │ │ 2020202020202020202020202020202020202020202020202020202020202020 │ │ │ 2020202020202020202020202020202020202020202020202020202020202020 │ │ │ 2020202020202020202020202020202020202020202020202020202020202020 │ │ │ 2020202020202020202020202020202020202020202020202020202020204854 │ │ │ 54503a2f2f495058452e4f52472f202020202020202020202020202020202020 │ │ │ 2020202020202020202020202020202020202020202020202020202020202020 │ │ │ 2020202020202020202020202020202020202020202020202020202020202020 │ │ │ @@ -1210,37 +1210,37 @@ │ │ │ 0000000000000000000000000000000000000000000000000000000000000000 │ │ │ 0000000000000000000000000000000000000000000000000000000000000000 │ │ │ 0000000000000000000000000000000000000000000000000000000000000000 │ │ │ 0000000000000000000000000000000000000000000000000000000000000000 │ │ │ 0000000000000000000000000000000000000000000000000000000000000000 │ │ │ 0000000000000000000000000000000000000000000000000000000000000000 │ │ │ 0000000000000000000000000000000000000000000000000000000000000000 │ │ │ -84001300000000000013000800000000080078040f1427120002000001000001 │ │ │ +84001300000000000013000800000000080078040f1426170002000001000001 │ │ │ 010053500701beef0050582401c0410000000041c00100000000000001e70300 │ │ │ -00000003e7307500000000753054461a010e78040f1427120078040f14271200 │ │ │ -78040f1427120043451c0114000000000000140000000000000000ed00000000 │ │ │ -0000ed0060001300000000000013000800000000080078040f14271200020000 │ │ │ +00000003e7307500000000753054461a010e78040f1426170078040f14261700 │ │ │ +78040f1426170043451c0114000000000000140000000000000000ed00000000 │ │ │ +0000ed0060001300000000000013000800000000080078040f14261700020000 │ │ │ 01000001010150582401c0410000000041c00100000000000001e70300000000 │ │ │ -03e7307500000000753054461a010e78040f1427120078040f1427120078040f │ │ │ -1427120078002100000000000021000800000000080046010100000100000000 │ │ │ +03e7307500000000753054461a010e78040f1426170078040f1426170078040f │ │ │ +1426170078002100000000000021000800000000080046010100000100000000 │ │ │ 010000010a626f6f742e6361743b310050582401008100000000810001000000 │ │ │ 00000001e7030000000003e7307500000000753054461a010e46010100000100 │ │ │ 46010100000100460101000001004e4d0d0100626f6f742e6361740078003700 │ │ │ -000000000037c50a050000050ac578040f14271200000000010000010a697078 │ │ │ +000000000037c50a050000050ac578040f14261700000000010000010a697078 │ │ │ 652e6b726e3b310050582401a4810000000081a40100000000000001e7030000 │ │ │ -000003e7307500000000753054461a010e78040f1427120078040f1427120078 │ │ │ -040f142712004e4d0d0100697078652e6b726e008000220000000000002200a8 │ │ │ -00000000a80078040f14271200000000010000010e69736f6c696e75782e6269 │ │ │ +000003e7307500000000753054461a010e78040f1426170078040f1426170078 │ │ │ +040f142617004e4d0d0100697078652e6b726e008000220000000000002200a8 │ │ │ +00000000a80078040f14261700000000010000010e69736f6c696e75782e6269 │ │ │ 6e3b31005058240124810000000081240100000000000001e7030000000003e7 │ │ │ -307500000000753054461a010e78040f1427120078040f1427120078040f1427 │ │ │ -12004e4d11010069736f6c696e75782e62696e008000d9000000000000d99200 │ │ │ -00000000009278040f14271200000000010000010e69736f6c696e75782e6366 │ │ │ +307500000000753054461a010e78040f1426170078040f1426170078040f1426 │ │ │ +17004e4d11010069736f6c696e75782e62696e008000d9000000000000d99200 │ │ │ +00000000009278040f14261700000000010000010e69736f6c696e75782e6366 │ │ │ 673b310050582401a4810000000081a40100000000000001e7030000000003e7 │ │ │ -307500000000753054461a010e78040f1427120078040f1427120078040f1427 [...] Otherwise really cool!
Hello, On 15/04/2020 22:41, Danny Milosavljevic wrote: > ipxe.iso is not reproducible it seems. > > --- /gnu/store/gbik17qks3cijj2jazx9a6z1v7a5mari-ipxe-1.20.1 > +++ /gnu/store/gbik17qks3cijj2jazx9a6z1v7a5mari-ipxe-1.20.1-check > ├── share > │ ├── ipxe > │ │ ├── ipxe.iso > │ │ │┄ xxd not available in path. Falling back to Python hexlify. > │ │ │┄ 'isoinfo' not available in path. Falling back to binary comparison. > [...] > > Otherwise really cool! I'll try to have a look, but that's a first for me... Does this prevent merging ?
diff --git a/gnu/packages/bootloaders.scm b/gnu/packages/bootloaders.scm index cadcc937e1..112b079c1b 100644 --- a/gnu/packages/bootloaders.scm +++ b/gnu/packages/bootloaders.scm @@ -7,10 +7,11 @@ ;;; Copyright © 2016, 2017 Danny Milosavljevic <dannym@scratchpost.org> ;;; Copyright © 2016, 2017 David Craven <david@craven.ch> ;;; Copyright © 2017, 2018 Efraim Flashner <efraim@flashner.co.il> -;;; Copyright © 2018, 2019 Tobias Geerinckx-Rice <me@tobias.gr> +;;; Copyright © 2018, 2019, 2020 Tobias Geerinckx-Rice <me@tobias.gr> ;;; Copyright © 2019 nee <nee@cock.li> ;;; Copyright © 2019 Mathieu Othacehe <m.othacehe@gmail.com> ;;; Copyright © 2020 Björn Höfling <bjoern.hoefling@bjoernhoefling.de> +;;; Copyright © 2020 Vincent Legoll <vincent.legoll@gmail.com> ;;; ;;; This file is part of GNU Guix. ;;; @@ -834,6 +835,73 @@ to Novena upstream, does not load u-boot.img from the first partition.") `(("firmware" ,arm-trusted-firmware-rk3399) ,@(package-native-inputs base)))))) +(define-public ipxe + (package + (name "ipxe") + (version "1.20.1") + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/ipxe/ipxe") + (commit (string-append "v" version)))) + (file-name (string-append name "-" version "-checkout")) + (sha256 + (base32 + "0w7h7y97gj9nqvbmsg1zp6zj5mpbbpckqbbx7bpp6k3ahy5fk8zp")))) + (build-system gnu-build-system) + (arguments + `(#:make-flags + (list "ECHO_E_BIN_ECHO=echo" + "ECHO_E_BIN_ECHO_E=echo -e" + + ;; cdrtools' mkisofs will silently ignore a missing isolinux.bin! + ;; Luckily xorriso is more strict. + (string-append "ISOLINUX_BIN=" (assoc-ref %build-inputs "syslinux") + "/share/syslinux/isolinux.bin") + + ;; Build reproducibly. + "BUILD_ID_CMD=echo -n 0x78697547") + #:phases + (modify-phases %standard-phases + (add-after 'unpack 'enter-source-directory + (lambda _ (chdir "src") #t)) + (add-before 'configure 'add-make-install-target + (lambda* (#:key outputs #:allow-other-keys) + (let* ((out (assoc-ref outputs "out")) + (ipxe (string-append out "/share/ipxe"))) + (substitute* "Makefile" + (("^install :") + (string-append "install :" + "\n\t@$(MKDIR) -p " ipxe + "\n\t@$(CP) $(ALL) " ipxe + "\n\n__old_install :"))) + #t))) + (add-before 'configure 'use-xorriso + ;; Use xorriso's mkisofs emulation, which is better maintained and + ;; respects SOURCE_DATE_EPOCH to create a reproducible image. + (lambda _ + (substitute* "util/geniso" + ((" genisoimage ") " \"xorriso -as mkisofs\" ")) + #t)) + (delete 'configure) ; no configure script + (add-after 'install 'leave-source-directory + (lambda _ (chdir "..") #t))) + #:tests? #f)) ; no test suite + (native-inputs + `(("perl" ,perl) + ("syslinux" ,syslinux) + ("xorriso" ,xorriso))) + (home-page "https://ipxe.org") + (synopsis "PXE-compliant network boot firmware") + (description "iPXE is a network boot firmware. It provides a full PXE +implementation enhanced with additional features such as booting from: a web +server via HTTP, an iSCSI SAN, a Fibre Channel SAN via FCoE, an AoE SAN, a +wireless network, a wide-area network, an Infiniband network. It allows to +control the boot process with a script. You can use iPXE to replace the +existing PXE ROM on your network card, or you can chainload into iPXE to obtain +the features of iPXE without the hassle of reflashing.") + (license license:gpl2+))) + (define-public vboot-utils (package (name "vboot-utils")