Garuda Boot Options - Editing a boot list [with strange duplicate entries]

Hello Garuda community,

(A) Background: My Recent Discovery of Garuda Linux

This week I've wiped my SSD and started installing multiple Linux Distros on it.
(Pop! OS, Arco Linux, EndeavourOS, and last but not least Garuda Linux)

I've just discovered this distro by chance and I'm absolutely amazed by the user experience so far (using the KDE dr460nized version).

However, I couldn't find anything about messy boot options in the FAQ or the Wiki.

B) The Issue: Chaotic Boot Options.

As I installed the various distros, I usually used the respective installer and selected the option that would resize an existing partition.
Right now my partition table looks like this.
(Sorry for the German menu settings - I've set the system language to English after installation, but it seems some programs were installed with German language packs only. Also I wanted to embed the images, but neither uploading nor embedding is enabled for my new account yet.)

It seems Garuda's boot menu somehow had a hiccup when creating the boot options, as you can see Garuda Boot Options.

This tool directly reads from the contents in /boot/grub, correct?
I also took a look into grub.cfg, which seems to match these entries. (See Section (D2))

What complicated things is that I have multiple UEFI boot options before booting into Garuda, which I think was created by the Pop! OS installer. This may or may not be the cause of these duplicates, as it asked me to choose a boot partition (that had previously been created with the EndeavourOS ISO).

(C1) Motivation: Are there Best Practices for Garuda in particular?

Usually when fixing Linux issues I'll just try to find what worked for someone else and use the respective GUI or CLI tool.

But Garuda provides some great out-of-the-box experience with a deliberate set of immediately available tools.
(Including some special commands, like being encouraged to use garuda-update instead of sudo pacman -Syu.)

(C2) The Goal: Clean Up the Boot Options
How would I best go about trimming these options?

(D1) Details: Konsole Output for garuda-inxi

╰─λ garuda-inxi
System:
Kernel: 5.19.4-zen1-1-zen arch: x86_64 bits: 64 compiler: gcc v: 12.2.0
parameters: BOOT_IMAGE=/@/boot/vmlinuz-linux-zen
root=UUID=0e3d95cd-b1c8-42be-a212-dfba44b5811d rw [email protected]
quiet quiet splash rd.udev.log_priority=3 vt.global_cursor_default=0
loglevel=3
Desktop: KDE Plasma v: 5.25.4 tk: Qt v: 5.15.5 info: latte-dock
wm: kwin_x11 vt: 2 dm: SDDM Distro: Garuda Linux base: Arch Linux
Machine:
Type: Desktop Mobo: ASRock model: B450M Pro4 serial: <superuser required>
UEFI: American Megatrends v: P3.90 date: 12/09/2019
CPU:
Info: model: AMD Ryzen 7 2700X bits: 64 type: MT MCP arch: Zen+ gen: 2
built: 2018-21 process: GF 12nm family: 0x17 (23) model-id: 8 stepping: 2
microcode: 0x800820D
Topology: cpus: 1x cores: 8 tpc: 2 threads: 16 smt: enabled cache:
L1: 768 KiB desc: d-8x32 KiB; i-8x64 KiB L2: 4 MiB desc: 8x512 KiB
L3: 16 MiB desc: 2x8 MiB
Speed (MHz): avg: 2258 high: 3700 min/max: 2200/3700 boost: enabled
scaling: driver: acpi-cpufreq governor: schedutil cores: 1: 2200 2: 2200
3: 2200 4: 1883 5: 2200 6: 2200 7: 3700 8: 2200 9: 2200 10: 2200 11: 2200
12: 2200 13: 2200 14: 1952 15: 2200 16: 2200 bogomips: 118162
Flags: avx avx2 ht lm nx pae sse sse2 sse3 sse4_1 sse4_2 sse4a ssse3 svm
Vulnerabilities:
Type: itlb_multihit status: Not affected
Type: l1tf status: Not affected
Type: mds status: Not affected
Type: meltdown status: Not affected
Type: mmio_stale_data status: Not affected
Type: retbleed mitigation: untrained return thunk; SMT vulnerable
Type: spec_store_bypass mitigation: Speculative Store Bypass disabled via
prctl
Type: spectre_v1 mitigation: usercopy/swapgs barriers and __user pointer
sanitization
Type: spectre_v2 mitigation: Retpolines, IBPB: conditional, STIBP:
disabled, RSB filling, PBRSB-eIBRS: Not affected
Type: srbds status: Not affected
Type: tsx_async_abort status: Not affected
Graphics:
Device-1: AMD Navi 14 [Radeon RX 5500/5500M / Pro 5500M] vendor: Sapphire
driver: amdgpu v: kernel arch: RDNA-1 code: Navi process: TSMC n7 (7nm)
built: 2019-20 pcie: gen: 4 speed: 16 GT/s lanes: 16 ports:
active: DP-2,DP-3,HDMI-A-1 empty: DP-1 bus-ID: 09:00.0 chip-ID: 1002:7340
class-ID: 0300
Display: x11 server: X.Org v: 21.1.4 with: Xwayland v: 22.1.3
compositor: kwin_x11 driver: X: loaded: amdgpu unloaded: modesetting,radeon
alternate: fbdev,vesa gpu: amdgpu display-ID: :1 screens: 1
Screen-1: 0 s-res: 6440x1920 s-dpi: 96 s-size: 1703x508mm (67.05x20.00")
s-diag: 1777mm (69.97")
Monitor-1: DP-2 mapped: DisplayPort-1 pos: bottom-r model: BE24W
serial: <filter> built: 2021 res: 1920x1200 hz: 60 dpi: 94 gamma: 1.2
size: 518x324mm (20.39x12.76") diag: 611mm (24.1") ratio: 16:10 modes:
max: 1920x1200 min: 720x400
Monitor-2: DP-3 mapped: DisplayPort-2 pos: primary,top-left
model: Acer K242HQL serial: <filter> built: 2015 res: 1080x1920 hz: 60
dpi: 94 gamma: 1.2 size: 293x521mm (11.54x20.51") diag: 598mm (23.5")
ratio: 16:9 modes: max: 1920x1080 min: 720x400
Monitor-3: HDMI-A-1 mapped: HDMI-A-0 pos: primary,bottom-c
model: Samsung S34J55x serial: <filter> built: 2020 res: 3440x1440 hz: 50
dpi: 110 gamma: 1.2 size: 797x333mm (31.38x13.11") diag: 864mm (34")
modes: max: 3440x1440 min: 720x400
OpenGL: renderer: AMD Radeon RX 5500 XT (navi14 LLVM 14.0.6 DRM 3.47
5.19.4-zen1-1-zen) v: 4.6 Mesa 22.1.7 direct render: Yes
Audio:
Device-1: AMD Navi 10 HDMI Audio vendor: Sapphire driver: snd_hda_intel
v: kernel bus-ID: 3-3:3 pcie: chip-ID: 17a0:0310 class-ID: 0300 gen: 4
speed: 16 GT/s lanes: 16 bus-ID: 09:00.1 chip-ID: 1002:ab38
class-ID: 0403
Device-2: AMD Family 17h HD Audio vendor: ASRock driver: snd_hda_intel
v: kernel pcie: gen: 3 speed: 8 GT/s lanes: 16 bus-ID: 0b:00.3
chip-ID: 1022:1457 class-ID: 0403
Device-3: Samson Meteor condenser microphone type: USB
driver: hid-generic,snd-usb-audio,usbhid
Sound Server-1: ALSA v: k5.19.4-zen1-1-zen running: yes
Sound Server-2: PulseAudio v: 16.1 running: no
Sound Server-3: PipeWire v: 0.3.56 running: yes
Network:
Device-1: Realtek RTL8111/8168/8411 PCI Express Gigabit Ethernet
vendor: ASRock driver: r8169 v: kernel pcie: gen: 1 speed: 2.5 GT/s
lanes: 1 port: f000 bus-ID: 05:00.0 chip-ID: 10ec:8168 class-ID: 0200
IF: enp5s0 state: up speed: 100 Mbps duplex: full mac: <filter>
Drives:
Local Storage: total: 480.41 GiB used: 10.18 GiB (2.1%)
SMART Message: Unable to run smartctl. Root privileges required.
ID-1: /dev/nvme0n1 maj-min: 259:0 vendor: Samsung model: SSD 970 EVO Plus
500GB size: 465.76 GiB block-size: physical: 512 B logical: 512 B
speed: 31.6 Gb/s lanes: 4 type: SSD serial: <filter> rev: 2B2QEXM7
temp: 44.9 C scheme: GPT
ID-2: /dev/sda maj-min: 8:0 type: USB vendor: Intenso model: Alu Line
size: 14.65 GiB block-size: physical: 512 B logical: 512 B type: N/A
serial: <filter> rev: 2.00 scheme: MBR
SMART Message: Unknown USB bridge. Flash drive/Unsupported enclosure?
Partition:
ID-1: / raw-size: 58.35 GiB size: 58.35 GiB (100.00%) used: 9.93 GiB
(17.0%) fs: btrfs dev: /dev/nvme0n1p7 maj-min: 259:7
ID-2: /boot/efi raw-size: 600 MiB size: 598.8 MiB (99.80%) used: 250.7
MiB (41.9%) fs: vfat dev: /dev/nvme0n1p1 maj-min: 259:1
ID-3: /home raw-size: 58.35 GiB size: 58.35 GiB (100.00%) used: 9.93 GiB
(17.0%) fs: btrfs dev: /dev/nvme0n1p7 maj-min: 259:7
ID-4: /var/log raw-size: 58.35 GiB size: 58.35 GiB (100.00%) used: 9.93
GiB (17.0%) fs: btrfs dev: /dev/nvme0n1p7 maj-min: 259:7
ID-5: /var/tmp raw-size: 58.35 GiB size: 58.35 GiB (100.00%) used: 9.93
GiB (17.0%) fs: btrfs dev: /dev/nvme0n1p7 maj-min: 259:7
Swap:
Kernel: swappiness: 133 (default 60) cache-pressure: 100 (default)
ID-1: swap-1 type: zram size: 15.55 GiB used: 0 KiB (0.0%) priority: 100
dev: /dev/zram0
ID-2: swap-2 type: partition size: 17.11 GiB used: 0 KiB (0.0%)
priority: -2 dev: /dev/nvme0n1p5 maj-min: 259:5
Sensors:
System Temperatures: cpu: 54.6 C mobo: N/A gpu: amdgpu temp: 51.0 C
mem: 0.0 C
Fan Speeds (RPM): N/A gpu: amdgpu fan: 794
Info:
Processes: 386 Uptime: 3h 46m wakeups: 0 Memory: 15.55 GiB used: 5.54 GiB
(35.6%) Init: systemd v: 251 default: graphical tool: systemctl
Compilers: gcc: 12.2.0 Packages: pacman: 1235 lib: 318 Shell: fish v: 3.5.1
default: Bash v: 5.1.16 running-in: konsole inxi: 3.3.20
Garuda (2.6.6-1):
System install date:     2022-08-29
Last full system update: 2022-09-02 ↻
Is partially upgraded:   No
Relevant software:       NetworkManager
Windows dual boot:       No/Undetected
Snapshots:               Snapper
Failed units:

╭─[email protected] in ~ took 1s

(D2) Details: grub.cfg

#
# DO NOT EDIT THIS FILE
#
# It is automatically generated by grub-mkconfig using templates
# from /etc/grub.d and settings from /etc/default/grub
#

### BEGIN /etc/grub.d/00_header ###
insmod part_gpt
insmod part_msdos
if [ -s $prefix/grubenv ]; then
  load_env
fi
if [ "${next_entry}" ] ; then
   set default="${next_entry}"
   set next_entry=
   save_env next_entry
   set boot_once=true
else
   set default="0"
fi

if [ x"${feature_menuentry_id}" = xy ]; then
  menuentry_id_option="--id"
else
  menuentry_id_option=""
fi

export menuentry_id_option

if [ "${prev_saved_entry}" ]; then
  set saved_entry="${prev_saved_entry}"
  save_env saved_entry
  set prev_saved_entry=
  save_env prev_saved_entry
  set boot_once=true
fi

function savedefault {
  if [ -z "${boot_once}" ]; then
    saved_entry="${chosen}"
    save_env saved_entry
  fi
}

function load_video {
  if [ x$feature_all_video_module = xy ]; then
    insmod all_video
  else
    insmod efi_gop
    insmod efi_uga
    insmod ieee1275_fb
    insmod vbe
    insmod vga
    insmod video_bochs
    insmod video_cirrus
  fi
}

if [ x$feature_default_font_path = xy ] ; then
   font=unicode
else
insmod part_gpt
insmod btrfs
search --no-floppy --fs-uuid --set=root 0e3d95cd-b1c8-42be-a212-dfba44b5811d
    font="/@/usr/share/grub/unicode.pf2"
fi

if loadfont $font ; then
  set gfxmode=auto
  load_video
  insmod gfxterm
fi
terminal_input console
terminal_output gfxterm
insmod part_gpt
insmod btrfs
search --no-floppy --fs-uuid --set=root 0e3d95cd-b1c8-42be-a212-dfba44b5811d
insmod gfxmenu
loadfont ($root)/@/usr/share/grub/themes/garuda-dr460nized/dejavu_sans_12.pf2
loadfont ($root)/@/usr/share/grub/themes/garuda-dr460nized/dejavu_sans_14.pf2
loadfont ($root)/@/usr/share/grub/themes/garuda-dr460nized/dejavu_sans_16.pf2
loadfont ($root)/@/usr/share/grub/themes/garuda-dr460nized/dejavu_sans_24.pf2
loadfont ($root)/@/usr/share/grub/themes/garuda-dr460nized/dejavu_sans_48.pf2
loadfont ($root)/@/usr/share/grub/themes/garuda-dr460nized/dejavu_sans_bold_16.pf2
loadfont ($root)/@/usr/share/grub/themes/garuda-dr460nized/dejavu_sans_mono_12.pf2
loadfont ($root)/@/usr/share/grub/themes/garuda-dr460nized/terminus-12.pf2
loadfont ($root)/@/usr/share/grub/themes/garuda-dr460nized/terminus-14.pf2
loadfont ($root)/@/usr/share/grub/themes/garuda-dr460nized/terminus-16.pf2
loadfont ($root)/@/usr/share/grub/themes/garuda-dr460nized/terminus-18.pf2
loadfont ($root)/@/usr/share/grub/themes/garuda-dr460nized/terminus-b12.pf2
loadfont ($root)/@/usr/share/grub/themes/garuda-dr460nized/terminus-b14.pf2
loadfont ($root)/@/usr/share/grub/themes/garuda-dr460nized/terminus-b16.pf2
loadfont ($root)/@/usr/share/grub/themes/garuda-dr460nized/terminus-b18.pf2
insmod png
set theme=($root)/@/usr/share/grub/themes/garuda-dr460nized/theme.txt
export theme
if [ x$feature_timeout_style = xy ] ; then
  set timeout_style=menu
  set timeout=5
# Fallback normal timeout code in case the timeout_style feature is
# unavailable.
else
  set timeout=5
fi
### END /etc/grub.d/00_header ###

### BEGIN /etc/grub.d/10_linux ###
menuentry 'Garuda Linux' --class garuda --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-simple-0e3d95cd-b1c8-42be-a212-dfba44b5811d' {
	load_video
	set gfxpayload=keep
	insmod gzio
	insmod part_gpt
	insmod btrfs
	search --no-floppy --fs-uuid --set=root 0e3d95cd-b1c8-42be-a212-dfba44b5811d
	echo	'Loading Linux linux-zen ...'
	linux	/@/boot/vmlinuz-linux-zen root=UUID=0e3d95cd-b1c8-42be-a212-dfba44b5811d rw [email protected]  quiet quiet splash rd.udev.log_priority=3 vt.global_cursor_default=0 loglevel=3
	echo	'Loading initial ramdisk ...'
	initrd	/@/boot/amd-ucode.img /@/boot/initramfs-linux-zen.img
}
submenu 'Advanced options for Garuda Linux' $menuentry_id_option 'gnulinux-advanced-0e3d95cd-b1c8-42be-a212-dfba44b5811d' {
	menuentry 'Garuda Linux, with Linux linux-zen' --class garuda --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-linux-zen-advanced-0e3d95cd-b1c8-42be-a212-dfba44b5811d' {
		load_video
		set gfxpayload=keep
		insmod gzio
		insmod part_gpt
		insmod btrfs
		search --no-floppy --fs-uuid --set=root 0e3d95cd-b1c8-42be-a212-dfba44b5811d
		echo	'Loading Linux linux-zen ...'
		linux	/@/boot/vmlinuz-linux-zen root=UUID=0e3d95cd-b1c8-42be-a212-dfba44b5811d rw [email protected]  quiet quiet splash rd.udev.log_priority=3 vt.global_cursor_default=0 loglevel=3
		echo	'Loading initial ramdisk ...'
		initrd	/@/boot/amd-ucode.img /@/boot/initramfs-linux-zen.img
	}
	menuentry 'Garuda Linux, with Linux linux-zen (fallback initramfs)' --class garuda --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-linux-zen-fallback-0e3d95cd-b1c8-42be-a212-dfba44b5811d' {
		load_video
		set gfxpayload=keep
		insmod gzio
		insmod part_gpt
		insmod btrfs
		search --no-floppy --fs-uuid --set=root 0e3d95cd-b1c8-42be-a212-dfba44b5811d
		echo	'Loading Linux linux-zen ...'
		linux	/@/boot/vmlinuz-linux-zen root=UUID=0e3d95cd-b1c8-42be-a212-dfba44b5811d rw [email protected]  quiet quiet splash rd.udev.log_priority=3 vt.global_cursor_default=0 loglevel=3
		echo	'Loading initial ramdisk ...'
		initrd	/@/boot/amd-ucode.img /@/boot/initramfs-linux-zen-fallback.img
	}
}

