Re: make RELEASE (here: kernel): template.ucl: line: 33, column: 0 - 'key must begin with a letter', character: '.'
Date: Sun, 05 Apr 2026 22:48:08 UTC
A FreeBSD User wrote in <20260405152059.6fa98991@thor.sb211.local>:
> --- create-packages-kernel ---
> /pool/sources/CURRENT/src/release/packages/generate-ucl.lua: fail to
> parse(/pool/sources/CURRENT/src/release/packages/template.ucl): error while parsing
> /pool/sources/CURRENT/src/release/packages/template.ucl: line: 33, column: 0 - 'key must begin
> with a letter', character: '.' *** [create-kernel-packages-extra-flavor-default-GENERIC] Error
> code 1
this was broken by the libucl update (abda442d92fd) which disables
macros in the Lua UCL parser by default.
please try this patch:
diff --git a/release/packages/generate-set-ucl.lua b/release/packages/generate-set-ucl.lua
index 9ba7026b75df..7a1cddda7be1 100755
--- a/release/packages/generate-set-ucl.lua
+++ b/release/packages/generate-set-ucl.lua
@@ -16,7 +16,7 @@ substituted as UCL variables.
local ucl = require("ucl")
-- This parser is the output UCL we want to build.
-local parser = ucl.parser()
+local parser = ucl.parser(0)
if #arg < 1 then
io.stderr:write(arg[0] .. ": missing template filename\n")
diff --git a/release/packages/generate-ucl.lua b/release/packages/generate-ucl.lua
index 19a9a95d5d38..aaaa4375dd4d 100755
--- a/release/packages/generate-ucl.lua
+++ b/release/packages/generate-ucl.lua
@@ -124,7 +124,7 @@ local pkgprefix = nil
local pkgversion = nil
-- This parser is the output UCL we want to build.
-local parser = ucl.parser()
+local parser = ucl.parser(0)
-- Set any $VARIABLES from the command line in the parser. This causes ucl to
-- automatically replace them when we load the source ucl.