1
0
forked from rosa/hakurei
Commit Graph

53 Commits

Author SHA1 Message Date
cat 098943ab46 internal/rosa/meson: optionally use muon
This is a much faster implementation free of python dependency hell, however currently fails to handle symbol visibility correctly, so unable to default to on. This change also cleans up some meson arguments.

Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-07-14 21:45:07 +09:00
cat e1f16e7720 internal/rosa: apply patches in specified order
This seems more intuitive than letting the filesystem decide, and having to use awkward names.

Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-07-10 15:39:55 +09:00
cat 237e793895 internal/rosa: respect preferred loadavg target
This generally improves build performance and system responsiveness.

Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-07-09 10:08:08 +09:00
cat 3975dd3e0f internal/rosa: create /bin symlinks via helper
This centralises the workaround for surprisingly common buggy scripts with nonstandard hardcoded paths.

Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-07-01 15:03:26 +09:00
cat d1319a497c internal/rosa: handle nil source
Source is not always required. This improves flexibility.

Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-06-28 18:02:54 +09:00
cat 1348991634 internal/rosa/meson: skip specific test suites
For disabling specific broken or flaky tests.

Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-06-22 00:53:17 +09:00
cat 7ab54b8c94 internal/rosa: read overridden version string from source
This is more correct than the hardcoded string and is generally more robust against relative paths.

Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-06-20 01:18:12 +09:00
cat ce06539eca internal/rosa: expose supported architectures
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-09 16:05:04 +09:00
cat 69908e5a41 internal/rosa: remove external toolchain reference
This should have used toolchain passed as the argument and was mistakenly never changed when migrating to late evaluation.

Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-06-09 15:58:02 +09:00
cat f869ff95a1 all: apply modernisers
Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-06-08 14:58:24 +09:00
cat db69dcf0be internal/pkg: remove tar built-in decompressor
This is replaced by decompressArtifact and is no longer necessary.

Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-06-04 18:54:43 +09:00
cat 56937ac396 internal/rosa: populate opts of cloned S
This was missed when migrating opts into S.

Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-06-02 16:00:51 +09:00
cat 8b87e0eb76 internal/rosa: annotate blocked updates
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-30 18:56:55 +09:00
cat 7816f8b523 internal/rosa/package: cairo
Required by sway, which is required by vm test suite.

Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-05-27 12:00:13 +09:00
cat 3458806685 internal/rosa: resolve runtime for overlay extras
This is generally for system image creation, so this behaviour makes more sense.

Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-05-25 10:37:21 +09:00
cat 8ca70550ab internal/rosa/package: db
For iproute2.

Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-05-25 10:31:45 +09:00
cat 3f33b62dfd internal/rosa/package: migrate system image
The overlay argument also enables migration of stage0.

Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-05-23 17:44:38 +09:00
cat e5a4094298 internal/rosa: remove unused helpers
These are no longer needed after migration.

Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-05-23 14:00:18 +09:00
cat b47fa1a214 internal/rosa: IR-curable source override
This creates a tarball in-memory for overriding hakurei-source.

Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-05-22 22:24:16 +09:00
cat 68a91523b9 internal/rosa/package: migrate bison
This is the final remaining trivial legacy artifact.

Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-05-21 23:06:34 +09:00
cat 25d9edfc64 internal/rosa/package: migrate tamago
Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-05-21 19:40:16 +09:00
cat 6546ddc64b internal/rosa: expose in-place behaviour in generic helper
This change also combines the createDir and wantsDir methods, and replaces the non-inplace target of the generic helper with a deterministic path.

Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-05-21 16:11:38 +09:00
cat cbf18b302d internal/rosa/package: migrate nss
Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-05-21 15:36:10 +09:00
cat 1acb5b0105 internal/rosa: extra inputs in alternative path
This works around particularly unwieldy build systems.

Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-05-21 15:05:12 +09:00
cat 40b33f9fc7 internal/rosa: enforce exclusions
This restores unexported artifact behaviour.

Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-05-21 14:48:16 +09:00
cat 443a7a30f6 internal/rosa: use string pair for files
This is a much cleaner representation than the separator syntax.

Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-05-21 14:07:20 +09:00
cat 9836030c59 internal/rosa: reinitialise frame alongside cache
The cached frame can contain information made outdated by the DropCaches call.

Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-05-20 09:01:40 +09:00
cat 656059278d internal/rosa/package: migrate remaining trivial packages
The rest are migrated individually.

Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-05-20 05:57:26 +09:00
cat 2e710328a4 internal/rosa/package: migrate musl
This removes some legacy cruft, causing 2 rebuilds per stage.

Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-05-20 04:13:10 +09:00
cat ef414ab01a internal/rosa/package: migrate many libraries
This also adds more string helpers.

Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-05-20 03:33:15 +09:00
cat fcba32e9c4 internal/rosa/package: migrate glib
Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-05-20 02:09:12 +09:00
cat a7f5a5802d internal/rosa/package: migrate spirv-llvm-translator
Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-05-20 00:01:03 +09:00
cat bb230378e0 internal/rosa/package: migrate glslang
Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-05-19 23:48:39 +09:00
cat f638c73933 internal/rosa: bind anitya functions
This is far more scalable than individual fields.

Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-05-19 23:34:21 +09:00
cat c0593e8325 internal/rosa/package: migrate dbus
Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-05-19 22:51:08 +09:00
cat 962b02cf25 internal/rosa/package: migrate kernel
This introduces bindings for extra paths and KnownChecksum, and exposes a passthrough special case.

Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-05-19 21:40:15 +09:00
cat 548c96c7ec internal/rosa/package: migrate make
This also introduces the generic helper for unusual build scripts.

Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-05-19 19:28:18 +09:00
cat 6e8bfa6c4c internal/rosa/package: migrate cmake
Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-05-19 18:42:54 +09:00
cat ff44060763 internal/rosa/package: migrate python packages
This also migrates LLVM LIT via the newly implemented special case.

Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-05-19 18:15:04 +09:00
cat 3010a209b5 internal/rosa/azalea: pass through source ident
For source handle special case.

Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-05-19 18:10:11 +09:00
cat 23515f67c8 internal/rosa/package: migrate perl packages
Most of these are currently unused.

Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-05-19 04:08:22 +09:00
cat a7877844bf internal/rosa/package: migrate perl interpreter
Packages will be migrated separtely.

Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-05-19 02:49:11 +09:00
cat 1ed027846d internal/rosa/package: migrate python interpreter
Packages will take quite some work.

Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-05-19 02:06:17 +09:00
cat 6e9e8c74f3 internal/rosa: migrate buildcatrust
Other nss-related packages are unlikely to be migrated any time soon.

Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-05-19 01:44:23 +09:00
cat 4d60fa5632 internal/rosa: evaluate packages late
This also enables concurrent evaluation.

Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-05-19 01:26:21 +09:00
cat 8807cbc730 internal/rosa: create metadata alongside artifact
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-19 00:44:24 +09:00
cat 594221eb78 internal/rosa/package: migrate gnutls
This is the first nontrivial package to be migrated to azalea. Validated to generate identical IR.

Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-05-18 22:06:00 +09:00
cat 34822925e1 internal/rosa: migrate GNU software
These are quite trivial, so migrate them in one pass.

Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-05-18 21:23:19 +09:00
cat 37df040d85 internal/rosa: evaluate packages from fs
This migrates GNU sed to azalea, and resulting IR matches.

Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-05-18 17:54:01 +09:00
cat 0360e779f3 internal/rosa: initial azalea bindings
Supported fields are still rather minimal, but evaluation works, and resulting artifacts cure correctly.

Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-05-18 02:56:38 +09:00