### END /etc/grub.d/10_linux ###

### BEGIN /etc/grub.d/20_linux_xen ###
### END /etc/grub.d/20_linux_xen ###

### BEGIN /etc/grub.d/30_os-prober ###
menuentry 'ArcoLinux (rolling) (on /dev/nvme0n1p2)' --class arcolinux --class gnu-linux --class gnu --class os $menuentry_id_option 'osprober-gnulinux-simple-4961e1bd-b03b-4186-83e5-cc30f23d120d' {
	insmod part_gpt
	insmod ext2
	search --no-floppy --fs-uuid --set=root 4961e1bd-b03b-4186-83e5-cc30f23d120d
	linux /boot/vmlinuz-linux root=UUID=4961e1bd-b03b-4186-83e5-cc30f23d120d rw quiet resume=UUID=1b3e55f0-7c1b-4cd6-b0df-d600732ac936 loglevel=3 audit=0 nvme_load=yes
	initrd /boot/initramfs-linux.img
}
submenu 'Advanced options for ArcoLinux (rolling) (on /dev/nvme0n1p2)' $menuentry_id_option 'osprober-gnulinux-advanced-4961e1bd-b03b-4186-83e5-cc30f23d120d' {
	menuentry 'ArcoLinux Linux (on /dev/nvme0n1p2)' --class gnu-linux --class gnu --class os $menuentry_id_option 'osprober-gnulinux-/boot/vmlinuz-linux--4961e1bd-b03b-4186-83e5-cc30f23d120d' {
		insmod part_gpt
		insmod ext2
		search --no-floppy --fs-uuid --set=root 4961e1bd-b03b-4186-83e5-cc30f23d120d
		linux /boot/vmlinuz-linux root=UUID=4961e1bd-b03b-4186-83e5-cc30f23d120d rw quiet resume=UUID=1b3e55f0-7c1b-4cd6-b0df-d600732ac936 loglevel=3 audit=0 nvme_load=yes
		initrd /boot/initramfs-linux.img
	}
	menuentry 'ArcoLinux Linux, with Linux linux (on /dev/nvme0n1p2)' --class gnu-linux --class gnu --class os $menuentry_id_option 'osprober-gnulinux-/boot/vmlinuz-linux--4961e1bd-b03b-4186-83e5-cc30f23d120d' {
		insmod part_gpt
		insmod ext2
		search --no-floppy --fs-uuid --set=root 4961e1bd-b03b-4186-83e5-cc30f23d120d
		linux /boot/vmlinuz-linux root=UUID=4961e1bd-b03b-4186-83e5-cc30f23d120d rw quiet resume=UUID=1b3e55f0-7c1b-4cd6-b0df-d600732ac936 loglevel=3 audit=0 nvme_load=yes
		initrd /boot/initramfs-linux.img
	}
	menuentry 'ArcoLinux Linux, with Linux linux (fallback initramfs) (on /dev/nvme0n1p2)' --class gnu-linux --class gnu --class os $menuentry_id_option 'osprober-gnulinux-/boot/vmlinuz-linux--4961e1bd-b03b-4186-83e5-cc30f23d120d' {
		insmod part_gpt
		insmod ext2
		search --no-floppy --fs-uuid --set=root 4961e1bd-b03b-4186-83e5-cc30f23d120d
		linux /boot/vmlinuz-linux root=UUID=4961e1bd-b03b-4186-83e5-cc30f23d120d rw quiet resume=UUID=1b3e55f0-7c1b-4cd6-b0df-d600732ac936 loglevel=3 audit=0 nvme_load=yes
		initrd /boot/initramfs-linux-fallback.img
	}
}

