setup_go with no GO_VERSION resolves to whatever go.dev currently serves, so
every Go app was built against a moving target. When 1.27 landed it broke
wanderer outright (#16909): PocketBase pins go 1.25.0 and stack-overflows at
startup when built with anything newer.
Two problems, both fixed here:
setup_go ran before the source was fetched in all 15 install scripts, so the
pin could not be read even if someone wanted one. It now runs after the fetch
and reads the version out of go.mod.
13 ct/ scripts rebuild with go during update. Eleven never called setup_go at
all and rebuilt with whatever the container happened to have; the other two
called it before the fetch. All 13 now use the same call as their installer,
verified identical string for string.
caddy is left alone: xcaddy fetches the Caddy source itself, so there is no
local go.mod to read, and it already pins deliberately. wanderer is in #16976.
Replaces the misc/build.func bootstrap with the two-root core loader.
No other change: the engine contract (var_*, update_script, start,
build_container, description) is identical on both engines.
versitygw.sh additionally gains a trailing newline; it lacked one.
With this batch every ct/ script is on the core engine.
Replaces the misc/build.func bootstrap with the two-root core loader.
No other change: the engine contract (var_*, update_script, start,
build_container, description) is identical on both engines.
Replaces the misc/build.func bootstrap with the two-root core loader.
No other change: the engine contract (var_*, update_script, start,
build_container, description) is identical on both engines.
The 25 most-installed ct scripts still on misc/build.func, by install
count: homarr, influxdb, sonarr, radarr, networkoptimizer, authentik,
stirling-pdf, seerr, prowlarr, searxng, wordpress, zabbix, omada,
homeassistant, pegaprox, crafty-controller, iventoy, homelable,
flaresolverr, metube, netbird, casaos, obsidian-livesync, npmplus,
wazuh. ProxmoxVE goes from 115 migrated to 140.
Same three checks as #16749, since "migrate" has meant more than a line
swap before:
- None of the 25 has an alpine-* variant, so there is no merge to do.
- None references misc/ outside its bootstrap line.
- Two functions exist only in misc/ (_gl_asset_urls,
_send_abort_telemetry) and none of the 25 calls either.
So it is one line per script. Every head is byte-identical to the ones
migrated earlier, each diff is exactly 3+/1-, and all 25 parse.
Worth watching: scanopy is not in this set but sits at 32.9% success,
and casaos at 49.4% and networkoptimizer at 48.6% are in it. If those
two move, the engine is one changed variable among others.
vars.APP_ID named two different apps: 1065612 (community-scripts-pr-app)
here, 1108144 (app-header-generator) in ProxmoxVED. Folding both into
one GHAPP_HEADERS_ID would have pointed this repo at the wrong app, so
the PR app gets its own name.