me
/
guix
Archived
1
0
Fork 0
Commit Graph

280 Commits (c585b14ae83160b7c320b4e74a3810ab5c49853a)

Author SHA1 Message Date
Josselin Poiret 68793b702e
gnu: u-boot: Fix build under Python 3.10.
* gnu/packages/patches/u-boot-fix-build-python-3.10.patch: New file.
* gnu/local.mk (dist_patch_DATA): Register it.
* gnu/packages/bootloaders.scm (u-boot): Apply patch.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2023-03-26 22:19:29 +02:00
Efraim Flashner 4f4e4abd3a
gnu: ipxe: Update to 1.21.1-1.9e1f7a3.
* gnu/packages/bootloaders.scm (ipxe): Update to 1.21.1-1.9e1f7a3.
[source]: Remove patch.
[arguments]: Add phase to skip 1 i386 firmware file. Move setting
syslinux path from make-flags to phases.
* gnu/packages/patches/ipxe-reproducible-geniso.patch: Remove file.
* gnu/local.mk (dist_patch_DATA): Remove it.
2023-03-09 15:10:16 +02:00
Efraim Flashner e9c1ea84fc
gnu: grub-efi: Remove test inputs.
* gnu/packages/bootloaders.scm (grub-efi)[native-inputs]: Remove parted,
qemu-minimal, xorriso.
2023-03-02 16:13:56 +02:00
Maxim Cournoyer 01fd830f2f
gnu: u-boot-ts7970-q-2g-1000mhz-c: Adjust description.
* gnu/packages/bootloaders.scm (u-boot-ts7970-q-2g-1000mhz-c): Adjust the
u-boot.imx file name on the SD card to the default one used by the
'u-boot-ts7970-q-2g-1000mhz-c-bootloader' bootloader.
2023-02-24 23:30:27 -05:00
Simon South df8b8f0c76
gnu: u-boot-rock64-rk3328: Fix typo that causes boot failure.
* gnu/packages/bootloaders.scm (u-boot-rock64-rk3328)[arguments]: Fix typo.

Signed-off-by: Leo Famulari <leo@famulari.name>
2023-02-24 15:44:47 -05:00
Denis 'GNUtoo' Carikli 8a68407ac1
gnu: Add u-boot-qemu-arm64.
* gnu/packages/bootloaders.scm (u-boot-qemu-arm64): New variable.
2023-02-14 17:16:18 -05:00
Denis 'GNUtoo' Carikli 36f7b1f02f
gnu: Add u-boot-qemu-arm
* gnu/packages/bootloaders.scm (u-boot-qemu-arm): New variable.
2023-02-14 17:16:17 -05:00
Maxim Cournoyer d393e89d45
gnu: Add u-boot-ts7970-q-2g-1000mhz-c.
* gnu/packages/bootloaders.scm (u-boot-ts-mx6): New variable.
(u-boot-ts7970-q-2g-1000mhz-c): Likewise.
2023-01-18 21:25:17 -05:00
Maxim Cournoyer 6433d49ab7
gnu: Add u-boot-sandbox.
* gnu/packages/bootloaders.scm (u-boot-sandbox): New variable.
2023-01-18 21:11:15 -05:00
Maxim Cournoyer 12f1b5fe4e
gnu: u-boot-puma-rk3399: Use gexps and fix build.
* gnu/packages/bootloaders.scm (u-boot-puma-rk3399)
[arguments]: Use gexps.
[native-inputs]: Turn into...
[inputs]: ... this, and use modify-inputs.

Signed-off-by: Maxim Cournoyer <maxim.cournoyer@gmail.com>
2023-01-18 21:04:25 -05:00
Maxim Cournoyer ea0d3e1ec4
gnu: u-boot-rockpro64-rk3399: Use gexps and fix build.
* gnu/packages/bootloaders.scm (u-boot-rockpro64-rk3399)
[phases]: Use gexps.
[native-inputs]: Use modify-inputs and turn into...
[inputs]: ... this.

Signed-off-by: Maxim Cournoyer <maxim.cournoyer@gmail.com>
2023-01-18 21:04:25 -05:00
Maxim Cournoyer 4dd0378d47
gnu: u-boot-sifive-unmatched: Use gexps and remove inputs labels.
* gnu/packages/bootloaders.scm (u-boot-sifive-unmatched)
[arguments]: Use gexps.  Use search-input-file.
[inputs]: Remove labels.  Use modify-inputs.

