Repository navigation
v0.1.7 — LustLess (parity audit, real-model proof, spool fallback)
Linux accountability client (Covenant Eyes-compatible, clean-room reimplementation).
Install
curl -fsSL https://github.com/HenryGetz/LustLess/releases/latest/download/install.sh | sudo bashDetects your distro, downloads the matching package, installs it with the
native tool, starts the agent — and the sign-in window opens. Log in there.
Other ways:
| Distro | File | Command |
|---|---|---|
| Debian / Ubuntu / Zorin / Mint | lustless_0.1.7_amd64.deb |
sudo apt install ./lustless_0.1.7_amd64.deb |
| Fedora | lustless-0.1.7-1.x86_64.rpm |
sudo dnf install ./lustless-0.1.7-1.x86_64.rpm |
| Bazzite / immutable Fedora | lustless-0.1.7-1.x86_64.rpm |
sudo rpm-ostree install ./lustless-0.1.7-1.x86_64.rpm && reboot |
| Arch / EndeavourOS / SteamOS | lustless-0.1.7-1-x86_64.pkg.tar.zst |
sudo pacman -U ./lustless-0.1.7-1-x86_64.pkg.tar.zst |
| Alpine | lustless-0.1.7-r0.apk |
sudo apk add --allow-untrusted ./lustless-0.1.7-r0.apk |
Uninstall: sudo apt purge lustless (or the dnf/rpm-ostree/pacman/apk
equivalent) — restores the DNS, browser-policy and polkit state exactly as
found.
What's new
Parity work, driven by a subsystem-by-subsystem audit now recorded in
docs/impl/PARITY.md (Windows surface → Linux status → evidence → gaps).
- The spool consumer survives a missing inotify instance. Previously the
classifier exited (Too many open files) on a machine at the per-user
inotify limit; it now falls back to polling with the same semantics — only
newly-ready folders, and renames still reported asRenamed(matched by
folder inode). All 28 capture tests pass, including the ones the host limit
was breaking. - The real CE classifier bundle is proven end to end: decrypt → load
(threshold 0.467 from the calibration artifact) → score a 640×480 capture →
{"app":"firefox","score":0.0,"flagged":false,"scored_windows":1}. - Wayland capture is characterised, not hand-waved: the portal backend is
implemented but cannot ship on this baseline — thepipewirecrate's spa
bindings need libspa newer than Ubuntu 22.04 / Zorin 17 provides, and a
binary linked against a newer libspa would not load on the target. Named as
gap 0 with the work required (dlopen-style bindings or a crate pin).
Everything from 0.1.6 (branded sign-in window, Zorin Lite verification), 0.1.5
(DNS that stays alive) and 0.1.4 (agent main loop) is unchanged.