Repository for the Hamnix package manager (hpm).
Top-level directories under this site are channels mirroring
Debian's main / contrib /
non-free / non-free-firmware split.
hpm talks to each channel's index.json and
downloads packages by URL + SHA-256.
| Channel | Index | Packages | Description |
|---|---|---|---|
main |
main/index.json |
main/packages/ |
First-party / free software. Enabled by default. Holds
hamnix-base (metapackage), every component
(init/hamsh/coreutils/net/sshd/hpm/fs/drivers/installer/bootloader),
and linux-debian-12. |
non-free |
non-free/index.json |
— | Reserved for software whose licence isn't DFSG-free.
Placeholder today; opt in with
hpm enable non-free. |
non-free-firmware |
non-free-firmware/index.json |
— | Reserved for binary firmware blobs (wifi, GPU, camera).
Placeholder today; opt in with
hpm enable non-free-firmware. |
hpmhpm channels # list enabled channels hpm enable non-free-firmware # subscribe to non-free-firmware hpm refresh # fetch every enabled channel's index hpm install hamnix-base # metapackage — pulls in the full OS
The Hamnix live installer drives the same hpm install
pipeline against an ISO-bundled mini-repo at
file:///iso-packages/main/ rather than over HTTPS, but the
package format and dependency-graph logic are identical.
A Hamnix package is a gzipped tar containing a top-level directory
named <name>-<version>/ with this layout:
hamnix-init-1.0.0/ ├── PKGINFO # key:value metadata (name, version, arch, depends, ...) ├── files/ # files to install into the target namespace │ └── init # → /init on the target │ └── etc/ │ └── rc.boot # → /etc/rc.boot on the target └── install.hamsh # optional post-install hook
See the repo README for the full schema and channel notes.