# Workflow: submit a package Goal: add a new package to Solnix — recipe, build, signed submission, publish. 1. **Write the recipe** (10-col row, see `conventions/recipe-schema.md`). Respect illumos ELF/RUNPATH (`conventions/illumos-elf-runpath.md`) and ship any SMF manifest for daemons. 2. **Send it for review** to `hackers@solnix.io` as a signed email patch against `unstable` (see `SOLNIX-CONTRIBUTOR`). Expect `+1/0/-1`. 3. **Build it reproducibly** (sandboxed, pinned inputs) for `x86_64-solaris`. 4. **Submit the artifact** (unsigned): ``` POST /api/v1/cache/submit/begin # -> upload target # upload NAR(s) POST /api/v1/cache/submit/finalize GET /api/v1/cache/submit/status/:id # poll ``` The site classifies → signs → publishes. See `conventions/signed-submit.md`. 5. **If rejected "orchestrator failed":** your declared `deps` aren't real narinfo `References:`. Drop phantom deps or make the dependency a genuine Nix reference, then re-submit. 6. **Make docs searchable:** ship `share/man/**` + `has_manpages=y` (and/or `share/{info,doc}/**` + `has_docs=y`). It appears in `/docs` + the API within the hour. 7. **Earn trust:** encourage an independent rebuild to reach the same hash — that moves the package from `single` to `reproduced`/`verified` (`workflows/reproduce-and-vote.md`).