- Rust 100%
| Filename | Latest commit message | Latest commit date |
|---|---|---|
| src | ||
| .gitignore | ||
| Cargo.lock | ||
| Cargo.toml | ||
| LICENSE | ||
| NOTICE | ||
| README.md | ||
hu
hu builds Horizon huports packages locally. Sources stay in cgit; the helper
clones a package repository, uses hbuild to build it with the local chroot, and
optionally installs the resulting APK.
Commands
The command line is intentionally paru-like:
hu <query> search and install interactively
hu <package>... install packages directly
hu -S <package>... install packages
hu -Ss [term] search huports
hu -Si <package>... show package info
hu -G <package>... clone package sources
hu -Gp <package>... print package manifests
hu list list package names
hu build <package> build without installing
Multiple search results open a numbered menu. The menu accepts 1 2 3,
1-3, and comma-separated numbers. --noconfirm skips the installation
prompt; --no-color and NO_COLOR disable ANSI color.
hu -S and hu install run apk add --allow-untrusted as root. When not root
they use sudo; set HU_SUDO=doas to use doas instead.
Requirements
gitcurlhbuildapkfrom apk-tools for installation
The helper never pushes, signs, or writes to huports. It only clones from
https://pkgs.euri-linux.pl/git/huports/<package>.git and builds in its own
cache. Maintainer publishing remains a separate hbuild operation.
Environment
| Variable | Default |
|---|---|
HU_HBUILD |
hbuild |
HU_CACHE |
$XDG_CACHE_HOME/hu or ~/.cache/hu |
HU_CGIT_URL |
https://pkgs.euri-linux.pl/cgit/ |
HU_GIT_BASE |
https://pkgs.euri-linux.pl/git/huports |
HU_REPO_BASE |
https://pkgs.euri-linux.pl/huports |
HU_SUDO |
sudo |
Package format
Each huports repository carries a root kasanx.toml. It can be a complete
hbuild template with [package], [source], and [build], or a flat manifest
with package fields at the top and [source]/[build] tables below. The helper
wraps the flat form into the [package] table hbuild expects. A manifest
without [source] and [build] can be inspected with hu info, but cannot be
built.
Layout
~/.cache/hu/
├── repos/<package>/
└── work/<package>/
├── kasanx/user/<package>/
│ ├── kasanx.toml
│ ├── files -> <cache>/repos/<package>/files
│ └── patches -> <cache>/repos/<package>/patches
└── packages/user/x86_64/*.apk
License
BSD-3-Clause. See LICENSE.
The command-line interface is modeled after paru 2.1.0, which is GPL-3.0. No paru source code is included or adapted in this project. Paru was read only to understand its user-facing behavior and option layout.
Support
Fund the distro at https://liberapay.com/maja-wittbrodt/.