diff --git a/internal/httpapi/phase3.go b/internal/httpapi/phase3.go index 3f77a54..c2f9a18 100644 --- a/internal/httpapi/phase3.go +++ b/internal/httpapi/phase3.go @@ -465,6 +465,9 @@ func executeApprovedAction(ctx context.Context, pool *db.Pool, execID uuid.UUID, func provisionScript(pkgs []string, postInstall string) string { var b strings.Builder b.WriteString("set -o pipefail\n") + // A fresh debian LXC has no locale set, which spams "Can't set locale" + // warnings and breaks some package post-install scripts. Pin C.UTF-8. + b.WriteString("export LANG=C.UTF-8 LC_ALL=C.UTF-8 DEBIAN_FRONTEND=noninteractive\n") b.WriteString("probe=deb.debian.org\n") b.WriteString("ok=0\n") b.WriteString("for i in $(seq 1 30); do if getent hosts \"$probe\" >/dev/null 2>&1; then ok=1; break; fi; sleep 2; done\n")