Commit Graph

3581 Commits

Author SHA1 Message Date
MickLesk
faa1c8d0fb fix(slink): proper database init sequence from upstream bootstrap
- Fix event_store.yaml migration path for LXC environment
- Add doctrine:database:create for both connections
- Run separate migrations for read_model and event_store entity managers
- Add messenger:setup-transports to create messenger_messages table
- Use $STD for all console commands
- Fix admin email in creds file
2026-04-05 19:23:05 +02:00
MickLesk
b7f24f48ba fix(otbr): remove stray quotes from TCP socat example
The single quotes around the spinel+hdlc+forkpty URL in the comment
example become part of the value when users copy it into the
double-quoted OTBR_AGENT_OPTS string, causing 'spinel interface name
is not supported' error.
2026-04-05 19:02:56 +02:00
MickLesk
39008694c7 fix(slink): use admin@slink.local instead of admin@localhost
Slink's email validation rejects 'admin@localhost' as invalid.
2026-04-05 18:59:26 +02:00
MickLesk
de9d10264a fix(slink): run slink:admin:init to create admin user
Admin user was never created during install — the ADMIN_EMAIL/ADMIN_PASSWORD
env vars are only used when slink:admin:init command is executed.
2026-04-05 18:57:46 +02:00
MickLesk
67bc34d45b fix(slink,fleet): append APP_ENV/APP_SECRET to .env, use setup_mariadb_db
- slink: APP_ENV and APP_SECRET not present in .env.example, sed patterns
  never matched → Symfony defaulted to dev mode → WebProfilerBundle crash
  (not installed with --no-dev). Now appends APP_ENV=prod + APP_SECRET.
- fleet: use setup_mariadb_db helper instead of manual SQL, reference
  MARIADB_DB_PASS, depend on mariadb.service
2026-04-05 18:54:14 +02:00
MickLesk
17c7984546 fix(lychee): match commented DB_DATABASE in .env.example
Lychee's .env.example has '#DB_DATABASE=' (commented out). The sed
pattern '^DB_DATABASE=' didn't match, so Laravel fell back to the
default database name 'forge'. Use '^#\?DB_DATABASE=' to match both
commented and uncommented lines.
2026-04-05 18:37:02 +02:00
MickLesk
f7258d5268 fix(fleet,mysql): switch Fleet to MariaDB, add mysql case to manage_tool_repository
- fleet: use setup_mariadb instead of setup_mysql (MariaDB works fine for
  Fleet and avoids MySQL repo complexity on trixie)
- tools.func: add missing mysql) case block to manage_tool_repository
  (was causing 'Unknown tool repository: mysql' error)
2026-04-05 18:35:51 +02:00
MickLesk
77e1490b7c fix(kan,puter): use .env + source for build env vars, fix Puter unreachable via IP
- kan: write .env before build, source it + export for build-time validation
  instead of inline exports (cleaner, consistent with codebase pattern)
- puter: set domain to container IP + experimental_no_subdomain so Puter
  accepts Host header when accessed via raw IP (default puter.localhost
  rejects all non-matching hosts)
2026-04-05 18:32:49 +02:00
MickLesk
363df9ddac fix(otbr,kan,mysql): OTBR vendor/model/socat/web binding, Kan build env vars, MySQL trixie support
- openthread-br: add socat dep for TCP adapters, add --vendor-name/--model-name
  (mandatory), bind REST API to 0.0.0.0:8081, configure otbr-web to listen on
  all interfaces, update TCP example with socat forkpty pattern
- kan: export BETTER_AUTH_SECRET and POSTGRES_URL before build (required by
  @t3-oss/env-nextjs zod validation at build time)
- mysql: remove MariaDB-on-trixie workaround (MySQL repo now has trixie packages),
  update GPG key from RPM-GPG-KEY-mysql-2023 to RPM-GPG-KEY-mysql-2025
