lacs-project / lacs-project/sysknife

Record a current Fedora Atomic validation run

Open
#217 1 comment 0 reactions 0 assignees View on GitHub
blocked enhancement help wanted tedious
Dominant language
Rust
Stars
12
Forks
19
Avg merge
18h 57m
Merged PRs (30d)
116

Description

> **Blocked on #301 as of 2026-08-24.** `make install` does not complete on Fedora Atomic: the rpm-ostree branch in `provision.sh` never overrides `HELPERS`, which defaults to the read-only `/usr/lib/sysknife`. It also fails halfway, leaving a systemd unit and twelve sudo grants for helpers that are not there. #301 is a maintainer decision about where privileged helpers live on an immutable-root host, and nothing here can be recorded until it lands. This issue was listed in This Week in Rust 665; please do not spend time on it yet.

Ubuntu 22.04, 24.04 and 26.04 each have a live-VM story-suite run at 79/79, each with a committed replay twin that reproduces the run offline. Fedora Atomic sits at "Experimental" in [docs/distro-support.md](https://github.com/lacs-project/sysknife/blob/main/docs/distro-support.md) for one reason: nobody has run it lately.

The code is already there. The rpm-ostree, Flatpak and toolbox action families are implemented, `DistroId::is_supported()` returns true from Atomic 41 onward (`crates/sysknife-core/src/distro.rs:250`), and the 54 atomic stories exist. The harness is `tests/e2e/atomic-vm.sh`. What is missing is somebody with the hardware.

## Deliverable

- A recorded cassette from a current Fedora Atomic release.
- A replay twin that reproduces it with zero misses and `cassette_audit.verdict == "ok"`.
- The matching row in `docs/distro-support.md` moved from Experimental to Validated.

That last one is the point. The support matrix reports by evidence rather than by family name, so the row does not move until a run backs it.

## What you need

A Fedora Atomic machine, or a host that can run the VM. The run takes a while and mostly watches itself.

## Before you start

Comment here first. The recording needs provider credentials, and the rate limit is on tokens rather than requests, so pacing matters. Easier to sort out up front than halfway through a run.

## Difficulty

`tedious`. Long-running and mechanical, with no deep code knowledge required.

## Getting started

[CONTRIBUTING.md](https://github.com/lacs-project/sysknife/blob/main/CONTRIBUTING.md) has the build and test commands. No CLA and no copyright waiver. The project is MIT.

Contributor guide

Open the contributing guide

Research direction

First confirm that blocked issue #301 has landed, then read CONTRIBUTING.md and run the Fedora Atomic workflow in tests/e2e/atomic-vm.sh with the required provider credentials. Record a current cassette, create its replay twin, and verify zero misses with cassette_audit.verdict == "ok". Finish by updating the Fedora Atomic row in docs/distro-support.md from Experimental to Validated.

Written by the indexing model from the issue text.

Assessment

Tech stack
bash, fedora, linux, rust
Domain
documentation, operating-systems, testing-qa
Issue type
Documentation
Difficulty
3/5
Estimated time
1-2 days
Activity status
Active
Clarity
Clearly specified
Newbie friendliness
52/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.