aboutsummaryrefslogtreecommitdiffhomepage
AgeCommit message (Collapse)Author
2026-04-03internal/rosa: connman artifactOphestra
Will be gradually replaced with a native implementation. Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-04-03internal/rosa/ncurses: also build dynamic libraryOphestra
GNU readline breaks without this. Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-04-03internal/rosa/gnu: readline artifactOphestra
Nice to have library for command line programs. Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-04-03internal/rosa/gnu: gnutls artifactOphestra
Incredibly ugly and expensive package, but unfortunately required by some packages. Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-04-03internal/rosa: libunistring artifactOphestra
Required by GnuTLS. Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-04-02cmd/mbf: pick up $TERMOphestra
This improves behaviour of some programs. Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-04-02internal/pkg: pick up $TERM if attaching stdinOphestra
This improves behaviour of some programs. Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-04-02internal/rosa: libev artifactOphestra
Required by gnutls. Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-04-02internal/rosa/git: determine reporting name from urlOphestra
This is generally correct, and is a lot cleaner to call. Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-04-02internal/rosa: nettle3 artifactOphestra
Removed after all packages upgrade for nettle 4. Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-04-02internal/rosa/p11: explicitly enable libffiOphestra
Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-04-01internal/rosa: libtasn1 artifactOphestra
Optional dependency of p11-kit. Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-04-01internal/rosa: p11-kit artifactOphestra
Another package distributed in xz only. This is fetched from the git remote directly to avoid XZ Utils. Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-04-01internal/rosa/git: recursively clone submodulesOphestra
There is generally no reason to disable this, so it was not made optional. Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-04-01internal/rosa/pkg-config: generate build systemOphestra
This unfortunately pulls automake, libtool and their dependencies into stage2. Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-03-31internal/rosa/gnu: mpc 1.3.1 to 1.4.0Ophestra
This package now unfortunately switched to xz as well. Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-03-31internal/rosa: iptables artifactOphestra
This also pulls in netlink libraries from netfilter project. Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-03-31internal/rosa: use type P in helper interfaceOphestra
This is easier to type and serialises correctly. Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-03-31internal/rosa: libmd and libbsd artifactsOphestra
These provide headers that are provided by glibc but not musl. Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-03-31internal/rosa: dbus artifactOphestra
Unfortunate ugly indirect dependency we cannot yet get rid of. Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-03-31internal/rosa/meson: disallow downloadOphestra
This will fail and waste time on KindExec, and cause nondeterminism in KindExecNet. Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-03-31internal/uevent: integrate error handling in event loopOphestra
There are many subtleties when recovering from errors in the event loop, and coldboot requires internals to drain the receive buffer as synthetic uevents are being arranged. Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-03-30internal/netlink: optional recvmsg without netpollOphestra
For draining the socket receive buffer. Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-03-30internal/uevent: synthetic events for coldbootOphestra
This causes the kernel to regenerate events that happened before earlyinit started. Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-03-30all: use filepathOphestra
This makes package check portable, and removes nonportable behaviour from package pkg, pipewire, and system. All other packages remain nonportable due to their nature. No latency increase was observed due to this change on amd64 and arm64 linux. Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-03-30internal/uevent: separate recvmsg helperOphestra
This enables messages to be received separately. Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-03-30internal/netlink: set receive buffer sizeOphestra
This is done by both systemd sd-device and AOSP ueventd to improve robustness. Rosa OS will still handle ENOBUFS via coldboot but a big buffer should mitigate this as well. Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-03-30internal/uevent: handle state divergenceOphestra
This requires the caller to arrange for a coldboot to happen, some time after this error is encountered, and to resume event processing. Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-03-29internal/netlink: switch to recvmsg/sendmsgOphestra
These are more flexible than recvfrom/sendto. Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-03-28cmd: document Rosa OS programsOphestra
The earlyinit and mbf program are not covered by the compatibility promise, so specify that here. Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-03-28cmd/hsu: alternative hsurc path for Rosa OSOphestra
Rosa OS does not have /etc. Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-03-28cmd/hsu: document hsurc format and internalsOphestra
This was previously only documented via an unexported function. Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-03-28cmd/hakurei: document stable behaviourOphestra
These are undocumented anywhere else and is required by tools invoking hakurei. Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-03-28cmd/hakurei: rename app to runOphestra
The run command was a legacy holdover from very early days and is only useful for testing and demonstration these days. This change also renames it to exec. Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-03-28cmd/hakurei: remove linkname directiveOphestra
This used to be a function that did much more, and was later relocated to another package and exported. Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-03-28internal/uevent: consume kernel-originated eventsOphestra
These are not possible to cover outside integration vm. Extreme care is required when dealing with this method, so keep it simple. Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-03-28internal/uevent: exclusive socket accessOphestra
This is a much simplified mutex, since blocking is not required. Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-03-28internal/uevent: decode uevent messagesOphestra
The wire format and behaviour is entirely undocumented. This is implemented by reading lib/kobject_uevent.c, with testdata collected from the internal/rosa kernel. Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-03-28internal/uevent: nontrivial errorsOphestra
These errors are best represented as JSON. Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-03-27internal/uevent: recoverable errorsOphestra
This runs in the Rosa OS init, so recover as much as possible, as otherwise it is likely to require a full system reboot to resume event processing. The caller is responsible for reporting the error. Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-03-27internal/uevent: wrap netlink socketOphestra
Unfortunately these messages do not have the same format as rtnetlink. Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-03-27internal/uevent: kobject_action lookupOphestra
This is encoded as part of kobject uevent message headers. Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-03-27internal/netlink: export generic connectionOphestra
This enables abstractions around some families to be implemented in a separate package. Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-03-27internal/rosa/kernel: 6.12.77 to 6.12.78Ophestra
Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-03-26internal/rosa: key-value typeOphestra
This type is used very frequently. The new type is much easier to type and can receive helper methods eventually if needed. Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-03-26internal/rosa: set PYTHONUNBUFFERED=1Ophestra
Some python tools try to be clever and buffers output. This makes the build process appear to hang and is quite frustrating. Instead of trying to address this on a case-by-case basis, this is turned off globally for the interpreter. Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-03-26cmd/mbf: optionally enter cure containerOphestra
This is very useful for troubleshooting failing tests and such. The ephemeral state is cleaned up by internal/pkg. Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-03-26internal/pkg: enter exec containerOphestra
This enables much easier troubleshooting of failing cures. Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-03-26cmd/mbf: retain session by defaultOphestra
This almost never make sense to be turned off. Signed-off-by: Ophestra <cat@gensokyo.uk>
2026-03-26internal/pkg: collection helper-artifactOphestra
This was moved from internal/rosa because it is considered generally useful. Signed-off-by: Ophestra <cat@gensokyo.uk>