Some checks failed
Periodic Merges (6h) / master → staging-nixos (push) Failing after 12m50s
Periodic Merges (6h) / master → staging-next (push) Failing after 12m54s
Periodic Merges (24h) / merge-base(master,staging) → haskell-updates (push) Failing after 11m54s
Periodic Merges (6h) / staging-next → staging (push) Failing after 12m13s
Periodic Merges (24h) / staging-next-25.05 → staging-25.05 (push) Failing after 13m24s
Periodic Merges (24h) / release-25.05 → staging-next-25.05 (push) Failing after 14m28s
32 lines
876 B
CUE
32 lines
876 B
CUE
import "struct"
|
|
|
|
#BootspecV1: {
|
|
system: string
|
|
init: string
|
|
initrd?: string
|
|
initrdSecrets?: string
|
|
kernel: string
|
|
kernelParams: [...string]
|
|
label: string
|
|
toplevel: string
|
|
}
|
|
|
|
// A restricted document does not allow any official specialisation
|
|
// information in it to avoid "recursive specialisations".
|
|
#RestrictedDocument: struct.MinFields(1) & {
|
|
"org.nixos.bootspec.v1": #BootspecV1
|
|
[=~"^"]: #BootspecExtension
|
|
}
|
|
|
|
// Specialisations are a hashmap of strings
|
|
#BootspecSpecialisationV1: [string]: #RestrictedDocument
|
|
|
|
// Bootspec extensions are defined by the extension author.
|
|
#BootspecExtension: {...}
|
|
|
|
// A "full" document allows official specialisation information
|
|
// in the top-level with a reserved namespaced key.
|
|
Document: #RestrictedDocument & {
|
|
"org.nixos.specialisation.v1"?: #BootspecSpecialisationV1
|
|
}
|