Diffstat (limited to 'components/boot.xml')
| -rw-r--r-- | components/boot.xml | 83 |
1 files changed, 71 insertions, 12 deletions
diff --git a/components/boot.xml b/components/boot.xml index 24f18e9..816bb91 100644 --- a/components/boot.xml +++ b/components/boot.xml @@ -1,23 +1,82 @@ <image> <profiles> <profile name="BootCore" description="Boot core packages"/> + <profile name="BootCoreUKI" description="Boot core packages for UKI"/> + <profile name="BootCoreLive" description="Boot core packages for Live DVDs"/> + <profile name="BootDiskCore" description="Boot disk core configuration"> + <requires profile="BaseCommon"/> + <requires profile="HardwareCommon"/> + <requires profile="BootCore"/> + </profile> </profiles> - <packages type="image" patternType="plusRecommended" profiles="BootCore"> - <package name="grub2-efi-aa64" arch="aarch64"/> - <package name="grub2-efi-aa64-modules" arch="aarch64"/> - <package name="grub2-efi-x64" arch="x86_64"/> - <package name="grub2-efi-x64-modules" arch="x86_64"/> - <package name="grub2-pc" arch="x86_64"/> - <package name="grub2-pc-modules" arch="x86_64"/> + <!-- Surface Pro 12" (Snapdragon X1P-42-100) is a standard UEFI/GPT aarch64 + device, no force_mbr/disk_start_sector/editbootinstall RPi-legacy + quirks needed, those are for boards whose own firmware boot stage + requires an MBR + specific boot sector offset before handing off to + grub. --> + <preferences profiles="BootDiskCore" arch="aarch64"> + <type image="oem" + filesystem="btrfs" btrfs_root_is_subvolume="true" btrfs_set_default_volume="false" fsmountoptions="x-systemd.growfs,compress=zstd:1" + kernelcmdline="rhgb quiet" devicepersistency="by-uuid" + bootpartition="true" bootpartsize="2000" bootfilesystem="ext4" efipartsize="500" firmware="uefi" + rootfs_label="fedora" + > + <bootloader name="grub2" bls="true" console="console" timeout="5"/> + <systemdisk name="fedora"> + <volume name="@root=root"/> + <volume name="home" parent="/"/> + <volume name="var" parent="/"/> + </systemdisk> + <oemconfig> + <oem-resize>false</oem-resize> + </oemconfig> + </type> + </preferences> + <packages type="bootstrap" patternType="plusRecommended" profiles="BootCore,BootCoreUKI,BootCoreLive"> <package name="grubby"/> - <package name="shim-signed-aa64" arch="aarch64"/> - <package name="shim-signed-x64" arch="x86_64"/> + </packages> + <packages type="image" patternType="plusRecommended" profiles="BootCore,BootCoreLive"> + <package name="grub2-efi-aa64"/> + <package name="grub2-efi-aa64-modules"/> + <package name="shim-signed-aa64"/> + <package name="systemd-oomd-defaults"/> + <package name="systemd-resolved"/> + </packages> + <packages type="image" patternType="plusRecommended" profiles="BootCore"> + <ignore name="kernel-*debug*"/> <package name="kernel-core"/> + </packages> + <packages type="image" patternType="plusRecommended" profiles="BootCoreLive"> + <ignore name="kernel-*debug*"/> + <!-- Surface Pro 12": kernel-uki-dtbloader bakes in ~3000 boards' dtbs + (.dtbauto sections) and hard-conflicts with kernel-core. This board + isn't in its dtb database anyway (dtb delivered separately via + grub's devicetree directive), so plain kernel-core is enough. --> + <package name="kernel-core"/> + </packages> + <packages type="image" patternType="plusRecommended" profiles="BootCoreUKI"> + <package name="shim-signed-aa64"/> <package name="systemd-oomd-defaults"/> <package name="systemd-resolved"/> + <package name="kernel-uki-virt"/> + <package name="python3-virt-firmware"/> + <package name="uki-direct"/> </packages> - <packages type="iso" patternType="plusRecommended" profiles="BootCore"> - <package name="grub2-efi-aa64-cdboot" arch="aarch64"/> - <package name="grub2-efi-x64-cdboot" arch="x86_64"/> + <packages type="iso" patternType="plusRecommended" profiles="BootCore,BootCoreLive"> + <package name="grub2-efi-aa64-cdboot"/> + </packages> + <packages type="image" patternType="plusRecommended" profiles="BootDiskCore"> + <ignore name="kernel-*debug*"/> + <package name="glibc-all-langpacks"/> + <!-- Surface Pro 12": kernel-core, not kernel-uki-dtbloader's multi-board + dtb bloat, same reasoning as BootCoreLive above. arm-image-installer + and uboot-images-armv8 dropped too, they exist for flashing/booting + other ARM SBCs (device-tree selection, U-Boot), not relevant to this + single UEFI/GPT device. --> + <package name="kernel-core"/> + <package name="kernel-modules"/> + <package name="kernel-modules-extra"/> + <package name="btrfs-progs"/> + <package name="udisks2-btrfs"/> </packages> </image> |