1 Commits

Author SHA1 Message Date
Tha.Les ce86e8ad57 feat(unraid): publish container to GHCR and add Community Applications app (#253)
* feat(unraid): publish container to GHCR and add Community Applications template

- add docker-publish workflow: build build/Dockerfile and push
  ghcr.io/stemdeckapp/stemdeck on release + manual dispatch (linux/amd64)
- add templates/stemdeck.xml: Unraid Docker template (port 8000,
  /app/jobs + /cache volumes, persistent library default, optional NVIDIA
  runtime vars)
- add ca_profile.xml at repo root for the CA submission scan
- document the GHCR image and Unraid install in README

The published image keeps the default Linux x86_64 (CUDA) torch wheel, so a
single image runs on CPU by default and uses the GPU when started with
--runtime=nvidia; _detect_device() auto-selects CUDA.

* ci(unraid): derive manual-dispatch version from git instead of 0.0.0

Drop the workflow_dispatch version input and compute it with git describe
(hatch-vcs style) so manual builds carry a real dev version. Fetch full
history + tags on checkout so git describe resolves.

* ci(unraid): publish a rolling :edge image on merge to main

Add a push trigger on main so every merge builds and pushes
ghcr.io/stemdeckapp/stemdeck:edge. :edge never moves :latest, which stays
reserved for stable releases.

* chore(unraid): point template at :edge until a stable release exists

* docs(unraid): document edge/latest/version image tags and use :edge in the run example

* chore: default run.sh PORT to 8000 to match the container/Unraid port

* chore: default advertised port to 8000 across backend and desktop

Align DEFAULT_PORT (app/core/settings.py) and the desktop launcher's
configured_port() fallback (desktop/src-tauri/src/main.rs) from 8080 to 8000
so every path -- container, run.sh, and desktop -- shares one default. Update
the settings comment and the port-default test accordingly.
2026-07-10 22:00:13 +01:00