/>
aboutsummaryrefslogtreecommitdiff
path: root/gnu/bootloader.scm
ages/bioconductor.scm, gnu/packages/bioinformatics.scm, gnu/packages/cran.scm, gnu/packages/emacs-xyz.scm, gnu/packages/games.scm, gnu/packages/graphics.scm, gnu/packages/haskell-apps.scm, gnu/packages/haskell-check.scm, gnu/packages/idris.scm, gnu/packages/statistics.scm, gnu/packages/wm.scm: Update module references. Co-authored-by: Timothy Sample <samplet@ngyro.com>
AgeCommit message (Expand)Author
2022-12-01gnu: 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> Stefan
2022-09-08gnu: bootloader: Report error in menu-entry....* gnu/bootloader.scm (report-menu-entry-error): New procedure. (menu-entry->sexp): Add a call to `report-menu-entry-error'. Co-Authored-By: Julien Lepiller <julien@lepiller.eu> Signed-off-by: Julien Lepiller <julien@lepiller.eu> tiantian
2022-09-08gnu: bootloader: Extend `<menu-entry>' for chain-loader....* gnu/bootloader.scm (<menu-entry>)[chain-loader]: New field. (menu-entry->sexp, sexp->menu-entry): Support chain-loader. * doc/guix.texi (Bootloader Configuration): Document it. Co-Authored-By: Julien Lepiller <julien@lepiller.eu> Signed-off-by: Julien Lepiller <julien@lepiller.eu> tiantian
2022-08-30bootloader: Wrap lines....* gnu/bootloader (<bootloader-configuration>): Wrap lines, no functional change. Mathieu Othacehe
2022-08-30bootloader: Add device-tree-support? option....In some specific cases where the device tree file is already loaded in RAM, it can be preferable that the bootloader does not try to use a device tree from the Linux kernel tree. * gnu/bootloader.scm (<bootloader-configuration>)[device-tree-support?]: New field. * gnu/bootloader/extlinux.scm (extlinux-configuration-file): Add FDTDIR line based on <device-tree-support?> field of <bootloader-configuration>. * doc/guix.texi (Bootloader Configuration)[device-tree-support?]: Add documentation for the new field. Reza Alizadeh Majd
2022-08-28bootloader: Convert device in menu-entry to proper sexp....Previously, menu-entry->sexp didn't try to convert `device` to a proper sexp, which was inserted directly into the boot parameters G-exp, leading to a G-exp input error. Now convert both uuid and file-system-label possibilities to sexps, and add parsing code to sexp->menu-entry. This fixes #57307. * gnu/bootloader.scm (menu-entry->sexp, sexp->menu-entry): Take non-string devices into account. Signed-off-by: Marius Bakke <marius@gnu.org> Josselin Poiret
2022-08-21bootloader: Remove expired export....This follows up on commit 8a0e1bb12b3c22a8c9a2be17492058ca63ec7c5d. * gnu/bootloader.scm: Don't export bootloader-configuration-additional-configuration, which no longer exists. Reported by muradm in #guix. Tobias Geerinckx-Rice
2021-11-17gnu: system: Improve location of some configuration warnings....* gnu/bootloader.scm (%warn-target-field-deprecation): Remove it. * gnu/bootloader.scm (warn-target-field-deprecation): Use define-with-syntax-properties. * gnu/system.scm (ensure-setuid-program-list): Ditto. Also rename the 'location' variable to 'properties'. Signed-off-by: Ludovic Courtès <ludo@gnu.org> Josselin Poiret
2021-08-30bootloader: Report location of the deprecated 'target' field....This is a followup to 2ca982ff41270288913ad6b7d5d9e1cad87b06d9. * gnu/bootloader.scm (warn-target-field-deprecation): New macro. (<bootloader-configuration>)[target]: Add 'sanitize' property. (%warn-target-field-deprecation): New procedure. (bootloader-configuration-target): Define using 'define-deprecated'. (bootloader-configuration-targets): Use '%bootloader-configuration-target' rather than the deprecated one. Ludovic Courtès
2021-08-29gnu: bootloader: Support multiple targets....Fixes <https://issues.guix.gnu.org/40997>. * gnu/bootloader.scm (<bootloader-configuration>): New 'targets' field. (%bootloader-configuration-target): New procedure. (bootloader-configuration-target): Add deprecation warning. (bootloader-configuration-targets): New procedure. * guix/scripts/system.scm (install): Access targets via bootloader-configuration-targets. (perform-action)[bootloader-target]: Remove unused argument and update doc. Access targets via bootloader-configuration-targets and fix indentation. (process-action): Access targets via bootloader-configuration-targets. Do not provide the unused BOOTLOADER-TARGET argument when applying `perform-action'. * guix/scripts/system/reconfigure.scm (install-bootloader-program): Rename DEVICE argument to DEVICES. Adjust doc and comment. Apply `installer' and `disk-installer' for every DEVICES. (install-bootloader): Access targets via bootloader-configuration-targets and rename variable from DEVICE to DEVICES. * gnu/tests/install.scm: Adjust accordingly. * tests/guix-system.sh: Likewise. * gnu/tests/reconfigure.scm (run-install-bootloader-test): Adjust the DEVICES argument so that it is a list. * doc/guix.texi: Update doc. Maxim Cournoyer
Robert Vollmert
2019-08-07gnu: Remove ghc-parsec, ghc-stm, ghc-text, ghc-xhtml....These are ghc-8.4-bundled packages, removing to avoid build conflicts. * gnu/packages/haskell.scm (ghc-parsec, ghc-stm, ghc-text): Remove. * gnu/packages/haskell-web.scm (ghc-xhtml): Remove. * gnu/packages/agda.scm (agda)[inputs]: Remove ghc-stm and ghc-text. * gnu/packages/bioinformatics.scm (ngless)[inputs]: Remove ghc-parsec and ghc-text. * gnu/packages/haskell-apps.scm (darcs)[inputs]: Remove ghc-parsec. (git-annex)[inputs]: Remove ghc-stm and ghc-text. (ghc-sdl2)[inputs]: Remove ghc-text. (ghc-sdl2-image)[inputs]: Remove ghc-text. * gnu/packages/haskell-check.scm (ghc-tasty-ant-xml)[inputs]: Remove ghc-stm. (ghc-tasty)[inputs]: Remove ghc-stm. (ghc-tasty-rerun)[inputs]: Same. (ghc-quickcheck-instances)[inputs]: Remove ghc-text. (ghc-hedgehog)[inputs]: Remove ghc-stm. * gnu/packages/haskell-crypto.scm (ghc-asn1-encoding)[inputs]: Remove ghc-text. * gnu/packages/haskell-web.scm (ghc-tagsoup)[inputs]: Remove ghc-text. (ghc-cookie)[inputs]: Same. (ghc-http-types)[inputs]: Same. (ghc-http)[inputs]: Remove ghc-parsec. (ghc-http-client)[inputs]: Remove ghc-text. (ghc-http2)[inputs]: Remove ghc-stm. (ghc-http-conduit)[native-inputs]: Remove ghc-text. (ghc-wai)[inputs]: Same. (ghc-wai-extra)[inputs]: Same. (ghc-warp)[inputs]: Remove ghc-stm and ghc-text. (ghc-xss-sanitize)[native-inputs]: Remove ghc-text. (ghc-css-text)[inputs]: Same. (ghc-mime-types)[inputs]: Same. (ghc-blaze-html)[inputs]: Same. (ghc-aeson)[inputs]: Same. (ghc-aeson-pretty)[inputs]: Same. (ghc-aeson-qq)[inputs]: Remove ghc-text and ghc-parsec. (ghc-multipart)[inputs]: Remove ghc-parsec. (ghc-uri-encode)[inputs]: Remove ghc-text. (ghc-path-pieces)[inputs]: Same. (ghc-yesod-core)[inputs]: Remove ghc-text and ghc-parsec. (ghc-yesod-persistent)[inputs]: Remove ghc-text. (ghc-yesod-form)[inputs]: Same. (ghc-yesod)[inputs]: Same. (ghc-hxt-regex-xmlschema)[inputs]: Remove ghc-parsec and ghc-text. (ghc-hxt)[inputs]: Remove ghc-parsec. * gnu/packages/haskell.scm (ghc-convertible)[inputs]: Remove ghc-text. (ghc-double-conversion)[inputs]: Same. (ghc-tree-diff)[inputs]: Remove ghc-parsec and ghc-text. [native-inputs]: Remove ghc-parsec. (ghc-cgi)[inputs]: Remove ghc-parsec. (hlint)[inputs]: Remove ghc-text. (ghc-openglraw)[inputs]: Remove ghc-text. (ghc-opengl)[inputs]: Same. (ghc-streaming-commons)[inputs]: Remove ghc-stm and ghc-text. (ghc-hackage-security)[inputs]: Remove ghc-parsec. (cabal-install)[inputs]: Remove ghc-stm. (ghc-parsec-numbers)[inputs]: Remove ghc-parsec. (ghc-safesemaphore)[inputs]: Remove ghc-stm. (ghc-text-binary)[inputs]: Remove ghc-text. (ghc-hashable)[inputs]: Remove ghc-text. (ghc-transformers-base)[inputs]: Remove ghc-stm. (ghc-indents)[inputs]: Remove ghc-parsec. (ghc-regex-tdfa-rc)[inputs]: Same. (ghc-regex-tdfa-text)[inputs]: Same. (ghc-regex)[inputs]: Remove ghc-text. (ghc-parsers)[inputs]: Remove ghc-parsec and ghc-text. (ghc-attoparsec)[inputs]: Remove ghc-text. (ghc-attoparsec-bootstrap)[inputs]: Same. (ghc-zip-archive)[inputs]: Same. (ghc-polyparse)[inputs]: Same. (ghc-reducers)[inputs]: Same. (ghc-xml)[inputs]: Same. (ghc-feed)[inputs]: Same. (ghc-exceptions)[inputs]: Remove ghc-stm. (ghc-case-insensitive)[inputs]: Remove ghc-text. (ghc-megaparsec)[inputs]: Same. (ghc-network-uri)[inputs]: Remove ghc-parsec. (ghc-monad-control)[inputs]: Remove ghc-stm. (ghc-blaze-builder)[inputs]: Remove ghc-text. (ghc-blaze-markup)[inputs]: Same. (ghc-async)[inputs]: Remove ghc-stm. (ghc-invariant)[inputs]: Same. (ghc-statevar)[inputs]: Same. (ghc-lens)[inputs]: Remove ghc-text. (ghc-cheapskate)[inputs]: Same. (ghc-semigroups)[inputs]: Same. (ghc-semigroups-bootstrap)[inputs]: Same. (ghc-fast-logger)[inputs]: Same. (ghc-scientific)[inputs]: Same. (ghc-scientific-bootstrap)[inputs]: Same. (ghc-texmath)[inputs]: Remove ghc-parsec. (ghc-highlighting-kate)[inputs]: Same. (ghc-cmark)[inputs]: Remove ghc-text. (ghc-cmark-gfm)[inputs]: Same. (ghc-th-lift-instances)[inputs]: Same. (ghc-yaml)[inputs]: Same. (ghc-hslua)[inputs]: Same. (ghc-hslua-module-text)[inputs]: Same. (ghc-skylighting-core)[inputs]: Same. (ghc-doctemplates)[inputs]: Remove ghc-text and ghc-parsec. (ghc-pandoc)[inputs]: Same. (ghc-typed-process)[inputs]: Remove ghc-stm. (ghc-conduit-extra)[inputs]: Remove ghc-stm and ghc-text. (ghc-xml-types)[inputs]: Remove ghc-text. (ghc-xml-conduit)[inputs]: Same. (ghc-pandoc-citeproc)[inputs]: Remove ghc-text and ghc-parsec. (ghc-regex-tdfa)[inputs]: Remove ghc-parsec. (ghc-wl-pprint-text)[inputs]: Remove ghc-text. (ghc-graphviz)[inputs]: Same. (ghc-system-filepath-bootstrap)[inputs]: Same. (ghc-system-fileio-bootstrap)[inputs]: Same. (ghc-shelly)[inputs]: Same. (ghc-chell)[inputs]: Same. (ghc-system-filepath)[inputs]: Same. (ghc-system-fileio)[inputs]: Same. (ghc-fsnotify)[inputs]: Same. (ghc-json)[inputs]: Remove ghc-text and ghc-parsec. (ghc-esqueleto)[inputs]: Remove ghc-text. (shellcheck)[inputs]: Remove ghc-parsec. (ghc-errors)[inputs]: Remove ghc-text. (ghc-chunked-data)[inputs]: Same. (ghc-uuid-types)[inputs]: Same. (ghc-uuid)[inputs]: Same. (ghc-rebase)[inputs]: Remove ghc-stm and ghc-text. (ghc-foldl)[inputs]: Remove ghc-text. (ghc-mono-traversable)[inputs]: Same. (ghc-conduit-combinators)[inputs]: Same. (ghc-aws)[inputs]: Same. (ghc-stm-chans)[inputs]: Remove ghc-stm. (ghc-monad-logger)[inputs]: Remove ghc-text and ghc-stm. (ghc-shakespeare)[inputs]: Remove ghc-parsec and ghc-text. (ghc-resource-pool)[inputs]: Remove ghc-stm. (ghc-attoparsec-iso8601)[inputs]: Remove ghc-text. (ghc-http-api-data)[inputs]: Same. (ghc-persistent)[inputs]: Same. (ghc-aeson-compat)[inputs]: Same. (ghc-persistent-template)[inputs]: Same. (ghc-unliftio)[inputs]: Remove ghc-stm. (ghc-persistent-sqlite)[native-inputs]: Remove ghc-text. (ghc-bytes)[inputs]: Same. (ghc-missingh)[inputs]: Remove ghc-parsec. (ghc-rio)[inputs]: Remove ghc-text. (ghc-cairo)[inputs]: Same. (ghc-atomic-write)[inputs]: Remove ghc-text. [native-inputs]: Same. (ghc-stm-conduit)[inputs]: Remove ghc-stm. (ghc-conduit-algorithms)[inputs]: Same. (ghc-interpolate)[native-inputs]: Remove ghc-text. (ghc-hpack)[inputs]: Same. (ghc-inline-c)[inputs]: Remove ghc-parsec. (ghc-configurator)[inputs]: Remove ghc-text. (ghc-c2hs)[native-inputs]: Same. (ghc-libmpd)[inputs]: Same. (ghc-concurrent-output)[inputs]: Remove ghc-stm. * gnu/packages/idris.scm (idris)[inputs]: Remove ghc-text. * gnu/packages/wm.scm (xmobar)[inputs]: Remove ghc-parsec and ghc-stm. Signed-off-by: Ricardo Wurmus <rekado@elephly.net> Robert Vollmert