aboutsummaryrefslogtreecommitdiff
path: root/release/scripts/pkgbase-stage.lua
diff options
context:
space:
mode:
authorLexi Winter <ivy@FreeBSD.org>2025-09-23 23:06:30 +0000
committerLexi Winter <ivy@FreeBSD.org>2025-09-24 09:16:13 +0000
commit3f5385beeacf49d0edb563ccc712841bcfd6b158 (patch)
tree2e4dba10aa2185acf5bbc3036a4a99de5cbee6c3 /release/scripts/pkgbase-stage.lua
parentaba986215fc99d09655d4dcfc5e37f8b1ac83edf (diff)
Diffstat (limited to 'release/scripts/pkgbase-stage.lua')
-rwxr-xr-xrelease/scripts/pkgbase-stage.lua19
1 files changed, 13 insertions, 6 deletions
diff --git a/release/scripts/pkgbase-stage.lua b/release/scripts/pkgbase-stage.lua
index 94dec96673de..6845e0079b05 100755
--- a/release/scripts/pkgbase-stage.lua
+++ b/release/scripts/pkgbase-stage.lua
@@ -20,19 +20,26 @@ end
-- Returns a list of packages to be included in the given media
local function select_packages(pkg, media, all_libcompats)
+ -- Note: if you update this list, you must also update the list in
+ -- usr.sbin/bsdinstall/scripts/pkgbase.in.
+ local kernel_packages = {
+ -- Most architectures use this
+ ["FreeBSD-kernel-generic"] = true,
+ -- PowerPC uses either of these, depending on platform
+ ["FreeBSD-kernel-generic64"] = true,
+ ["FreeBSD-kernel-generic64le"] = true,
+ }
+
local components = {}
local rquery = capture(pkg .. "rquery -U -r FreeBSD-base %n")
for package in rquery:gmatch("[^\n]+") do
local set = package:match("^FreeBSD%-set%-(.*)$")
if set then
components[set] = package
- -- Kernels other than FreeBSD-kernel-generic are ignored
- -- Note that on powerpc64 and powerpc64le the names are
- -- slightly different.
- elseif package:match("^FreeBSD%-kernel%-generic.*-dbg") then
- components["kernel-dbg"] = package
- elseif package:match("^FreeBSD%-kernel%-generic.*") then
+ elseif kernel_packages[package] then
components["kernel"] = package
+ elseif kernel_packages[package:match("(.*)%-dbg$")] then
+ components["kernel-dbg"] = package
elseif package == "pkg" then
components["pkg"] = package
end