menuentry 'Pop!_OS 22.04 LTS (22.04) (on /dev/nvme0n1p3)' --class pop --class gnu-linux --class gnu --class os $menuentry_id_option 'osprober-gnulinux-simple-504ca61d-5a49-49cc-96c9-bf4324822376' {
	insmod part_gpt
	insmod ext2
	search --no-floppy --fs-uuid --set=root 504ca61d-5a49-49cc-96c9-bf4324822376
	linux /boot/vmlinuz root=/dev/nvme0n1p3
	initrd /boot/initrd.img
}
submenu 'Advanced options for Pop!_OS 22.04 LTS (22.04) (on /dev/nvme0n1p3)' $menuentry_id_option 'osprober-gnulinux-advanced-504ca61d-5a49-49cc-96c9-bf4324822376' {
	menuentry 'Pop!_OS 22.04 LTS (22.04) (on /dev/nvme0n1p3)' --class gnu-linux --class gnu --class os $menuentry_id_option 'osprober-gnulinux-/boot/vmlinuz--504ca61d-5a49-49cc-96c9-bf4324822376' {
		insmod part_gpt
		insmod ext2
		search --no-floppy --fs-uuid --set=root 504ca61d-5a49-49cc-96c9-bf4324822376
		linux /boot/vmlinuz root=/dev/nvme0n1p3
		initrd /boot/initrd.img
	}
	menuentry 'Pop!_OS 22.04 LTS (22.04) (on /dev/nvme0n1p3)' --class gnu-linux --class gnu --class os $menuentry_id_option 'osprober-gnulinux-/boot/vmlinuz--504ca61d-5a49-49cc-96c9-bf4324822376' {
		insmod part_gpt
		insmod ext2
		search --no-floppy --fs-uuid --set=root 504ca61d-5a49-49cc-96c9-bf4324822376
		linux /boot/vmlinuz root=/dev/nvme0n1p3
		initrd /boot/initrd.img
	}
	menuentry 'Pop!_OS 22.04 LTS (22.04) (on /dev/nvme0n1p3)' --class gnu-linux --class gnu --class os $menuentry_id_option 'osprober-gnulinux-/boot/vmlinuz--504ca61d-5a49-49cc-96c9-bf4324822376' {
		insmod part_gpt
		insmod ext2
		search --no-floppy --fs-uuid --set=root 504ca61d-5a49-49cc-96c9-bf4324822376
		linux /boot/vmlinuz root=/dev/nvme0n1p3
		initrd /boot/initrd.img-5.18.10-76051810-generic
	}
	menuentry 'Pop!_OS 22.04 LTS (22.04) (on /dev/nvme0n1p3)' --class gnu-linux --class gnu --class os $menuentry_id_option 'osprober-gnulinux-/boot/vmlinuz--504ca61d-5a49-49cc-96c9-bf4324822376' {
		insmod part_gpt
		insmod ext2
		search --no-floppy --fs-uuid --set=root 504ca61d-5a49-49cc-96c9-bf4324822376
		linux /boot/vmlinuz root=/dev/nvme0n1p3
		initrd /boot/initrd.img-5.19.0-76051900-generic
	}
	menuentry 'Pop!_OS 22.04 LTS (22.04) (on /dev/nvme0n1p3)' --class gnu-linux --class gnu --class os $menuentry_id_option 'osprober-gnulinux-/boot/vmlinuz--504ca61d-5a49-49cc-96c9-bf4324822376' {
		insmod part_gpt
		insmod ext2
		search --no-floppy --fs-uuid --set=root 504ca61d-5a49-49cc-96c9-bf4324822376
		linux /boot/vmlinuz root=/dev/nvme0n1p3
		initrd /boot/initrd.img.old
	}
	menuentry 'Pop!_OS 22.04 LTS (22.04) (on /dev/nvme0n1p3)' --class gnu-linux --class gnu --class os $menuentry_id_option 'osprober-gnulinux-/boot/vmlinuz--504ca61d-5a49-49cc-96c9-bf4324822376' {
		insmod part_gpt
		insmod ext2
		search --no-floppy --fs-uuid --set=root 504ca61d-5a49-49cc-96c9-bf4324822376
		linux /boot/vmlinuz root=/dev/nvme0n1p3
		initrd /boot/initrd.img
	}
	menuentry 'Pop!_OS 22.04 LTS (22.04) (on /dev/nvme0n1p3)' --class gnu-linux --class gnu --class os $menuentry_id_option 'osprober-gnulinux-/boot/vmlinuz--504ca61d-5a49-49cc-96c9-bf4324822376' {
		insmod part_gpt
		insmod ext2
		search --no-floppy --fs-uuid --set=root 504ca61d-5a49-49cc-96c9-bf4324822376
		linux /boot/vmlinuz root=/dev/nvme0n1p3
		initrd /boot/initrd.img
	}
	menuentry 'Pop!_OS 22.04 LTS (22.04) (on /dev/nvme0n1p3)' --class gnu-linux --class gnu --class os $menuentry_id_option 'osprober-gnulinux-/boot/vmlinuz--504ca61d-5a49-49cc-96c9-bf4324822376' {
		insmod part_gpt
		insmod ext2
		search --no-floppy --fs-uuid --set=root 504ca61d-5a49-49cc-96c9-bf4324822376
		linux /boot/vmlinuz root=/dev/nvme0n1p3
		initrd /boot/initrd.img-5.18.10-76051810-generic
	}
	menuentry 'Pop!_OS 22.04 LTS (22.04) (on /dev/nvme0n1p3)' --class gnu-linux --class gnu --class os $menuentry_id_option 'osprober-gnulinux-/boot/vmlinuz--504ca61d-5a49-49cc-96c9-bf4324822376' {
		insmod part_gpt
		insmod ext2
		search --no-floppy --fs-uuid --set=root 504ca61d-5a49-49cc-96c9-bf4324822376
		linux /boot/vmlinuz root=/dev/nvme0n1p3
		initrd /boot/initrd.img-5.19.0-76051900-generic
	}
	menuentry 'Pop!_OS 22.04 LTS (22.04) (on /dev/nvme0n1p3)' --class gnu-linux --class gnu --class os $menuentry_id_option 'osprober-gnulinux-/boot/vmlinuz--504ca61d-5a49-49cc-96c9-bf4324822376' {
		insmod part_gpt
		insmod ext2
		search --no-floppy --fs-uuid --set=root 504ca61d-5a49-49cc-96c9-bf4324822376
		linux /boot/vmlinuz root=/dev/nvme0n1p3
		initrd /boot/initrd.img.old
	}
	menuentry 'Pop!_OS 22.04 LTS (22.04) (on /dev/nvme0n1p3)' --class gnu-linux --class gnu --class os $menuentry_id_option 'osprober-gnulinux-/boot/vmlinuz-5.18.10-76051810-generic--504ca61d-5a49-49cc-96c9-bf4324822376' {
		insmod part_gpt
		insmod ext2
		search --no-floppy --fs-uuid --set=root 504ca61d-5a49-49cc-96c9-bf4324822376
		linux /boot/vmlinuz-5.18.10-76051810-generic root=/dev/nvme0n1p3
		initrd /boot/initrd.img-5.18.10-76051810-generic
	}
	menuentry 'Pop!_OS 22.04 LTS (22.04) (on /dev/nvme0n1p3)' --class gnu-linux --class gnu --class os $menuentry_id_option 'osprober-gnulinux-/boot/vmlinuz-5.19.0-76051900-generic--504ca61d-5a49-49cc-96c9-bf4324822376' {
		insmod part_gpt
		insmod ext2
		search --no-floppy --fs-uuid --set=root 504ca61d-5a49-49cc-96c9-bf4324822376
		linux /boot/vmlinuz-5.19.0-76051900-generic root=/dev/nvme0n1p3
		initrd /boot/initrd.img-5.19.0-76051900-generic
	}
	menuentry 'Pop!_OS 22.04 LTS (22.04) (on /dev/nvme0n1p3)' --class gnu-linux --class gnu --class os $menuentry_id_option 'osprober-gnulinux-/boot/vmlinuz.old--504ca61d-5a49-49cc-96c9-bf4324822376' {
		insmod part_gpt
		insmod ext2
		search --no-floppy --fs-uuid --set=root 504ca61d-5a49-49cc-96c9-bf4324822376
		linux /boot/vmlinuz.old root=/dev/nvme0n1p3
		initrd /boot/initrd.img.old
	}
}

