3f7b8b4332
internal/rosa/git: git clone helper
...
For obtaining sources of projects that stubbornly refuse to provide release tarballs.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-02-06 21:10:59 +09:00
fa94155f42
internal/rosa/etc: resolv.conf
...
Required by programs that download from the internet in measured execArtifact.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-02-06 21:04:59 +09:00
233bd163fb
internal/rosa/git: disable flaky test
...
This fails intermittently.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-02-06 20:45:52 +09:00
f9b69c94bc
internal/rosa/ssl: prefix CA paths
...
This makes prefixes consistent with everything else since this will end up in the final Rosa OS image.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-02-06 20:41:58 +09:00
68aefa6d59
internal/rosa/openssl: fix paths
...
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-02-06 19:53:51 +09:00
159fd55dbb
internal/rosa/ssl: fix dependencies
...
These used to be provided by busybox.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-02-05 19:12:48 +09:00
ce6b3ff53b
internal/rosa: unzip artifact
...
Because the zip format is too awful and cannot be streamed anyway, supporting it natively comes with no benefit.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-02-05 19:10:32 +09:00
30afa0e2ab
internal/rosa/git: compile with http support
...
This should be able to fetch repositories deterministically.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-02-05 18:51:02 +09:00
9b751de078
internal/rosa/gnu: fix test suite flags
...
This sets the correct flag and also avoids changing ident per system.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-02-05 18:29:47 +09:00
d77ad3bb6e
internal/rosa: curl artifact
...
Required for http support in git.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-02-05 18:15:16 +09:00
0142fc90b0
internal/rosa/make: post-configure script
...
Required for some projects with broken build scripts.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-02-05 18:13:48 +09:00
3c9f7cfcd0
internal/rosa: libpsl artifact
...
Required by curl.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-02-05 18:06:33 +09:00
a3526b3ceb
internal/rosa: openssl artifact
...
Optional for many programs.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-02-05 18:03:18 +09:00
6ad21e2288
internal/rosa: register custom artifacts
...
This also encodes extra information for iana-etc.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-02-05 17:50:48 +09:00
27e2e3f996
internal/rosa/llvm: drop git dependency
...
This was added quite early and has no effect. Remove it to avoid compiling git early.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-02-05 17:44:58 +09:00
443911ada1
internal/rosa: use stage3 mirror
...
These get taken down periodically and causes way too many rebuilds when they are taken down. Use mirror until a more elegant solution is available.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-02-02 23:43:34 +09:00
d7a3706db3
internal/rosa/x: regenerate build system
...
These come with 16-year-old scripts that do not understand aarch64 or really anything else relevant to Rosa OS.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-02-02 19:57:39 +09:00
3226dc44dc
internal/rosa/gnu: libtool artifact
...
Required when generating autotools build systems.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-02-02 19:52:08 +09:00
9f98d12ad8
internal/rosa/gnu: automake artifact
...
This is very expensive. Avoid.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-02-02 18:49:18 +09:00
550e83dda9
internal/rosa/gnu: grep artifact
...
Some GNU software do not like the grep in toybox.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-02-02 18:38:01 +09:00
47ce6f5bd0
internal/rosa/llvm: conditionally add Rosa OS paths
...
This change also moves rpath flags to a more appropriate method.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-02-02 07:29:35 +09:00
48f4ccba33
internal/rosa/llvm: add rosa vendor
...
This cleans up checks specific to Rosa OS, and fixes stack overflow in llvm under certain conditions.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-01-31 22:47:13 +09:00
c31884bee4
internal/rosa: disable broken tests
...
These fail when running as users with supplementary groups, since they are unmapped in the container. This was not the case in the development container where all groups were dropped, so the failure was missed.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-01-31 14:12:40 +09:00
f8661ad479
internal/rosa/hakurei: backport test case fix
...
This patch will be removed in the next release.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-01-31 12:00:21 +09:00
536f0cbae6
internal/rosa/gnu: gettext 0.26 to 1.0
...
This now requires kernel headers for some reason.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-01-31 11:41:07 +09:00
8d872ff1cd
internal/rosa: fetch from gnu mirror
...
GNU infrastructure is extraordinarily flaky and fetching from it killed the server too many times.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-01-31 11:26:48 +09:00
8b4576bc5f
internal/rosa: migrate to make helper
...
This migrates artifacts that the helper cannot produce an identical instance of.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-01-31 08:55:33 +09:00
29ebc52e26
internal/rosa/hakurei: suffix variants
...
This makes log output more useful.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-01-31 05:03:15 +09:00
5f81aac0e2
internal/rosa: make helper
...
This change only migrates artifacts that remain unchanged under the helper, so this change should not cause any rebuilds.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-01-31 05:01:22 +09:00
47490823be
internal/rosa: improve cmake interface
...
This should make the call site look better for new artifacts.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-01-31 02:42:01 +09:00
1ac8ca7a80
internal/rosa: isolate make implementation
...
This will come with a helper eventually.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-01-31 02:33:14 +09:00
fd8b2fd522
internal/rosa: fix up dependencies
...
These are no longer provided by the (incomplete) toybox implementations, so they need to be specified explicitly.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-01-30 03:11:16 +09:00
20a8519044
internal/rosa/mksh: also build lksh
...
This is better suited for /system/bin/sh. Full mksh is still included, installed at /system/bin/mksh.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-01-30 00:54:30 +09:00
8c4fd00c50
internal/rosa/ninja: build in $TMPDIR
...
This used to build in /work/system/bin/ and unfortunately leaves its garbage there. This behaviour is from very early stages of this package, and was never fixed. This change updates it to use the "$(mktemp -d)" convention that every other artifact uses.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-01-30 00:36:43 +09:00
bc3dd6fbb0
internal/rosa: chmod via patch helper
...
This works around the zfs overlay mount overhead and significantly reduces I/O in general.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-01-30 00:29:44 +09:00
616ed29edf
internal/rosa: early toybox variant
...
This is a variant of toybox with unfinished tools enabled, for artifacts that will end up in a dependency loop without them.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-01-30 00:24:14 +09:00
9d9b7294a4
internal/rosa: flags for toolchain-dependent artifact
...
This is much cleaner to add extra flags to.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-01-29 20:44:43 +09:00
6c1e2f10a7
internal/rosa: remove busybox artifact
...
This is no longer used and its implementation is unacceptably shaky.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-01-29 19:58:51 +09:00
abf96d2283
internal/rosa: replace busybox with toybox
...
The busybox artifact does not run on aarch64, and the workarounds required for it to compile successfully on x86_64 is unacceptably shaky. This change fully replaces it with toybox.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-01-29 19:51:18 +09:00
6c90e879da
internal/rosa/llvm: enable asan
...
This is required by test suite of latest toybox.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-01-29 18:30:37 +09:00
d1b404dc3a
internal/rosa: findutils artifact
...
Required by llvm test suite, compiler-rt sanitisers-related tests fail on toybox xargs.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-01-29 18:24:01 +09:00
744e4e0632
internal/rosa: sed artifact
...
Required by various GNU programs as they are not happy with toybox sed.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-01-29 18:17:18 +09:00
85eda49b2b
internal/rosa: xz artifact
...
Wanted to avoid this as much as possible. Unfortunately newer versions of GNU findutils only come in xz and is required for llvm compiler-rt sanitisers.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-01-29 18:06:17 +09:00
b26bc05bb0
internal/rosa: remove unused receiver
...
This returns the preset itself, it is up to the caller to load the underlying artifact.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-01-29 17:52:50 +09:00
2d63ea8fee
internal/rosa: gzip artifact
...
Toybox does not implement this, and it is used by many programs, including toybox itself.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-01-29 17:46:30 +09:00
dd4326418c
internal/rosa: toybox artifact
...
This compiles surprisingly quickly and required no workarounds, unlike busybox.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-01-29 17:44:30 +09:00
79c0106ea0
internal/rosa: replace busybox dash with mksh
...
Toybox does not provide a shell, mksh fills that gap.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-01-29 02:00:32 +09:00
536db533de
internal/rosa: install bash as sh
...
This works around software relying on bashisms even when explicitly invoking sh.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-01-29 01:25:44 +09:00
77ea27b038
internal/rosa: mksh artifact
...
This provides a shell, as part of the effort to replace busybox.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-01-29 00:51:32 +09:00
e76bc6a13a
internal/rosa: resolve preset by name
...
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-01-28 20:57:51 +09:00