2.2 KiB
2.2 KiB
Contributing
Keep these in sync
README.md— what this package is and how it's built (image, volumes, interfaces). Technical reference for developers and AI assistants.instructions.md— the user-facing instructions packed into the.s9pkand shown on the Instructions tab in StartOS, for the person running the service.TODO.md— pending work on this package.
Read all three before starting any work. Any code change that affects user-visible behavior must update README.md and instructions.md in the same change; add to TODO.md when you defer work, and remove items when complete. Content rules: Writing READMEs, Writing Instructions.
Environment setup
Building
npm ci # install dependencies
make # build the universal .s9pk
For a complete list of build options, see Makefile.
Updating the upstream version
- Apply the upstream bump per UPDATING.md.
- Update
versionandreleaseNotesinstartos/versions/current.ts— the latest version always lives in that file, so an in-place edit is all most bumps need. A new file is spun off only when the bump requires a migration — see Versions.
CI/CD
Three workflows under .github/workflows/ wrap reusable workflows in start9labs/shared-workflows:
build.yml— on PR, builds the.s9pkand uploads per-arch artifacts for sideload testing.release.yml— onv*tag, builds per arch and publishes to the test registry.tagAndRelease.yml— on push tomaster, tagsv<version>and runsrelease.yml, skipping if already in production.
Promotion to beta and prod is a separate, manual step.
How to contribute
- Fork the repository and create a branch from
master. - Make your changes — including the doc updates above.
- Open a pull request to
master.