menuentry 'EndeavourOS Linux (rolling) (on /dev/nvme0n1p4)' --class endeavouros --class gnu-linux --class gnu --class os $menuentry_id_option 'osprober-gnulinux-simple-36c5f8d5-5bf9-4f0f-9657-af3686bd88e0' {
	insmod part_gpt
	insmod ext2
	search --no-floppy --fs-uuid --set=root 36c5f8d5-5bf9-4f0f-9657-af3686bd88e0
	linux /boot/vmlinuz-linux root=UUID=36c5f8d5-5bf9-4f0f-9657-af3686bd88e0 rw loglevel=3 nowatchdog nvme_load=YES
	initrd /boot/amd-ucode.img /boot/initramfs-linux.img
}
submenu 'Advanced options for EndeavourOS Linux (rolling) (on /dev/nvme0n1p4)' $menuentry_id_option 'osprober-gnulinux-advanced-36c5f8d5-5bf9-4f0f-9657-af3686bd88e0' {
	menuentry 'EndeavourOS, on linux (on /dev/nvme0n1p4)' --class gnu-linux --class gnu --class os $menuentry_id_option 'osprober-gnulinux-/boot/vmlinuz-linux--36c5f8d5-5bf9-4f0f-9657-af3686bd88e0' {
		insmod part_gpt
		insmod ext2
		search --no-floppy --fs-uuid --set=root 36c5f8d5-5bf9-4f0f-9657-af3686bd88e0
		linux /boot/vmlinuz-linux root=UUID=36c5f8d5-5bf9-4f0f-9657-af3686bd88e0 rw loglevel=3 nowatchdog nvme_load=YES
		initrd /boot/amd-ucode.img /boot/initramfs-linux.img
	}
	menuentry 'EndeavourOS, on linux (fallback initramfs) (on /dev/nvme0n1p4)' --class gnu-linux --class gnu --class os $menuentry_id_option 'osprober-gnulinux-/boot/vmlinuz-linux--36c5f8d5-5bf9-4f0f-9657-af3686bd88e0' {
		insmod part_gpt
		insmod ext2
		search --no-floppy --fs-uuid --set=root 36c5f8d5-5bf9-4f0f-9657-af3686bd88e0
		linux /boot/vmlinuz-linux root=UUID=36c5f8d5-5bf9-4f0f-9657-af3686bd88e0 rw loglevel=3 nowatchdog nvme_load=YES
		initrd /boot/amd-ucode.img /boot/initramfs-linux-fallback.img
	}
}