Signed-off-by: Maxim Cournoyer <maxim.cournoyer@gmail.com>
2023-01-18 21:04:25 -05:00
Maxim Cournoyer e7d82f4722
gnu: u-boot-rock64-rk3328: Use gexps and fix build.
* gnu/packages/bootloaders.scm (u-boot-rock64-rk3328)
[arguments]: Use gexps.
[native-inputs]: Remove input labels and use modify-inputs, and turn into...
[inputs]: ... this.

Signed-off-by: Maxim Cournoyer <maxim.cournoyer@gmail.com>
2023-01-18 21:04:25 -05:00
Maxim Cournoyer 126e07a28e
gnu: make-u-boot-sunxi64-package: Use gexps and fix build.
* gnu/packages/bootloaders.scm (make-u-boot-sunxi64-package)
[native-inputs]: Turn into...
[inputs]: ... this.

Signed-off-by: Maxim Cournoyer <maxim.cournoyer@gmail.com>
2023-01-18 21:04:24 -05:00
Maxim Cournoyer 3f398ea952
gnu: u-boot-firefly-rk3399: Use gexps and fix build.
* gnu/packages/bootloaders.scm (u-boot-firefly-rk3399) [arguments]: Use gexps.
[native-inputs]: Use modify-inputs and turn into...
[inputs]: ... this.

Signed-off-by: Maxim Cournoyer <maxim.cournoyer@gmail.com>
2023-01-18 21:04:24 -05:00
Maxim Cournoyer c9c195936d
gnu: u-boot-pinebook-pro-rk3399: Remove input labels and use gexps.
* gnu/packages/bootloaders.scm (u-boot-pinebook-pro-rk3399) [arguments]:
Remove input labels.
[native-inputs]: Use modify-inputs and turn into...
[inputs]: ... this.

Signed-off-by: Maxim Cournoyer <maxim.cournoyer@gmail.com>
2023-01-18 21:04:24 -05:00
Maxim Cournoyer 980abad24d
gnu: make-u-boot-package: Allow disabling cross-compilation.
* gnu/packages/bootloaders.scm (make-u-boot-package): Accept #f for the
TRIPLET argument to disable cross-compilation.  Update doc.

Signed-off-by: Maxim Cournoyer <maxim.cournoyer@gmail.com>
2023-01-18 21:04:24 -05:00
Maxim Cournoyer c6a8b1384d
gnu: make-uboot-package: Simplify build.
* gnu/packages/bootloaders.scm (make-u-boot-package) <same-arch?>: Rename
procedure to 'native-build?'.
[native-inputs]: Remove field.
[arguments]: Specify the #:target argument, when not natively building.
Adjust for the above renaming.

Signed-off-by: Maxim Cournoyer <maxim.cournoyer@gmail.com>
2023-01-18 21:04:24 -05:00
Maxim Cournoyer 680a768384
gnu: u-boot: Reduce the number of native inputs.
The extra python inputs are only needed for running the u-boot-test-tools test
suite.  This lowers the requirements for cross-building the various u-boot
packages.

* gnu/packages/bootloaders.scm (u-boot) [native-inputs]: Delete bc.
Move python-coverage, python-pycryptodomex and python-pytest to...
* gnu/packages/bootloaders.scm (u-boot-tools) [native-inputs]: ... here.

Signed-off-by: Maxim Cournoyer <maxim.cournoyer@gmail.com>
2023-01-18 21:04:23 -05:00
Maxim Cournoyer 64e526c374
gnu: make-u-boot-package: Install .imx files.
* gnu/packages/bootloaders.scm
(make-u-boot-package) [phases] <install>: Add imx to the regexp of files
considered for installation.

Signed-off-by: Maxim Cournoyer <maxim.cournoyer@gmail.com>
2023-01-18 21:04:23 -05:00
Maxim Cournoyer d970d6a04a
gnu: make-u-boot-package: Add a u-boot argument and use gexps.
And have that u-boot argument used as the complete base of the template, so
that a user can override it.

* gnu/packages/bootloaders.scm (make-u-boot-package): New U-BOOT argument.
Document it.
[native-inputs]: Move the native-inputs of U-BOOT first, so that the
cross compilation tools can be overridden via U-BOOT.
[arguments]: Rewrite using substitute-keyword-arguments, extending rather than
overriding most arguments.  Use gexps.  Do not bind OUTPUTS.

Signed-off-by: Maxim Cournoyer <maxim.cournoyer@gmail.com>
2023-01-18 21:04:23 -05:00
Maxim Cournoyer 358ae8e12e
gnu: Remove u-boot-malta.
Relates to <https://issues.guix.gnu.org/60786>.

