summaryrefslogtreecommitdiff
path: root/opt/limine/limine-sync.conf.example
diff options
context:
space:
mode:
authorrawnix ports <ports@rawnix.org>2026-09-26 18:19:05 +0000
committerrawnix ports <ports@rawnix.org>2026-09-26 18:19:05 +0000
commitc82e88dd00d1b0b7fcfb4e5628d99611388cef6f (patch)
tree56d864b5a5c6c145edd96178ae219a8f90e191a6 /opt/limine/limine-sync.conf.example
downloadports-c82e88dd00d1b0b7fcfb4e5628d99611388cef6f.tar.gz
sync 2026-09-26 18:19 UTC
1672 files changed, 151396 insertions(+)
Diffstat (limited to 'opt/limine/limine-sync.conf.example')
-rw-r--r--opt/limine/limine-sync.conf.example108
1 files changed, 108 insertions, 0 deletions
diff --git a/opt/limine/limine-sync.conf.example b/opt/limine/limine-sync.conf.example
new file mode 100644
index 0000000..4e66397
--- /dev/null
+++ b/opt/limine/limine-sync.conf.example
@@ -0,0 +1,108 @@
+# /etc/limine-sync.conf.example — copy to /etc/limine-sync.conf and edit.
+#
+# limine-sync generates the kernel entries of the boot menu from what is
+# in /boot, and splices them into /etc/limine.conf.in at @KERNELS@. This
+# file supplies the few things a directory listing cannot tell it.
+#
+# Everything below except CMDLINE is optional and shown at its built-in
+# default; an absent file means "all defaults", which is why CMDLINE
+# being required is what makes the file required.
+#
+# Syntax: KEY=value, one per line. Keys are uppercase. Surrounding
+# quotes are stripped. '#' starts a comment anywhere on the line, so a
+# value cannot contain one. An unrecognised key is warned about and
+# ignored — check the output after editing.
+#
+# Nothing here is read at boot. Changes take effect when limine-sync
+# next runs: automatically on the boot/ trigger, or by hand. Always
+# look before you leap:
+#
+# limine-sync -n # print what would change, touch nothing
+# limine-sync
+#
+
+# ── CMDLINE (required) ───────────────────────────────────────────────
+#
+# The kernel command line, used verbatim for every generated entry.
+# There is no default: the root device is the one setting that differs
+# on every machine, and a guess would produce a bootable-looking menu
+# pointing at the wrong disk. limine-sync refuses to run without it.
+#
+# On an install target `setup-boot /mnt` writes this line for you, and
+# reruns are how you change it afterwards.
+#
+# Unencrypted root:
+#
+#CMDLINE=root=/dev/nvme0n1p2 ro quiet
+#
+# LUKS root. cryptroot= is the UUID of the *LUKS partition* (from
+# `cryptsetup luksUUID /dev/nvme0n1p2`), not of the filesystem inside
+# it. tinyrd creates the mapping under exactly the name given in
+# root=, so the name you passed to `cryptsetup open` belongs here and
+# is recorded nowhere else:
+#
+#CMDLINE=cryptroot=UUID=xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx root=/dev/mapper/croot ro quiet
+#
+# Serial console as well as the screen (VPS, or `qemu -nographic`):
+#
+#CMDLINE=root=/dev/vda2 ro quiet console=tty0 console=ttyS0,115200n8
+
+# ── TITLE ────────────────────────────────────────────────────────────
+#
+# Menu label. Entries read "<TITLE> <version>", e.g. "rawnix 6.18.50",
+# and the Xen chainload entry reads "<TITLE> Xen".
+#
+#TITLE=rawnix
+
+# ── INITRD ───────────────────────────────────────────────────────────
+#
+# Filename in /boot of the initramfs, added as a module_path after the
+# microcode. tinyrd carries no modules and takes the LUKS UUID from
+# the cmdline, so one image serves every kernel and this is a plain
+# name with no version in it.
+#
+# Set it empty to boot with no initramfs. That is fine for an
+# unencrypted root and impossible for a LUKS one — limine-sync warns if
+# CMDLINE has cryptroot= and the image is not on the ESP.
+#
+#INITRD=tinyrd.img
+
+# ── MICROCODE ────────────────────────────────────────────────────────
+#
+# Filename in /boot of the early microcode image, added as the *first*
+# module_path. The kernel only applies an early update from the head
+# of the initrd chain, so the order is not adjustable.
+#
+# Set empty on a machine that needs none, or on Intel once there is an
+# intel-ucode port. An entry is only emitted if the file is actually
+# on the ESP.
+#
+#MICROCODE=amd-ucode.img
+
+# ── Xen ──────────────────────────────────────────────────────────────
+#
+# Only relevant if a xen-*.efi is on the ESP. The newest one always
+# gets a chainload entry in limine.conf; these keys additionally
+# generate /boot/efi/xen.cfg, which is what picks dom0's kernel.
+#
+# XEN_KERNEL pins a *series*, not a version: "6.12" selects the newest
+# 6.12.x that has a module tree. Empty means leave xen.cfg alone,
+# which is the default and what you want if you maintain it by hand.
+#
+#XEN_KERNEL=
+#
+# Appended to dom0's kernel line. Note dom0 usually wants fewer CPUs
+# and less memory than the cmdline above gives a bare-metal boot.
+#
+#XEN_CMDLINE=
+#
+# The hypervisor's own options line.
+#
+#XEN_OPTIONS=dom0_mem=4G,max:4G dom0_max_vcpus=4
+#
+# Xen takes a single ramdisk, so microcode and an initramfs are
+# mutually exclusive here. yes = microcode; anything else = the
+# INITRD image, if there is one. An encrypted dom0 root therefore
+# cannot get early microcode this way and needs Xen's own ucode=.
+#
+#XEN_UCODE=no