aboutsummaryrefslogtreecommitdiffhomepage
path: root/cmd
AgeCommit message (Collapse)Author
2026-06-17hst: optionally cover /run/ earlyOphestra
This works around awkward root permissions. Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-06-17cmd/app: use ephemeral overlay rootOphestra
This replaces autoroot. Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-06-17cmd/app: start application from configurationOphestra
This is currently not very usable due to hakurei immutable overlay mount limitations. Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-06-17cmd/app: high-level app configuration syntaxOphestra
This replaces the nixos module. Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-06-16cmd/app: initial container template commandOphestra
This program is an experimental frontend for cmd/hakurei. This serves as a short-term replacement of the nixos module and a testing environment to implement API useful to planterette. Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-06-10cmd/mbf: migrate shell to enterOphestra
This reduces duplicate code. This change also adds resolv.conf to the container. Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-06-10cmd/mbf: register binfmt entry for shellOphestra
This fixes --arch for shell. Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-06-09cmd/hsu: remove parent checkOphestra
This check serves no real purpose and only makes it more difficult to start containers. Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-06-09internal/rosa: expose supported architecturesOphestra
This information is useful to external tooling and makes a lot more sense in this package than cmd/mbf. This change also fixes non-native artifact resolution during clean. Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-06-08all: apply modernisersOphestra
Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-06-08cmd/mbf: custom azalea pathOphestra
This enables out-of-tree packaging. Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-06-07internal/rosa: access backing storage through fsOphestra
This is more versatile than hardcoding the os.Root implementation. Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-06-07internal/rosa: mirror service via external cacheOphestra
This provides an authenticated implementation of the external cache. Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-06-03internal/pkg: streaming archive reader/writerOphestra
This is much more robust and efficient than the simple buffering implementation for larger files. Allocations happen almost exclusively in WalkDir. Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-06-02cmd/mbf: keep non-native entries aliveOphestra
Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-06-02cmd/mbf: garbage collection commandsOphestra
Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-05-30internal/rosa: annotate blocked updatesOphestra
These situations, while unfortunate, are inevitable at a larger scale. This change enables annotation and optional hiding of blocked updates. Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-05-27cmd/earlyinit: mount /dev/shmOphestra
Required by many programs. Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-05-27cmd/earlyinit: improve change message formattingOphestra
This is significantly more readable. Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-05-27cmd/earlyinit: downgrade target error severityOphestra
This happens during coldboot, before reporting gains persistent state. Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-05-27cmd/earlyinit: load device driversOphestra
Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-05-27internal/kobject: pass action kind for rangeOphestra
Useful for handling most uevents. Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-05-27internal/rosa/cmake: use DESTDIR instead of --prefixOphestra
Turns out --prefix is deeply broken, and DESTDIR works even when using ninja. Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-05-27cmd/earlyinit: mount system deviceOphestra
This currently relies on a trusted bootloader to determine the boot device. Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-05-23internal/rosa/package: migrate stage0Ophestra
Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-05-22internal/rosa: IR-curable source overrideOphestra
This creates a tarball in-memory for overriding hakurei-source. Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-05-22release: 0.4.3v0.4.3Ophestra
Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-05-21cmd/dist: include version in releaseOphestra
This makes HAKUREI_VERSION optional during build. Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-05-21internal/rosa: do not register stage0Ophestra
Nothing can depend on this, so remove it from the namespace. Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-05-21internal/rosa: enforce exclusionsOphestra
This restores unexported artifact behaviour. Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-05-20internal/rosa: remove global handlesOphestra
These no longer serve any purpose. Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-05-20internal/rosa/package: migrate remaining trivial packagesOphestra
The rest are migrated individually. Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-05-19internal/rosa/package: migrate kernelOphestra
This introduces bindings for extra paths and KnownChecksum, and exposes a passthrough special case. Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-05-19internal/rosa: evaluate packages lateOphestra
This also enables concurrent evaluation. Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-05-19internal/rosa: create metadata alongside artifactOphestra
This enables deferring evaluation of azalea-based packages and fixes the longstanding quirk of version being disjoint from other metadata. Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-05-18internal/rosa: track evaluation timeOphestra
Useful to track performance regressions over migrations. Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-05-18internal/rosa: evaluate packages from fsOphestra
This migrates GNU sed to azalea, and resulting IR matches. Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-05-18internal/rosa: panic error for invalid handleOphestra
This enables recovery and better error handling for errors originating from external azalea files. Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-05-17cmd/mbf: update pkgserver title textOphestra
This makes more sense for its purpose. Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-05-17cmd/mbf: bring back pkgserver's favicon!kat
It existed in mae's #33, but ozy was not satisfied with including a binary file identical to https://hakurei.app's favicon, and hence removed it. However, it's possible to explicitly specify the favicon with a link tag [1]; provided a content security policy that isn't too strong, this should work fine. [1]: https://developer.mozilla.org/en-US/docs/Web/HTML/Reference/Attributes/rel#icon
2026-05-17cmd/mbf: clone pkgserver order slicesOphestra
These are no longer arrays, so must be cloned for sorting. Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-05-17internal/rosa: pass stage alongside stateOphestra
This cleans up many function signatures. Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-05-17internal/rosa: key metadata by stringOphestra
For upcoming azalea integration. The API is quite ugly right now to ease migration. Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-05-13cmd/mbf: display and destroy fault entriesOphestra
This change extends cmd/mbf commands for working with fault entries. Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-05-10cmd/dist: optionally skip testsOphestra
Works around incomplete syscall translation by qemu. Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-05-08cmd/mbf: optionally override non-native flagsOphestra
This is a clean workaround for configuration differences to save time during development. Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-05-08cmd/mbf: optionally register all targetsOphestra
This enables non-native cures from the daemon. Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-05-08cmd/mbf: add arm64 magicOphestra
Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-05-07cmd/mbf: optional emulated target architectureOphestra
This enables transparent cross-compilation without breaking purity. Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-05-07internal/pkg: optionally register binfmtOphestra
This transparently supports curing foreign exec artifacts. Signed-off-by: Ophestra <cat@gensokyo.uk>