aboutsummaryrefslogtreecommitdiffhomepage
path: root/cmd/mbf
AgeCommit message (Collapse)Author
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-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-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-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-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-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>
2026-05-05cmd/mbf: optional init verbosityOphestra
This output is generally not needed and only useful when debugging container machinery itself. Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-05-03cmd/mbf: optionally build on early stagesOphestra
This makes debugging the bootstrap process much less cumbersome. Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-05-02cmd/mbf: package status dashboardmae
This displays package metadata with optional status from a report.
2026-05-02cmd/mbf: test cure all via daemonOphestra
This is the daemon equivalent of CureAll in internal/rosa. Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-05-01internal/rosa: global preset flagsOphestra
These changes preset behaviour globally. Useful for ad hoc workarounds for development or bootstrapping on resource-constrained systems. Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-05-01internal/rosa/llvm: use llvm build systemOphestra
This removes the multistep bootstrap hack. Stage0 exceptions are also eliminated for a later change to bring the stage0 distribution down to just a bare toolchain, toybox and shell. This change also enables dynamic linking and ThinLTO. Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-04-19cmd/mbf: default daemon socket in cacheOphestra
This location makes more sense than the current directory. Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-04-19cmd/mbf: remove pointless recoverOphestra
This used to scrub the cache, and was not fully removed when that became nonviable. Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-04-19cmd/mbf: optionally wait for cancelOphestra
Synchronisation is not needed here during interactive use. Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-04-19cmd/mbf: close on cancel completionOphestra
Like the previous change, this enables synchronisation on the client side via epoll. Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-04-19cmd/mbf: close on abort completionOphestra
This enables synchronisation on the client side via epoll. Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-04-18internal/pkg: drop cached error on cancelOphestra
This avoids disabling the artifact when using the individual cancel method. Unfortunately this makes the method blocking. Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-04-17cmd/mbf: abort remote curesOphestra
This command arranges for all pending cures to be aborted. It does not wait for cures to complete. Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-04-17cmd/mbf: cancel remote cureOphestra
This exposes the new fine-grained cancel API in cmd/mbf. Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-04-17cmd/mbf: handle flags in serveOphestra
This enables easier expansion of the protocol. Signed-off-by: Ophestra <cat@gensokyo.uk>