me
/
guix
Archived
1
0
Fork 0
Commit Graph

248 Commits (2967abf1a2ae6787842c04752949f3c214da9338)

Author SHA1 Message Date
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
Maxim Cournoyer e99dc7353f
gnu: make-u-boot-package: Fix indentation.
* gnu/packages/bootloaders.scm (make-u-boot-package): Fix indentation.
2022-12-01 11:57:09 -05:00
Maxim Cournoyer 8d1d209ffe
gnu: u-boot-tools: Fix indentation.
* gnu/packages/bootloaders.scm (u-boot-tools): Fix indentation.
2022-12-01 11:57:09 -05:00
Maxim Cournoyer 650636baca
gnu: dtc: Fix indentation.
* gnu/packages/bootloaders.scm (dtc): Fix indentation.
2022-12-01 11:57:09 -05:00
Maxim Cournoyer 76259d7305
gnu: grub-efi32: Fix indentation.
* gnu/packages/bootloaders.scm (grub-efi32): Fix indentation.
2022-12-01 11:57:09 -05:00
Maxim Cournoyer 1a1a5aad2c
gnu: grub: Normalize indentation.
* gnu/packages/bootloaders.scm (grub): Re-indent package and remove trailing #t.
2022-12-01 11:57:08 -05:00
Stefan a3f638e748
build: kconfig: Add new module to modify defconfig files.
* guix/build/kconfig.scm: New file.
* Makefile.am: Register it.
* gnu/packages/bootloaders.scm (make-u-boot-package)
(make-u-boot-sunxi64-package): Add DEFCONFIGS and CONFIGS arguments.  Remove
dead code.
(u-boot-am335x-boneblack, u-boot-pinebook)
(u-boot-novena,u-boot-rockpro64-rk3399): Simplify packages by using the new
keyword arguments.

Signed-off-by: Maxim Cournoyer <maxim.cournoyer@gmail.com>
Modified-by: Maxim Cournoyer <maxim.cournoyer@gmail.com>
2022-12-01 11:57:06 -05:00
Marius Bakke b0bd3ef9aa
gnu: u-boot-tools: Disable check for 100% coverage.
* gnu/packages/bootloaders.scm (u-boot-tools)[arguments]: Add substitution.
2022-09-15 16:53:07 +02:00
Tobias Geerinckx-Rice 25e9bb05da
gnu: os-prober: Update to 1.81.
* gnu/packages/bootloaders.scm (os-prober): Update to 1.81.
2022-08-14 02:00:00 +02:00
Efraim Flashner 116c0268ff
gnu: grub-efi32: Fix building on aarch64-linux.
* gnu/packages/bootloaders.scm (grub-efi32)[arguments]: When building
for aarch64-linux add TARGET_CC to configure-flags.
[native-inputs]: When building for aarch64-linux add cross-gcc and
cross-binutils for arm-linux-gnueabihf.
2022-08-05 02:52:58 +03:00
Denis 'GNUtoo' Carikli 62c86c8391
image: Add support for 32bit UEFI.
* gnu/bootloader/grub.scm (grub-efi32-bootloader): New variable.
(install-grub-efi32): New variable.
* gnu/build/bootloader.scm (install-efi): Add a 'targets' keyword
argument.
(install-efi-loader): Likewise.
* gnu/build/image.scm (initialize-efi32-partition): New procedure.
* gnu/packages/bootloaders.scm (grub-efi32): New variable.
* gnu/system/image.scm (esp32-partition): New variable
(efi32-disk-image): New variable.
(efi32-raw-image-type): New variable.
(system-disk-image)[partition-image]: Set '#:grub-efi32' when
calling the partition initializer.

Signed-off-by: Mathieu Othacehe <othacehe@gnu.org>
2022-06-24 10:21:06 +02:00
Tobias Geerinckx-Rice 3666e5e409
gnu: os-prober: Update to 1.80.
* gnu/packages/bootloaders.scm (os-prober): Update to 1.80.
[arguments]: Don't explicitly return #t from phases.
2022-05-29 02:00:10 +02:00
Ricardo Wurmus d643ef38ed
gnu: u-boot-rockpro64-rk3399: Add support for booting from SCSI/SATA.
* gnu/packages/bootloaders.scm (u-boot-rockpro64-rk3399)[arguments]: Add
  'patch-config phase to support SCSI/SATA disks.

Signed-off-by: Vagrant Cascadian <vagrant@debian.org>
2022-04-05 12:05:28 -07:00
Vagrant Cascadian 4a0d045990
gnu: u-boot: Update to 2022.04.
* gnu/packages/bootloaders.scm (u-boot): Update to 2022.01.
  [native-inputs]: Add gnutls, tinfo, libuuid.
  (u-boot-qemu-riscv64-smode): Drop custom
  patches.
* gnu/packages/patches/u-boot-allow-disabling-openssl.patch: Refresh patch.
* gnu/packages/patches/u-boot-riscv64-fix-extlinux.patch: Remove patch,
  applied upstream.
* gnu/local.mk (dist_patch_DATA): Update with removed patches.

Co-authored-by: Ricardo Wurmus <rekado@elephly.net>
2022-04-05 12:05:22 -07:00
Efraim Flashner 027ce78933
gnu: dtc: Use pkg-config-for-target.
* gnu/packages/bootloaders.scm (dtc)[arguments]: Adjust custom
'patch-pkg-config phase to use pkg-config-for-target.
2022-03-07 22:53:58 +02:00
Efraim Flashner 54933a4047
gnu: dtc: Use different source tarball.
The xz compressed source failed to unpack on riscv64-linux.

