95cd7d9ba8
- Apps/snacks/: docker-compose.yaml (2.3.1, host networking, privileged, /dev/dri) and README.md with full security exception documentation for: network_mode:host, privileged:true, device mount /dev/dri - apps.md: converted to agent-readable table backlog with instructions for future apps - Jellyfin-ffmpeg paths as defaults, 1G memory reservation, amd64 only (single-arch image) - Validation: ./scripts/validate-appstore.sh passes
769 B
769 B
Backlog
| # | Done | Name | Source | What | Agent instructions |
|---|---|---|---|---|---|
| 1 | [x] | Snacks | https://github.com/derekshreds/snacks | Automated video library encoder | Branch snacks/initial/add-video-encoder; implemented in Apps/snacks/ |
Adding a new app
- Copy
Apps/_template/→Apps/<app-id>/ - Set
namein compose (lowercase + hyphen only) - Pin image to explicit version/tag (no
:latest); verify tag exists in registry - Add
x-casaosmetadata (title, description, icon, category, author, port_map) - Write
README.mdwith purpose, ports, volumes, envs, and risk justifications - Validate:
./scripts/validate-appstore.sh - Run final validation before release:
./scripts/validate-appstore.sh --enforce-risk-docs