The mips64el architecture is not currently supported, causing (guix platform)
to raise an exception when attempting to cross-build the package.

* gnu/packages/bootloaders.scm (u-boot-malta): Delete variable.

Signed-off-by: Maxim Cournoyer <maxim.cournoyer@gmail.com>
2023-01-18 20:53:15 -05:00
Maxim Cournoyer c42ae60a84
gnu: patman: Fix incomplete get-maintainer patch.
The full set of patches already merged into the U-Boot is included for
simplicity and avoiding mistakes like the previous one, where a conflicting
hunk got dropped, causing the following error when running patman:

    WARNING: Unknown setting get_maintainer_script

* gnu/packages/bootloaders.scm (u-boot) [source]: Replace the
u-boot-patman-fix-help.patch, u-boot-patman-local-conf.patch and
u-boot-patman-get-maintainer.patch with u-boot-patman-guix-integration.patch.
* gnu/local.mk (dist_patch_DATA): Update patch registrations.
* gnu/packages/patches/u-boot-patman-fix-help.patch: Delete file.
* gnu/packages/patches/u-boot-patman-get-maintainer.patch: Likewise.
* gnu/packages/patches/u-boot-patman-local-conf.patch: Likewise.
* gnu/packages/patches/u-boot-patman-guix-integration.patch: New file.

