Unquoted extension names like `uuid-ossp` are interpreted as subtraction expressions by the SQL parser, causing exit code 1.
Wrapping the name in double quotes makes it valid for any extension regardless of naming.
The JSON metadata had type "addon" and script path
"/tools/addon/garmin-grafana.sh", but the actual script has always
lived at ct/garmin-grafana.sh. This caused the website to generate an
installer URL that returns 404.
Changes:
- type: "addon" -> "ct"
- script: "/tools/addon/garmin-grafana.sh" -> "ct/garmin-grafana.sh"
- Move config_path to top level (matching ct JSON convention)
- Fill in resource values from ct/garmin-grafana.sh (cpu: 2, ram: 2048,
hdd: 8, os: Debian, version: 13)
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
- ct/etherpad.sh + install/etherpad-install.sh: use ether/etherpad
(canonical name; ether/etherpad-lite still redirects but the new
name is preferred)
- install/etherpad-install.sh: switch dbType from dev-only "dirty"
to sqlite at /var/lib/etherpad/etherpad.db on first config seed;
matches the same default we land on across the snap, .deb, and
Home Assistant add-on packagings
- json/etherpad.json: refresh note to reflect the sqlite default
and document postgres/mysql as alternatives via dbType/dbSettings
Use 'npm ci --ignore-scripts' + explicit 'npx prisma generate' instead
of 'npm install' (which triggered postinstall and ran with NODE_ENV=production
from a sourced .env, skipping devDependencies like autoprefixer).
Migrations are run explicitly after build, matching the Dockerfile's
container-entrypoint.sh.
Spliit imports deepmerge in src/i18n/request.ts but does not declare it
in package.json; Next.js 16 Turbopack rejects phantom dependencies, so
the build fails with 'Module not found: deepmerge'.