* gnu/packages/bootloaders.scm (dtc)[source]: Use gzipped tarball.
2022-03-07 22:53:57 +02:00
Efraim Flashner 0dc99fd149
gnu: dtc: Don't depend unconditionally on valgrind.
* gnu/packages/bootloaders.scm (dtc)[native-inputs]: Only include
valgrind when building on a system which supports valgrind.
2022-02-28 14:09:07 +02:00
Efraim Flashner 1acd0bf826
gnu: u-boot-sifive-unmatched: Build with opensbi.
* gnu/packages/bootloaders.scm (u-boot-sifive-unmatched)[arguments]: Add
phase to set location of opensbi firmware.
[inputs]: Add opensbi-generic.

Signed-off-by: Vagrant Cascadian <vagrant@debian.org>
2021-12-30 20:11:13 -08:00
Ludovic Courtès 8394619bac
gnu: Simplify package inputs.
This commit was obtained by running:

  ./pre-inst-env guix style

without any additional argument.
2021-12-13 17:48:25 +01:00
Ricardo Wurmus 9bc0f45df5
Merge remote-tracking branch 'origin/master' into core-updates-frozen 2021-12-05 19:17:41 +01:00
Pierre Langlois bf1e46e959
gnu: u-boot: Fix rk3399 boot from emmc.
* gnu/packages/bootloaders.scm (%u-boot-rk3399-enable-emmc-phy-patch): New
variable.
(u-boot)[origin]: Register it.
* gnu/packages/patches/u-boot-rk3399-enable-emmc-phy.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add it.
2021-11-27 15:03:33 +00:00
Ludovic Courtès 3a317f7476
Merge branch 'master' into core-updates-frozen 2021-11-17 23:43:14 +01:00
Vagrant Cascadian 2ebcc5387b
gnu: u-boot, u-boot-am335x-boneblack, u-boot-novena: Fix lint warnings.
* gnu/packages/bootloaders.scm (u-boot)[description]: Add second space after
  sentence.
  (u-boot-am335x-boneblack)[description]: Likewise.
  (u-boot-novena)[description]: Likewise.
2021-11-14 13:47:51 -08:00
Efraim Flashner bc5155b952
Merge remote-tracking branch 'origin/master' into core-updates-frozen 2021-10-31 14:49:47 +02:00
Vagrant Cascadian 65be27dcfd
gnu: u-boot: Update to 2021.10.
* gnu/packages/bootloaders.scm (%u-boot-allow-disabling-openssl-patch): New variable.
  (u-boot): Update to 2021.10.
  Add patch fixing build without openssl.
  (u-boot-qemu-riscv64-smode):
  Add patch fixing build without openssl.
  (u-boot-tools): Adjust phases to disable CONFIG_TOOLS_LIBCRYPTO.
  (make-u-boot-package): Add phase disabling CONFIG_TOOLS_LIBCRYPTO.
* gnu/packages/patches/u-boot-allow-disabling-openssl.patch: New patch.
* gnu/local.mk (dist_patch_DATA): Add patch.
2021-10-24 13:51:37 -07:00
Mathieu Othacehe a1eca979fb
Merge remote-tracking branch 'origin/master' into core-updates-frozen. 2021-10-12 17:46:23 +00:00
Tobias Geerinckx-Rice 5d26e2ee2b
gnu: os-prober: Update to 1.79.
* gnu/packages/bootloaders.scm (os-prober): Update to 1.79.
2021-10-03 19:23:49 +02:00
Mathieu Othacehe 26cb0c3960
gnu: syslinux: Fix build.
* gnu/packages/patches/syslinux-gcc10.patch: New file.
* gnu/packages/patches/syslinux-strip-gnu-property.patch: New file.
* gnu/local.mk (DIST_PATCH_DATA): Add them.
* gnu/packages/bootloaders.scm (syslinux)[source]: Use them.
[arguments]: Only strip debug symbols.
2021-09-28 12:39:30 +00:00
Marius Bakke 06f47e0256
gnu: u-boot-tools: Install the 'kwboot' executable.
* gnu/packages/bootloaders.scm (u-boot-tools)[arguments]: Install one more
file.
2021-09-23 12:05:53 +02:00
Mathieu Othacehe 650e85d855
gnu: grub: Strip debug symbols.
This is a follow-up of 71aa29911c. Grub does not
support modules stripped with --strip-unneeded but supports the --strip-debug
option.

* gnu/packages/bootloaders.scm (grub)[arguments]<#:strip-binaries>: Set to
true and use ...
<#:strip-flags>: ... to pass --strip-debug instead of --strip-unneeded.
2021-09-20 09:12:01 +00:00
Mathieu Othacehe 71aa29911c
gnu: grub: Do not strip modules.
* gnu/packages/bootloaders.scm (grub)[arguments]<#:strip-binaries>: Set to
false to prevent Grub modules stripping.
2021-09-19 16:49:30 +02:00
Ludovic Courtès d9dfbf886d
Merge branch 'master' into core-updates-frozen 2021-09-07 14:19:08 +02:00
Danny Milosavljevic dd7df191b6
gnu: u-boot-nintendo-nes-classic-edition: Make it actually boot again.
* gnu/packages/patches/u-boot-nintendo-nes-serial.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add u-boot-nintendo-nes-serial.patch.
* gnu/packages/bootloaders.scm (u-boot-nintendo-nes-classic-edition): Downgrade to 2018.11.
[source]: Add patch.
[description]: Modify.
[native-inputs]: Add python-2.
2021-09-05 23:45:29 +02:00