cat
6fdd800b2b
internal/pkg: check filtered error
...
This avoids filtering some unrelated os.ErrExist.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-03-04 17:43:17 +09:00
cat
94e3debc63
internal/pkg: write per-artifact logs
...
This is currently only used by execArtifact. A later patch will add additional logging facilities.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-03-04 17:27:54 +09:00
cat
ea87664a75
internal/pkg: cancel on scanner error
...
This avoids discarding output thus appearing unresponsive.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-03-03 22:20:43 +09:00
cat
04d9984da0
internal/rosa/meson: migrate to helper interface
...
This change also removes some unused options.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-03-02 14:07:16 +09:00
cat
145ccd1c92
remove .github
...
This is no longer needed after discontinuation of the Microsoft GitHub mirror.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-03-02 13:46:24 +09:00
cat
c5089cad78
cmd: remove hpkg
...
This proof-of-concept was abandoned long ago. Its test suite is flaky, heavy on I/O and does not increase test coverage. This change fully removes hpkg and supporting code.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-03-02 13:42:49 +09:00
cat
c83905f311
internal/rosa/cmake: enable check
...
CMake was packaged very early, before the current infrastructure existed to support this. This change patches out broken tests and enables the test suite.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-03-02 13:12:20 +09:00
cat
b7cc14f296
internal/rosa/cmake: 4.2.1 to 4.2.3
...
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-03-02 13:09:21 +09:00
cat
57e1e5141d
internal/rosa/ninja: remove cmake dependency
...
This does not actually depend on cmake. This is left over from very early on.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-03-02 13:08:18 +09:00
cat
1440195c3f
internal/rosa/llvm: pass patches via helper
...
This was missed while migrating LLVM to the new interface.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-03-02 01:30:14 +09:00
cat
cc60e0d15d
internal/rosa/make: migrate to helper interface
...
This also updates all affected artifacts to use new behaviour.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-03-02 01:24:50 +09:00
cat
9deaf853f0
internal/rosa/cmake: migrate to helper interface
...
This change also removes some unused options.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-03-01 23:50:22 +09:00
cat
2baa9df133
internal/rosa: general helper abstraction
...
This greatly increases code sharing and makes implementations far simpler.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-03-01 23:39:43 +09:00
cat
51d3df2419
internal/rosa/make: split build and check
...
Doing these together breaks far too many buggy makefiles.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-03-01 14:41:34 +09:00
cat
1d0fcf3a75
internal/rosa/perl: migrate to make helper
...
This uses the new configure helper behaviour.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-03-01 10:45:25 +09:00
cat
e92971e0c2
internal/rosa/make: alternative configure script
...
This enables using the configure helper with non-autotools configure scripts.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-03-01 10:42:20 +09:00
cat
6159c74e96
internal/rosa/toybox: migrate to make helper
...
A previous change caused world rebuild, so it is a good time to do this.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-03-01 10:02:36 +09:00
cat
2a34a269d0
internal/rosa: stricter cure-script options
...
This change also moves .cure-script out of /system/bin.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-02-28 23:29:22 +09:00
cat
ef130adb27
internal/rosa/kernel: early serial
...
Having serial driver before initramfs is helpful.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-02-28 23:22:18 +09:00
cat
5694e528e6
cmd/mbf: use standalone musl in container
...
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-02-28 23:12:13 +09:00
cat
b4e82e68a7
internal/rosa/images: initramfs via gen_init_cpio
...
This is much cleaner than hacking around the cpio tool.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-02-28 23:04:58 +09:00
cat
d041fee791
internal/rosa: export musl
...
This can be useful externally.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-02-28 22:49:54 +09:00
cat
cefd02e960
internal/rosa: gen_init_cpio artifact
...
This works much better than hacking around the toybox cpio implementation.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-02-28 21:19:03 +09:00
cat
ad8f799703
container/std: rename seccomp types
...
Aliases will be kept until 0.4.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-02-28 20:48:30 +09:00
cat
c74c269b66
container: use /proc/self/exe directly
...
This is a more reliable form of pathname to self and also cheaper than os.Executable.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-02-28 20:44:44 +09:00
cat
4b0cce4db5
ldd: treat nil pathname as self
...
This is a helpful shortcut for examining a test program's ldd output.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-02-28 20:37:01 +09:00
cat
cd9b534d6b
container: improve documentation
...
This change removes inconsistencies collected over time in this package.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-02-28 20:18:30 +09:00
cat
84e6922f30
cmd/mbf: optionally set SCHED_IDLE
...
None of the other supported policies are applicable here.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-02-26 16:50:35 +09:00
cat
c16725a679
internal/pkg: set container scheduling policy
...
This is not as necessary as it was for nix, since internal/pkg only unblocks exclusive artifacts one at a time. Still, this is useful when running alongside an unprivileged music player which cannot set itself to a higher priority.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-02-26 16:35:23 +09:00
cat
a6160cd410
container: set scheduling policy
...
This is thread-directed so cannot be done externally. The glibc wrapper exposes this behaviour so most multithreaded programs using this is straight up incorrect.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-02-26 16:29:47 +09:00
cat
826347fe1f
internal/rosa: expose standalone musl
...
This is useful in the system image and might also be used elsewhere.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-02-26 14:21:32 +09:00
cat
085eaed7ba
cmd/earlyinit: early /dev/ and io setup
...
This establishes an environment where devtmpfs is mounted, and if the kernel fails to set up console, 1 and 2 is pointed at /dev/kmsg.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-02-25 16:37:42 +09:00
cat
37d368a7f9
internal/rosa: initramfs artifact
...
This constructs a single-program initramfs and populates /dev/null so the runtime does not throw if the kernel fails to set up console.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-02-25 16:31:52 +09:00
cat
2aeac7f582
internal/rosa: fakeroot artifact
...
XSLT is untamable and extremely unpleasant to work with. This patches out the broken docs for now in the interest of getting some work done.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-02-25 01:20:31 +09:00
cat
2b93631f52
cmd/mbf: use stage2 musl when possible
...
This avoids pulling in the stage3 toolchain when it is not requested.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-02-25 01:05:49 +09:00
cat
b3749aaf0b
internal/rosa/kernel: arm64 configuration
...
These new dependencies do not apply to amd64, but adding them anyway in case they are needed some day.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-02-24 23:57:28 +09:00
cat
c8bb88cced
internal/rosa: libxslt artifact
...
For building documentation that cannot be turned off.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-02-24 23:41:54 +09:00
cat
f7f80f95b9
internal/rosa/perl: various perl module artifacts
...
This change includes helpers for both Makefile.PL and Build.PL as well as various modules.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-02-24 23:09:55 +09:00
cat
6ea6c794fb
internal/rosa/gnu: build single-binary coreutils
...
This enables more fine-grained toybox replacements.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-02-24 16:15:15 +09:00
cat
6c2da4c4b2
internal/rosa: libcap artifact
...
Required by fakeroot. Quite refreshing to package a non-autotools project.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-02-24 16:02:54 +09:00
cat
90f915a708
internal/rosa/kernel: disable DEBUG_STACK_USAGE
...
This is no longer needed.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-02-24 14:10:37 +09:00
cat
a5fea4686e
internal/rosa: make toolchain optional
...
The final Rosa OS image does not need the toolchain.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-02-23 18:07:38 +09:00
cat
ae8c365c0f
internal/rosa/hakurei: optionally use embedded source
...
This builds hakurei in Rosa OS between releases.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-02-23 17:56:16 +09:00
cat
485db515f7
internal/pkg/ir: raise string limit to 16 MiB
...
A string holds "current" hakurei source code. For now the compressed tarball is 4.9 MiB long.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-02-23 15:12:19 +09:00
cat
ec7ee0789e
internal/rosa/fuse: fix init script path
...
The default value is quite misleading.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-02-23 14:39:36 +09:00
cat
42c93a57a4
internal/rosa: fix patches
...
Turns out alacritty clobbers output. It turns tabs into spaces and also removes whitespace-only lines for some reason.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-02-23 02:12:09 +09:00
cat
b1b14810ac
internal/rosa/kernel: increase audio powersave timeout
...
This feature is incredibly annoying as some amplifiers take time to wake up, and causes a non-insignificant amount of audio to be dropped.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-02-22 21:28:39 +09:00
cat
de117ef365
internal/rosa: ncurses artifact
...
For running menuconfig.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-02-22 18:07:24 +09:00
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