Reported-by: Jelle Licht <jlicht@fsfe.org>
2023-01-10 11:37:29 -05:00
Marius Bakke d15972194a
gnu: ipxe: Enable syslinux only on i686-linux and x86_64-linux.
* gnu/packages/bootloaders.scm (ipxe)[native-inputs]: Conditionally add
SYSLINUX.
[arguments]: Adjust accordingly.
2023-01-07 21:04:27 +01:00
Marius Bakke b435f631a6
gnu: ipxe: Use G-expression.
* gnu/packages/bootloaders.scm (ipxe)[arguments]: Convert to G-expression.
While at it, remove trailing #t's and label usage.
2023-01-07 21:04:27 +01:00
Maxim Cournoyer 5dc8cf849b
gnu: dtc: Install documentation.
* gnu/packages/bootloaders.scm (dtc) [modules]: New argument.
[phases]: Add install-doc phase.
2023-01-03 16:03:26 -05:00
Maxim Cournoyer a5b00d2733
gnu: dtc: Use gexps.
* gnu/packages/bootloaders.scm (dtc) [arguments]: Use gexps.
2023-01-03 16:03:26 -05:00
Maxim Cournoyer ec3c37d733
gnu: dtc: Move native-inputs and inputs after arguments.
* gnu/packages/bootloaders.scm (dtc) [native-inputs, inputs]: Move after the
arguments field, per convention.
2023-01-03 16:03:26 -05:00
Maxim Cournoyer d6ea9f8b38
gnu: u-boot-am335x-boneblack: Revert to old name.
This reverts to the name this package had previous to commit
c2c1dfdf57 ("gnu: bootloader: Add U-Boot
packages for Raspberry Pi models."), which caused the package name to be
derived from the board name.

* gnu/packages/bootloaders.scm (u-boot-am335x-evm-boneblack): Remove the
NAME-SUFFIX keyword argument.  Specify the full name via the name field.
* gnu/bootloader/u-boot.scm (u-boot-beaglebone-black-bootloader): Adjust to
the renamed package.

Reported-by: Vagrant Cascadian <vagrant@debian.org>
2022-12-28 22:14:16 -05:00
Maxim Cournoyer bcd131dafb
gnu: Add patman.
* gnu/packages/bootloaders.scm (patman): New variable.
* gnu/packages/patches/u-boot-patman-fix-help.patch: New patch.
* gnu/packages/patches/u-boot-patman-get-maintainer.patch: Likewise.
* gnu/packages/patches/u-boot-patman-local-conf.patch: Likewise.
* gnu/local.mk (dist_patch_DATA): Register them.
2022-12-28 16:03:20 -05:00
Maxim Cournoyer 0d4587d65f
gnu: Add u-boot-documentation.
* gnu/packages/patches/u-boot-infodocs-target.patch: New patch.
* gnu/local.mk: (dist_patch_DATA): Register it.
* gnu/packages/bootloaders.scm (u-boot): Apply it.
(u-boot-documentation): New variable.
2022-12-28 16:03:20 -05:00
Efraim Flashner 10a661c8c8
gnu: syslinux: Honor #:tests? flag.
* gnu/packages/bootloaders.scm (syslinux)[arguments]: Adjust custom
'check phase to honor the #:tests? flag.
2022-12-25 22:07:32 +02:00
Efraim Flashner 6ce7904a85
gnu: ipxe-qemu: Fix building on 32-bit systems.
* gnu/packages/bootloaders.scm (ipxe-qemu)[native-inputs]: When building
from a 32-bit system add a binutils variant capable of assembling 64-bit
instructions and an ld-wrapper using it.
2022-12-22 22:09:58 +02:00
Marius Bakke 9279775d69
gnu: iPXE: Embed the actual package version.
* gnu/packages/bootloaders.scm (ipxe)[arguments]: Add phase to set the proper
version.
2022-12-22 16:50:47 +01:00
Marius Bakke 209aed9511
gnu: Install QEMU firmare files to 'share/qemu'.
This paves the way for using a native search path in the future.

* gnu/packages/bootloaders.scm (ipxe-qemu)[arguments]: Install firmware files
to 'share/qemu' instead of 'share/firmware'.
* gnu/packages/firmware.scm (seabios-qemu)[arguments]: Likewise.
* gnu/packages/virtualization.scm (qemu)[arguments]: Adjust accordingly.
2022-12-22 16:50:47 +01:00
Marius Bakke a5dbe84a61
gnu: ipxe-qemu: Cross-compile on non x86_64.
* gnu/packages/bootloaders.scm (ipxe-qemu)[native-inputs]: When not targeting
x86_64, add CROSS-GCC and CROSS-BINUTILS.
[arguments]: Set CROSS_COMPILE in that case.
2022-12-22 16:50:47 +01:00
Maxim Cournoyer c04528d2a2
gnu: u-boot-am335x-evm-boneblack: Fix variable name.
* gnu/packages/bootloaders.scm (u-boot-am335x-boneblack): Rename to...
(u-boot-am335x-evm-boneblack), to match the package name.
* gnu/bootloader/u-boot.scm (u-boot-beaglebone-black-bootloader): Adjust
accordingly.
2022-12-20 21:29:25 -05:00
Maxim Cournoyer 57abc2b7b2
gnu: u-boot: Add pkg-config to native inputs.
* gnu/packages/bootloaders.scm (u-boot) [native-inputs]: Add pkg-config.
2022-12-20 21:19:37 -05:00
Maxim Cournoyer 4a4f2d226e
gnu: u-boot-tools: Delete trailing #t.
* gnu/packages/bootloaders.scm (u-boot-tools) [phases]: Delete trailing #t.
2022-12-20 21:16:16 -05:00
Marius Bakke 2f2a9aca4b
gnu: Add ipxe-qemu.
* gnu/packages/bootloaders.scm (ipxe-qemu): New variable.
2022-12-20 15:29:11 +01:00
Maxim Cournoyer 1b6e251ed1
gnu: make-u-boot-package: Build verbosily.
* gnu/packages/bootloaders.scm (make-u-boot-package)
[arguments] <make-flags>: Add KBUILD_VERBOSE=1.
2022-12-14 10:38:54 -05:00
Ricardo Wurmus 7c8832e106
gnu: u-boot: Use plain list of inputs.
* gnu/packages/bootloaders.scm (u-boot)[native-inputs]: Drop input labels.
2022-12-12 14:37:03 +01:00
Ricardo Wurmus 5b0e656e57
gnu: u-boot: Update to 2022.10.
* gnu/packages/bootloaders.scm (u-boot): Update to 2022.10.
* gnu/packages/patches/u-boot-allow-disabling-openssl.patch: Disable
fit_pre_load_data, which depends on openssl.
2022-12-12 14:37:03 +01:00
Stefan c2c1dfdf57
gnu: bootloader: Add U-Boot packages for Raspberry Pi models.
* gnu/packages/bootloader.scm (make-u-boot-package): Add keyword
parameters 'name-suffix' and 'append-description'.
(make-u-boot-bin-package): New procedure
(%u-boot-rpi-efi-configs): New variable.
(%u-boot-rpi-description-32-bit, %u-boot-rpi-description-64-bit,
%u-boot-rpi-efi-description, %u-boot-rpi-efi-description-32-bit):
New variables.
(u-boot-rpi-2-efi, u-boot-rpi-2-bin, u-boot-rpi-2-efi-bin})
(u-boot-rpi-3-32b-efi, u-boot-rpi-3-32b-bin, u-boot-rpi-3-32b-efi-bin)
(u-boot-rpi-4-32b-efi, u-boot-rpi-4-32b-bin, u-boot-rpi-4-32b-efi-bin)
(u-boot-rpi-arm64-efi, u-boot-rpi-arm64-bin)
u-boot-rpi-arm64-efi-bin): New packages.
(u-boot-tools): Reuse the description of u-boot.
(u-boot-am335x-boneblack, u-boot-am335x-evm)
(u-boot-nintendo-nes-classic-edition, u-boot-novena): Make use of new keyword
parameters of make-u-boot-package.

