cat
5e4bf23e0c
internal/rosa/musl: migrate to make helper
...
This is much cleaner and eliminates the early ugliness.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-02-22 15:53:41 +09:00
cat
d4519e2075
internal/rosa/make: expose --host
...
This should be set alongside --build.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-02-22 15:14:09 +09:00
cat
7f1e4cf43c
internal/rosa: kernel artifact
...
The configuration still wants some cleanup, but this works fine as a generic kernel for now.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-02-21 23:19:16 +09:00
cat
d021621fba
internal/rosa: install kernel headers out-of-tree
...
This is somewhat cheaper than the implementation with extra artifact and is more friendly to the make helper.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-02-21 19:16:10 +09:00
cat
56567307ec
internal/rosa: gnu tar artifact
...
Initially, libarchive was going to be used, but its test suite simply does not want to work under musl, not even with libiconv. The ticket last discussing this ceased any activity in 2020.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-02-21 18:09:51 +09:00
cat
0264a1ef09
internal/rosa: libiconv artifact
...
For software that assumes glibc.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-02-21 14:35:32 +09:00
cat
0123bbee3d
internal/rosa: bc artifact
...
Required by the kernel.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-02-21 00:30:40 +09:00
cat
771adad603
internal/rosa: texinfo artifact
...
Yet another wheel reinvented by GNU. Required to shut some GNU programs up.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-02-21 00:28:21 +09:00
cat
178305cb22
internal/rosa: elfutils artifact
...
Required by the kernel.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-02-20 21:51:07 +09:00
cat
c2456e252c
internal/rosa: musl-obstack artifact
...
Yet another nonstandard glibc extension used by elfutils.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-02-20 21:34:59 +09:00
cat
273068b90c
internal/rosa: musl-fts artifact
...
Another nonstandard glibc extension used by elfutils.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-02-20 21:29:09 +09:00
cat
16b20e1d34
internal/rosa: argp-standalone artifact
...
Nonstandard glibc extension used by elfutils.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-02-20 21:19:34 +09:00
cat
b983917a6e
internal/rosa: expose kernel source
...
This also removes the unused kernel helper.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-02-20 18:45:42 +09:00
cat
e1b8f40add
cmd/mbf: cache dir via environment
...
This is much less cumbersome than dragging the flag around all the time.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-02-19 15:32:25 +09:00
cat
6df0d37c5a
cmd/mbf: Rosa OS container helper
...
This sets up a Rosa OS container with its shell as the initial process.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-02-19 15:12:16 +09:00
cat
1619b06541
internal/pkg: export layer promotion
...
This is a useful helper for external tooling.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-02-19 15:06:10 +09:00
cat
e335d99c6b
internal/pkg: export seccomp presets
...
This is useful for external tooling providing an execArtifact-like environment.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-02-19 14:30:31 +09:00
cat
d888d09b6d
cmd/mbf: explicit help command
...
Not having this command is counterintuitive.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-02-19 13:55:05 +09:00
cat
54176e7315
internal/rosa: use LTS kernel
...
For out-of-tree modules.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-02-19 01:22:08 +09:00
cat
3bfe99d3d8
internal/lockedfile: keep objects alive while stopping cleanups
...
Fixes https://go.dev/issues/74780 .
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-02-18 20:00:32 +09:00
cat
149dfbb6af
internal/rosa: tamago toolchain artifact
...
Currently used by the (wip) bootloader, might not make it into the final OS.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-02-18 19:26:42 +09:00
cat
58801b44d4
internal/rosa: util-linux artifact
...
This stuff will likely be implemented natively in the final system. For now, it is useful for debugging.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-02-18 14:21:59 +09:00
cat
e065bbf792
internal/rosa: procps artifact
...
Generally pretty useful, and required by util-linux test suite.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-02-18 14:07:36 +09:00
cat
a883e57e7d
internal/rosa: qemu artifact
...
This is still a quite minimal build. More features will be enabled as dependencies become available. The powerpc failure will be investigated if it is ever needed.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-02-17 17:34:25 +09:00
cat
ef9bd8ecbf
internal/rosa/go: 1.25.7 to 1.26.0
...
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-02-17 14:40:24 +09:00
cat
a40527dcb2
internal/pkg/ir: document reason for avoiding ident cache
...
This got brought up earlier today as a potential optimisation. This change documents why it is not viable, and hopefully clears up some performance implications of using IRDecoder, namely that its decoding costs do not amortise.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-02-17 14:38:42 +09:00
cat
88d9a6163e
container/initplace: return nil for createTemp error injection
...
This matches os package behaviour, and avoids adding the cleanup.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-02-17 14:16:54 +09:00
cat
47860b0387
internal/rosa/python: enable bzip2 and xz
...
This is required by qemu test suite.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-02-17 02:39:11 +09:00
cat
50c9da8b6d
internal/rosa/python: enable openssl
...
This is required by qemu test suite.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-02-17 02:01:57 +09:00
cat
16966043c7
internal/rosa: dtc artifact
...
Required by qemu.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-02-17 00:54:34 +09:00
cat
a3515a6ef5
internal/rosa: bison artifact
...
Required by dtc, which is required by qemu.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-02-17 00:32:04 +09:00
cat
7f05baab28
internal/rosa: flex artifact
...
Required by dtc, which is required by qemu.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-02-16 23:55:36 +09:00
cat
d4d5e631ae
internal/rosa: glib artifact
...
Unfortunately required by many programs, even non-gtk ones.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-02-16 19:01:02 +09:00
cat
1df3bcc3b9
nix: mount tmpfs on /tmp
...
This hopefully eliminates spurious test failures caused by /tmp running out of space.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-02-16 18:22:29 +09:00
cat
1809b53e52
internal/rosa/wayland: build-only tests patch
...
This patch last had any discussion eight months ago and is still not merged.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-02-16 13:55:34 +09:00
cat
67b2914c94
internal/rosa: meson helper
...
This is used by quite a few projects.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-02-16 13:49:13 +09:00
cat
74dee11822
internal/rosa/cmake: optional variant string
...
This improves consistency with other helpers and removes the usually unnecessary variant suffix.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-02-16 12:44:40 +09:00
cat
a58c9258cc
internal/rosa/pcre2: downgrade to 10.43
...
Latest release breaks assumptions made by GLib.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-02-16 01:51:38 +09:00
cat
710b164c91
internal/pkg: allow devel syscalls
...
This is required by the GLib test suite, and possibly others.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-02-16 01:46:28 +09:00
cat
93911d6015
internal/rosa: pcre2 artifact
...
Required by GLib.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-02-16 01:20:52 +09:00
cat
bb097536d4
internal/rosa: remove libcxxabi hack
...
This was caused by stack overflow which was resolved many commits ago.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-02-15 21:59:09 +09:00
cat
49b6526a38
internal/rosa: remove redundant meson flags
...
These have no effect.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-02-15 20:18:34 +09:00
cat
f9c31df94d
internal/rosa: fixed-size toolchain enum
...
This fits in an inlined uint32 IR value.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-02-15 00:58:14 +09:00
cat
4f570cc5c9
internal/pkg: expose extra methods to file
...
This is useful for FileArtifact processing another stream.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-02-15 00:45:37 +09:00
cat
5828631e79
internal/pkg: split off context common
...
For making these methods available to RContext.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-02-15 00:39:24 +09:00
cat
4f9f4875d7
internal/rosa/openssl: scale jobs based on cpu count
...
The hardcoded value of 256 causes test failures due to excessive load on some machines. Twice the cpu count appears to almost saturate all cpus without causing spurious failures.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-02-13 03:34:08 +09:00
cat
d49e654482
internal/rosa: kmod artifact
...
Required by the kernel.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-02-13 03:15:27 +09:00
cat
b746e352e5
internal/rosa/zstd: fix libdir
...
CMake implicitly changes it to lib64 which is not supported.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-02-13 03:14:30 +09:00
cat
c620d88dce
update README document
...
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-02-13 01:38:50 +09:00
cat
7cd14b8865
internal/rosa: squashfs-tools artifact
...
The Makefile is very poorly written, so had to be configured through the environment.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-02-12 02:33:33 +09:00
cat
3e18a4b397
internal/rosa: zstd artifact
...
Optional dependency of many programs, and generally useful to have around.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-02-12 01:48:21 +09:00
cat
1791b604b5
internal/rosa/make: configurable configure and install
...
This makes the helper useful for non-autotools build systems.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-02-12 01:19:40 +09:00
cat
59ff6db7ec
internal/rosa: toolchain type methods
...
This improves readability for toolchain-specific checks.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-02-11 18:18:11 +09:00
cat
430e099556
internal/rosa/stage0: add arm64 tarball
...
This took far longer to complete because the aarch64 development machine is much slower.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-02-11 17:57:54 +09:00
cat
17b64bb42c
internal/pkg: skip resolved cure errors
...
This significantly improves error resolution performance.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-02-11 17:50:18 +09:00
cat
dbb89dfb0f
internal/pkg: buffer tar reader
...
This significantly improves performance and is a good assumption since the primary use case of FileArtifact is over the network.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-02-11 02:08:44 +09:00
cat
de06ea2be4
internal/pkg: read buffer free list
...
Reader has a non-insignificant buffer that is worth saving as well.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-02-11 02:02:46 +09:00
cat
1ef7bedfb5
internal/rosa/toybox: do not assume bash location
...
For compatibility with Gentoo stage3 as bootstrap seed.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-02-11 01:36:41 +09:00
cat
05a828c474
internal/pkg: validate tar pathnames
...
TContext no longer validates FileArtifact ahead of time, validation outcome is instead determined after consuming the reader to EOF. All data must therefore be treated as untrusted input until the reader is closed.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-02-11 00:40:54 +09:00
cat
0061d11f93
internal/rosa: use self-hosted stage0
...
This removes the bootstrap dependency on Gentoo stage3 tarball.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-02-10 22:31:08 +09:00
cat
fb101a02f2
internal/rosa: self-host stage0 tarball
...
This replaces gentoo stage3 tarballs.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-02-10 21:22:46 +09:00
cat
3dbd67d113
internal/rosa: consistent stage0 paths
...
This makes using the gentoo stage3 as our stage0 compatible with Rosa OS stage0 tarballs.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-02-10 19:28:47 +09:00
cat
f511f0a9e9
internal/rosa: bzip2 artifact
...
For creating the stage0 tarball. Might be replaced by a custom artifact at some point.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-02-09 02:26:52 +09:00
cat
47995137b3
internal/rosa/perl: skip installing manpages
...
Perl manpages ignore prefix and gets installed to /. This change does not use the configure script because it is completely broken and specifying either "none" or a single space character (undocumented) has no effect.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-02-09 01:50:52 +09:00
cat
e1b8607101
internal/rosa: rename stage0 toolchain
...
This is stage0 relative to Rosa OS, and stage3 relative to the toolchain it is compiled on (Gentoo in this case). Referring to the toolchain itself as stage3 is counterintuitive and misleading.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-02-09 00:55:07 +09:00
cat
3d3bd45b95
internal/rosa/hakurei: 0.3.4 to 0.3.5
...
This removes all backport patches.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-02-09 00:27:45 +09:00
cat
9fb0b2452e
release: 0.3.5
...
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-02-09 00:11:20 +09:00
cat
a3e87dd0ef
container: ignore uninterpreted source
...
These can be set to anything by the distribution.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-02-08 19:39:39 +09:00
cat
90a38c0708
container: strip host-dependent opts in test cases
...
This change also improves plumbing for stripping options.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-02-08 19:35:20 +09:00
cat
39cc8caa93
container: add riscv64 constants
...
This target is unlikely to become viable any time soon.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-02-08 19:03:47 +09:00
cat
c4f64f7606
dist: include target in filename
...
Backport patch will be removed in the next release.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-02-08 16:03:41 +09:00
cat
a9e2a5e59f
internal/rosa/go: 1.25.6 to 1.25.7
...
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-02-08 15:42:58 +09:00
cat
9fb0722cdf
internal/rosa/go: alternative bootstrap path
...
For targets where the bootstrap toolchain is not available.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-02-08 15:04:03 +09:00
cat
2f3e323c46
internal/rosa/gnu: gcc toolchain artifact
...
This toolchain is hacked to pieces. It works well enough to bootstrap Go, though.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-02-08 01:00:15 +09:00
cat
1fc9c3200f
internal/rosa: libucontext artifact
...
Required by GCC on musl.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-02-07 22:33:12 +09:00
cat
096a25ad3a
cmd/mbf: dump IR of artifact presets
...
This exposes IR outside test cases, useful for verifying correctness of alternative IR emitters.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-02-07 17:21:43 +09:00
cat
ffd2f979fb
internal/pkg: skip duplicate early
...
This significantly increases IR generation performance.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-02-07 17:11:41 +09:00
cat
31a8cc9b5c
internal/rosa/gnu: binutils artifact
...
Appears to be required by GCC? It complains with stuff installed by LLVM.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-02-07 14:02:23 +09:00
cat
bb3f60fc74
internal/rosa/gnu: gmp, mpfr, mpc artifacts
...
Required by GCC.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-02-07 13:55:40 +09:00
cat
697c91e04d
internal/rosa/cmake: expose earlier build script
...
This allows for more flexible build setups.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-02-07 13:23:13 +09:00
cat
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
cat
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
cat
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
cat
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
cat
68aefa6d59
internal/rosa/openssl: fix paths
...
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-02-06 19:53:51 +09:00
cat
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
cat
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
cat
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
cat
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
cat
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
cat
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
cat
3c9f7cfcd0
internal/rosa: libpsl artifact
...
Required by curl.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-02-05 18:06:33 +09:00
cat
a3526b3ceb
internal/rosa: openssl artifact
...
Optional for many programs.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-02-05 18:03:18 +09:00
cat
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
cat
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
cat
e0c720681b
internal/pkg: standardise artifact IR
...
This should hopefully provide good separation between the artifact curing backend implementation and the (still work in progress) language. Making the IR parseable also guarantees uniqueness of the representation.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-02-05 08:24:09 +09:00
cat
f982b13a59
internal/pkg: improve error resolution
...
This was taking way too long for early failures.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-02-03 10:01:44 +09:00
cat
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
cat
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
cat
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