### END /etc/grub.d/30_os-prober ###

### BEGIN /etc/grub.d/30_uefi-firmware ###
menuentry 'UEFI Firmware Settings' $menuentry_id_option 'uefi-firmware' {
	fwsetup
}
### END /etc/grub.d/30_uefi-firmware ###

### BEGIN /etc/grub.d/35_fwupd ###
### END /etc/grub.d/35_fwupd ###

### BEGIN /etc/grub.d/40_custom ###
# This file provides an easy way to add custom menu entries.  Simply type the
# menu entries you want to add after this comment.  Be careful not to change
# the 'exec tail' line above.
### END /etc/grub.d/40_custom ###

### BEGIN /etc/grub.d/41_custom ###
if [ -f  ${config_directory}/custom.cfg ]; then
  source ${config_directory}/custom.cfg
elif [ -z "${config_directory}" -a -f  $prefix/custom.cfg ]; then
  source $prefix/custom.cfg
fi
### END /etc/grub.d/41_custom ###

### BEGIN /etc/grub.d/41_snapshots-btrfs ###
submenu 'Garuda Linux snapshots' {
    configfile "${prefix}/grub-btrfs.cfg"
}
### END /etc/grub.d/41_snapshots-btrfs ###

### BEGIN /etc/grub.d/60_memtest86+ ###
if [ "${grub_platform}" == "pc" ]; then
    menuentry "Memory Tester (memtest86+)" --class memtest86 --class gnu --class tool {
        search --fs-uuid --no-floppy --set=root  0e3d95cd-b1c8-42be-a212-dfba44b5811d
        linux16 /@/boot/memtest86+/memtest.bin 
    }
fi
### END /etc/grub.d/60_memtest86+ ###

### BEGIN /etc/grub.d/61_custom_leave_options ###
# This file provides an easy way to add custom menu entries.  Simply type the
# menu entries you want to add after this comment.  Be careful not to change
# the 'exec tail' line above.

menuentry "Shutdown" --class shutdown {
	echo "System shutting down..."
	halt
}

menuentry "Restart" --class restart {
	echo "System rebooting..."
	reboot
}

#if [ ${grub_platform} == "efi" ]; then
#	menuentry "Firmware Setup (UEFI)" --class recovery {
#		fwsetup
#	}
#fi
### END /etc/grub.d/61_custom_leave_options ###
1 Like

what if make it new in the teriminal

sudo grub-mkconfig

sudo grub-install /dev/<boot device>

EDIT your partition is likely:

/dev/nvme0n1p
1 Like

Welcome :slight_smile:

Delete all other operating systems except Garuda, you don't need them :wink:

Or use custom.cfg :slight_smile:

5 Likes

(A) Overview of my current partitions

Since the labels in the screenshot of my original post don't make clear which partition does what, here's the overview:

/dev/nvme0n1p2 - (Boot)
/dev/nvme0n1p2 - Arco Linux
/dev/nvme0n1p3 - Pop! OS
/dev/nvme0n1p4 - EndeavourOS
/dev/nvme0n1p5 - (Swap)
/dev/nvme0n1p6 - /home for Pop! OS [originally intended for shared files]
/dev/nvme0n1p7 - Garuda Linux

(B) GRUB Boot Entries vs. UEFI Boot Entries
Thanks @ycom1 for the tip of trying sudo grub-mkconfig.

Am I right to assume the scripts in /etc/grub.d (triggered with grub-mkconfig) somehow sift through all the partitions and find points to boot into?
If so, could someone point me towards a documentation that explains these boot entries?

Because they appear to be different from the Boot Options defined in /boot/efi, and can be selected when entering the CPU's UEFI Boot Menu.

(C1) Same Duplicate Entries when running grub-mkconfig
Unfortunately, it generated the same file with the duplicate entries.

Although, might this actually be a good sign?

At least in terms of the GRUB script (and by extension, the Garuda installer) doing everything right:

Because in that case, maybe there simply are that many entries found across all partitions when running grub-mkconfig, specifically /dev/nvme0n1p3.

(C2) Assumption: The issues might be caused by tinkering with the partitions during the Pop! OS installation
Since /dev/nvme0n1p3 is where I installed Pop! OS, actually - and that appears to be where something went wrong.
As opposed to the other installers, the Pop! OS installer also asked to select a boot partition and recommended a size of 500 MiB for it. So while I had loaded Pop! OS from the boot stick, I used GParted to resize my existing boot partition to increase its size (which was 'only' 200MiB, as determined by the Arco installer which I ran first to wipe the whole SSD). Then selected it as boot partition, as recommended by the installer. Here is a screenshot of how that step looked in the installer.