Signed-off-by: Maxim Cournoyer <maxim.cournoyer@gmail.com>
2022-12-01 14:31:28 -05:00
Stefan a9acbf919a
gnu: bootloader: Rework chaining, add grub-efi-netboot-removable-bootloader.
This rework allows to use an (efi-bootloader-chain) like this, which is able
to boot over network or local storage, depending on whether the bootloader
target has support for symbolic links:

   (operating-system
    (bootloader
      (bootloader-configuration
        (bootloader
          (efi-bootloader-chain
            grub-efi-netboot-removable-bootloader
            #:packages (list my-firmware-package
                             my-u-boot-package)
            #:files (list (plain-file "config.txt"
                                      "kernel=u-boot.bin"))
            #:hooks my-special-bootloader-profile-manipulator))
        (targets '("/booti/efi"))
        …))
    …)

* doc/guix.texi (Bootloader Configuration): Describe the new
‘grub-efi-netboot-removable-bootloader’.  Mention the file names used and that
the UEFI Boot Manager is not modified.  Advise to disable write-access over
TFTP.
* gnu/bootloader.scm (efi-bootloader-profile): Allow a list of packages and
collect everything directly in the profile, avoiding a separate collection
directory.  Renamed the profile from "bootloader-profile" to
"efi-bootloader-profile".
[bootloader-collection]: Rename to...
[efi-bootloader-profile-hook]: ... this and remove unused modules.  Do not
create the now extraneous collection directory.
(efi-bootloader-chain): Add PACKAGES and DISK-IMAGE-INSTALLER arguments.
Remove handling of the collection directory, now only calling the given
installer procedure.
* gnu/bootloader/grub.scm (make-grub-efi-netboot-installer): New helper.
(make-grub-configuration): New helper based on (grub-configuration-file).  Add
a GRUB argument, fix indentation, remove previous code retrieving GRUB from
CONFIG.
(grub-configuration-file): Make use of make-grub-configuration.
(grub-efi-configuration-file): New procedure.
(grub-cfg): New variable to replace "/boot/grub/grub.cfg".
(install-grub-efi-netboot): Remove, splitting logic to...
(make-grub-efi-netboot-installer): ... this new helper procedure, as well as
to make-grub-efi-netboot, added below.
(grub-bootloader): Adjust to use the GRUB-CFG.
(grub-efi-bootloader): Likewise.  Removed inheritance and declare all fields
explicitly.
(make-grub-efi-netboot-bootloader): New procedure.
(grub-efi-netboot-bootloader): Use it.
(grub-efi-netboot-removable-bootloader): New variable.
* gnu/packages/bootloaders.scm (make-grub-efi-netboot): New procedure.

Signed-off-by: Maxim Cournoyer <maxim.cournoyer@gmail.com>
Modified-by: Maxim Cournoyer <maxim.cournoyer@gmail.com>
2022-12-01 14:31:28 -05:00
Maxim Cournoyer df25165530
gnu: u-boot-pinebook-pro-rk3399: Fix indentation.
* gnu/packages/bootloaders.scm (u-boot-pinebook-pro-rk3399): Fix indentation.
2022-12-01 11:57:10 -05:00
Maxim Cournoyer 24b0fe3463
gnu: u-boot-rockpro64-rk3399: Fix indentation.
* gnu/packages/bootloaders.scm (u-boot-rockpro64-rk3399): Fix indentation.
2022-12-01 11:57:10 -05:00
Maxim Cournoyer a18aaa26dc
gnu: u-boot-firefly-rk3399: Fix indentation.
* gnu/packages/bootloaders.scm (u-boot-firefly-rk3399): Fix indentation.
2022-12-01 11:57:10 -05:00
Maxim Cournoyer d1ef19e76e
gnu: u-boot-puma-rk3399: Fix indentation.
* gnu/packages/bootloaders.scm (u-boot-puma-rk3399): Fix indentation.
2022-12-01 11:57:10 -05:00
Maxim Cournoyer 8cac149ec5
gnu: u-boot-nintendo-nes-classic-edition: Fix indentation.
* gnu/packages/bootloaders.scm
(u-boot-nintendo-nes-classic-edition): Fix indentation.
2022-12-01 11:57:09 -05:00