aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKyle Evans <kevans@FreeBSD.org>2026-01-07 18:20:05 +0000
committerKyle Evans <kevans@FreeBSD.org>2026-01-07 18:20:05 +0000
commite30086ab4c8778ea70a3b19e83546ce1b4a16492 (patch)
treea471e8485598603a4d0849a6869803ae178424f9
parent47015e4546619151f9bff548a3758b72286d04ed (diff)
lualoader: fix pruning of non-existent default kernel
Removing the kernel from the list of available kernels is sufficient to avoid rendering it in the list, but we need more for booting to actually work. Notably, the 'kernel' loader.conf var was left intact to its default value, so if one didn't use the kernel selector in the menu then we'd try to boot the nonexistent 'kernel' instead of the new default (first autodetected). There's room to improve the error messages here, but for now let's just make it actually work correctly. PR: 292232 Fixes: d04415c520b03 ("loader: lua: remove the default kernel [...]")
-rw-r--r--stand/lua/core.lua6
1 files changed, 6 insertions, 0 deletions
diff --git a/stand/lua/core.lua b/stand/lua/core.lua
index ad417e5f97e5..b1b321d10868 100644
--- a/stand/lua/core.lua
+++ b/stand/lua/core.lua
@@ -289,6 +289,12 @@ function core.kernelList()
kernels[n] = kernels[n + 1]
end
end
+
+ -- The config/boot bits use the env var as a fallback if the
+ -- menu's kernel selector remains untouched, so we want to
+ -- update our notion of the default kernel to one that is
+ -- actually present.
+ loader.setenv("kernel", kernels[1])
end
core.cached_kernels = kernels