Commit Graph

  • 57d8e82949 ui(devmode): roll the easter-egg countdown into one updating toast librelad 2026-05-27 16:01:32 +01:00
  • 38b6dccd4a Merge claude/1 librelad 2026-05-27 15:49:42 +01:00
  • 8681c8206d ui(tasks): move Select-all toggle right of Clear All librelad 2026-05-27 15:49:42 +01:00
  • 13cafcb056 Merge claude/1 librelad 2026-05-27 15:46:18 +01:00
  • 9b158fcaa0 feat(tasks): multi-select + Delete-Selected, reusing the redesigned modal librelad 2026-05-27 15:46:18 +01:00
  • 02a7d0f9ba Merge claude/2 librelad 2026-05-27 15:41:19 +01:00
  • 66e747e1ba fix(uninstall): always run name-based container cleanup + drop CLI hint librelad 2026-05-27 15:41:19 +01:00
  • e419466257 Merge claude/1 librelad 2026-05-27 15:39:38 +01:00
  • 22203a7f60 ui(tasks): brighten empty-state $ line + fix "No all tasks tasks found" librelad 2026-05-27 15:39:38 +01:00
  • 4d982680b3 Merge claude/2 librelad 2026-05-27 15:32:44 +01:00
  • cb055b4b1f fix(uninstall): wipe container sub-UID app data via root helper librelad 2026-05-27 15:32:44 +01:00
  • 496c9ed1b3 Merge claude/1 librelad 2026-05-27 15:21:42 +01:00
  • 1ccc4bba49 feat(tasks): redesign Clear All modal + add "cancel running too" toggle librelad 2026-05-27 15:21:42 +01:00
  • eb8192a84f Merge claude/2 librelad 2026-05-27 15:14:08 +01:00
  • 9817d6945a fix(config): silence app-data Permission-denied chatter from config reconcile librelad 2026-05-27 15:14:08 +01:00
  • 338cd801fd Merge claude/2 librelad 2026-05-27 15:05:02 +01:00
  • a1315024c5 ui(tasks): delete notification matches the started/completed format librelad 2026-05-27 15:05:02 +01:00
  • a1a896e59c Merge claude/1 librelad 2026-05-27 14:58:43 +01:00
  • 3294ca4e41 fix(boot): source run_privileged.sh before checkConfigFilesMissingFiles librelad 2026-05-27 14:58:43 +01:00
  • 68bade609b Merge claude/1 librelad 2026-05-27 14:51:13 +01:00
  • f252d7680b fix(cli): camelCase task fields match WebUI shape (createdAt, not created_at) librelad 2026-05-27 14:51:13 +01:00
  • ce7b704084 Merge claude/2 librelad 2026-05-27 14:48:39 +01:00
  • 8802006659 ui(tasks): delete-task modal shows friendly title + app icon librelad 2026-05-27 14:48:39 +01:00
  • cd6f1354ca Merge claude/2 librelad 2026-05-27 14:39:58 +01:00
  • 8a3bf505c3 refactor(config): disperse Features section into category Advanced groups librelad 2026-05-27 14:39:58 +01:00
  • eac81abdbc Merge claude/1 librelad 2026-05-27 14:38:14 +01:00
  • 3f582120ba feat(cli): route all long-running app + update commands through tasks librelad 2026-05-27 14:38:14 +01:00
  • 0c4c607282 Merge claude/1 librelad 2026-05-27 14:29:30 +01:00
  • e5273a482d feat(cli): route app install through the task processor + live follower librelad 2026-05-27 14:29:30 +01:00
  • 25fa30fd5d Merge claude/2 librelad 2026-05-27 14:20:18 +01:00
  • f5fc659c96 ui(tasks+devmode): friendly task titles + restyle dev-mode strip librelad 2026-05-27 14:20:18 +01:00
  • b754794789 Merge claude/2 librelad 2026-05-27 14:13:56 +01:00
  • 5655835398 ui(devmode): persistent banner under topbar + shorter auto-enable toast librelad 2026-05-27 14:13:56 +01:00
  • e793c7a0e4 Merge claude/1 librelad 2026-05-27 13:26:49 +01:00
  • 4d7027258d feat(app): Wave B + C — collapse 28 per-app installers onto generic driver librelad 2026-05-27 13:26:49 +01:00
  • d1d64d12a9 Merge branch 'claude/2' librelad 2026-05-27 13:24:31 +01:00
  • 9d5d0103b6 fix(routing): _previewUrl uses port.subdomain, not the retired HOST_NAME librelad 2026-05-27 13:23:47 +01:00
  • e46c619d82 Merge claude/2 librelad 2026-05-27 01:43:08 +01:00
  • d941f59388 feat(app): generic installApp driver + dispatcher fallback (Wave A) librelad 2026-05-27 01:43:08 +01:00
  • 6f2d7ca0dc Merge claude/1 librelad 2026-05-27 01:40:05 +01:00
  • e57d42ddf6 refactor(webui): path-based URLs for app tabs + config sub-tabs librelad 2026-05-27 01:40:05 +01:00
  • 92e585deba Merge claude/1 librelad 2026-05-27 01:26:27 +01:00
  • e72d3d278d style(backup): shorten the BACKUP_STRATEGY tooltip to one practical sentence librelad 2026-05-27 01:26:27 +01:00
  • c615820c35 Merge claude/2 librelad 2026-05-27 01:23:55 +01:00
  • 1e9e65225b fix(gluetun): wrap rm -f on dockerinstall-owned tempfiles in runFileOp librelad 2026-05-27 01:23:55 +01:00
  • cd30d90a81 Merge claude/1 librelad 2026-05-27 01:16:43 +01:00
  • 01a125db55 style(notif): unify task notifications + drop the App:/System: prefix librelad 2026-05-27 01:16:43 +01:00
  • 3e63dfbdbb Merge claude/2 librelad 2026-05-27 01:16:02 +01:00
  • 56d2f8105c fix(config): updateConfigOption uses the right de-sudo helper for the file's tree librelad 2026-05-27 01:16:02 +01:00
  • 3d7f5fbdeb Merge claude/2 librelad 2026-05-27 01:05:44 +01:00
  • 14bc0c3386 ui(backup): tile-click → Back-up checklist modal; LibrePortal icon on System tile; 2-up grid librelad 2026-05-27 01:05:44 +01:00
  • c49007d6e0 Merge claude/1 librelad 2026-05-27 01:04:03 +01:00
  • ae790853bf chore(dashboard): drop the redundant "Admin overview" link librelad 2026-05-27 01:04:03 +01:00
  • a265b86cc9 Merge claude/2 librelad 2026-05-27 00:50:53 +01:00
  • 57d6fdaa7c ui(backup): tighten Backup-status tooltip — short and sweet librelad 2026-05-27 00:50:53 +01:00
  • a9baf1d0fa Merge claude/2 librelad 2026-05-27 00:49:19 +01:00
  • a9af8d93c7 ui(backup): drop Backup-status hint text; move it to a plain-language tooltip librelad 2026-05-27 00:49:19 +01:00
  • 420964c6e8 Merge claude/2 librelad 2026-05-27 00:42:58 +01:00
  • 102fc38da0 ui(backup): merge System config into the Backup status grid librelad 2026-05-27 00:42:58 +01:00
  • 6fb595e481 Merge claude/1 librelad 2026-05-27 00:37:32 +01:00
  • 59ee92bd87 fix(tasks): treat app:'system' as a sentinel so the LibrePortal logo renders librelad 2026-05-27 00:37:32 +01:00
  • 6ca6320c88 Merge claude/1 librelad 2026-05-27 00:32:43 +01:00
  • aede5d44be refactor(tasks): friendly-title pattern table + cover the gaps librelad 2026-05-27 00:32:43 +01:00
  • 9d1a3836b2 Merge claude/2 librelad 2026-05-27 00:28:07 +01:00
  • 4cda8490ce ui(migrate): wrap empty-state in a bordered callout panel librelad 2026-05-27 00:28:07 +01:00
  • ab43b97da2 Merge claude/1 librelad 2026-05-27 00:10:35 +01:00
  • 061fa5e391 fix(lazy-load): count both braces per line so embedded awk doesn't strand the depth tracker librelad 2026-05-27 00:10:35 +01:00
  • 623b86b96e Merge claude/2 librelad 2026-05-27 00:09:35 +01:00
  • c69449bec8 fix(deploy): rsync --delete was wiping .auth.json; preserve it (+ siblings) librelad 2026-05-27 00:09:35 +01:00
  • 7f29d33c45 Merge claude/1 librelad 2026-05-26 23:58:52 +01:00
  • 88b431ee86 style(migrate): tighten card header + give the empty state a real CTA librelad 2026-05-26 23:58:52 +01:00
  • 8fa13ae52b Merge claude/2 librelad 2026-05-26 23:53:21 +01:00
  • ea59d5b268 feat(config): reconcileConfigFile now syncs comments from template (preserves user values) librelad 2026-05-26 23:53:21 +01:00
  • 9d8b1c5948 Merge claude/2 librelad 2026-05-26 23:49:09 +01:00
  • 8a9ae28b6f feat(webui): developer mode + Android-style 10-click easter egg librelad 2026-05-26 23:49:09 +01:00
  • 48085e1d4d Merge claude/1 librelad 2026-05-26 23:48:35 +01:00
  • 52e0227bb6 chore(cleanup): retire appGenerate — dead-on-arrival app-skeleton wizard librelad 2026-05-26 23:48:35 +01:00
  • b63e60c85f Merge claude/1 librelad 2026-05-26 23:42:12 +01:00
  • 9ffc8e4924 chore(cleanup): retire two stale leftovers from the lazy-load + subdomain work librelad 2026-05-26 23:42:12 +01:00
  • 44486f6de3 Merge claude/2 librelad 2026-05-26 23:28:05 +01:00
  • ef47155cdf feat(rootless): make pasta the actual default in network_rootless librelad 2026-05-26 23:28:05 +01:00
  • 11213af3e8 Merge claude/2 librelad 2026-05-26 23:13:04 +01:00
  • 4063283db1 feat(rootless): proper AppArmor profile for pasta network driver librelad 2026-05-26 23:13:04 +01:00
  • e842d25b31 Merge claude/2 librelad 2026-05-26 22:55:35 +01:00
  • bbae95b504 fix(webui): drop static-asset cache from 1h to 60s librelad 2026-05-26 22:55:35 +01:00
  • 12a9fe48ff Merge claude/1 librelad 2026-05-26 22:53:10 +01:00
  • 3319614be4 fix(webui): route the migrate.json + peers.json writes through runFileWrite librelad 2026-05-26 22:53:10 +01:00
  • 734ca2940c Merge claude/1 librelad 2026-05-26 22:45:36 +01:00
  • fd6f22e512 fix(install): stop initUpdateConfigOption choking on '|' chars in comments librelad 2026-05-26 22:45:36 +01:00
  • c4ec01204b Merge claude/1 librelad 2026-05-26 22:33:09 +01:00
  • 995f7f37e3 style(uninstall): restructure the destructive-prompt summary librelad 2026-05-26 22:33:09 +01:00
  • 43710d0d6b Merge claude/2 librelad 2026-05-26 22:25:36 +01:00
  • d123eda869 perf(webui): defer page-specific scripts to first navigation (Phase B) librelad 2026-05-26 22:25:36 +01:00
  • 1cead7fc89 Merge claude/2 librelad 2026-05-26 22:10:59 +01:00
  • 011737455b perf(webui): delete dead config-manager-old.js + gzip + cache headers (Phase A) librelad 2026-05-26 22:10:59 +01:00
  • d2a506a491 Merge claude/1 librelad 2026-05-26 22:05:39 +01:00
  • 7513a62fde feat(crowdsec): migrate host-install to a dedicated libreportal-crowdsec helper librelad 2026-05-26 22:05:39 +01:00
  • 10dc7d0bc0 Merge claude/1 librelad 2026-05-26 21:56:43 +01:00
  • 18e692ffbb fix(backup): reset HOME when dropping to the backup user in runBackupOp librelad 2026-05-26 21:56:43 +01:00
  • 2fc63b154f Merge claude/1 librelad 2026-05-26 21:47:12 +01:00