Sorry if that means my whole issue is mostly due to an unusual bug from another distro's installer while messing with the partitions.

(D) Output of grub-mkconfig

╭─[email protected] in ~
╰─λ sudo grub-mkconfig
[sudo] Passwort für egwene:
GRUB-Konfigurationsdatei wird erstellt …
#
# DO NOT EDIT THIS FILE
#
# It is automatically generated by grub-mkconfig using templates
# from /etc/grub.d and settings from /etc/default/grub
#

### BEGIN /etc/grub.d/00_header ###
insmod part_gpt
insmod part_msdos
if [ -s $prefix/grubenv ]; then
load_env
fi
if [ "${next_entry}" ] ; then
set default="${next_entry}"
set next_entry=
save_env next_entry
set boot_once=true
else
set default="0"
fi

if [ x"${feature_menuentry_id}" = xy ]; then
menuentry_id_option="--id"
else
menuentry_id_option=""
fi

export menuentry_id_option

if [ "${prev_saved_entry}" ]; then
set saved_entry="${prev_saved_entry}"
save_env saved_entry
set prev_saved_entry=
save_env prev_saved_entry
set boot_once=true
fi

function savedefault {
if [ -z "${boot_once}" ]; then
saved_entry="${chosen}"
save_env saved_entry
fi
}

function load_video {
if [ x$feature_all_video_module = xy ]; then
insmod all_video
else
insmod efi_gop
insmod efi_uga
insmod ieee1275_fb
insmod vbe
insmod vga
insmod video_bochs
insmod video_cirrus
fi
}

if [ x$feature_default_font_path = xy ] ; then
font=unicode
else
insmod part_gpt
insmod btrfs
search --no-floppy --fs-uuid --set=root 0e3d95cd-b1c8-42be-a212-dfba44b5811d
font="/@/usr/share/grub/unicode.pf2"
fi

if loadfont $font ; then
set gfxmode=auto
load_video
insmod gfxterm
set locale_dir=$prefix/locale
set lang=de_DE
insmod gettext
fi
terminal_input console
terminal_output gfxterm
Thema gefunden: /usr/share/grub/themes/garuda-dr460nized/theme.txt
insmod part_gpt
insmod btrfs
search --no-floppy --fs-uuid --set=root 0e3d95cd-b1c8-42be-a212-dfba44b5811d
insmod gfxmenu
loadfont ($root)/@/usr/share/grub/themes/garuda-dr460nized/dejavu_sans_12.pf2
loadfont ($root)/@/usr/share/grub/themes/garuda-dr460nized/dejavu_sans_14.pf2
loadfont ($root)/@/usr/share/grub/themes/garuda-dr460nized/dejavu_sans_16.pf2
loadfont ($root)/@/usr/share/grub/themes/garuda-dr460nized/dejavu_sans_24.pf2
loadfont ($root)/@/usr/share/grub/themes/garuda-dr460nized/dejavu_sans_48.pf2
loadfont ($root)/@/usr/share/grub/themes/garuda-dr460nized/dejavu_sans_bold_16.pf2
loadfont ($root)/@/usr/share/grub/themes/garuda-dr460nized/dejavu_sans_mono_12.pf2
loadfont ($root)/@/usr/share/grub/themes/garuda-dr460nized/terminus-12.pf2
loadfont ($root)/@/usr/share/grub/themes/garuda-dr460nized/terminus-14.pf2
loadfont ($root)/@/usr/share/grub/themes/garuda-dr460nized/terminus-16.pf2
loadfont ($root)/@/usr/share/grub/themes/garuda-dr460nized/terminus-18.pf2
loadfont ($root)/@/usr/share/grub/themes/garuda-dr460nized/terminus-b12.pf2
loadfont ($root)/@/usr/share/grub/themes/garuda-dr460nized/terminus-b14.pf2
loadfont ($root)/@/usr/share/grub/themes/garuda-dr460nized/terminus-b16.pf2
loadfont ($root)/@/usr/share/grub/themes/garuda-dr460nized/terminus-b18.pf2
insmod png
set theme=($root)/@/usr/share/grub/themes/garuda-dr460nized/theme.txt
export theme
if [ x$feature_timeout_style = xy ] ; then
set timeout_style=menu
set timeout=5
# Fallback normal timeout code in case the timeout_style feature is
# unavailable.
else
set timeout=5
fi
### END /etc/grub.d/00_header ###

### BEGIN /etc/grub.d/10_linux ###
Linux-Abbild gefunden: /boot/vmlinuz-linux-zen
initrd-Abbild gefunden: /boot/amd-ucode.img /boot/initramfs-linux-zen.img
menuentry 'Garuda Linux' --class garuda --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-simple-0e3d95cd-b1c8-42be-a212-dfba44b5811d' {
load_video
set gfxpayload=keep
insmod gzio
insmod part_gpt
insmod btrfs
search --no-floppy --fs-uuid --set=root 0e3d95cd-b1c8-42be-a212-dfba44b5811d
echo    'Linux linux-zen wird geladen …'
linux   /@/boot/vmlinuz-linux-zen root=UUID=0e3d95cd-b1c8-42be-a212-dfba44b5811d rw [email protected]  quiet quiet splash rd.udev.log_priority=3 vt.global_cursor_default=0 loglevel=3
echo    'Initiale Ramdisk wird geladen …'
initrd  /@/boot/amd-ucode.img /@/boot/initramfs-linux-zen.img
}
submenu 'Erweiterte Optionen für Garuda Linux' $menuentry_id_option 'gnulinux-advanced-0e3d95cd-b1c8-42be-a212-dfba44b5811d' {
menuentry 'Garuda Linux, mit Linux linux-zen' --class garuda --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-linux-zen-advanced-0e3d95cd-b1c8-42be-a212-dfba44b5811d' {
load_video
set gfxpayload=keep
insmod gzio
insmod part_gpt
insmod btrfs
search --no-floppy --fs-uuid --set=root 0e3d95cd-b1c8-42be-a212-dfba44b5811d
echo    'Linux linux-zen wird geladen …'
linux   /@/boot/vmlinuz-linux-zen root=UUID=0e3d95cd-b1c8-42be-a212-dfba44b5811d rw [email protected]  quiet quiet splash rd.udev.log_priority=3 vt.global_cursor_default=0 loglevel=3
echo    'Initiale Ramdisk wird geladen …'
initrd  /@/boot/amd-ucode.img /@/boot/initramfs-linux-zen.img
}
Found fallback initrd image(s) in /boot:  amd-ucode.img initramfs-linux-zen-fallback.img
menuentry 'Garuda Linux, with Linux linux-zen (fallback initramfs)' --class garuda --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-linux-zen-fallback-0e3d95cd-b1c8-42be-a212-dfba44b5811d' {
load_video
set gfxpayload=keep
insmod gzio
insmod part_gpt
insmod btrfs
search --no-floppy --fs-uuid --set=root 0e3d95cd-b1c8-42be-a212-dfba44b5811d
echo    'Linux linux-zen wird geladen …'
linux   /@/boot/vmlinuz-linux-zen root=UUID=0e3d95cd-b1c8-42be-a212-dfba44b5811d rw [email protected]  quiet quiet splash rd.udev.log_priority=3 vt.global_cursor_default=0 loglevel=3
echo    'Initiale Ramdisk wird geladen …'
initrd  /@/boot/amd-ucode.img /@/boot/initramfs-linux-zen-fallback.img
}
}