2026-04-05 18:26:11 +02:00
MickLesk
f5e07027f3 fix(lobehub,twenty,simplelogin): broken $STD fallback patterns
silent() hard-exits on non-zero return before || fallback executes.
Replace first $STD with plain redirect so fallback command can run:
- lobehub: dpkg -i || apt install -f (dependency resolution)
- twenty: yarn install --immutable || yarn install (lockfile fallback)
- simplelogin: npm ci || npm install (lockfile fallback)
2026-04-04 23:57:39 +02:00
MickLesk
4864b0773b fix(puter,slink): resolve LAN access issues
puter: create config.json with allow_nipio_domains to fix 'Invalid Host Header' on LAN
slink: replace $STD with plain redirects on fallible console commands (silent() hard-exits before || true)
slink: add ORIGIN env var via EnvironmentFile for SvelteKit CSRF to allow LAN login
2026-04-04 23:51:17 +02:00
MickLesk
2c47d114db fix(slink): allow CORS from any origin for LAN access
Default CORS_ALLOW_ORIGIN only permits localhost, blocking login
when accessed via LAN IP.
2026-04-04 23:25:36 +02:00
MickLesk
d2f6be43e7 feat: add Kan, Puter, Lychee, Fleet scripts (ct/install/json) 2026-04-04 23:21:13 +02:00
MickLesk
6684ab02cc fix(slink): fix SQLite path for bare-metal install
The .env.example uses /app/var/data/ (Docker path). Rewrite to
/opt/slink/services/api/var/data/ and ensure the directory exists.
2026-04-04 23:15:32 +02:00
MickLesk
eb6aeeff92 fix(slink): generate admin credentials and JWT keys on install
- Set ADMIN_EMAIL/ADMIN_PASSWORD so admin user is created on first boot
- Generate JWT keypair for authentication to work
- Run doctrine:migrations:migrate for DB schema
- Save credentials to ~/slink.creds
2026-04-04 22:58:22 +02:00
MickLesk
24dd2670ac fix(plane): fix image upload and curl flag
- nginx: add exact-match location for /uploads (no trailing slash)
  to handle S3 presigned POST URLs from Plane's storage backend
