mirror of
https://github.com/CyberMind-FR/secubox-deb.git
synced 2026-07-28 21:17:36 +00:00
73 lines
3.6 KiB
Plaintext
73 lines
3.6 KiB
Plaintext
secubox-appstore (0.3.1-1~bookworm1) bookworm; urgency=medium
|
|
|
|
* feat(#768): P2P apt over the mesh (appstore federation phase 5).
|
|
/usr/sbin/sbx-apt-mesh points a node's apt at the rendezvous's signed repo
|
|
over the wg-mesh (http://<master>:9080/apt, GPG-verified against the existing
|
|
secubox keyring), so packages install from the mesh instead of the public
|
|
apt.secubox.in — faster and resilient to the public ingress/DNS being down.
|
|
enable|disable|status; the rendezvous node self-skips (repo is local).
|
|
|
|
-- Gerald Kerma <devel@cybermind.fr> Wed, 01 Jul 2026 13:00:00 +0200
|
|
|
|
secubox-appstore (0.3.0-1~bookworm1) bookworm; urgency=medium
|
|
|
|
* feat(#768): federated Mesh Catalog (appstore federation phase 2).
|
|
GET /mesh-catalog reads this node's converged annuaire directory (read-only)
|
|
and joins each ServiceOffer to the publishing node's NodeRecord, so the app
|
|
store shows a fleet-wide view: which service is offered/emancipated, by which
|
|
node, over which channel, and how to reach it. New "Mesh Catalog" panel in
|
|
the UI. Graceful no-op when secubox-annuaire is absent.
|
|
|
|
-- Gerald Kerma <devel@cybermind.fr> Wed, 01 Jul 2026 11:00:00 +0200
|
|
|
|
secubox-appstore (0.2.2-1~bookworm1) bookworm; urgency=medium
|
|
|
|
* fix(menu): install the navbar entry to /usr/share/secubox/menu.d (the
|
|
dir the hub reads) instead of /etc/secubox/menu.d, and place it in the
|
|
'root' navbar section (order 10) so the App Store is prominent.
|
|
|
|
-- Gerald KERMA <devel@cybermind.fr> Mon, 29 Jun 2026 20:00:00 +0200
|
|
|
|
secubox-appstore (0.2.1-1~bookworm1) bookworm; urgency=medium
|
|
|
|
* fix: service needs NoNewPrivileges=no so the API can sudo the root
|
|
helper (the narrow sudoers rule + helper validation are the boundary);
|
|
postinst now try-restarts the service on upgrade so new code loads.
|
|
|
|
-- Gerald KERMA <devel@cybermind.fr> Mon, 29 Jun 2026 19:30:00 +0200
|
|
|
|
secubox-appstore (0.2.0-1~bookworm1) bookworm; urgency=medium
|
|
|
|
* Phase B/C + navbar integration.
|
|
- UI: integrated shared sidebar (nav#sidebar + sidebar.js + crt-engine),
|
|
per-service quick actions (start/stop/restart/enable/disable) and a
|
|
config editor drawer (view/edit the module TOML, shows dependencies).
|
|
- api: POST /module/{name}/action/{verb}; GET/PUT /module/{name}/config.
|
|
- sbin/secubox-appstorectl: validated root helper (secubox-* units +
|
|
/etc/secubox/<name>.toml only; TOML-validates writes). Narrow sudoers
|
|
rule lets the unprivileged API invoke it.
|
|
- postinst rebuilds the hub menu cache so the App Store shows in the navbar.
|
|
|
|
-- Gerald KERMA <devel@cybermind.fr> Mon, 29 Jun 2026 19:00:00 +0200
|
|
|
|
secubox-appstore (0.1.1-1~bookworm1) bookworm; urgency=medium
|
|
|
|
* fix(nginx): serve the catalog API from secubox-routes.d/ (the
|
|
authoritative /api/v1/ include) instead of secubox.d/, so it wins over
|
|
the generic /api/ -> aggregator catch-all. UI stays in secubox.d/.
|
|
|
|
-- Gerald KERMA <devel@cybermind.fr> Mon, 29 Jun 2026 18:00:00 +0200
|
|
|
|
secubox-appstore (0.1.0-1~bookworm1) bookworm; urgency=medium
|
|
|
|
* Initial release — App Store Phase A (read-only catalog).
|
|
- api/main.py: GET /catalog (category/tier/state/q filters), /module/{name},
|
|
/categories, /health; merges the baked manifest catalog with live dpkg +
|
|
systemctl state (available / installed / running / tier-locked).
|
|
- catalog.json generated at build from every module's debian/secubox.yaml.
|
|
- www/appstore: categorized, tiered, searchable grid UI (read-only).
|
|
- Served by secubox-appstore.service on /run/secubox/appstore.sock; nginx
|
|
routes /api/v1/appstore/ + static /appstore/. No aggregator dependency.
|
|
|
|
-- Gerald KERMA <devel@cybermind.fr> Mon, 29 Jun 2026 17:30:00 +0200
|