### END /etc/grub.d/10_linux ###

### BEGIN /etc/grub.d/20_linux_xen ###
### END /etc/grub.d/20_linux_xen ###

### BEGIN /etc/grub.d/30_os-prober ###
Warnung: Zur Erkennung anderer bootfähiger Partitionen wird os-prober ausgeführt.
Dessen Ausgabe wird zur Erkennung bootfähiger Programmdateien und Erzeugen neuer Boot-Einträge verwendet.
sArcoLinux (rolling) auf /dev/nvme0n1p2 gefunden
menuentry 'ArcoLinux (rolling) (auf /dev/nvme0n1p2)' --class arcolinux --class gnu-linux --class gnu --class os $menuentry_id_option 'osprober-gnulinux-simple-4961e1bd-b03b-4186-83e5-cc30f23d120d' {
insmod part_gpt
insmod ext2
search --no-floppy --fs-uuid --set=root 4961e1bd-b03b-4186-83e5-cc30f23d120d
linux /boot/vmlinuz-linux root=UUID=4961e1bd-b03b-4186-83e5-cc30f23d120d rw quiet resume=UUID=1b3e55f0-7c1b-4cd6-b0df-d600732ac936 loglevel=3 audit=0 nvme_load=yes
initrd /boot/initramfs-linux.img
}
submenu 'Erweiterte Optionen für ArcoLinux (rolling) (auf /dev/nvme0n1p2)' $menuentry_id_option 'osprober-gnulinux-advanced-4961e1bd-b03b-4186-83e5-cc30f23d120d' {
menuentry 'ArcoLinux Linux (auf /dev/nvme0n1p2)' --class gnu-linux --class gnu --class os $menuentry_id_option 'osprober-gnulinux-/boot/vmlinuz-linux--4961e1bd-b03b-4186-83e5-cc30f23d120d' {
insmod part_gpt
insmod ext2
search --no-floppy --fs-uuid --set=root 4961e1bd-b03b-4186-83e5-cc30f23d120d
linux /boot/vmlinuz-linux root=UUID=4961e1bd-b03b-4186-83e5-cc30f23d120d rw quiet resume=UUID=1b3e55f0-7c1b-4cd6-b0df-d600732ac936 loglevel=3 audit=0 nvme_load=yes
initrd /boot/initramfs-linux.img
}
menuentry 'ArcoLinux Linux, with Linux linux (auf /dev/nvme0n1p2)' --class gnu-linux --class gnu --class os $menuentry_id_option 'osprober-gnulinux-/boot/vmlinuz-linux--4961e1bd-b03b-4186-83e5-cc30f23d120d' {
insmod part_gpt
insmod ext2
search --no-floppy --fs-uuid --set=root 4961e1bd-b03b-4186-83e5-cc30f23d120d
linux /boot/vmlinuz-linux root=UUID=4961e1bd-b03b-4186-83e5-cc30f23d120d rw quiet resume=UUID=1b3e55f0-7c1b-4cd6-b0df-d600732ac936 loglevel=3 audit=0 nvme_load=yes
initrd /boot/initramfs-linux.img
}
menuentry 'ArcoLinux Linux, with Linux linux (fallback initramfs) (auf /dev/nvme0n1p2)' --class gnu-linux --class gnu --class os $menuentry_id_option 'osprober-gnulinux-/boot/vmlinuz-linux--4961e1bd-b03b-4186-83e5-cc30f23d120d' {
insmod part_gpt
insmod ext2
search --no-floppy --fs-uuid --set=root 4961e1bd-b03b-4186-83e5-cc30f23d120d
linux /boot/vmlinuz-linux root=UUID=4961e1bd-b03b-4186-83e5-cc30f23d120d rw quiet resume=UUID=1b3e55f0-7c1b-4cd6-b0df-d600732ac936 loglevel=3 audit=0 nvme_load=yes
initrd /boot/initramfs-linux-fallback.img
}
}

Pop!_OS 22.04 LTS (22.04) auf /dev/nvme0n1p3 gefunden
menuentry 'Pop!_OS 22.04 LTS (22.04) (auf /dev/nvme0n1p3)' --class pop --class gnu-linux --class gnu --class os $menuentry_id_option 'osprober-gnulinux-simple-504ca61d-5a49-49cc-96c9-bf4324822376' {
insmod part_gpt
insmod ext2
search --no-floppy --fs-uuid --set=root 504ca61d-5a49-49cc-96c9-bf4324822376
linux /boot/vmlinuz-5.18.10-76051810-generic root=/dev/nvme0n1p3
initrd /boot/initrd.img-5.18.10-76051810-generic
}
submenu 'Erweiterte Optionen für Pop!_OS 22.04 LTS (22.04) (auf /dev/nvme0n1p3)' $menuentry_id_option 'osprober-gnulinux-advanced-504ca61d-5a49-49cc-96c9-bf4324822376' {
menuentry 'Pop!_OS 22.04 LTS (22.04) (auf /dev/nvme0n1p3)' --class gnu-linux --class gnu --class os $menuentry_id_option 'osprober-gnulinux-/boot/vmlinuz-5.18.10-76051810-generic--504ca61d-5a49-49cc-96c9-bf4324822376' {
insmod part_gpt
insmod ext2
search --no-floppy --fs-uuid --set=root 504ca61d-5a49-49cc-96c9-bf4324822376
linux /boot/vmlinuz-5.18.10-76051810-generic root=/dev/nvme0n1p3
initrd /boot/initrd.img-5.18.10-76051810-generic
}
menuentry 'Pop!_OS 22.04 LTS (22.04) (auf /dev/nvme0n1p3)' --class gnu-linux --class gnu --class os $menuentry_id_option 'osprober-gnulinux-/boot/vmlinuz-5.19.0-76051900-generic--504ca61d-5a49-49cc-96c9-bf4324822376' {
insmod part_gpt
insmod ext2
search --no-floppy --fs-uuid --set=root 504ca61d-5a49-49cc-96c9-bf4324822376
linux /boot/vmlinuz-5.19.0-76051900-generic root=/dev/nvme0n1p3
initrd /boot/initrd.img-5.19.0-76051900-generic
}
}

EndeavourOS Linux (rolling) auf /dev/nvme0n1p4 gefunden
menuentry 'EndeavourOS Linux (rolling) (auf /dev/nvme0n1p4)' --class endeavouros --class gnu-linux --class gnu --class os $menuentry_id_option 'osprober-gnulinux-simple-36c5f8d5-5bf9-4f0f-9657-af3686bd88e0' {
insmod part_gpt
insmod ext2
search --no-floppy --fs-uuid --set=root 36c5f8d5-5bf9-4f0f-9657-af3686bd88e0
linux /boot/vmlinuz-linux root=UUID=36c5f8d5-5bf9-4f0f-9657-af3686bd88e0 rw loglevel=3 nowatchdognvme_load=YES
initrd /boot/amd-ucode.img /boot/initramfs-linux.img
}
submenu 'Erweiterte Optionen für EndeavourOS Linux (rolling) (auf /dev/nvme0n1p4)' $menuentry_id_option 'osprober-gnulinux-advanced-36c5f8d5-5bf9-4f0f-9657-af3686bd88e0' {
menuentry 'EndeavourOS, on linux (auf /dev/nvme0n1p4)' --class gnu-linux --class gnu --class os $menuentry_id_option 'osprober-gnulinux-/boot/vmlinuz-linux--36c5f8d5-5bf9-4f0f-9657-af3686bd88e0' {
insmod part_gpt
insmod ext2
search --no-floppy --fs-uuid --set=root 36c5f8d5-5bf9-4f0f-9657-af3686bd88e0
linux /boot/vmlinuz-linux root=UUID=36c5f8d5-5bf9-4f0f-9657-af3686bd88e0 rw loglevel=3 nowatchdog nvme_load=YES
initrd /boot/amd-ucode.img /boot/initramfs-linux.img
}
menuentry 'EndeavourOS, on linux (fallback initramfs) (auf /dev/nvme0n1p4)' --class gnu-linux --class gnu --class os $menuentry_id_option 'osprober-gnulinux-/boot/vmlinuz-linux--36c5f8d5-5bf9-4f0f-9657-af3686bd88e0' {
insmod part_gpt
insmod ext2
search --no-floppy --fs-uuid --set=root 36c5f8d5-5bf9-4f0f-9657-af3686bd88e0
linux /boot/vmlinuz-linux root=UUID=36c5f8d5-5bf9-4f0f-9657-af3686bd88e0 rw loglevel=3 nowatchdog nvme_load=YES
initrd /boot/amd-ucode.img /boot/initramfs-linux-fallback.img
}
}