- ct: fix curl -s to curl -fsSL for consistency with other scripts
2026-04-04 22:56:36 +02:00
MickLesk
f344b69617 fix(lobehub,otbr): increase heap limit and fix bind9 enable
- lobehub: bump --max-old-space-size from 4096 to 8192 (build OOMs at ~6GB)
- openthread-br: handle linked unit file bind9.service on Debian 13
2026-04-04 22:15:20 +02:00
MickLesk
20fd374b08 fix(trek): reset admin password via direct DB update after server init 2026-04-03 22:19:21 +02:00
MickLesk
acfbb23d70 fix(trek): set explicit admin creds via env vars, save to ~/trek.creds 2026-04-03 21:33:51 +02:00
github-actions[bot]
7a2599d13d Delete netboot-xyz (ct) after migration to ProxmoxVE (#1666)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2026-04-03 19:28:51 +00:00
MickLesk
daf3a5ce6e fix(slink): enable PHP-FPM via PHP_FPM=YES in setup_php 2026-04-03 21:16:50 +02:00
MickLesk
b0651c0e6e fix(openthread-br): enable and start dbus, rsyslog, bind9 before otbr-agent 2026-04-03 20:52:58 +02:00
MickLesk
f13616e3b9 fix(trek): extract admin creds from log; fix(slink): export APP_ENV=prod for all symfony commands 2026-04-02 22:53:30 +02:00
MickLesk
5c02002a19 fix(slink): set APP_ENV=prod for composer to skip dev bundles 2026-04-02 22:42:00 +02:00
MickLesk
81bdfe5eaa fix(soulsync): use uv pip instead of missing venv pip 2026-04-02 22:41:25 +02:00
MickLesk
c04e0141b9 fix(trek): add python3 dep, install all npm deps, improve env config 2026-04-02 22:40:49 +02:00
MickLesk
d351fb2968 fix(labca): enable standalone mode for embedded templates 2026-04-02 22:24:25 +02:00
MickLesk
486eb90163 fix(slink): upgrade PHP 8.3 → 8.5 (required by latest release) 2026-04-02 22:21:47 +02:00
MickLesk
93544b905c fix(slink): add git dependency for composer 2026-04-02 22:09:43 +02:00
MickLesk
0f758c9ab2 fix(soulsync): use apt ffmpeg instead of setup_ffmpeg 2026-04-02 22:06:47 +02:00
MickLesk
f1581d8449 fix(dashy,transmute): use Node.js 24 instead of 22 2026-04-02 22:05:33 +02:00
MickLesk
deb95b1bcf fix(trek,anchor,slink): use Node.js 24 instead of 22 2026-04-02 22:04:39 +02:00
MickLesk
2a75902281 feat(new-scripts): add TREK, SoulSync, UpSnap, Anchor, Slink
- TREK: Self-hosted travel planner (Node.js 22, Express, SQLite)
- SoulSync: Music discovery & automation (Python 3.11, Flask)
- UpSnap: Wake-on-LAN web app (Go binary, PocketBase)
- Anchor: Offline-first note taking (NestJS, Next.js, PostgreSQL)
- Slink: Image sharing platform (PHP/Symfony, SvelteKit, Redis, Caddy)
2026-04-02 21:55:54 +02:00
MickLesk
1aac11e6b3 fix(openthread-br): set privileged mode, don't auto-start services 2026-04-02 21:21:59 +02:00
MickLesk
fcb8e932f1 fix(netboot-xyz): rename install script to match naming convention 2026-04-02 21:04:56 +02:00
MickLesk
81dcba7758 fix(postiz,ente,lobehub): address testing feedback
- postiz: add postiz-rebuild helper for env changes & social provider setup
- ente: rewrite ente-setup Step 4 to use direct SQL instead of flaky CLI
- ente: improve ente-upgrade-subscription to bypass interactive prompts
- lobehub: replace broken ParadeDB APT repo (402) with GitHub release .deb
2026-04-02 18:14:49 +02:00
github-actions[bot]
679a514f86 Delete drawdb (ct) after migration to ProxmoxVE (#1658)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2026-04-01 20:08:50 +00:00
CanbiZ (MickLesk)
fa7e18f917 lol 2026-04-01 13:18:57 +02:00
CanbiZ (MickLesk)
4ac7d3b34b fix(tubearchivist): use Docker-compatible paths for cache/media
TubeArchivist uses TA_CACHE_DIR and TA_MEDIA_DIR directly as URL paths.
In Docker these are /cache and /youtube, matching nginx locations.
Our paths (/opt/tubearchivist/cache, /opt/tubearchivist/media) broke
video playback URLs and file downloads.

Create symlinks /cache and /youtube pointing to data dirs, set env vars
to match Docker defaults. Aligns nginx alias paths with official config.
2026-03-30 13:38:46 +02:00
Tobias
04cefef9c4 re-add: dashy 2026-03-30 13:38:20 +02:00
CanbiZ (MickLesk)
8fc2dc2427 fix(tubearchivist): fix nginx auth_request for cache/media files
The auth_request subrequest to /api/ping/ through the generic /api
location block doesn't properly forward cookies to the Django backend,
causing 403 for all /cache/ and /media/ requests.

Use a dedicated internal /_auth location that explicitly proxies to
/api/ping/ with Cookie header forwarding.
2026-03-30 13:32:36 +02:00
CanbiZ (MickLesk)
cc71bb8e70 nodejs 2026-03-30 13:18:18 +02:00
CanbiZ (MickLesk)
38246408c0 add hint 2026-03-30 13:17:37 +02:00
CanbiZ (MickLesk)
32ab032797 fix(tubearchivist): fix celery beat race condition on first boot
Beat service starts before manage.py migrate creates the
django_celery_beat tables, causing 'no such table' error.
Add ExecStartPre that waits for migration to complete by
polling the SQLite DB for the crontab table.
2026-03-30 13:12:38 +02:00
tremor021
2a1e0ab678 fireshare: fix sed 2026-03-30 12:09:14 +02:00
CanbiZ (MickLesk)
a25ddb6fce fix(transmute): use xvfb-run instead of ExecStartPre for Xvfb
ExecStartPre runs Xvfb as a blocking foreground process, preventing
systemd from ever reaching ExecStart (timeout/failure).
Use xvfb-run wrapper to properly manage the virtual display.
2026-03-30 11:57:48 +02:00
CanbiZ (MickLesk)
96fbb51abe fix(tubearchivist): correct TA_APP_DIR to backend path
Docker copies backend to /app, so APP_DIR=/app maps static/img/ correctly.
Our bare-metal install has backend at /opt/tubearchivist/backend/,
so TA_APP_DIR must point there for fallback thumbnails to resolve.

Fixes missing thumbnails, default-channel-banner.jpg not found error.
Update script migrates existing installs to the corrected path.
2026-03-30 11:56:22 +02:00
CanbiZ (MickLesk)
90a4304fa4 Transmute: move setup_gs before apt deps to avoid double install
libreoffice-common and inkscape pull in ghostscript 10.05 via apt.
Moving setup_gs (10.07) before apt deps prevents the downgrade+upgrade cycle.
2026-03-30 11:46:11 +02:00
CanbiZ (MickLesk)
1a519ad63b Fix Nametag: copy static assets into standalone dir
Next.js standalone output requires .next/static and public/ to be
copied manually into .next/standalone/ for CSS/JS to be served.
Also source .env before prisma generate in update script.
2026-03-30 11:42:51 +02:00
CanbiZ (MickLesk)
12271687c2 Fix DrawDB: switch Caddy to Nginx, add crypto.randomUUID polyfill
- Replace Caddy with Nginx (matches upstream Dockerfile)
- Add crypto.randomUUID polyfill in index.html for non-HTTPS access
  (browsers only expose crypto.randomUUID in secure contexts)
- Apply polyfill also in update script
2026-03-30 11:34:25 +02:00