diff --git a/generate/templates/Dockerfile.ps1 b/generate/templates/Dockerfile.ps1 index 1d6978c3..d31f63d0 100644 --- a/generate/templates/Dockerfile.ps1 +++ b/generate/templates/Dockerfile.ps1 @@ -39,10 +39,10 @@ $( if ([version]$VARIANT['_metadata']['package_version'] -ge [version]'4.17') { "@ } ) npm config set python python3; \ - ( set +x; export GITHUB_TOKEN=`$( cat /run/secrets/GITHUB_TOKEN ); set -x; npm install --global code-server@$( $VARIANT['_metadata']['package_version'] ) --unsafe-perm ); \ + # Use 'NODE_API_EXPERIMENTAL_NOGC_ENV_OPT_OUT' to fix node 18.20 and 20.12 making experimental API the default, which breaks builds + ( set +x; export GITHUB_TOKEN=`$( cat /run/secrets/GITHUB_TOKEN ); set -x; CXXFLAGS='-DNODE_API_EXPERIMENTAL_NOGC_ENV_OPT_OUT' npm install --global code-server@$( $VARIANT['_metadata']['package_version'] ) --unsafe-perm ); \ # Fix missing dependencies. See: https://github.com/coder/code-server/issues/5530 - cd /usr/local/lib/node_modules/code-server/lib/vscode; \ - ( set +x; export GITHUB_TOKEN=`$( cat /run/secrets/GITHUB_TOKEN ); set -x; npm install --legacy-peer-deps ); \ + ( cd /usr/local/lib/node_modules/code-server/lib/vscode; set +x; export GITHUB_TOKEN=`$( cat /run/secrets/GITHUB_TOKEN ); set -x; CXXFLAGS='-DNODE_API_EXPERIMENTAL_NOGC_ENV_OPT_OUT' npm install --legacy-peer-deps ); \ code-server --version; \ apk del `$DEPS diff --git a/variants/4.11.0-docker-go-1.20.14/Dockerfile b/variants/4.11.0-docker-go-1.20.14/Dockerfile index 430c1505..37e4730a 100644 --- a/variants/4.11.0-docker-go-1.20.14/Dockerfile +++ b/variants/4.11.0-docker-go-1.20.14/Dockerfile @@ -25,10 +25,10 @@ RUN --mount=type=secret,id=GITHUB_TOKEN \ # Constraint to npm 8, or else npm will fail with 'npm ERR! python is not a valid npm option'. See: https://stackoverflow.com/questions/74522956/python-is-not-a-valid-npm-option and https://jubianchi.github.io/semver-check/#/~8/8 apk add --no-cache npm~8 nodejs~16; \ npm config set python python3; \ - ( set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; npm install --global code-server@4.11.0 --unsafe-perm ); \ + # Use 'NODE_API_EXPERIMENTAL_NOGC_ENV_OPT_OUT' to fix node 18.20 and 20.12 making experimental API the default, which breaks builds + ( set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; CXXFLAGS='-DNODE_API_EXPERIMENTAL_NOGC_ENV_OPT_OUT' npm install --global code-server@4.11.0 --unsafe-perm ); \ # Fix missing dependencies. See: https://github.com/coder/code-server/issues/5530 - cd /usr/local/lib/node_modules/code-server/lib/vscode; \ - ( set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; npm install --legacy-peer-deps ); \ + ( cd /usr/local/lib/node_modules/code-server/lib/vscode; set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; CXXFLAGS='-DNODE_API_EXPERIMENTAL_NOGC_ENV_OPT_OUT' npm install --legacy-peer-deps ); \ code-server --version; \ apk del $DEPS diff --git a/variants/4.11.0-docker-rootless-go-1.20.14/Dockerfile b/variants/4.11.0-docker-rootless-go-1.20.14/Dockerfile index 86552c9e..3727462e 100644 --- a/variants/4.11.0-docker-rootless-go-1.20.14/Dockerfile +++ b/variants/4.11.0-docker-rootless-go-1.20.14/Dockerfile @@ -25,10 +25,10 @@ RUN --mount=type=secret,id=GITHUB_TOKEN \ # Constraint to npm 8, or else npm will fail with 'npm ERR! python is not a valid npm option'. See: https://stackoverflow.com/questions/74522956/python-is-not-a-valid-npm-option and https://jubianchi.github.io/semver-check/#/~8/8 apk add --no-cache npm~8 nodejs~16; \ npm config set python python3; \ - ( set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; npm install --global code-server@4.11.0 --unsafe-perm ); \ + # Use 'NODE_API_EXPERIMENTAL_NOGC_ENV_OPT_OUT' to fix node 18.20 and 20.12 making experimental API the default, which breaks builds + ( set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; CXXFLAGS='-DNODE_API_EXPERIMENTAL_NOGC_ENV_OPT_OUT' npm install --global code-server@4.11.0 --unsafe-perm ); \ # Fix missing dependencies. See: https://github.com/coder/code-server/issues/5530 - cd /usr/local/lib/node_modules/code-server/lib/vscode; \ - ( set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; npm install --legacy-peer-deps ); \ + ( cd /usr/local/lib/node_modules/code-server/lib/vscode; set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; CXXFLAGS='-DNODE_API_EXPERIMENTAL_NOGC_ENV_OPT_OUT' npm install --legacy-peer-deps ); \ code-server --version; \ apk del $DEPS diff --git a/variants/4.11.0-docker-rootless/Dockerfile b/variants/4.11.0-docker-rootless/Dockerfile index f15e62df..97324263 100644 --- a/variants/4.11.0-docker-rootless/Dockerfile +++ b/variants/4.11.0-docker-rootless/Dockerfile @@ -25,10 +25,10 @@ RUN --mount=type=secret,id=GITHUB_TOKEN \ # Constraint to npm 8, or else npm will fail with 'npm ERR! python is not a valid npm option'. See: https://stackoverflow.com/questions/74522956/python-is-not-a-valid-npm-option and https://jubianchi.github.io/semver-check/#/~8/8 apk add --no-cache npm~8 nodejs~16; \ npm config set python python3; \ - ( set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; npm install --global code-server@4.11.0 --unsafe-perm ); \ + # Use 'NODE_API_EXPERIMENTAL_NOGC_ENV_OPT_OUT' to fix node 18.20 and 20.12 making experimental API the default, which breaks builds + ( set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; CXXFLAGS='-DNODE_API_EXPERIMENTAL_NOGC_ENV_OPT_OUT' npm install --global code-server@4.11.0 --unsafe-perm ); \ # Fix missing dependencies. See: https://github.com/coder/code-server/issues/5530 - cd /usr/local/lib/node_modules/code-server/lib/vscode; \ - ( set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; npm install --legacy-peer-deps ); \ + ( cd /usr/local/lib/node_modules/code-server/lib/vscode; set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; CXXFLAGS='-DNODE_API_EXPERIMENTAL_NOGC_ENV_OPT_OUT' npm install --legacy-peer-deps ); \ code-server --version; \ apk del $DEPS diff --git a/variants/4.11.0-docker/Dockerfile b/variants/4.11.0-docker/Dockerfile index ed196fb5..121247e4 100644 --- a/variants/4.11.0-docker/Dockerfile +++ b/variants/4.11.0-docker/Dockerfile @@ -25,10 +25,10 @@ RUN --mount=type=secret,id=GITHUB_TOKEN \ # Constraint to npm 8, or else npm will fail with 'npm ERR! python is not a valid npm option'. See: https://stackoverflow.com/questions/74522956/python-is-not-a-valid-npm-option and https://jubianchi.github.io/semver-check/#/~8/8 apk add --no-cache npm~8 nodejs~16; \ npm config set python python3; \ - ( set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; npm install --global code-server@4.11.0 --unsafe-perm ); \ + # Use 'NODE_API_EXPERIMENTAL_NOGC_ENV_OPT_OUT' to fix node 18.20 and 20.12 making experimental API the default, which breaks builds + ( set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; CXXFLAGS='-DNODE_API_EXPERIMENTAL_NOGC_ENV_OPT_OUT' npm install --global code-server@4.11.0 --unsafe-perm ); \ # Fix missing dependencies. See: https://github.com/coder/code-server/issues/5530 - cd /usr/local/lib/node_modules/code-server/lib/vscode; \ - ( set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; npm install --legacy-peer-deps ); \ + ( cd /usr/local/lib/node_modules/code-server/lib/vscode; set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; CXXFLAGS='-DNODE_API_EXPERIMENTAL_NOGC_ENV_OPT_OUT' npm install --legacy-peer-deps ); \ code-server --version; \ apk del $DEPS diff --git a/variants/4.11.0/Dockerfile b/variants/4.11.0/Dockerfile index cbe3d227..863eb713 100644 --- a/variants/4.11.0/Dockerfile +++ b/variants/4.11.0/Dockerfile @@ -25,10 +25,10 @@ RUN --mount=type=secret,id=GITHUB_TOKEN \ # Constraint to npm 8, or else npm will fail with 'npm ERR! python is not a valid npm option'. See: https://stackoverflow.com/questions/74522956/python-is-not-a-valid-npm-option and https://jubianchi.github.io/semver-check/#/~8/8 apk add --no-cache npm~8 nodejs~16; \ npm config set python python3; \ - ( set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; npm install --global code-server@4.11.0 --unsafe-perm ); \ + # Use 'NODE_API_EXPERIMENTAL_NOGC_ENV_OPT_OUT' to fix node 18.20 and 20.12 making experimental API the default, which breaks builds + ( set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; CXXFLAGS='-DNODE_API_EXPERIMENTAL_NOGC_ENV_OPT_OUT' npm install --global code-server@4.11.0 --unsafe-perm ); \ # Fix missing dependencies. See: https://github.com/coder/code-server/issues/5530 - cd /usr/local/lib/node_modules/code-server/lib/vscode; \ - ( set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; npm install --legacy-peer-deps ); \ + ( cd /usr/local/lib/node_modules/code-server/lib/vscode; set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; CXXFLAGS='-DNODE_API_EXPERIMENTAL_NOGC_ENV_OPT_OUT' npm install --legacy-peer-deps ); \ code-server --version; \ apk del $DEPS diff --git a/variants/4.12.0-docker-go-1.20.14/Dockerfile b/variants/4.12.0-docker-go-1.20.14/Dockerfile index 8570d207..0bcd371b 100644 --- a/variants/4.12.0-docker-go-1.20.14/Dockerfile +++ b/variants/4.12.0-docker-go-1.20.14/Dockerfile @@ -25,10 +25,10 @@ RUN --mount=type=secret,id=GITHUB_TOKEN \ # Constraint to npm 8, or else npm will fail with 'npm ERR! python is not a valid npm option'. See: https://stackoverflow.com/questions/74522956/python-is-not-a-valid-npm-option and https://jubianchi.github.io/semver-check/#/~8/8 apk add --no-cache npm~8 nodejs~16; \ npm config set python python3; \ - ( set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; npm install --global code-server@4.12.0 --unsafe-perm ); \ + # Use 'NODE_API_EXPERIMENTAL_NOGC_ENV_OPT_OUT' to fix node 18.20 and 20.12 making experimental API the default, which breaks builds + ( set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; CXXFLAGS='-DNODE_API_EXPERIMENTAL_NOGC_ENV_OPT_OUT' npm install --global code-server@4.12.0 --unsafe-perm ); \ # Fix missing dependencies. See: https://github.com/coder/code-server/issues/5530 - cd /usr/local/lib/node_modules/code-server/lib/vscode; \ - ( set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; npm install --legacy-peer-deps ); \ + ( cd /usr/local/lib/node_modules/code-server/lib/vscode; set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; CXXFLAGS='-DNODE_API_EXPERIMENTAL_NOGC_ENV_OPT_OUT' npm install --legacy-peer-deps ); \ code-server --version; \ apk del $DEPS diff --git a/variants/4.12.0-docker-rootless-go-1.20.14/Dockerfile b/variants/4.12.0-docker-rootless-go-1.20.14/Dockerfile index 5eace376..59597eaa 100644 --- a/variants/4.12.0-docker-rootless-go-1.20.14/Dockerfile +++ b/variants/4.12.0-docker-rootless-go-1.20.14/Dockerfile @@ -25,10 +25,10 @@ RUN --mount=type=secret,id=GITHUB_TOKEN \ # Constraint to npm 8, or else npm will fail with 'npm ERR! python is not a valid npm option'. See: https://stackoverflow.com/questions/74522956/python-is-not-a-valid-npm-option and https://jubianchi.github.io/semver-check/#/~8/8 apk add --no-cache npm~8 nodejs~16; \ npm config set python python3; \ - ( set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; npm install --global code-server@4.12.0 --unsafe-perm ); \ + # Use 'NODE_API_EXPERIMENTAL_NOGC_ENV_OPT_OUT' to fix node 18.20 and 20.12 making experimental API the default, which breaks builds + ( set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; CXXFLAGS='-DNODE_API_EXPERIMENTAL_NOGC_ENV_OPT_OUT' npm install --global code-server@4.12.0 --unsafe-perm ); \ # Fix missing dependencies. See: https://github.com/coder/code-server/issues/5530 - cd /usr/local/lib/node_modules/code-server/lib/vscode; \ - ( set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; npm install --legacy-peer-deps ); \ + ( cd /usr/local/lib/node_modules/code-server/lib/vscode; set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; CXXFLAGS='-DNODE_API_EXPERIMENTAL_NOGC_ENV_OPT_OUT' npm install --legacy-peer-deps ); \ code-server --version; \ apk del $DEPS diff --git a/variants/4.12.0-docker-rootless/Dockerfile b/variants/4.12.0-docker-rootless/Dockerfile index 3b2c0acf..f5b088f1 100644 --- a/variants/4.12.0-docker-rootless/Dockerfile +++ b/variants/4.12.0-docker-rootless/Dockerfile @@ -25,10 +25,10 @@ RUN --mount=type=secret,id=GITHUB_TOKEN \ # Constraint to npm 8, or else npm will fail with 'npm ERR! python is not a valid npm option'. See: https://stackoverflow.com/questions/74522956/python-is-not-a-valid-npm-option and https://jubianchi.github.io/semver-check/#/~8/8 apk add --no-cache npm~8 nodejs~16; \ npm config set python python3; \ - ( set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; npm install --global code-server@4.12.0 --unsafe-perm ); \ + # Use 'NODE_API_EXPERIMENTAL_NOGC_ENV_OPT_OUT' to fix node 18.20 and 20.12 making experimental API the default, which breaks builds + ( set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; CXXFLAGS='-DNODE_API_EXPERIMENTAL_NOGC_ENV_OPT_OUT' npm install --global code-server@4.12.0 --unsafe-perm ); \ # Fix missing dependencies. See: https://github.com/coder/code-server/issues/5530 - cd /usr/local/lib/node_modules/code-server/lib/vscode; \ - ( set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; npm install --legacy-peer-deps ); \ + ( cd /usr/local/lib/node_modules/code-server/lib/vscode; set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; CXXFLAGS='-DNODE_API_EXPERIMENTAL_NOGC_ENV_OPT_OUT' npm install --legacy-peer-deps ); \ code-server --version; \ apk del $DEPS diff --git a/variants/4.12.0-docker/Dockerfile b/variants/4.12.0-docker/Dockerfile index 3119f550..2dcab539 100644 --- a/variants/4.12.0-docker/Dockerfile +++ b/variants/4.12.0-docker/Dockerfile @@ -25,10 +25,10 @@ RUN --mount=type=secret,id=GITHUB_TOKEN \ # Constraint to npm 8, or else npm will fail with 'npm ERR! python is not a valid npm option'. See: https://stackoverflow.com/questions/74522956/python-is-not-a-valid-npm-option and https://jubianchi.github.io/semver-check/#/~8/8 apk add --no-cache npm~8 nodejs~16; \ npm config set python python3; \ - ( set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; npm install --global code-server@4.12.0 --unsafe-perm ); \ + # Use 'NODE_API_EXPERIMENTAL_NOGC_ENV_OPT_OUT' to fix node 18.20 and 20.12 making experimental API the default, which breaks builds + ( set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; CXXFLAGS='-DNODE_API_EXPERIMENTAL_NOGC_ENV_OPT_OUT' npm install --global code-server@4.12.0 --unsafe-perm ); \ # Fix missing dependencies. See: https://github.com/coder/code-server/issues/5530 - cd /usr/local/lib/node_modules/code-server/lib/vscode; \ - ( set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; npm install --legacy-peer-deps ); \ + ( cd /usr/local/lib/node_modules/code-server/lib/vscode; set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; CXXFLAGS='-DNODE_API_EXPERIMENTAL_NOGC_ENV_OPT_OUT' npm install --legacy-peer-deps ); \ code-server --version; \ apk del $DEPS diff --git a/variants/4.12.0/Dockerfile b/variants/4.12.0/Dockerfile index 71366a3d..10f2ea38 100644 --- a/variants/4.12.0/Dockerfile +++ b/variants/4.12.0/Dockerfile @@ -25,10 +25,10 @@ RUN --mount=type=secret,id=GITHUB_TOKEN \ # Constraint to npm 8, or else npm will fail with 'npm ERR! python is not a valid npm option'. See: https://stackoverflow.com/questions/74522956/python-is-not-a-valid-npm-option and https://jubianchi.github.io/semver-check/#/~8/8 apk add --no-cache npm~8 nodejs~16; \ npm config set python python3; \ - ( set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; npm install --global code-server@4.12.0 --unsafe-perm ); \ + # Use 'NODE_API_EXPERIMENTAL_NOGC_ENV_OPT_OUT' to fix node 18.20 and 20.12 making experimental API the default, which breaks builds + ( set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; CXXFLAGS='-DNODE_API_EXPERIMENTAL_NOGC_ENV_OPT_OUT' npm install --global code-server@4.12.0 --unsafe-perm ); \ # Fix missing dependencies. See: https://github.com/coder/code-server/issues/5530 - cd /usr/local/lib/node_modules/code-server/lib/vscode; \ - ( set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; npm install --legacy-peer-deps ); \ + ( cd /usr/local/lib/node_modules/code-server/lib/vscode; set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; CXXFLAGS='-DNODE_API_EXPERIMENTAL_NOGC_ENV_OPT_OUT' npm install --legacy-peer-deps ); \ code-server --version; \ apk del $DEPS diff --git a/variants/4.13.0-docker-go-1.20.14/Dockerfile b/variants/4.13.0-docker-go-1.20.14/Dockerfile index 46ba0775..b9227e7e 100644 --- a/variants/4.13.0-docker-go-1.20.14/Dockerfile +++ b/variants/4.13.0-docker-go-1.20.14/Dockerfile @@ -25,10 +25,10 @@ RUN --mount=type=secret,id=GITHUB_TOKEN \ # Constraint to npm 8, or else npm will fail with 'npm ERR! python is not a valid npm option'. See: https://stackoverflow.com/questions/74522956/python-is-not-a-valid-npm-option and https://jubianchi.github.io/semver-check/#/~8/8 apk add --no-cache npm~8 nodejs~16; \ npm config set python python3; \ - ( set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; npm install --global code-server@4.13.0 --unsafe-perm ); \ + # Use 'NODE_API_EXPERIMENTAL_NOGC_ENV_OPT_OUT' to fix node 18.20 and 20.12 making experimental API the default, which breaks builds + ( set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; CXXFLAGS='-DNODE_API_EXPERIMENTAL_NOGC_ENV_OPT_OUT' npm install --global code-server@4.13.0 --unsafe-perm ); \ # Fix missing dependencies. See: https://github.com/coder/code-server/issues/5530 - cd /usr/local/lib/node_modules/code-server/lib/vscode; \ - ( set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; npm install --legacy-peer-deps ); \ + ( cd /usr/local/lib/node_modules/code-server/lib/vscode; set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; CXXFLAGS='-DNODE_API_EXPERIMENTAL_NOGC_ENV_OPT_OUT' npm install --legacy-peer-deps ); \ code-server --version; \ apk del $DEPS diff --git a/variants/4.13.0-docker-rootless-go-1.20.14/Dockerfile b/variants/4.13.0-docker-rootless-go-1.20.14/Dockerfile index f2700ba5..e0f6280c 100644 --- a/variants/4.13.0-docker-rootless-go-1.20.14/Dockerfile +++ b/variants/4.13.0-docker-rootless-go-1.20.14/Dockerfile @@ -25,10 +25,10 @@ RUN --mount=type=secret,id=GITHUB_TOKEN \ # Constraint to npm 8, or else npm will fail with 'npm ERR! python is not a valid npm option'. See: https://stackoverflow.com/questions/74522956/python-is-not-a-valid-npm-option and https://jubianchi.github.io/semver-check/#/~8/8 apk add --no-cache npm~8 nodejs~16; \ npm config set python python3; \ - ( set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; npm install --global code-server@4.13.0 --unsafe-perm ); \ + # Use 'NODE_API_EXPERIMENTAL_NOGC_ENV_OPT_OUT' to fix node 18.20 and 20.12 making experimental API the default, which breaks builds + ( set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; CXXFLAGS='-DNODE_API_EXPERIMENTAL_NOGC_ENV_OPT_OUT' npm install --global code-server@4.13.0 --unsafe-perm ); \ # Fix missing dependencies. See: https://github.com/coder/code-server/issues/5530 - cd /usr/local/lib/node_modules/code-server/lib/vscode; \ - ( set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; npm install --legacy-peer-deps ); \ + ( cd /usr/local/lib/node_modules/code-server/lib/vscode; set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; CXXFLAGS='-DNODE_API_EXPERIMENTAL_NOGC_ENV_OPT_OUT' npm install --legacy-peer-deps ); \ code-server --version; \ apk del $DEPS diff --git a/variants/4.13.0-docker-rootless/Dockerfile b/variants/4.13.0-docker-rootless/Dockerfile index e5246f8a..01248b87 100644 --- a/variants/4.13.0-docker-rootless/Dockerfile +++ b/variants/4.13.0-docker-rootless/Dockerfile @@ -25,10 +25,10 @@ RUN --mount=type=secret,id=GITHUB_TOKEN \ # Constraint to npm 8, or else npm will fail with 'npm ERR! python is not a valid npm option'. See: https://stackoverflow.com/questions/74522956/python-is-not-a-valid-npm-option and https://jubianchi.github.io/semver-check/#/~8/8 apk add --no-cache npm~8 nodejs~16; \ npm config set python python3; \ - ( set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; npm install --global code-server@4.13.0 --unsafe-perm ); \ + # Use 'NODE_API_EXPERIMENTAL_NOGC_ENV_OPT_OUT' to fix node 18.20 and 20.12 making experimental API the default, which breaks builds + ( set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; CXXFLAGS='-DNODE_API_EXPERIMENTAL_NOGC_ENV_OPT_OUT' npm install --global code-server@4.13.0 --unsafe-perm ); \ # Fix missing dependencies. See: https://github.com/coder/code-server/issues/5530 - cd /usr/local/lib/node_modules/code-server/lib/vscode; \ - ( set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; npm install --legacy-peer-deps ); \ + ( cd /usr/local/lib/node_modules/code-server/lib/vscode; set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; CXXFLAGS='-DNODE_API_EXPERIMENTAL_NOGC_ENV_OPT_OUT' npm install --legacy-peer-deps ); \ code-server --version; \ apk del $DEPS diff --git a/variants/4.13.0-docker/Dockerfile b/variants/4.13.0-docker/Dockerfile index da6bdd5b..8fc90e75 100644 --- a/variants/4.13.0-docker/Dockerfile +++ b/variants/4.13.0-docker/Dockerfile @@ -25,10 +25,10 @@ RUN --mount=type=secret,id=GITHUB_TOKEN \ # Constraint to npm 8, or else npm will fail with 'npm ERR! python is not a valid npm option'. See: https://stackoverflow.com/questions/74522956/python-is-not-a-valid-npm-option and https://jubianchi.github.io/semver-check/#/~8/8 apk add --no-cache npm~8 nodejs~16; \ npm config set python python3; \ - ( set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; npm install --global code-server@4.13.0 --unsafe-perm ); \ + # Use 'NODE_API_EXPERIMENTAL_NOGC_ENV_OPT_OUT' to fix node 18.20 and 20.12 making experimental API the default, which breaks builds + ( set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; CXXFLAGS='-DNODE_API_EXPERIMENTAL_NOGC_ENV_OPT_OUT' npm install --global code-server@4.13.0 --unsafe-perm ); \ # Fix missing dependencies. See: https://github.com/coder/code-server/issues/5530 - cd /usr/local/lib/node_modules/code-server/lib/vscode; \ - ( set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; npm install --legacy-peer-deps ); \ + ( cd /usr/local/lib/node_modules/code-server/lib/vscode; set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; CXXFLAGS='-DNODE_API_EXPERIMENTAL_NOGC_ENV_OPT_OUT' npm install --legacy-peer-deps ); \ code-server --version; \ apk del $DEPS diff --git a/variants/4.13.0/Dockerfile b/variants/4.13.0/Dockerfile index ae532647..5a7e4807 100644 --- a/variants/4.13.0/Dockerfile +++ b/variants/4.13.0/Dockerfile @@ -25,10 +25,10 @@ RUN --mount=type=secret,id=GITHUB_TOKEN \ # Constraint to npm 8, or else npm will fail with 'npm ERR! python is not a valid npm option'. See: https://stackoverflow.com/questions/74522956/python-is-not-a-valid-npm-option and https://jubianchi.github.io/semver-check/#/~8/8 apk add --no-cache npm~8 nodejs~16; \ npm config set python python3; \ - ( set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; npm install --global code-server@4.13.0 --unsafe-perm ); \ + # Use 'NODE_API_EXPERIMENTAL_NOGC_ENV_OPT_OUT' to fix node 18.20 and 20.12 making experimental API the default, which breaks builds + ( set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; CXXFLAGS='-DNODE_API_EXPERIMENTAL_NOGC_ENV_OPT_OUT' npm install --global code-server@4.13.0 --unsafe-perm ); \ # Fix missing dependencies. See: https://github.com/coder/code-server/issues/5530 - cd /usr/local/lib/node_modules/code-server/lib/vscode; \ - ( set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; npm install --legacy-peer-deps ); \ + ( cd /usr/local/lib/node_modules/code-server/lib/vscode; set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; CXXFLAGS='-DNODE_API_EXPERIMENTAL_NOGC_ENV_OPT_OUT' npm install --legacy-peer-deps ); \ code-server --version; \ apk del $DEPS diff --git a/variants/4.14.1-docker-go-1.20.14/Dockerfile b/variants/4.14.1-docker-go-1.20.14/Dockerfile index 0e29e481..6e7e0d26 100644 --- a/variants/4.14.1-docker-go-1.20.14/Dockerfile +++ b/variants/4.14.1-docker-go-1.20.14/Dockerfile @@ -25,10 +25,10 @@ RUN --mount=type=secret,id=GITHUB_TOKEN \ # Constraint to npm 8, or else npm will fail with 'npm ERR! python is not a valid npm option'. See: https://stackoverflow.com/questions/74522956/python-is-not-a-valid-npm-option and https://jubianchi.github.io/semver-check/#/~8/8 apk add --no-cache npm~8 nodejs~16; \ npm config set python python3; \ - ( set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; npm install --global code-server@4.14.1 --unsafe-perm ); \ + # Use 'NODE_API_EXPERIMENTAL_NOGC_ENV_OPT_OUT' to fix node 18.20 and 20.12 making experimental API the default, which breaks builds + ( set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; CXXFLAGS='-DNODE_API_EXPERIMENTAL_NOGC_ENV_OPT_OUT' npm install --global code-server@4.14.1 --unsafe-perm ); \ # Fix missing dependencies. See: https://github.com/coder/code-server/issues/5530 - cd /usr/local/lib/node_modules/code-server/lib/vscode; \ - ( set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; npm install --legacy-peer-deps ); \ + ( cd /usr/local/lib/node_modules/code-server/lib/vscode; set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; CXXFLAGS='-DNODE_API_EXPERIMENTAL_NOGC_ENV_OPT_OUT' npm install --legacy-peer-deps ); \ code-server --version; \ apk del $DEPS diff --git a/variants/4.14.1-docker-rootless-go-1.20.14/Dockerfile b/variants/4.14.1-docker-rootless-go-1.20.14/Dockerfile index 3d8dffb5..c530ba35 100644 --- a/variants/4.14.1-docker-rootless-go-1.20.14/Dockerfile +++ b/variants/4.14.1-docker-rootless-go-1.20.14/Dockerfile @@ -25,10 +25,10 @@ RUN --mount=type=secret,id=GITHUB_TOKEN \ # Constraint to npm 8, or else npm will fail with 'npm ERR! python is not a valid npm option'. See: https://stackoverflow.com/questions/74522956/python-is-not-a-valid-npm-option and https://jubianchi.github.io/semver-check/#/~8/8 apk add --no-cache npm~8 nodejs~16; \ npm config set python python3; \ - ( set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; npm install --global code-server@4.14.1 --unsafe-perm ); \ + # Use 'NODE_API_EXPERIMENTAL_NOGC_ENV_OPT_OUT' to fix node 18.20 and 20.12 making experimental API the default, which breaks builds + ( set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; CXXFLAGS='-DNODE_API_EXPERIMENTAL_NOGC_ENV_OPT_OUT' npm install --global code-server@4.14.1 --unsafe-perm ); \ # Fix missing dependencies. See: https://github.com/coder/code-server/issues/5530 - cd /usr/local/lib/node_modules/code-server/lib/vscode; \ - ( set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; npm install --legacy-peer-deps ); \ + ( cd /usr/local/lib/node_modules/code-server/lib/vscode; set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; CXXFLAGS='-DNODE_API_EXPERIMENTAL_NOGC_ENV_OPT_OUT' npm install --legacy-peer-deps ); \ code-server --version; \ apk del $DEPS diff --git a/variants/4.14.1-docker-rootless/Dockerfile b/variants/4.14.1-docker-rootless/Dockerfile index c14804f7..6d3239fc 100644 --- a/variants/4.14.1-docker-rootless/Dockerfile +++ b/variants/4.14.1-docker-rootless/Dockerfile @@ -25,10 +25,10 @@ RUN --mount=type=secret,id=GITHUB_TOKEN \ # Constraint to npm 8, or else npm will fail with 'npm ERR! python is not a valid npm option'. See: https://stackoverflow.com/questions/74522956/python-is-not-a-valid-npm-option and https://jubianchi.github.io/semver-check/#/~8/8 apk add --no-cache npm~8 nodejs~16; \ npm config set python python3; \ - ( set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; npm install --global code-server@4.14.1 --unsafe-perm ); \ + # Use 'NODE_API_EXPERIMENTAL_NOGC_ENV_OPT_OUT' to fix node 18.20 and 20.12 making experimental API the default, which breaks builds + ( set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; CXXFLAGS='-DNODE_API_EXPERIMENTAL_NOGC_ENV_OPT_OUT' npm install --global code-server@4.14.1 --unsafe-perm ); \ # Fix missing dependencies. See: https://github.com/coder/code-server/issues/5530 - cd /usr/local/lib/node_modules/code-server/lib/vscode; \ - ( set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; npm install --legacy-peer-deps ); \ + ( cd /usr/local/lib/node_modules/code-server/lib/vscode; set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; CXXFLAGS='-DNODE_API_EXPERIMENTAL_NOGC_ENV_OPT_OUT' npm install --legacy-peer-deps ); \ code-server --version; \ apk del $DEPS diff --git a/variants/4.14.1-docker/Dockerfile b/variants/4.14.1-docker/Dockerfile index 47019eb2..1a2a4ce1 100644 --- a/variants/4.14.1-docker/Dockerfile +++ b/variants/4.14.1-docker/Dockerfile @@ -25,10 +25,10 @@ RUN --mount=type=secret,id=GITHUB_TOKEN \ # Constraint to npm 8, or else npm will fail with 'npm ERR! python is not a valid npm option'. See: https://stackoverflow.com/questions/74522956/python-is-not-a-valid-npm-option and https://jubianchi.github.io/semver-check/#/~8/8 apk add --no-cache npm~8 nodejs~16; \ npm config set python python3; \ - ( set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; npm install --global code-server@4.14.1 --unsafe-perm ); \ + # Use 'NODE_API_EXPERIMENTAL_NOGC_ENV_OPT_OUT' to fix node 18.20 and 20.12 making experimental API the default, which breaks builds + ( set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; CXXFLAGS='-DNODE_API_EXPERIMENTAL_NOGC_ENV_OPT_OUT' npm install --global code-server@4.14.1 --unsafe-perm ); \ # Fix missing dependencies. See: https://github.com/coder/code-server/issues/5530 - cd /usr/local/lib/node_modules/code-server/lib/vscode; \ - ( set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; npm install --legacy-peer-deps ); \ + ( cd /usr/local/lib/node_modules/code-server/lib/vscode; set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; CXXFLAGS='-DNODE_API_EXPERIMENTAL_NOGC_ENV_OPT_OUT' npm install --legacy-peer-deps ); \ code-server --version; \ apk del $DEPS diff --git a/variants/4.14.1/Dockerfile b/variants/4.14.1/Dockerfile index b8751d9d..e83df6a8 100644 --- a/variants/4.14.1/Dockerfile +++ b/variants/4.14.1/Dockerfile @@ -25,10 +25,10 @@ RUN --mount=type=secret,id=GITHUB_TOKEN \ # Constraint to npm 8, or else npm will fail with 'npm ERR! python is not a valid npm option'. See: https://stackoverflow.com/questions/74522956/python-is-not-a-valid-npm-option and https://jubianchi.github.io/semver-check/#/~8/8 apk add --no-cache npm~8 nodejs~16; \ npm config set python python3; \ - ( set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; npm install --global code-server@4.14.1 --unsafe-perm ); \ + # Use 'NODE_API_EXPERIMENTAL_NOGC_ENV_OPT_OUT' to fix node 18.20 and 20.12 making experimental API the default, which breaks builds + ( set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; CXXFLAGS='-DNODE_API_EXPERIMENTAL_NOGC_ENV_OPT_OUT' npm install --global code-server@4.14.1 --unsafe-perm ); \ # Fix missing dependencies. See: https://github.com/coder/code-server/issues/5530 - cd /usr/local/lib/node_modules/code-server/lib/vscode; \ - ( set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; npm install --legacy-peer-deps ); \ + ( cd /usr/local/lib/node_modules/code-server/lib/vscode; set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; CXXFLAGS='-DNODE_API_EXPERIMENTAL_NOGC_ENV_OPT_OUT' npm install --legacy-peer-deps ); \ code-server --version; \ apk del $DEPS diff --git a/variants/4.15.0-docker-go-1.20.14/Dockerfile b/variants/4.15.0-docker-go-1.20.14/Dockerfile index bbe738ba..f82203dc 100644 --- a/variants/4.15.0-docker-go-1.20.14/Dockerfile +++ b/variants/4.15.0-docker-go-1.20.14/Dockerfile @@ -25,10 +25,10 @@ RUN --mount=type=secret,id=GITHUB_TOKEN \ # Constraint to npm 8, or else npm will fail with 'npm ERR! python is not a valid npm option'. See: https://stackoverflow.com/questions/74522956/python-is-not-a-valid-npm-option and https://jubianchi.github.io/semver-check/#/~8/8 apk add --no-cache npm~8 nodejs~16; \ npm config set python python3; \ - ( set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; npm install --global code-server@4.15.0 --unsafe-perm ); \ + # Use 'NODE_API_EXPERIMENTAL_NOGC_ENV_OPT_OUT' to fix node 18.20 and 20.12 making experimental API the default, which breaks builds + ( set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; CXXFLAGS='-DNODE_API_EXPERIMENTAL_NOGC_ENV_OPT_OUT' npm install --global code-server@4.15.0 --unsafe-perm ); \ # Fix missing dependencies. See: https://github.com/coder/code-server/issues/5530 - cd /usr/local/lib/node_modules/code-server/lib/vscode; \ - ( set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; npm install --legacy-peer-deps ); \ + ( cd /usr/local/lib/node_modules/code-server/lib/vscode; set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; CXXFLAGS='-DNODE_API_EXPERIMENTAL_NOGC_ENV_OPT_OUT' npm install --legacy-peer-deps ); \ code-server --version; \ apk del $DEPS diff --git a/variants/4.15.0-docker-rootless-go-1.20.14/Dockerfile b/variants/4.15.0-docker-rootless-go-1.20.14/Dockerfile index 7c94ab9b..3b38be37 100644 --- a/variants/4.15.0-docker-rootless-go-1.20.14/Dockerfile +++ b/variants/4.15.0-docker-rootless-go-1.20.14/Dockerfile @@ -25,10 +25,10 @@ RUN --mount=type=secret,id=GITHUB_TOKEN \ # Constraint to npm 8, or else npm will fail with 'npm ERR! python is not a valid npm option'. See: https://stackoverflow.com/questions/74522956/python-is-not-a-valid-npm-option and https://jubianchi.github.io/semver-check/#/~8/8 apk add --no-cache npm~8 nodejs~16; \ npm config set python python3; \ - ( set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; npm install --global code-server@4.15.0 --unsafe-perm ); \ + # Use 'NODE_API_EXPERIMENTAL_NOGC_ENV_OPT_OUT' to fix node 18.20 and 20.12 making experimental API the default, which breaks builds + ( set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; CXXFLAGS='-DNODE_API_EXPERIMENTAL_NOGC_ENV_OPT_OUT' npm install --global code-server@4.15.0 --unsafe-perm ); \ # Fix missing dependencies. See: https://github.com/coder/code-server/issues/5530 - cd /usr/local/lib/node_modules/code-server/lib/vscode; \ - ( set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; npm install --legacy-peer-deps ); \ + ( cd /usr/local/lib/node_modules/code-server/lib/vscode; set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; CXXFLAGS='-DNODE_API_EXPERIMENTAL_NOGC_ENV_OPT_OUT' npm install --legacy-peer-deps ); \ code-server --version; \ apk del $DEPS diff --git a/variants/4.15.0-docker-rootless/Dockerfile b/variants/4.15.0-docker-rootless/Dockerfile index f15dc5af..a78f9150 100644 --- a/variants/4.15.0-docker-rootless/Dockerfile +++ b/variants/4.15.0-docker-rootless/Dockerfile @@ -25,10 +25,10 @@ RUN --mount=type=secret,id=GITHUB_TOKEN \ # Constraint to npm 8, or else npm will fail with 'npm ERR! python is not a valid npm option'. See: https://stackoverflow.com/questions/74522956/python-is-not-a-valid-npm-option and https://jubianchi.github.io/semver-check/#/~8/8 apk add --no-cache npm~8 nodejs~16; \ npm config set python python3; \ - ( set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; npm install --global code-server@4.15.0 --unsafe-perm ); \ + # Use 'NODE_API_EXPERIMENTAL_NOGC_ENV_OPT_OUT' to fix node 18.20 and 20.12 making experimental API the default, which breaks builds + ( set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; CXXFLAGS='-DNODE_API_EXPERIMENTAL_NOGC_ENV_OPT_OUT' npm install --global code-server@4.15.0 --unsafe-perm ); \ # Fix missing dependencies. See: https://github.com/coder/code-server/issues/5530 - cd /usr/local/lib/node_modules/code-server/lib/vscode; \ - ( set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; npm install --legacy-peer-deps ); \ + ( cd /usr/local/lib/node_modules/code-server/lib/vscode; set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; CXXFLAGS='-DNODE_API_EXPERIMENTAL_NOGC_ENV_OPT_OUT' npm install --legacy-peer-deps ); \ code-server --version; \ apk del $DEPS diff --git a/variants/4.15.0-docker/Dockerfile b/variants/4.15.0-docker/Dockerfile index c56cf78d..c6a3f5e2 100644 --- a/variants/4.15.0-docker/Dockerfile +++ b/variants/4.15.0-docker/Dockerfile @@ -25,10 +25,10 @@ RUN --mount=type=secret,id=GITHUB_TOKEN \ # Constraint to npm 8, or else npm will fail with 'npm ERR! python is not a valid npm option'. See: https://stackoverflow.com/questions/74522956/python-is-not-a-valid-npm-option and https://jubianchi.github.io/semver-check/#/~8/8 apk add --no-cache npm~8 nodejs~16; \ npm config set python python3; \ - ( set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; npm install --global code-server@4.15.0 --unsafe-perm ); \ + # Use 'NODE_API_EXPERIMENTAL_NOGC_ENV_OPT_OUT' to fix node 18.20 and 20.12 making experimental API the default, which breaks builds + ( set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; CXXFLAGS='-DNODE_API_EXPERIMENTAL_NOGC_ENV_OPT_OUT' npm install --global code-server@4.15.0 --unsafe-perm ); \ # Fix missing dependencies. See: https://github.com/coder/code-server/issues/5530 - cd /usr/local/lib/node_modules/code-server/lib/vscode; \ - ( set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; npm install --legacy-peer-deps ); \ + ( cd /usr/local/lib/node_modules/code-server/lib/vscode; set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; CXXFLAGS='-DNODE_API_EXPERIMENTAL_NOGC_ENV_OPT_OUT' npm install --legacy-peer-deps ); \ code-server --version; \ apk del $DEPS diff --git a/variants/4.15.0/Dockerfile b/variants/4.15.0/Dockerfile index 8119fda3..d38e1420 100644 --- a/variants/4.15.0/Dockerfile +++ b/variants/4.15.0/Dockerfile @@ -25,10 +25,10 @@ RUN --mount=type=secret,id=GITHUB_TOKEN \ # Constraint to npm 8, or else npm will fail with 'npm ERR! python is not a valid npm option'. See: https://stackoverflow.com/questions/74522956/python-is-not-a-valid-npm-option and https://jubianchi.github.io/semver-check/#/~8/8 apk add --no-cache npm~8 nodejs~16; \ npm config set python python3; \ - ( set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; npm install --global code-server@4.15.0 --unsafe-perm ); \ + # Use 'NODE_API_EXPERIMENTAL_NOGC_ENV_OPT_OUT' to fix node 18.20 and 20.12 making experimental API the default, which breaks builds + ( set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; CXXFLAGS='-DNODE_API_EXPERIMENTAL_NOGC_ENV_OPT_OUT' npm install --global code-server@4.15.0 --unsafe-perm ); \ # Fix missing dependencies. See: https://github.com/coder/code-server/issues/5530 - cd /usr/local/lib/node_modules/code-server/lib/vscode; \ - ( set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; npm install --legacy-peer-deps ); \ + ( cd /usr/local/lib/node_modules/code-server/lib/vscode; set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; CXXFLAGS='-DNODE_API_EXPERIMENTAL_NOGC_ENV_OPT_OUT' npm install --legacy-peer-deps ); \ code-server --version; \ apk del $DEPS diff --git a/variants/4.16.1-docker-go-1.20.14/Dockerfile b/variants/4.16.1-docker-go-1.20.14/Dockerfile index 69db5bdd..9f93b8d2 100644 --- a/variants/4.16.1-docker-go-1.20.14/Dockerfile +++ b/variants/4.16.1-docker-go-1.20.14/Dockerfile @@ -25,10 +25,10 @@ RUN --mount=type=secret,id=GITHUB_TOKEN \ # Constraint to npm 8, or else npm will fail with 'npm ERR! python is not a valid npm option'. See: https://stackoverflow.com/questions/74522956/python-is-not-a-valid-npm-option and https://jubianchi.github.io/semver-check/#/~8/8 apk add --no-cache npm~8 nodejs~16; \ npm config set python python3; \ - ( set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; npm install --global code-server@4.16.1 --unsafe-perm ); \ + # Use 'NODE_API_EXPERIMENTAL_NOGC_ENV_OPT_OUT' to fix node 18.20 and 20.12 making experimental API the default, which breaks builds + ( set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; CXXFLAGS='-DNODE_API_EXPERIMENTAL_NOGC_ENV_OPT_OUT' npm install --global code-server@4.16.1 --unsafe-perm ); \ # Fix missing dependencies. See: https://github.com/coder/code-server/issues/5530 - cd /usr/local/lib/node_modules/code-server/lib/vscode; \ - ( set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; npm install --legacy-peer-deps ); \ + ( cd /usr/local/lib/node_modules/code-server/lib/vscode; set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; CXXFLAGS='-DNODE_API_EXPERIMENTAL_NOGC_ENV_OPT_OUT' npm install --legacy-peer-deps ); \ code-server --version; \ apk del $DEPS diff --git a/variants/4.16.1-docker-rootless-go-1.20.14/Dockerfile b/variants/4.16.1-docker-rootless-go-1.20.14/Dockerfile index 19d96055..ef756182 100644 --- a/variants/4.16.1-docker-rootless-go-1.20.14/Dockerfile +++ b/variants/4.16.1-docker-rootless-go-1.20.14/Dockerfile @@ -25,10 +25,10 @@ RUN --mount=type=secret,id=GITHUB_TOKEN \ # Constraint to npm 8, or else npm will fail with 'npm ERR! python is not a valid npm option'. See: https://stackoverflow.com/questions/74522956/python-is-not-a-valid-npm-option and https://jubianchi.github.io/semver-check/#/~8/8 apk add --no-cache npm~8 nodejs~16; \ npm config set python python3; \ - ( set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; npm install --global code-server@4.16.1 --unsafe-perm ); \ + # Use 'NODE_API_EXPERIMENTAL_NOGC_ENV_OPT_OUT' to fix node 18.20 and 20.12 making experimental API the default, which breaks builds + ( set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; CXXFLAGS='-DNODE_API_EXPERIMENTAL_NOGC_ENV_OPT_OUT' npm install --global code-server@4.16.1 --unsafe-perm ); \ # Fix missing dependencies. See: https://github.com/coder/code-server/issues/5530 - cd /usr/local/lib/node_modules/code-server/lib/vscode; \ - ( set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; npm install --legacy-peer-deps ); \ + ( cd /usr/local/lib/node_modules/code-server/lib/vscode; set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; CXXFLAGS='-DNODE_API_EXPERIMENTAL_NOGC_ENV_OPT_OUT' npm install --legacy-peer-deps ); \ code-server --version; \ apk del $DEPS diff --git a/variants/4.16.1-docker-rootless/Dockerfile b/variants/4.16.1-docker-rootless/Dockerfile index e35b6eff..b042e43c 100644 --- a/variants/4.16.1-docker-rootless/Dockerfile +++ b/variants/4.16.1-docker-rootless/Dockerfile @@ -25,10 +25,10 @@ RUN --mount=type=secret,id=GITHUB_TOKEN \ # Constraint to npm 8, or else npm will fail with 'npm ERR! python is not a valid npm option'. See: https://stackoverflow.com/questions/74522956/python-is-not-a-valid-npm-option and https://jubianchi.github.io/semver-check/#/~8/8 apk add --no-cache npm~8 nodejs~16; \ npm config set python python3; \ - ( set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; npm install --global code-server@4.16.1 --unsafe-perm ); \ + # Use 'NODE_API_EXPERIMENTAL_NOGC_ENV_OPT_OUT' to fix node 18.20 and 20.12 making experimental API the default, which breaks builds + ( set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; CXXFLAGS='-DNODE_API_EXPERIMENTAL_NOGC_ENV_OPT_OUT' npm install --global code-server@4.16.1 --unsafe-perm ); \ # Fix missing dependencies. See: https://github.com/coder/code-server/issues/5530 - cd /usr/local/lib/node_modules/code-server/lib/vscode; \ - ( set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; npm install --legacy-peer-deps ); \ + ( cd /usr/local/lib/node_modules/code-server/lib/vscode; set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; CXXFLAGS='-DNODE_API_EXPERIMENTAL_NOGC_ENV_OPT_OUT' npm install --legacy-peer-deps ); \ code-server --version; \ apk del $DEPS diff --git a/variants/4.16.1-docker/Dockerfile b/variants/4.16.1-docker/Dockerfile index 5eb26a20..a01d94a9 100644 --- a/variants/4.16.1-docker/Dockerfile +++ b/variants/4.16.1-docker/Dockerfile @@ -25,10 +25,10 @@ RUN --mount=type=secret,id=GITHUB_TOKEN \ # Constraint to npm 8, or else npm will fail with 'npm ERR! python is not a valid npm option'. See: https://stackoverflow.com/questions/74522956/python-is-not-a-valid-npm-option and https://jubianchi.github.io/semver-check/#/~8/8 apk add --no-cache npm~8 nodejs~16; \ npm config set python python3; \ - ( set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; npm install --global code-server@4.16.1 --unsafe-perm ); \ + # Use 'NODE_API_EXPERIMENTAL_NOGC_ENV_OPT_OUT' to fix node 18.20 and 20.12 making experimental API the default, which breaks builds + ( set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; CXXFLAGS='-DNODE_API_EXPERIMENTAL_NOGC_ENV_OPT_OUT' npm install --global code-server@4.16.1 --unsafe-perm ); \ # Fix missing dependencies. See: https://github.com/coder/code-server/issues/5530 - cd /usr/local/lib/node_modules/code-server/lib/vscode; \ - ( set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; npm install --legacy-peer-deps ); \ + ( cd /usr/local/lib/node_modules/code-server/lib/vscode; set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; CXXFLAGS='-DNODE_API_EXPERIMENTAL_NOGC_ENV_OPT_OUT' npm install --legacy-peer-deps ); \ code-server --version; \ apk del $DEPS diff --git a/variants/4.16.1/Dockerfile b/variants/4.16.1/Dockerfile index 630adecd..44cb9835 100644 --- a/variants/4.16.1/Dockerfile +++ b/variants/4.16.1/Dockerfile @@ -25,10 +25,10 @@ RUN --mount=type=secret,id=GITHUB_TOKEN \ # Constraint to npm 8, or else npm will fail with 'npm ERR! python is not a valid npm option'. See: https://stackoverflow.com/questions/74522956/python-is-not-a-valid-npm-option and https://jubianchi.github.io/semver-check/#/~8/8 apk add --no-cache npm~8 nodejs~16; \ npm config set python python3; \ - ( set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; npm install --global code-server@4.16.1 --unsafe-perm ); \ + # Use 'NODE_API_EXPERIMENTAL_NOGC_ENV_OPT_OUT' to fix node 18.20 and 20.12 making experimental API the default, which breaks builds + ( set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; CXXFLAGS='-DNODE_API_EXPERIMENTAL_NOGC_ENV_OPT_OUT' npm install --global code-server@4.16.1 --unsafe-perm ); \ # Fix missing dependencies. See: https://github.com/coder/code-server/issues/5530 - cd /usr/local/lib/node_modules/code-server/lib/vscode; \ - ( set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; npm install --legacy-peer-deps ); \ + ( cd /usr/local/lib/node_modules/code-server/lib/vscode; set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; CXXFLAGS='-DNODE_API_EXPERIMENTAL_NOGC_ENV_OPT_OUT' npm install --legacy-peer-deps ); \ code-server --version; \ apk del $DEPS diff --git a/variants/4.17.1-docker-go-1.20.14/Dockerfile b/variants/4.17.1-docker-go-1.20.14/Dockerfile index e86d810f..6fd9a2fb 100644 --- a/variants/4.17.1-docker-go-1.20.14/Dockerfile +++ b/variants/4.17.1-docker-go-1.20.14/Dockerfile @@ -28,10 +28,10 @@ RUN --mount=type=secret,id=GITHUB_TOKEN \ # Install kerberos dependencies https://github.com/coder/code-server/issues/6535 apk add --no-cache krb5-dev; \ npm config set python python3; \ - ( set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; npm install --global code-server@4.17.1 --unsafe-perm ); \ + # Use 'NODE_API_EXPERIMENTAL_NOGC_ENV_OPT_OUT' to fix node 18.20 and 20.12 making experimental API the default, which breaks builds + ( set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; CXXFLAGS='-DNODE_API_EXPERIMENTAL_NOGC_ENV_OPT_OUT' npm install --global code-server@4.17.1 --unsafe-perm ); \ # Fix missing dependencies. See: https://github.com/coder/code-server/issues/5530 - cd /usr/local/lib/node_modules/code-server/lib/vscode; \ - ( set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; npm install --legacy-peer-deps ); \ + ( cd /usr/local/lib/node_modules/code-server/lib/vscode; set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; CXXFLAGS='-DNODE_API_EXPERIMENTAL_NOGC_ENV_OPT_OUT' npm install --legacy-peer-deps ); \ code-server --version; \ apk del $DEPS diff --git a/variants/4.17.1-docker-rootless-go-1.20.14/Dockerfile b/variants/4.17.1-docker-rootless-go-1.20.14/Dockerfile index 1d1296c7..00a00398 100644 --- a/variants/4.17.1-docker-rootless-go-1.20.14/Dockerfile +++ b/variants/4.17.1-docker-rootless-go-1.20.14/Dockerfile @@ -28,10 +28,10 @@ RUN --mount=type=secret,id=GITHUB_TOKEN \ # Install kerberos dependencies https://github.com/coder/code-server/issues/6535 apk add --no-cache krb5-dev; \ npm config set python python3; \ - ( set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; npm install --global code-server@4.17.1 --unsafe-perm ); \ + # Use 'NODE_API_EXPERIMENTAL_NOGC_ENV_OPT_OUT' to fix node 18.20 and 20.12 making experimental API the default, which breaks builds + ( set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; CXXFLAGS='-DNODE_API_EXPERIMENTAL_NOGC_ENV_OPT_OUT' npm install --global code-server@4.17.1 --unsafe-perm ); \ # Fix missing dependencies. See: https://github.com/coder/code-server/issues/5530 - cd /usr/local/lib/node_modules/code-server/lib/vscode; \ - ( set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; npm install --legacy-peer-deps ); \ + ( cd /usr/local/lib/node_modules/code-server/lib/vscode; set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; CXXFLAGS='-DNODE_API_EXPERIMENTAL_NOGC_ENV_OPT_OUT' npm install --legacy-peer-deps ); \ code-server --version; \ apk del $DEPS diff --git a/variants/4.17.1-docker-rootless/Dockerfile b/variants/4.17.1-docker-rootless/Dockerfile index f8876203..4b8e7654 100644 --- a/variants/4.17.1-docker-rootless/Dockerfile +++ b/variants/4.17.1-docker-rootless/Dockerfile @@ -28,10 +28,10 @@ RUN --mount=type=secret,id=GITHUB_TOKEN \ # Install kerberos dependencies https://github.com/coder/code-server/issues/6535 apk add --no-cache krb5-dev; \ npm config set python python3; \ - ( set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; npm install --global code-server@4.17.1 --unsafe-perm ); \ + # Use 'NODE_API_EXPERIMENTAL_NOGC_ENV_OPT_OUT' to fix node 18.20 and 20.12 making experimental API the default, which breaks builds + ( set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; CXXFLAGS='-DNODE_API_EXPERIMENTAL_NOGC_ENV_OPT_OUT' npm install --global code-server@4.17.1 --unsafe-perm ); \ # Fix missing dependencies. See: https://github.com/coder/code-server/issues/5530 - cd /usr/local/lib/node_modules/code-server/lib/vscode; \ - ( set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; npm install --legacy-peer-deps ); \ + ( cd /usr/local/lib/node_modules/code-server/lib/vscode; set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; CXXFLAGS='-DNODE_API_EXPERIMENTAL_NOGC_ENV_OPT_OUT' npm install --legacy-peer-deps ); \ code-server --version; \ apk del $DEPS diff --git a/variants/4.17.1-docker/Dockerfile b/variants/4.17.1-docker/Dockerfile index c5cfe976..a7dd98f0 100644 --- a/variants/4.17.1-docker/Dockerfile +++ b/variants/4.17.1-docker/Dockerfile @@ -28,10 +28,10 @@ RUN --mount=type=secret,id=GITHUB_TOKEN \ # Install kerberos dependencies https://github.com/coder/code-server/issues/6535 apk add --no-cache krb5-dev; \ npm config set python python3; \ - ( set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; npm install --global code-server@4.17.1 --unsafe-perm ); \ + # Use 'NODE_API_EXPERIMENTAL_NOGC_ENV_OPT_OUT' to fix node 18.20 and 20.12 making experimental API the default, which breaks builds + ( set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; CXXFLAGS='-DNODE_API_EXPERIMENTAL_NOGC_ENV_OPT_OUT' npm install --global code-server@4.17.1 --unsafe-perm ); \ # Fix missing dependencies. See: https://github.com/coder/code-server/issues/5530 - cd /usr/local/lib/node_modules/code-server/lib/vscode; \ - ( set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; npm install --legacy-peer-deps ); \ + ( cd /usr/local/lib/node_modules/code-server/lib/vscode; set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; CXXFLAGS='-DNODE_API_EXPERIMENTAL_NOGC_ENV_OPT_OUT' npm install --legacy-peer-deps ); \ code-server --version; \ apk del $DEPS diff --git a/variants/4.17.1/Dockerfile b/variants/4.17.1/Dockerfile index c959ee88..608c5f02 100644 --- a/variants/4.17.1/Dockerfile +++ b/variants/4.17.1/Dockerfile @@ -28,10 +28,10 @@ RUN --mount=type=secret,id=GITHUB_TOKEN \ # Install kerberos dependencies https://github.com/coder/code-server/issues/6535 apk add --no-cache krb5-dev; \ npm config set python python3; \ - ( set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; npm install --global code-server@4.17.1 --unsafe-perm ); \ + # Use 'NODE_API_EXPERIMENTAL_NOGC_ENV_OPT_OUT' to fix node 18.20 and 20.12 making experimental API the default, which breaks builds + ( set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; CXXFLAGS='-DNODE_API_EXPERIMENTAL_NOGC_ENV_OPT_OUT' npm install --global code-server@4.17.1 --unsafe-perm ); \ # Fix missing dependencies. See: https://github.com/coder/code-server/issues/5530 - cd /usr/local/lib/node_modules/code-server/lib/vscode; \ - ( set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; npm install --legacy-peer-deps ); \ + ( cd /usr/local/lib/node_modules/code-server/lib/vscode; set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; CXXFLAGS='-DNODE_API_EXPERIMENTAL_NOGC_ENV_OPT_OUT' npm install --legacy-peer-deps ); \ code-server --version; \ apk del $DEPS diff --git a/variants/4.18.0-docker-go-1.20.14/Dockerfile b/variants/4.18.0-docker-go-1.20.14/Dockerfile index 8a50b56b..0ba6d9c5 100644 --- a/variants/4.18.0-docker-go-1.20.14/Dockerfile +++ b/variants/4.18.0-docker-go-1.20.14/Dockerfile @@ -28,10 +28,10 @@ RUN --mount=type=secret,id=GITHUB_TOKEN \ # Install kerberos dependencies https://github.com/coder/code-server/issues/6535 apk add --no-cache krb5-dev; \ npm config set python python3; \ - ( set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; npm install --global code-server@4.18.0 --unsafe-perm ); \ + # Use 'NODE_API_EXPERIMENTAL_NOGC_ENV_OPT_OUT' to fix node 18.20 and 20.12 making experimental API the default, which breaks builds + ( set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; CXXFLAGS='-DNODE_API_EXPERIMENTAL_NOGC_ENV_OPT_OUT' npm install --global code-server@4.18.0 --unsafe-perm ); \ # Fix missing dependencies. See: https://github.com/coder/code-server/issues/5530 - cd /usr/local/lib/node_modules/code-server/lib/vscode; \ - ( set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; npm install --legacy-peer-deps ); \ + ( cd /usr/local/lib/node_modules/code-server/lib/vscode; set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; CXXFLAGS='-DNODE_API_EXPERIMENTAL_NOGC_ENV_OPT_OUT' npm install --legacy-peer-deps ); \ code-server --version; \ apk del $DEPS diff --git a/variants/4.18.0-docker-rootless-go-1.20.14/Dockerfile b/variants/4.18.0-docker-rootless-go-1.20.14/Dockerfile index 037e72fc..b9de3b84 100644 --- a/variants/4.18.0-docker-rootless-go-1.20.14/Dockerfile +++ b/variants/4.18.0-docker-rootless-go-1.20.14/Dockerfile @@ -28,10 +28,10 @@ RUN --mount=type=secret,id=GITHUB_TOKEN \ # Install kerberos dependencies https://github.com/coder/code-server/issues/6535 apk add --no-cache krb5-dev; \ npm config set python python3; \ - ( set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; npm install --global code-server@4.18.0 --unsafe-perm ); \ + # Use 'NODE_API_EXPERIMENTAL_NOGC_ENV_OPT_OUT' to fix node 18.20 and 20.12 making experimental API the default, which breaks builds + ( set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; CXXFLAGS='-DNODE_API_EXPERIMENTAL_NOGC_ENV_OPT_OUT' npm install --global code-server@4.18.0 --unsafe-perm ); \ # Fix missing dependencies. See: https://github.com/coder/code-server/issues/5530 - cd /usr/local/lib/node_modules/code-server/lib/vscode; \ - ( set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; npm install --legacy-peer-deps ); \ + ( cd /usr/local/lib/node_modules/code-server/lib/vscode; set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; CXXFLAGS='-DNODE_API_EXPERIMENTAL_NOGC_ENV_OPT_OUT' npm install --legacy-peer-deps ); \ code-server --version; \ apk del $DEPS diff --git a/variants/4.18.0-docker-rootless/Dockerfile b/variants/4.18.0-docker-rootless/Dockerfile index ae72c342..3160ef2f 100644 --- a/variants/4.18.0-docker-rootless/Dockerfile +++ b/variants/4.18.0-docker-rootless/Dockerfile @@ -28,10 +28,10 @@ RUN --mount=type=secret,id=GITHUB_TOKEN \ # Install kerberos dependencies https://github.com/coder/code-server/issues/6535 apk add --no-cache krb5-dev; \ npm config set python python3; \ - ( set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; npm install --global code-server@4.18.0 --unsafe-perm ); \ + # Use 'NODE_API_EXPERIMENTAL_NOGC_ENV_OPT_OUT' to fix node 18.20 and 20.12 making experimental API the default, which breaks builds + ( set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; CXXFLAGS='-DNODE_API_EXPERIMENTAL_NOGC_ENV_OPT_OUT' npm install --global code-server@4.18.0 --unsafe-perm ); \ # Fix missing dependencies. See: https://github.com/coder/code-server/issues/5530 - cd /usr/local/lib/node_modules/code-server/lib/vscode; \ - ( set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; npm install --legacy-peer-deps ); \ + ( cd /usr/local/lib/node_modules/code-server/lib/vscode; set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; CXXFLAGS='-DNODE_API_EXPERIMENTAL_NOGC_ENV_OPT_OUT' npm install --legacy-peer-deps ); \ code-server --version; \ apk del $DEPS diff --git a/variants/4.18.0-docker/Dockerfile b/variants/4.18.0-docker/Dockerfile index 5ce68a1a..9ef9e2f6 100644 --- a/variants/4.18.0-docker/Dockerfile +++ b/variants/4.18.0-docker/Dockerfile @@ -28,10 +28,10 @@ RUN --mount=type=secret,id=GITHUB_TOKEN \ # Install kerberos dependencies https://github.com/coder/code-server/issues/6535 apk add --no-cache krb5-dev; \ npm config set python python3; \ - ( set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; npm install --global code-server@4.18.0 --unsafe-perm ); \ + # Use 'NODE_API_EXPERIMENTAL_NOGC_ENV_OPT_OUT' to fix node 18.20 and 20.12 making experimental API the default, which breaks builds + ( set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; CXXFLAGS='-DNODE_API_EXPERIMENTAL_NOGC_ENV_OPT_OUT' npm install --global code-server@4.18.0 --unsafe-perm ); \ # Fix missing dependencies. See: https://github.com/coder/code-server/issues/5530 - cd /usr/local/lib/node_modules/code-server/lib/vscode; \ - ( set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; npm install --legacy-peer-deps ); \ + ( cd /usr/local/lib/node_modules/code-server/lib/vscode; set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; CXXFLAGS='-DNODE_API_EXPERIMENTAL_NOGC_ENV_OPT_OUT' npm install --legacy-peer-deps ); \ code-server --version; \ apk del $DEPS diff --git a/variants/4.18.0/Dockerfile b/variants/4.18.0/Dockerfile index 9dea027c..bc6e45d1 100644 --- a/variants/4.18.0/Dockerfile +++ b/variants/4.18.0/Dockerfile @@ -28,10 +28,10 @@ RUN --mount=type=secret,id=GITHUB_TOKEN \ # Install kerberos dependencies https://github.com/coder/code-server/issues/6535 apk add --no-cache krb5-dev; \ npm config set python python3; \ - ( set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; npm install --global code-server@4.18.0 --unsafe-perm ); \ + # Use 'NODE_API_EXPERIMENTAL_NOGC_ENV_OPT_OUT' to fix node 18.20 and 20.12 making experimental API the default, which breaks builds + ( set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; CXXFLAGS='-DNODE_API_EXPERIMENTAL_NOGC_ENV_OPT_OUT' npm install --global code-server@4.18.0 --unsafe-perm ); \ # Fix missing dependencies. See: https://github.com/coder/code-server/issues/5530 - cd /usr/local/lib/node_modules/code-server/lib/vscode; \ - ( set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; npm install --legacy-peer-deps ); \ + ( cd /usr/local/lib/node_modules/code-server/lib/vscode; set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; CXXFLAGS='-DNODE_API_EXPERIMENTAL_NOGC_ENV_OPT_OUT' npm install --legacy-peer-deps ); \ code-server --version; \ apk del $DEPS diff --git a/variants/4.19.1-docker-go-1.20.14/Dockerfile b/variants/4.19.1-docker-go-1.20.14/Dockerfile index bd6cdc99..79e49a8d 100644 --- a/variants/4.19.1-docker-go-1.20.14/Dockerfile +++ b/variants/4.19.1-docker-go-1.20.14/Dockerfile @@ -28,10 +28,10 @@ RUN --mount=type=secret,id=GITHUB_TOKEN \ # Install kerberos dependencies https://github.com/coder/code-server/issues/6535 apk add --no-cache krb5-dev; \ npm config set python python3; \ - ( set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; npm install --global code-server@4.19.1 --unsafe-perm ); \ + # Use 'NODE_API_EXPERIMENTAL_NOGC_ENV_OPT_OUT' to fix node 18.20 and 20.12 making experimental API the default, which breaks builds + ( set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; CXXFLAGS='-DNODE_API_EXPERIMENTAL_NOGC_ENV_OPT_OUT' npm install --global code-server@4.19.1 --unsafe-perm ); \ # Fix missing dependencies. See: https://github.com/coder/code-server/issues/5530 - cd /usr/local/lib/node_modules/code-server/lib/vscode; \ - ( set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; npm install --legacy-peer-deps ); \ + ( cd /usr/local/lib/node_modules/code-server/lib/vscode; set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; CXXFLAGS='-DNODE_API_EXPERIMENTAL_NOGC_ENV_OPT_OUT' npm install --legacy-peer-deps ); \ code-server --version; \ apk del $DEPS diff --git a/variants/4.19.1-docker-rootless-go-1.20.14/Dockerfile b/variants/4.19.1-docker-rootless-go-1.20.14/Dockerfile index adcec1c1..08c17035 100644 --- a/variants/4.19.1-docker-rootless-go-1.20.14/Dockerfile +++ b/variants/4.19.1-docker-rootless-go-1.20.14/Dockerfile @@ -28,10 +28,10 @@ RUN --mount=type=secret,id=GITHUB_TOKEN \ # Install kerberos dependencies https://github.com/coder/code-server/issues/6535 apk add --no-cache krb5-dev; \ npm config set python python3; \ - ( set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; npm install --global code-server@4.19.1 --unsafe-perm ); \ + # Use 'NODE_API_EXPERIMENTAL_NOGC_ENV_OPT_OUT' to fix node 18.20 and 20.12 making experimental API the default, which breaks builds + ( set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; CXXFLAGS='-DNODE_API_EXPERIMENTAL_NOGC_ENV_OPT_OUT' npm install --global code-server@4.19.1 --unsafe-perm ); \ # Fix missing dependencies. See: https://github.com/coder/code-server/issues/5530 - cd /usr/local/lib/node_modules/code-server/lib/vscode; \ - ( set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; npm install --legacy-peer-deps ); \ + ( cd /usr/local/lib/node_modules/code-server/lib/vscode; set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; CXXFLAGS='-DNODE_API_EXPERIMENTAL_NOGC_ENV_OPT_OUT' npm install --legacy-peer-deps ); \ code-server --version; \ apk del $DEPS diff --git a/variants/4.19.1-docker-rootless/Dockerfile b/variants/4.19.1-docker-rootless/Dockerfile index 3a0207ff..2f748018 100644 --- a/variants/4.19.1-docker-rootless/Dockerfile +++ b/variants/4.19.1-docker-rootless/Dockerfile @@ -28,10 +28,10 @@ RUN --mount=type=secret,id=GITHUB_TOKEN \ # Install kerberos dependencies https://github.com/coder/code-server/issues/6535 apk add --no-cache krb5-dev; \ npm config set python python3; \ - ( set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; npm install --global code-server@4.19.1 --unsafe-perm ); \ + # Use 'NODE_API_EXPERIMENTAL_NOGC_ENV_OPT_OUT' to fix node 18.20 and 20.12 making experimental API the default, which breaks builds + ( set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; CXXFLAGS='-DNODE_API_EXPERIMENTAL_NOGC_ENV_OPT_OUT' npm install --global code-server@4.19.1 --unsafe-perm ); \ # Fix missing dependencies. See: https://github.com/coder/code-server/issues/5530 - cd /usr/local/lib/node_modules/code-server/lib/vscode; \ - ( set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; npm install --legacy-peer-deps ); \ + ( cd /usr/local/lib/node_modules/code-server/lib/vscode; set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; CXXFLAGS='-DNODE_API_EXPERIMENTAL_NOGC_ENV_OPT_OUT' npm install --legacy-peer-deps ); \ code-server --version; \ apk del $DEPS diff --git a/variants/4.19.1-docker/Dockerfile b/variants/4.19.1-docker/Dockerfile index a6f0e4b2..b3f869b3 100644 --- a/variants/4.19.1-docker/Dockerfile +++ b/variants/4.19.1-docker/Dockerfile @@ -28,10 +28,10 @@ RUN --mount=type=secret,id=GITHUB_TOKEN \ # Install kerberos dependencies https://github.com/coder/code-server/issues/6535 apk add --no-cache krb5-dev; \ npm config set python python3; \ - ( set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; npm install --global code-server@4.19.1 --unsafe-perm ); \ + # Use 'NODE_API_EXPERIMENTAL_NOGC_ENV_OPT_OUT' to fix node 18.20 and 20.12 making experimental API the default, which breaks builds + ( set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; CXXFLAGS='-DNODE_API_EXPERIMENTAL_NOGC_ENV_OPT_OUT' npm install --global code-server@4.19.1 --unsafe-perm ); \ # Fix missing dependencies. See: https://github.com/coder/code-server/issues/5530 - cd /usr/local/lib/node_modules/code-server/lib/vscode; \ - ( set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; npm install --legacy-peer-deps ); \ + ( cd /usr/local/lib/node_modules/code-server/lib/vscode; set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; CXXFLAGS='-DNODE_API_EXPERIMENTAL_NOGC_ENV_OPT_OUT' npm install --legacy-peer-deps ); \ code-server --version; \ apk del $DEPS diff --git a/variants/4.19.1/Dockerfile b/variants/4.19.1/Dockerfile index 1eee79d4..c4042dd6 100644 --- a/variants/4.19.1/Dockerfile +++ b/variants/4.19.1/Dockerfile @@ -28,10 +28,10 @@ RUN --mount=type=secret,id=GITHUB_TOKEN \ # Install kerberos dependencies https://github.com/coder/code-server/issues/6535 apk add --no-cache krb5-dev; \ npm config set python python3; \ - ( set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; npm install --global code-server@4.19.1 --unsafe-perm ); \ + # Use 'NODE_API_EXPERIMENTAL_NOGC_ENV_OPT_OUT' to fix node 18.20 and 20.12 making experimental API the default, which breaks builds + ( set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; CXXFLAGS='-DNODE_API_EXPERIMENTAL_NOGC_ENV_OPT_OUT' npm install --global code-server@4.19.1 --unsafe-perm ); \ # Fix missing dependencies. See: https://github.com/coder/code-server/issues/5530 - cd /usr/local/lib/node_modules/code-server/lib/vscode; \ - ( set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; npm install --legacy-peer-deps ); \ + ( cd /usr/local/lib/node_modules/code-server/lib/vscode; set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; CXXFLAGS='-DNODE_API_EXPERIMENTAL_NOGC_ENV_OPT_OUT' npm install --legacy-peer-deps ); \ code-server --version; \ apk del $DEPS diff --git a/variants/4.20.1-docker-go-1.20.14/Dockerfile b/variants/4.20.1-docker-go-1.20.14/Dockerfile index 1eb12349..ac6d05ce 100644 --- a/variants/4.20.1-docker-go-1.20.14/Dockerfile +++ b/variants/4.20.1-docker-go-1.20.14/Dockerfile @@ -28,10 +28,10 @@ RUN --mount=type=secret,id=GITHUB_TOKEN \ # Install kerberos dependencies https://github.com/coder/code-server/issues/6535 apk add --no-cache krb5-dev; \ npm config set python python3; \ - ( set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; npm install --global code-server@4.20.1 --unsafe-perm ); \ + # Use 'NODE_API_EXPERIMENTAL_NOGC_ENV_OPT_OUT' to fix node 18.20 and 20.12 making experimental API the default, which breaks builds + ( set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; CXXFLAGS='-DNODE_API_EXPERIMENTAL_NOGC_ENV_OPT_OUT' npm install --global code-server@4.20.1 --unsafe-perm ); \ # Fix missing dependencies. See: https://github.com/coder/code-server/issues/5530 - cd /usr/local/lib/node_modules/code-server/lib/vscode; \ - ( set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; npm install --legacy-peer-deps ); \ + ( cd /usr/local/lib/node_modules/code-server/lib/vscode; set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; CXXFLAGS='-DNODE_API_EXPERIMENTAL_NOGC_ENV_OPT_OUT' npm install --legacy-peer-deps ); \ code-server --version; \ apk del $DEPS diff --git a/variants/4.20.1-docker-rootless-go-1.20.14/Dockerfile b/variants/4.20.1-docker-rootless-go-1.20.14/Dockerfile index 234f8677..67fb998d 100644 --- a/variants/4.20.1-docker-rootless-go-1.20.14/Dockerfile +++ b/variants/4.20.1-docker-rootless-go-1.20.14/Dockerfile @@ -28,10 +28,10 @@ RUN --mount=type=secret,id=GITHUB_TOKEN \ # Install kerberos dependencies https://github.com/coder/code-server/issues/6535 apk add --no-cache krb5-dev; \ npm config set python python3; \ - ( set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; npm install --global code-server@4.20.1 --unsafe-perm ); \ + # Use 'NODE_API_EXPERIMENTAL_NOGC_ENV_OPT_OUT' to fix node 18.20 and 20.12 making experimental API the default, which breaks builds + ( set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; CXXFLAGS='-DNODE_API_EXPERIMENTAL_NOGC_ENV_OPT_OUT' npm install --global code-server@4.20.1 --unsafe-perm ); \ # Fix missing dependencies. See: https://github.com/coder/code-server/issues/5530 - cd /usr/local/lib/node_modules/code-server/lib/vscode; \ - ( set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; npm install --legacy-peer-deps ); \ + ( cd /usr/local/lib/node_modules/code-server/lib/vscode; set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; CXXFLAGS='-DNODE_API_EXPERIMENTAL_NOGC_ENV_OPT_OUT' npm install --legacy-peer-deps ); \ code-server --version; \ apk del $DEPS diff --git a/variants/4.20.1-docker-rootless/Dockerfile b/variants/4.20.1-docker-rootless/Dockerfile index d63910bd..4d62735d 100644 --- a/variants/4.20.1-docker-rootless/Dockerfile +++ b/variants/4.20.1-docker-rootless/Dockerfile @@ -28,10 +28,10 @@ RUN --mount=type=secret,id=GITHUB_TOKEN \ # Install kerberos dependencies https://github.com/coder/code-server/issues/6535 apk add --no-cache krb5-dev; \ npm config set python python3; \ - ( set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; npm install --global code-server@4.20.1 --unsafe-perm ); \ + # Use 'NODE_API_EXPERIMENTAL_NOGC_ENV_OPT_OUT' to fix node 18.20 and 20.12 making experimental API the default, which breaks builds + ( set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; CXXFLAGS='-DNODE_API_EXPERIMENTAL_NOGC_ENV_OPT_OUT' npm install --global code-server@4.20.1 --unsafe-perm ); \ # Fix missing dependencies. See: https://github.com/coder/code-server/issues/5530 - cd /usr/local/lib/node_modules/code-server/lib/vscode; \ - ( set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; npm install --legacy-peer-deps ); \ + ( cd /usr/local/lib/node_modules/code-server/lib/vscode; set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; CXXFLAGS='-DNODE_API_EXPERIMENTAL_NOGC_ENV_OPT_OUT' npm install --legacy-peer-deps ); \ code-server --version; \ apk del $DEPS diff --git a/variants/4.20.1-docker/Dockerfile b/variants/4.20.1-docker/Dockerfile index 8b59fce6..b0ac0235 100644 --- a/variants/4.20.1-docker/Dockerfile +++ b/variants/4.20.1-docker/Dockerfile @@ -28,10 +28,10 @@ RUN --mount=type=secret,id=GITHUB_TOKEN \ # Install kerberos dependencies https://github.com/coder/code-server/issues/6535 apk add --no-cache krb5-dev; \ npm config set python python3; \ - ( set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; npm install --global code-server@4.20.1 --unsafe-perm ); \ + # Use 'NODE_API_EXPERIMENTAL_NOGC_ENV_OPT_OUT' to fix node 18.20 and 20.12 making experimental API the default, which breaks builds + ( set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; CXXFLAGS='-DNODE_API_EXPERIMENTAL_NOGC_ENV_OPT_OUT' npm install --global code-server@4.20.1 --unsafe-perm ); \ # Fix missing dependencies. See: https://github.com/coder/code-server/issues/5530 - cd /usr/local/lib/node_modules/code-server/lib/vscode; \ - ( set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; npm install --legacy-peer-deps ); \ + ( cd /usr/local/lib/node_modules/code-server/lib/vscode; set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; CXXFLAGS='-DNODE_API_EXPERIMENTAL_NOGC_ENV_OPT_OUT' npm install --legacy-peer-deps ); \ code-server --version; \ apk del $DEPS diff --git a/variants/4.20.1/Dockerfile b/variants/4.20.1/Dockerfile index 2a27e289..c2708502 100644 --- a/variants/4.20.1/Dockerfile +++ b/variants/4.20.1/Dockerfile @@ -28,10 +28,10 @@ RUN --mount=type=secret,id=GITHUB_TOKEN \ # Install kerberos dependencies https://github.com/coder/code-server/issues/6535 apk add --no-cache krb5-dev; \ npm config set python python3; \ - ( set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; npm install --global code-server@4.20.1 --unsafe-perm ); \ + # Use 'NODE_API_EXPERIMENTAL_NOGC_ENV_OPT_OUT' to fix node 18.20 and 20.12 making experimental API the default, which breaks builds + ( set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; CXXFLAGS='-DNODE_API_EXPERIMENTAL_NOGC_ENV_OPT_OUT' npm install --global code-server@4.20.1 --unsafe-perm ); \ # Fix missing dependencies. See: https://github.com/coder/code-server/issues/5530 - cd /usr/local/lib/node_modules/code-server/lib/vscode; \ - ( set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; npm install --legacy-peer-deps ); \ + ( cd /usr/local/lib/node_modules/code-server/lib/vscode; set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; CXXFLAGS='-DNODE_API_EXPERIMENTAL_NOGC_ENV_OPT_OUT' npm install --legacy-peer-deps ); \ code-server --version; \ apk del $DEPS diff --git a/variants/4.21.2-docker-go-1.20.14/Dockerfile b/variants/4.21.2-docker-go-1.20.14/Dockerfile index 1e907d44..76d38f3d 100644 --- a/variants/4.21.2-docker-go-1.20.14/Dockerfile +++ b/variants/4.21.2-docker-go-1.20.14/Dockerfile @@ -28,10 +28,10 @@ RUN --mount=type=secret,id=GITHUB_TOKEN \ # Install kerberos dependencies https://github.com/coder/code-server/issues/6535 apk add --no-cache krb5-dev; \ npm config set python python3; \ - ( set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; npm install --global code-server@4.21.2 --unsafe-perm ); \ + # Use 'NODE_API_EXPERIMENTAL_NOGC_ENV_OPT_OUT' to fix node 18.20 and 20.12 making experimental API the default, which breaks builds + ( set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; CXXFLAGS='-DNODE_API_EXPERIMENTAL_NOGC_ENV_OPT_OUT' npm install --global code-server@4.21.2 --unsafe-perm ); \ # Fix missing dependencies. See: https://github.com/coder/code-server/issues/5530 - cd /usr/local/lib/node_modules/code-server/lib/vscode; \ - ( set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; npm install --legacy-peer-deps ); \ + ( cd /usr/local/lib/node_modules/code-server/lib/vscode; set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; CXXFLAGS='-DNODE_API_EXPERIMENTAL_NOGC_ENV_OPT_OUT' npm install --legacy-peer-deps ); \ code-server --version; \ apk del $DEPS diff --git a/variants/4.21.2-docker-rootless-go-1.20.14/Dockerfile b/variants/4.21.2-docker-rootless-go-1.20.14/Dockerfile index 366c4d0d..dfa700e0 100644 --- a/variants/4.21.2-docker-rootless-go-1.20.14/Dockerfile +++ b/variants/4.21.2-docker-rootless-go-1.20.14/Dockerfile @@ -28,10 +28,10 @@ RUN --mount=type=secret,id=GITHUB_TOKEN \ # Install kerberos dependencies https://github.com/coder/code-server/issues/6535 apk add --no-cache krb5-dev; \ npm config set python python3; \ - ( set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; npm install --global code-server@4.21.2 --unsafe-perm ); \ + # Use 'NODE_API_EXPERIMENTAL_NOGC_ENV_OPT_OUT' to fix node 18.20 and 20.12 making experimental API the default, which breaks builds + ( set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; CXXFLAGS='-DNODE_API_EXPERIMENTAL_NOGC_ENV_OPT_OUT' npm install --global code-server@4.21.2 --unsafe-perm ); \ # Fix missing dependencies. See: https://github.com/coder/code-server/issues/5530 - cd /usr/local/lib/node_modules/code-server/lib/vscode; \ - ( set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; npm install --legacy-peer-deps ); \ + ( cd /usr/local/lib/node_modules/code-server/lib/vscode; set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; CXXFLAGS='-DNODE_API_EXPERIMENTAL_NOGC_ENV_OPT_OUT' npm install --legacy-peer-deps ); \ code-server --version; \ apk del $DEPS diff --git a/variants/4.21.2-docker-rootless/Dockerfile b/variants/4.21.2-docker-rootless/Dockerfile index b775365a..3dcaa620 100644 --- a/variants/4.21.2-docker-rootless/Dockerfile +++ b/variants/4.21.2-docker-rootless/Dockerfile @@ -28,10 +28,10 @@ RUN --mount=type=secret,id=GITHUB_TOKEN \ # Install kerberos dependencies https://github.com/coder/code-server/issues/6535 apk add --no-cache krb5-dev; \ npm config set python python3; \ - ( set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; npm install --global code-server@4.21.2 --unsafe-perm ); \ + # Use 'NODE_API_EXPERIMENTAL_NOGC_ENV_OPT_OUT' to fix node 18.20 and 20.12 making experimental API the default, which breaks builds + ( set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; CXXFLAGS='-DNODE_API_EXPERIMENTAL_NOGC_ENV_OPT_OUT' npm install --global code-server@4.21.2 --unsafe-perm ); \ # Fix missing dependencies. See: https://github.com/coder/code-server/issues/5530 - cd /usr/local/lib/node_modules/code-server/lib/vscode; \ - ( set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; npm install --legacy-peer-deps ); \ + ( cd /usr/local/lib/node_modules/code-server/lib/vscode; set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; CXXFLAGS='-DNODE_API_EXPERIMENTAL_NOGC_ENV_OPT_OUT' npm install --legacy-peer-deps ); \ code-server --version; \ apk del $DEPS diff --git a/variants/4.21.2-docker/Dockerfile b/variants/4.21.2-docker/Dockerfile index b13d51b9..05f328ca 100644 --- a/variants/4.21.2-docker/Dockerfile +++ b/variants/4.21.2-docker/Dockerfile @@ -28,10 +28,10 @@ RUN --mount=type=secret,id=GITHUB_TOKEN \ # Install kerberos dependencies https://github.com/coder/code-server/issues/6535 apk add --no-cache krb5-dev; \ npm config set python python3; \ - ( set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; npm install --global code-server@4.21.2 --unsafe-perm ); \ + # Use 'NODE_API_EXPERIMENTAL_NOGC_ENV_OPT_OUT' to fix node 18.20 and 20.12 making experimental API the default, which breaks builds + ( set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; CXXFLAGS='-DNODE_API_EXPERIMENTAL_NOGC_ENV_OPT_OUT' npm install --global code-server@4.21.2 --unsafe-perm ); \ # Fix missing dependencies. See: https://github.com/coder/code-server/issues/5530 - cd /usr/local/lib/node_modules/code-server/lib/vscode; \ - ( set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; npm install --legacy-peer-deps ); \ + ( cd /usr/local/lib/node_modules/code-server/lib/vscode; set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; CXXFLAGS='-DNODE_API_EXPERIMENTAL_NOGC_ENV_OPT_OUT' npm install --legacy-peer-deps ); \ code-server --version; \ apk del $DEPS diff --git a/variants/4.21.2/Dockerfile b/variants/4.21.2/Dockerfile index 9b8c5163..2a14aa1e 100644 --- a/variants/4.21.2/Dockerfile +++ b/variants/4.21.2/Dockerfile @@ -28,10 +28,10 @@ RUN --mount=type=secret,id=GITHUB_TOKEN \ # Install kerberos dependencies https://github.com/coder/code-server/issues/6535 apk add --no-cache krb5-dev; \ npm config set python python3; \ - ( set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; npm install --global code-server@4.21.2 --unsafe-perm ); \ + # Use 'NODE_API_EXPERIMENTAL_NOGC_ENV_OPT_OUT' to fix node 18.20 and 20.12 making experimental API the default, which breaks builds + ( set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; CXXFLAGS='-DNODE_API_EXPERIMENTAL_NOGC_ENV_OPT_OUT' npm install --global code-server@4.21.2 --unsafe-perm ); \ # Fix missing dependencies. See: https://github.com/coder/code-server/issues/5530 - cd /usr/local/lib/node_modules/code-server/lib/vscode; \ - ( set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; npm install --legacy-peer-deps ); \ + ( cd /usr/local/lib/node_modules/code-server/lib/vscode; set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; CXXFLAGS='-DNODE_API_EXPERIMENTAL_NOGC_ENV_OPT_OUT' npm install --legacy-peer-deps ); \ code-server --version; \ apk del $DEPS diff --git a/variants/4.22.1-docker-go-1.20.14/Dockerfile b/variants/4.22.1-docker-go-1.20.14/Dockerfile index 70d0741c..c42efd7d 100644 --- a/variants/4.22.1-docker-go-1.20.14/Dockerfile +++ b/variants/4.22.1-docker-go-1.20.14/Dockerfile @@ -28,10 +28,10 @@ RUN --mount=type=secret,id=GITHUB_TOKEN \ # Install kerberos dependencies https://github.com/coder/code-server/issues/6535 apk add --no-cache krb5-dev; \ npm config set python python3; \ - ( set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; npm install --global code-server@4.22.1 --unsafe-perm ); \ + # Use 'NODE_API_EXPERIMENTAL_NOGC_ENV_OPT_OUT' to fix node 18.20 and 20.12 making experimental API the default, which breaks builds + ( set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; CXXFLAGS='-DNODE_API_EXPERIMENTAL_NOGC_ENV_OPT_OUT' npm install --global code-server@4.22.1 --unsafe-perm ); \ # Fix missing dependencies. See: https://github.com/coder/code-server/issues/5530 - cd /usr/local/lib/node_modules/code-server/lib/vscode; \ - ( set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; npm install --legacy-peer-deps ); \ + ( cd /usr/local/lib/node_modules/code-server/lib/vscode; set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; CXXFLAGS='-DNODE_API_EXPERIMENTAL_NOGC_ENV_OPT_OUT' npm install --legacy-peer-deps ); \ code-server --version; \ apk del $DEPS diff --git a/variants/4.22.1-docker-rootless-go-1.20.14/Dockerfile b/variants/4.22.1-docker-rootless-go-1.20.14/Dockerfile index 76941f5f..268fb5cb 100644 --- a/variants/4.22.1-docker-rootless-go-1.20.14/Dockerfile +++ b/variants/4.22.1-docker-rootless-go-1.20.14/Dockerfile @@ -28,10 +28,10 @@ RUN --mount=type=secret,id=GITHUB_TOKEN \ # Install kerberos dependencies https://github.com/coder/code-server/issues/6535 apk add --no-cache krb5-dev; \ npm config set python python3; \ - ( set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; npm install --global code-server@4.22.1 --unsafe-perm ); \ + # Use 'NODE_API_EXPERIMENTAL_NOGC_ENV_OPT_OUT' to fix node 18.20 and 20.12 making experimental API the default, which breaks builds + ( set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; CXXFLAGS='-DNODE_API_EXPERIMENTAL_NOGC_ENV_OPT_OUT' npm install --global code-server@4.22.1 --unsafe-perm ); \ # Fix missing dependencies. See: https://github.com/coder/code-server/issues/5530 - cd /usr/local/lib/node_modules/code-server/lib/vscode; \ - ( set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; npm install --legacy-peer-deps ); \ + ( cd /usr/local/lib/node_modules/code-server/lib/vscode; set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; CXXFLAGS='-DNODE_API_EXPERIMENTAL_NOGC_ENV_OPT_OUT' npm install --legacy-peer-deps ); \ code-server --version; \ apk del $DEPS diff --git a/variants/4.22.1-docker-rootless/Dockerfile b/variants/4.22.1-docker-rootless/Dockerfile index 9e441910..03f9d432 100644 --- a/variants/4.22.1-docker-rootless/Dockerfile +++ b/variants/4.22.1-docker-rootless/Dockerfile @@ -28,10 +28,10 @@ RUN --mount=type=secret,id=GITHUB_TOKEN \ # Install kerberos dependencies https://github.com/coder/code-server/issues/6535 apk add --no-cache krb5-dev; \ npm config set python python3; \ - ( set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; npm install --global code-server@4.22.1 --unsafe-perm ); \ + # Use 'NODE_API_EXPERIMENTAL_NOGC_ENV_OPT_OUT' to fix node 18.20 and 20.12 making experimental API the default, which breaks builds + ( set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; CXXFLAGS='-DNODE_API_EXPERIMENTAL_NOGC_ENV_OPT_OUT' npm install --global code-server@4.22.1 --unsafe-perm ); \ # Fix missing dependencies. See: https://github.com/coder/code-server/issues/5530 - cd /usr/local/lib/node_modules/code-server/lib/vscode; \ - ( set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; npm install --legacy-peer-deps ); \ + ( cd /usr/local/lib/node_modules/code-server/lib/vscode; set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; CXXFLAGS='-DNODE_API_EXPERIMENTAL_NOGC_ENV_OPT_OUT' npm install --legacy-peer-deps ); \ code-server --version; \ apk del $DEPS diff --git a/variants/4.22.1-docker/Dockerfile b/variants/4.22.1-docker/Dockerfile index 02d87399..cc03a699 100644 --- a/variants/4.22.1-docker/Dockerfile +++ b/variants/4.22.1-docker/Dockerfile @@ -28,10 +28,10 @@ RUN --mount=type=secret,id=GITHUB_TOKEN \ # Install kerberos dependencies https://github.com/coder/code-server/issues/6535 apk add --no-cache krb5-dev; \ npm config set python python3; \ - ( set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; npm install --global code-server@4.22.1 --unsafe-perm ); \ + # Use 'NODE_API_EXPERIMENTAL_NOGC_ENV_OPT_OUT' to fix node 18.20 and 20.12 making experimental API the default, which breaks builds + ( set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; CXXFLAGS='-DNODE_API_EXPERIMENTAL_NOGC_ENV_OPT_OUT' npm install --global code-server@4.22.1 --unsafe-perm ); \ # Fix missing dependencies. See: https://github.com/coder/code-server/issues/5530 - cd /usr/local/lib/node_modules/code-server/lib/vscode; \ - ( set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; npm install --legacy-peer-deps ); \ + ( cd /usr/local/lib/node_modules/code-server/lib/vscode; set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; CXXFLAGS='-DNODE_API_EXPERIMENTAL_NOGC_ENV_OPT_OUT' npm install --legacy-peer-deps ); \ code-server --version; \ apk del $DEPS diff --git a/variants/4.22.1/Dockerfile b/variants/4.22.1/Dockerfile index 0e66109f..887ddec5 100644 --- a/variants/4.22.1/Dockerfile +++ b/variants/4.22.1/Dockerfile @@ -28,10 +28,10 @@ RUN --mount=type=secret,id=GITHUB_TOKEN \ # Install kerberos dependencies https://github.com/coder/code-server/issues/6535 apk add --no-cache krb5-dev; \ npm config set python python3; \ - ( set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; npm install --global code-server@4.22.1 --unsafe-perm ); \ + # Use 'NODE_API_EXPERIMENTAL_NOGC_ENV_OPT_OUT' to fix node 18.20 and 20.12 making experimental API the default, which breaks builds + ( set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; CXXFLAGS='-DNODE_API_EXPERIMENTAL_NOGC_ENV_OPT_OUT' npm install --global code-server@4.22.1 --unsafe-perm ); \ # Fix missing dependencies. See: https://github.com/coder/code-server/issues/5530 - cd /usr/local/lib/node_modules/code-server/lib/vscode; \ - ( set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; npm install --legacy-peer-deps ); \ + ( cd /usr/local/lib/node_modules/code-server/lib/vscode; set +x; export GITHUB_TOKEN=$( cat /run/secrets/GITHUB_TOKEN ); set -x; CXXFLAGS='-DNODE_API_EXPERIMENTAL_NOGC_ENV_OPT_OUT' npm install --legacy-peer-deps ); \ code-server --version; \ apk del $DEPS