[RFC 0125]: Use an intermediary representation (bootspec) for bootloader backends by grahamc · Pull Request #125 · NixOS/rfcs
…r backends Bootspec is a set of memoized facts about a system's closure. These facts are used as the primary input for bootloader backends like systemd-boot and grub, for creating files in `/boot/loader/entries/` and `grub.cfg`. In this proposal we create a stable, comprehensive, and machine-parsable definition of a NixOS Generation as an intermediate representation (IR) between the NixOS system definition and the bootloader management tools.
14 tasks
This was referenced
May 17, 2022
edolstra
changed the title
RFC 0125: Use an intermediary representation (bootspec) for bootloader backends
[RFC 0125]: Use an intermediary representation (bootspec) for bootloader backends
Ma27 approved these changes Mar 23, 2023
RaitoBezarius added a commit to RaitoBezarius/nixos-rfcs that referenced this pull request
Nov 1, 2023This introduces the second revision of RFC-0125, Bootspec, addressing the feedback we received in NixOS#125 and building on our experience of Bootspec v1.
RaitoBezarius added a commit to RaitoBezarius/nixos-rfcs that referenced this pull request
Nov 15, 2023This introduces the second revision of RFC-0125, Bootspec, addressing the feedback we received in NixOS#125 and building on our experience of Bootspec v1.
RaitoBezarius added a commit to RaitoBezarius/nixos-rfcs that referenced this pull request
Dec 9, 2023This introduces the second revision of RFC-0125, Bootspec, addressing the feedback we received in NixOS#125 and building on our experience of Bootspec v1.
RaitoBezarius added a commit to RaitoBezarius/nixos-rfcs that referenced this pull request
Dec 16, 2023This introduces the second revision of RFC-0125, Bootspec, addressing the feedback we received in NixOS#125 and building on our experience of Bootspec v1.
KAction pushed a commit to KAction/rfcs that referenced this pull request
Apr 13, 2024…der backends (NixOS#125) * RFC 0125: Use an intermediary representation (bootspec) for bootloader backends Bootspec is a set of memoized facts about a system's closure. These facts are used as the primary input for bootloader backends like systemd-boot and grub, for creating files in `/boot/loader/entries/` and `grub.cfg`. In this proposal we create a stable, comprehensive, and machine-parsable definition of a NixOS Generation as an intermediate representation (IR) between the NixOS system definition and the bootloader management tools. * bootspec: relocate to $out/bootspec/boot.v1.json * Clarify that this document describes bootspec v1 * Note that the filename must match the contained schemaVersion. * Replace the specialisation's pointer to a bootspec with the full bootspec document * Clarify the 'to interface with' bit * Link to the bootspec implementation PR * Note it is likely for bootloader backends to change their results slightly by integrating bootspec * Relocate to $out/boot.json, top-level key of specification version * Fix nits from code review Co-authored-by: Cole Helbling <cole.e.helbling@outlook.com> Co-authored-by: Linus Heckemann <git@sphalerite.org> * 0125-bootspec: add the shepherd team and leader Co-authored-by: Kevin Cox <kevincox@kevincox.ca> * 0125-bootspec: initrd is optional, add system, extensions, clarify the meaning of optional * PR: address comments (1) Co-authored-by: Cole Helbling <cole.e.helbling@outlook.com> * PR: address comments (2) Co-authored-by: Cole Helbling <cole.e.helbling@outlook.com> * Update RFC text with changes agreed on with RaitoBezarius --------- Co-authored-by: Cole Helbling <cole.helbling@determinate.systems> Co-authored-by: Cole Helbling <cole.e.helbling@outlook.com> Co-authored-by: Linus Heckemann <git@sphalerite.org> Co-authored-by: Kevin Cox <kevincox@kevincox.ca> Co-authored-by: Raito Bezarius <masterancpp@gmail.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode characters