diff --git a/usr.sbin/bsdinstall/scripts/pkgbase.in b/usr.sbin/bsdinstall/scripts/pkgbase.in --- a/usr.sbin/bsdinstall/scripts/pkgbase.in +++ b/usr.sbin/bsdinstall/scripts/pkgbase.in @@ -159,6 +159,10 @@ components["lib" .. compat .. "_dbg"] = {} end + -- Look for GENERIC kernel package unless KERNCONF is specified + local kernconf = os.getenv("KERNCONF") + kernconf = kernconf and string.lower(kernconf) or "generic" + local rquery = capture(pkg .. "rquery -U -r FreeBSD-base %n") for package in rquery:gmatch("[^\n]+") do if package == "FreeBSD-src" or package:match("^FreeBSD%-src%-.*") then @@ -168,10 +172,10 @@ elseif package:match("^FreeBSD%-kernel%-.*") and package ~= "FreeBSD-kernel-man" then - -- Kernels other than FreeBSD-kernel-generic are ignored - if package == "FreeBSD-kernel-generic" then + -- Kernels other than the one we're after are ignored + if package == "FreeBSD-kernel-" .. kernconf then table.insert(components["kernel"], package) - elseif package == "FreeBSD-kernel-generic-dbg" then + elseif package == "FreeBSD-kernel-" .. kernconf .. "-dbg" then table.insert(components["kernel_dbg"], package) end elseif package:match(".*%-dbg$") then