-
Notifications
You must be signed in to change notification settings - Fork 665
Add support for rEFInd boot manager #3707
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: master
Are you sure you want to change the base?
Conversation
|
Thank you for this contribution, I'll do some tests with this one before merging in. I have never used refind, so I'll have to test and read about the logo situation :) I could also look into the possibility to package |
|
Done, I thought the pre-commit hook would add the formatting changes to the commit. |
My understanding is that you need to enable them locally, our repo simply contains the hooks that you would need. |
|
I'm still away on a trip and have limited access to proper internet. I still welcome this contribution, just thought I'd let you know why it won't make it in to the next release ~today. But it's coming! |
|
I did some testing and noticed that the {
"disk_config": {
"btrfs_options": {
"snapshot_config": null
},
"config_type": "manual_partitioning",
"device_modifications": [
{
"device": "/dev/vda",
"partitions": [
{
"btrfs": [],
"dev_path": null,
"flags": [
"boot",
"esp"
],
"fs_type": "fat32",
"mount_options": [],
"mountpoint": "/efi",
"obj_id": "cbfc8315-b53e-497a-b793-8620731d3b02",
"size": {
"sector_size": {
"unit": "B",
"value": 512
},
"unit": "MiB",
"value": 512
},
"start": {
"sector_size": {
"unit": "B",
"value": 512
},
"unit": "MiB",
"value": 1
},
"status": "create",
"type": "primary"
},
{
"btrfs": [],
"dev_path": null,
"flags": [
"bls_boot"
],
"fs_type": "ext4",
"mount_options": [],
"mountpoint": "/boot",
"obj_id": "33ec68f8-2106-4a14-a980-3bdcb63b3a2f",
"size": {
"sector_size": {
"unit": "B",
"value": 512
},
"unit": "GiB",
"value": 1
},
"start": {
"sector_size": {
"unit": "B",
"value": 512
},
"unit": "B",
"value": 537919488
},
"status": "create",
"type": "primary"
},
{
"btrfs": [],
"dev_path": null,
"flags": [],
"fs_type": "ext4",
"mount_options": [],
"mountpoint": "/",
"obj_id": "c9a4c1a3-9306-4451-b6d4-df8f394f6c42",
"size": {
"sector_size": {
"unit": "B",
"value": 512
},
"unit": "B",
"value": 19862126592
},
"start": {
"sector_size": {
"unit": "B",
"value": 512
},
"unit": "B",
"value": 1611661312
},
"status": "create",
"type": "primary"
}
],
"wipe": false
}
]
}
} |
|
Thank you, I am trying to leave /boot on the root filesystem so the kernel is backed up toghether with the rest of the system when I take a btrfs snapshot. So only /efi is mounted on a separate fat32 partition and should only contain the bootloader. This happens when booting with that line changed: |
Also fixed issue where if /boot is located in a BTRFS root partition, the initrd path wasn't including the subvol name.
|
I've investigated further and I think this last commit fixes the cases of different partition layouts. |
|
Good job, and thank you for the work you've put in. |




This fixes #1951.
PR Description:
This PR simply adds support for rEFInd boot manager. I've checked all the places where the boot managers are called to make sure I didn't miss anything.
I've also followed the Arch Wiki page about rEFInd to make sure I made the installation function correct.
Before accepting the PR, I'd like an opinion about a small issue I noticed. I didn't know this but per the Arch Wiki, rEFInd is supposed to use the distro logo but after the installation is finished, it uses the Tux logo. After checking the partitions, it's as it says there,
the root partition is of type Linux x86-64 root (/) instead of Linux filesystem. But the installation guide suggests usingLinux x86-64 root (/). The Wiki also shows two other fixes, but I don't know if the label can be changed in the rEFInd installation step and copying the distro image seems easy, tho I don't know if it's the best solutionIs this and issue that can be fixed?
Just a note for the future, I'd also like to include refind-btrfs, like grub includes grub-btrfs, to show BTRFS snapshots as boot options, but refind-btrfs isn't in the extra repository.
Tests and Checks