cat
dd6a480a21
cmd/mbf: handle flags in serve
...
This enables easier expansion of the protocol.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-04-17 20:14:09 +09:00
cat
3942272c30
internal/pkg: fine-grained cancellation
...
This enables a specific artifact to be targeted for cancellation.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-04-17 19:33:21 +09:00
cat
9036986156
cmd/mbf: optionally ignore reply
...
An acknowledgement is not always required in this use case. This change also adds 64 bits of connection configuration for future expansion.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-04-17 16:46:49 +09:00
cat
a394971dd7
cmd/mbf: do not abort cache acquisition during testing
...
This can sometimes fire during testing due to how short the test is.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-04-17 02:06:51 +09:00
cat
9daba60809
cmd/mbf: daemon command
...
This services internal/pkg artifact IR with Rosa OS extensions originating from another process.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-04-17 02:05:59 +09:00
cat
bcd79a22ff
cmd/mbf: do not open cache for IR encoding
...
This can now be allocated independently.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-04-17 01:04:39 +09:00
cat
0ff7ab915b
internal/pkg: move IR primitives out of cache
...
These are memory management and caching primitives. Having them as part of Cache is cumbersome and requires a temporary directory that is never used. This change isolates them from Cache to enable independent use.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-04-17 01:02:13 +09:00
cat
823575acac
cmd/mbf: move info command
...
This is cleaner with less shared state.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-04-16 17:43:52 +09:00
cat
136bc0917b
cmd/mbf: optionally open cache
...
Some commands do not require the cache. This change also makes acquisition of locked cache cancelable.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-04-16 15:59:34 +09:00
cat
d6b082dd0b
internal/rosa/ninja: bootstrap with verbose output
...
This otherwise outputs nothing, and appears to hang until the (fully single-threaded) bootstrap completes.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-04-15 22:19:05 +09:00
cat
89d6d9576b
internal/rosa/make: optionally format value as is
...
This enables correct formatting for awkward configure scripts.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-04-15 22:17:58 +09:00
cat
fafce04a5d
internal/rosa/kernel: firmware 20260309 to 20260410
...
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-04-15 22:16:47 +09:00
cat
5d760a1db9
internal/rosa/kernel: 6.12.80 to 6.12.81
...
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-04-15 22:16:30 +09:00
cat
d197e40b2a
internal/rosa/python: mako 1.3.10 to 1.3.11
...
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-04-15 22:21:54 +09:00
cat
2008902247
internal/rosa/python: packaging 26.0 to 26.1
...
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-04-15 22:15:18 +09:00
cat
30ac985fd2
internal/rosa/meson: 1.10.2 to 1.11.0
...
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-04-15 22:14:52 +09:00
cat
e9fec368f8
internal/rosa/nss: 3.122 to 3.122.1
...
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-04-15 22:13:45 +09:00
cat
46add42f58
internal/rosa/openssl: disable building docs
...
These take very long and are never used in the Rosa OS environment.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-04-15 22:13:18 +09:00
cat
377b61e342
internal/rosa/openssl: do not double test job count
...
The test suite is racy, this reduces flakiness.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-04-15 22:12:36 +09:00
cat
520c36db6d
internal/rosa: respect preferred job count
...
This discontinues use of nproc, and also overrides detection behaviour in ninja.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-04-15 18:49:36 +09:00
cat
3352bb975b
internal/pkg: job count in container environment
...
This exposes preferred job count to the container initial process.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-04-15 15:49:21 +09:00
cat
f7f48d57e9
internal/pkg: pass impure job count
...
This is cleaner than checking cpu count during cure, it is impossible to avoid impurity in both situations but this is configurable.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-04-15 15:36:44 +09:00
cat
5c2345128e
internal/rosa/llvm: autodetect stage0 target
...
This is fine, now that stages beyond stage0 have explicit target.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-04-14 03:10:26 +09:00
cat
78f9676b1f
internal/rosa/llvm: centralise llvm source
...
This avoids having to sidestep the NewPackage name formatting machinery to take the cache fast path.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-04-14 03:03:06 +09:00
cat
5b5b676132
internal/rosa/cmake: remove variant
...
This has no effect outside formatting of name and is a remnant of the old llvm helpers.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-04-14 02:57:47 +09:00
cat
78383fb6e8
internal/rosa/llvm: migrate libclc
...
This eliminates newLLVMVariant.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-04-14 02:40:13 +09:00
cat
e97f6a393f
internal/rosa/llvm: migrate runtimes and clang
...
This eliminates most newLLVM family of functions.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-04-14 02:07:13 +09:00
cat
eeffefd22b
internal/rosa/llvm: migrate compiler-rt helper
...
This also removes unused dependencies.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-04-14 01:12:56 +09:00
cat
ac825640ab
internal/rosa/llvm: migrate musl
...
This removes the pointless special treatment given to musl.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-04-14 00:35:42 +09:00
cat
a7f7ce1795
internal/rosa/llvm: migrate compiler-rt
...
The newLLVM family of functions predate the package system. This change migrates compiler-rt without changing any resulting artifacts.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-04-14 00:19:33 +09:00
cat
38c639e35c
internal/rosa/llvm: remove project/runtime helper
...
More remnants from early days, these are not reusable at all but that was not known at the time.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-04-14 00:03:23 +09:00
cat
b2cb13e94c
internal/rosa/llvm: centralise patches
...
This enables easier reuse of the patchset.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-04-13 23:52:44 +09:00
cat
46f98d12d6
internal/rosa/llvm: remove conditional flags in helper
...
The llvm helper is a remnant from very early days, and ended up not being very useful, but was never removed. This change begins its removal, without changing the resulting artifacts for now.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-04-13 23:38:11 +09:00
cat
503c7f953c
internal/rosa/x: libpciaccess artifact
...
Required by userspace gpu drivers.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-04-13 19:04:38 +09:00
cat
15c9f6545d
internal/rosa/perl: populate anitya identifiers
...
These are also tracked by Anitya.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-04-13 18:44:43 +09:00
cat
83b0e32c55
internal/rosa: helpers for common url formats
...
This cleans up call site of NewPackage.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-04-13 18:02:57 +09:00
cat
eeaf26e7a2
internal/rosa: wrapper around git helper
...
This results in much cleaner call site for the majority of use cases.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-04-13 15:20:51 +09:00
cat
b587caf2e8
internal/rosa: assume file source is xz-compressed
...
XZ happens to be the only widely-used format that is awful to deal with, everything else is natively supported.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-04-13 15:07:30 +09:00
cat
f1c2ca4928
internal/rosa/mesa: libdrm artifact
...
Required by mesa.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-04-13 03:27:09 +09:00
cat
0ca301219f
internal/rosa/python: pyyaml artifact
...
Mesa unfortunately requires this horrible format.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-04-13 03:18:47 +09:00
cat
e2199e1276
internal/rosa/python: mako artifact
...
This unfortunately pulls in platform-specific package.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-04-13 03:11:38 +09:00
cat
86eacb3208
cmd/mbf: checksum command
...
This computes and encodes sha384 checksum of data streamed from standard input.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-04-13 03:09:21 +09:00
cat
8541bdd858
internal/rosa: wrap per-arch values
...
This is cleaner syntax in some specific cases.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-04-13 02:59:55 +09:00
cat
46be0b0dc8
internal/rosa/nss: buildcatrust 0.4.0 to 0.5.1
...
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-04-13 02:18:21 +09:00
cat
cbe37e87e7
internal/rosa/python: pytest 9.0.2 to 9.0.3
...
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-04-13 02:18:02 +09:00
cat
66d741fb07
internal/rosa/python: pygments 2.19.2 to 2.20.0
...
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-04-13 02:13:04 +09:00
cat
0d449011f6
internal/rosa/python: use predictable URLs
...
This is much cleaner and more maintainable than specifying URL prefix manually. This change also populates Anitya project identifiers.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-04-13 02:08:22 +09:00
cat
46428ed85d
internal/rosa/python: url pip wheel helper
...
This enables a cleaner higher-level helper.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-04-13 01:59:28 +09:00
cat
081d6b463c
internal/rosa/llvm: libclc artifact
...
This is built independently of llvm build system to avoid having to build llvm again.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-04-12 22:57:04 +09:00
cat
11b3171180
internal/rosa/glslang: glslang artifact
...
Required by mesa.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-04-12 22:34:17 +09:00
cat
adbb84c3dd
internal/rosa/glslang: spirv-tools artifact
...
Required by glslang.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-04-12 22:27:49 +09:00
cat
1084e31d95
internal/rosa/glslang: spirv-headers artifact
...
Required by spirv-tools.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-04-12 22:16:29 +09:00
cat
27a1b8fe0a
internal/rosa/mesa: libglvnd artifact
...
Required by mesa.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-04-12 21:27:30 +09:00
cat
b2141a41d7
internal/rosa/dbus: xdg-dbus-proxy artifact
...
This is currently a hakurei runtime dependency, but will eventually be removed.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-04-12 19:41:49 +09:00
cat
c0dff5bc87
internal/rosa/gnu: gcc set with-multilib-list as needed
...
This breaks riscv64.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-04-12 18:03:45 +09:00
cat
04513c0510
internal/rosa/gnu: gmp explicit CC
...
The configure script is hard coded to use gcc without fallback on riscv64.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-04-12 17:25:15 +09:00
cat
28ebf973d6
nix: add sharefs supplementary group
...
This works around vfs inode file attribute race.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-04-11 23:28:18 +09:00
cat
41aeb404ec
internal/rosa/hakurei: 0.3.7 to 0.4.0
...
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-04-11 10:53:29 +09:00
cat
0b1009786f
release: 0.4.0
...
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-04-11 10:49:43 +09:00
cat
b390640376
internal/landlock: relocate from package container
...
This is not possible to use directly, so remove it from the public API.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-04-10 23:56:45 +09:00
cat
ad2c9f36cd
container: unexport PR_SET_NO_NEW_PRIVS wrapper
...
This is subtle to use correctly. It also does not make sense as part of the container API.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-04-10 23:45:51 +09:00
cat
67db3fbb8d
check: use encoding interfaces
...
This turned out not to require specific treatment, so the shared interfaces are cleaner.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-04-10 22:11:53 +09:00
cat
560cb626a1
hst: remove enablement json adapter
...
The go116 behaviour of built-in new function makes this cleaner.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-04-10 20:47:30 +09:00
cat
c33a6a5b7e
hst: optionally reject insecure options
...
This prevents inadvertent use of insecure compatibility features.
Closes #30 .
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-04-10 19:34:02 +09:00
cat
952082bd9b
internal/rosa/python: 3.14.3 to 3.14.4
...
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-04-10 02:38:22 +09:00
cat
24a9b24823
internal/rosa/openssl: 3.6.1 to 3.6.2
...
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-04-10 02:38:02 +09:00
cat
c2e61e7987
internal/rosa/libcap: 2.77 to 2.78
...
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-04-10 02:37:04 +09:00
cat
86787b3bc5
internal/rosa/tamago: 1.26.1 to 1.26.2
...
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-04-10 02:31:57 +09:00
cat
cdfcfe6ce0
internal/rosa/go: 1.26.1 to 1.26.2
...
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-04-10 02:18:27 +09:00
cat
68a2f0c240
internal/rosa/llvm: remove unused field
...
This change also renames confusingly named flags field and corrects its doc comment.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-04-10 02:13:26 +09:00
cat
7319c7adf9
internal/rosa/llvm: use latest version on arm64
...
This also removes arch-specific patches because they were not useful.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-04-10 01:07:25 +09:00
cat
e9c890cbb2
internal/rosa/llvm: enable cross compilation
...
This now passes the test suite.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-04-10 00:59:14 +09:00
cat
6f924336fc
internal/rosa/llvm: increase stack size
...
Some aarch64 regression tests fail intermittently on the default size.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-04-10 00:56:51 +09:00
cat
bd88f10524
internal/rosa/llvm: 22.1.2 to 22.1.3
...
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-04-09 17:36:23 +09:00
cat
e34e3b917e
internal/kobject: process uevent message
...
This deals with environment variables generally present in every message.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-04-08 18:00:04 +09:00
cat
b0ba165107
cmd/sharefs: group-accessible permission bits
...
This works around the race in vfs via supplementary group.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-04-08 16:14:47 +09:00
cat
351d6c5a35
cmd/sharefs: reproduce vfs inode file attribute race
...
This happens in the vfs permissions check only and stale data appears to never reach userspace.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-04-08 15:51:36 +09:00
cat
f23f73701c
cmd/mbf: optional host abstract
...
This works around kernels with Landlock LSM disabled. Does not affect cure outcome.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-04-07 18:15:49 +09:00
cat
876917229a
internal/rosa/go: enable riscv64 bootstrap path
...
This is quite expensive, but no other option, unfortunately.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-04-07 18:11:42 +09:00
cat
0558032c2d
container: do not set static deadline
...
This usually ends up in the buffer, or completes well before the deadline, however this can still timeout on a very slow system.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-04-07 17:00:20 +09:00
cat
c61cdc505f
internal/params: relocate from package container
...
This does not make sense as part of the public API, so make it internal.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-04-07 16:37:44 +09:00
cat
062edb3487
container: remove setup pipe helper
...
The API forces use of finalizer to close the read end of the setup pipe, which is no longer considered acceptable. Exporting this as part of package container also imposes unnecessary maintenance burden.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-04-07 16:05:33 +09:00
cat
e4355279a1
all: optionally forbid degrading in tests
...
This enables transparently degradable tests to be forced on in environments known to support them.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-04-07 15:22:52 +09:00
cat
289fdebead
container: transparently degrade landlock in tests
...
Explicitly requiring landlock in tests will be supported in a future change.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-04-07 15:03:48 +09:00
cat
9c9e190db9
ldd: remove timeout
...
The program generally never blocks, and it is more flexible to leave it up to the caller to set a timeout.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-04-07 14:49:20 +09:00
cat
d7d42c69a1
internal/pkg: transparently degrade landlock in tests
...
This does not test package container, so should transparently cope with Landlock LSM being unavailable.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-04-07 14:44:34 +09:00
cat
c758e762bd
container: skip landlock on hostnet
...
This overlaps with net namespace, so can be skipped without degrading security.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-04-07 14:36:44 +09:00
cat
10f8b1c221
internal/pkg: optional landlock LSM
...
The alpine linux riscv64 kernel does not enable Landlock LSM, and kernel compilation is not yet feasible.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-04-07 12:44:07 +09:00
cat
6907700d67
cmd/dist: set hsu tar header mode bits
...
This has no effect, but is nice to have.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-04-06 23:37:38 +09:00
cat
0243f3ffbd
internal/rosa/stage0: add riscv64 tarball
...
This had not yet passed all test suites because emulator is prohibitively slow.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-04-06 13:57:43 +09:00
cat
cd0beeaf8e
internal/uevent: optionally pass UUID during coldboot
...
This enables rejection of non-coldboot synthetic events.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-04-06 12:42:47 +09:00
cat
a69273ab2a
cmd/dist: replace dist/release.sh
...
This is much more robust than a shell script.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-04-05 23:58:08 +09:00
cat
4cd0f57e48
dist: remove redundant cleanup
...
This breaks on shells that do not evaluate pathnames.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-04-05 16:16:37 +09:00
cat
33a0e6c01b
hst: conditionally skip root remount
...
This enables the writable root overlay use case.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-04-05 14:04:21 +09:00
cat
d58f5c7590
dist: destroy workdir on exist
...
This no longer relies on the hermetic build system to clean up.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-04-05 13:32:16 +09:00
cat
1da992e342
dist: prefix from environment
...
These are baked in, so make them configurable for the build.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-04-05 13:11:44 +09:00
cat
9641805ec2
container/init: ignore finished process
...
This is not considered an error, if the process finishes while the signal is being delivered.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-04-05 00:38:33 +09:00
cat
0738f4889a
internal/rosa/gnu: fetch mpc source via git
...
Eliminates the xz dependency.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-04-05 00:35:15 +09:00
cat
7de3cfe221
internal/rosa/netfilter: fetch iptables source via git
...
Eliminates the xz dependency.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-04-05 00:19:40 +09:00
cat
8b0648dd5d
internal/rosa/netfilter: fetch libnftnl source via git
...
Eliminates the xz dependency.
Signed-off-by: Ophestra <cat@gensokyo.uk >
2026-04-05 00:14:45 +09:00