### END /etc/grub.d/30_os-prober ###

### BEGIN /etc/grub.d/30_uefi-firmware ###
Bootmenü-Eintrag für UEFI-Firmware-Einstellungen wird hinzugefügt …
menuentry 'UEFI Firmware Settings' $menuentry_id_option 'uefi-firmware' {
fwsetup
}
### END /etc/grub.d/30_uefi-firmware ###

### BEGIN /etc/grub.d/35_fwupd ###
### END /etc/grub.d/35_fwupd ###

### BEGIN /etc/grub.d/40_custom ###
# This file provides an easy way to add custom menu entries.  Simply type the
# menu entries you want to add after this comment.  Be careful not to change
# the 'exec tail' line above.
### END /etc/grub.d/40_custom ###

### BEGIN /etc/grub.d/41_custom ###
if [ -f  ${config_directory}/custom.cfg ]; then
source ${config_directory}/custom.cfg
elif [ -z "${config_directory}" -a -f  $prefix/custom.cfg ]; then
source $prefix/custom.cfg
fi
### END /etc/grub.d/41_custom ###

### BEGIN /etc/grub.d/41_snapshots-btrfs ###
Detecting snapshots ...
Found snapshot: 2022-09-02 14:09:40 | @/.snapshots/18/snapshot | post | cairo-perl glib-perl goocanvas libwnck3 pango-perl perl-cairo-gobject pe |
Found snapshot: 2022-09-02 14:09:39 | @/.snapshots/17/snapshot | pre  | /usr/bin/pacman -S --noconfirm community/shutter                         |
Found snapshot: 2022-09-02 14:08:17 | @/.snapshots/16/snapshot | post | amd-ucode curl ffmpeg file firedragon fwupd fzf garuda-hooks garuda-migr |
Found snapshot: 2022-09-02 14:07:44 | @/.snapshots/15/snapshot | pre  | pacman -Su grub                  |
Found snapshot: 2022-08-31 17:35:08 | @/.snapshots/14/snapshot | post | dzen2                            |
Found snapshot: 2022-08-31 17:35:08 | @/.snapshots/13/snapshot | pre  | /usr/bin/pacman -S --asdeps community/dzen2                              |
Found snapshot: 2022-08-31 17:35:04 | @/.snapshots/12/snapshot | post | herbstluftwm                     |
Found snapshot: 2022-08-31 17:35:03 | @/.snapshots/11/snapshot | pre  | /usr/bin/pacman -S community/herbstluftwm                                |
Found snapshot: 2022-08-30 16:54:47 | @/.snapshots/10/snapshot | post | blas cblas graphicsmagick gsl herbstluftwm inkscape lapack lib2geom libc |
Found snapshot: 2022-08-30 16:54:45 | @/.snapshots/9/snapshot  | pre  | /usr/bin/pacman -S --noconfirm extra/inkscape community/herbstluftwm     |
Found 10 snapshot(s)
submenu 'Garuda Linux snapshots' {
configfile "${prefix}/grub-btrfs.cfg"
}
Unmount /tmp/grub-btrfs.uTYYkvyllP .. Success
### END /etc/grub.d/41_snapshots-btrfs ###

### BEGIN /etc/grub.d/60_memtest86+ ###
Found memtest86+ image: /boot/memtest86+/memtest.bin
/usr/bin/grub-probe: Warnung: Unbekannter Gerätetyp nvme0n1.
if [ "${grub_platform}" == "pc" ]; then
menuentry "Memory Tester (memtest86+)" --class memtest86 --class gnu --class tool {
search --fs-uuid --no-floppy --set=root  0e3d95cd-b1c8-42be-a212-dfba44b5811d
linux16 /@/boot/memtest86+/memtest.bin
}
fi
### END /etc/grub.d/60_memtest86+ ###

### BEGIN /etc/grub.d/61_custom_leave_options ###
# This file provides an easy way to add custom menu entries.  Simply type the
# menu entries you want to add after this comment.  Be careful not to change
# the 'exec tail' line above.

menuentry "Shutdown" --class shutdown {
echo "System shutting down..."
halt
}

menuentry "Restart" --class restart {
echo "System rebooting..."
reboot
}

#if [ ${grub_platform} == "efi" ]; then
#       menuentry "Firmware Setup (UEFI)" --class recovery {
#               fwsetup
#       }
#fi
### END /etc/grub.d/61_custom_leave_options ###
abgeschlossen

╭─[email protected] in ~ as 🧙 took 8s

(E1) Garuda only
@SGS Haha, I guess that would be the easiest option.
Maybe that's in fact what I will do eventually :slight_smile:

The idea behind installing all these distros was taking the best ideas and trying to carry them over to the distro with the most approachable base.

(E2) Using custom.cfg

@SGS The one in /boot/grub/? When I took a look into it with elevated rights, it appears to be precisely the file created with grub-mkconfig, stating that this file should not be edited. So I guess you meant to imply using other tools to safely change that file?

Please do not ping team members with @ sign.

menuentry "Garuda Linux Sway auf nvme0n1p6" {
   insmod btrfs
   search --no-floppy --fs-uuid --set=root cc8c3427-2bdc-407e-ae93-4105b6795059
   configfile /@/boot/grub/grub.cfg
   }
menuentry "Garuda Linux KDE auf nvme0n1p5" {
   insmod btrfs
   search --no-floppy --fs-uuid --set=root fc62cc44-07ab-497b-ac89-15704c290993
   configfile /@/boot/grub/grub.cfg
   }

# /etc/default/grub
# GRUB_DISABLE_OS_PROBER=true

Just use sudo micro or Kate.

2 Likes

Alright, noted.
I falsely assumed that would be the right course of action as the forum has no multi-reply function and I wanted to avoid a double-post.

Thanks for the snippet!
So I can just trim the section that defines all the menu entries with a text editor?

Very nice. Seems like breaking the config file by manually removing entries isn't as easy as I thought :stuck_out_tongue:
The warning made it sound as if any manual edits would be ill-advised and risk breaking the whole boot process. (E.g. due to each menuentry being referenced in other sections of this or other files created with grub-mkconfig.)

Check the correct file name, please.
You can only edit for your liking the custom.cfg file, do not copy paste samples.

1 Like

This topic was automatically closed 2 days after the last reply. New replies are no longer allowed.