furtka/furtka
Daniel Maksymilian Syrnicki d3c512b14f
Some checks are pending
CI / lint (push) Waiting to run
CI / test (push) Waiting to run
CI / validate-json (push) Waiting to run
CI / markdown-links (push) Waiting to run
Build ISO / build-iso (push) Successful in 17m5s
fix(furtka): point DEFAULT_BUNDLED_APPS_DIR at /opt/furtka/current/apps
Third install-path miss from the versioned-layout refactor: the bundled
apps moved from /opt/furtka/apps (flat) to
/opt/furtka/versions/<ver>/apps/, reached through the /opt/furtka/current
symlink. paths.py was still pointing at the flat path, so _list_bundled
walked a non-existent directory and /api/bundled returned [] — the
fileshare tile never showed up on /apps.

Tests already use FURTKA_BUNDLED_APPS_DIR env override so nothing in
the suite needed to change. Confirmed on the VM: compat symlink
/opt/furtka/apps -> current/apps makes /api/bundled return the
fileshare manifest immediately, no service restart needed since
scanner.py reads the directory on every request.

Locking the path at current/apps rather than leaving the flat fallback
is deliberate — Phase-2 self-updates flip the symlink, and a flat
/opt/furtka/apps wouldn't move with them; bundled apps would freeze
at whatever version installed first.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-16 15:58:10 +02:00
..
__init__.py feat(furtka): resource-manager skeleton — manifest, scanner, CLI 2026-04-15 09:59:41 +02:00
api.py feat(furtka): Furtka-updates card on /settings + API endpoints 2026-04-16 13:44:34 +02:00
cli.py feat(furtka): release CI + \furtka update\ / \furtka rollback\ CLI 2026-04-16 13:30:45 +02:00
dockerops.py feat(furtka): per-app image updates via POST /api/apps/<name>/update 2026-04-16 12:45:47 +02:00
installer.py feat(furtka): in-browser app settings + ISO recovery-path fixes 2026-04-15 13:00:02 +02:00
manifest.py feat(furtka): in-browser app settings + ISO recovery-path fixes 2026-04-15 13:00:02 +02:00
paths.py fix(furtka): point DEFAULT_BUNDLED_APPS_DIR at /opt/furtka/current/apps 2026-04-16 15:58:10 +02:00
reconciler.py fix(furtka): audit follow-ups — placeholder secrets, isolate reconcile, .env perms 2026-04-15 10:17:00 +02:00
scanner.py fix(furtka): audit follow-ups — placeholder secrets, isolate reconcile, .env perms 2026-04-15 10:17:00 +02:00
updater.py fix(furtka): chmod 755 on version dir + heredoc furtka.json 2026-04-16 15:46:56 +02:00