Commit Graph

9 Commits

Author SHA1 Message Date
653592e68f feat: add automatic update checker with version injection
Some checks failed
PR Tests / Lint, Build & Test (pull_request) Successful in 5m45s
Security Scan / Go Vulnerability Check (pull_request) Failing after 5m42s
- Add internal/updater package (queries Gitea releases API every 6h)

- Inject version at build time via -ldflags (-X main.Version)

- Show update badge in header for admin/owner users

- Show version on system info page

- Add VERSION build arg to Dockerfile

- Update docs (deployment, architecture, admin-guide, contributing, README)
2026-04-07 23:13:26 +02:00
a63f3fb5ff feat: add 5 theme pairs (ocean, forest, sunset, rose, nord) with light/dark/auto modes\n\n- Override Tabler dark-mode surface/border CSS variables per theme to remove blue tint\n- Add theme accent colors for badges, buttons, links, forms\n- Make Ocean the default theme, auto-migrate legacy values (auto/light/dark)\n- Update settings dropdown with grouped theme options\n- Update user-guide docs with new theme descriptions" 2026-04-07 22:14:56 +02:00
c4171e5b87 feat: protect initial owner from role change and deletion 2026-04-07 20:47:22 +02:00
8b9de9e83d feat: add Bastillion-style SSH key enforcement worker 2026-04-06 00:17:03 +02:00
68777a5516 feat: add CLI password reset command (docker exec reset-password) 2026-04-05 22:17:46 +02:00
bb3bf0330f security: fix data loss on container restart due to relative paths
Root cause: .env.example used relative paths (./data/...) which resolve
to /app/data/ inside the container instead of the persistent volume at
/data/. This caused the database to be recreated on every container
restart, resetting the admin password to a new initial value.

Fixes:
- .env.example: comment out path settings with clear warning about
  relative paths; Dockerfile already provides correct absolute defaults
- auth: add initial_setup_complete flag in settings table as
  defence-in-depth so EnsureAdmin never re-creates an admin after
  the initial setup, even if the users table is unexpectedly empty
- main: add validateDataPaths() startup check that warns when relative
  container paths are detected (potential data-loss misconfiguration)
- auth_test: extend TestEnsureAdmin to verify the flag prevents
  admin re-creation after user deletion
2026-04-05 19:21:15 +02:00
ea3e7e71ca refactor: convert force_password_change to standalone layout (no sidebar) 2026-04-05 19:03:32 +02:00
268955732a fix: use net.JoinHostPort for IPv6-compatible address formatting
Some checks failed
PR Tests / Lint, Build & Test (pull_request) Successful in 5m19s
Security Scan / Go Vulnerability Check (pull_request) Failing after 17s
2026-04-05 18:18:26 +02:00
fd13e67aef Release: v0.1.0-alpha
Some checks failed
Release Docker Image / Build & Push Docker Image (release) Failing after 1m30s
2026-04-05 16:56:16 +02:00