Add project post-mortem documenting why Yino is being abandoned
The core finding: Hyprland is too fast-moving for any traditional stable distro. Debian removed it from Trixie, Fedora retired it from F43, and bridging the gap requires a full-time packaging effort that overshadows the actual value proposition of a curated desktop experience. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
parent
0453470cde
commit
6c6a82937f
169
CONCLUSIONS.md
Normal file
169
CONCLUSIONS.md
Normal file
@ -0,0 +1,169 @@
|
||||
# Conclusions: Yino Project Post-Mortem
|
||||
|
||||
> Written: 2026-02-21
|
||||
> Status: Project abandoned
|
||||
> Duration: ~1 week (2026-02-15 to 2026-02-21)
|
||||
|
||||
## What Yino was
|
||||
|
||||
Yino ("Yino Is Not Omarchy") was an attempt to port [Omarchy](https://github.com/basecamp/omarchy) — an
|
||||
opinionated, keyboard-driven Hyprland desktop environment built on Arch Linux — to a stable Debian base.
|
||||
|
||||
The motivation was simple: Omarchy's curated desktop experience is excellent, but Arch Linux's rolling
|
||||
release model introduces instability. Debian's conservative, long-term-support release cycle seemed like
|
||||
the ideal stable foundation to deliver the same experience without the rolling-release risk.
|
||||
|
||||
## What we built
|
||||
|
||||
- A QEMU VM helper (`bin/yino-vm`) with KVM acceleration for development and testing
|
||||
- A preseed configuration (`iso/preseed.cfg`) achieving unattended Debian installation with LUKS + btrfs
|
||||
- ISO build tooling for injecting preseed and packages into the stock Debian DVD image
|
||||
- Comprehensive requirements documentation (`REQUIREMENTS.md`) with 87 numbered requirement IDs
|
||||
- A detailed upstream analysis (`docs/Omarchy.md`) mapping Omarchy's full architecture at commit `463417a`
|
||||
- An Arch-to-Debian package mapping covering ~100+ packages across all components
|
||||
|
||||
## The core problem: Hyprland doesn't fit stable distros
|
||||
|
||||
The central discovery of this project is that **Hyprland is too fast-moving for any traditional stable
|
||||
Linux distribution to keep up with.**
|
||||
|
||||
### Debian
|
||||
|
||||
The entire Hyprland ecosystem was deliberately removed from Debian Trixie (stable) via
|
||||
[Debian Bug #1107152](https://bugs.debian.org/1107152). Hyprland remains in sid (unstable), but
|
||||
installing sid packages on a stable base is a known source of dependency conflicts and system
|
||||
instability — the exact problem Yino was trying to avoid.
|
||||
|
||||
The Yino approach was to download Hyprland ecosystem packages from sid, cache them, and slipstream them
|
||||
into the installation ISO. This is workable in theory but creates a significant maintenance burden:
|
||||
|
||||
- **12+ packages** from the Hyprland ecosystem need to be sourced from sid
|
||||
- **Library compatibility** between sid packages and the Trixie base is not guaranteed
|
||||
- **Every Debian stable point release** could break the cached sid packages
|
||||
- **Every Hyprland update** requires re-testing against the Trixie base
|
||||
- **Several additional packages** (Walker, Ghostty, Hyprsunset) aren't in Debian at all and need to be
|
||||
built from source
|
||||
|
||||
### Fedora (investigated as alternative)
|
||||
|
||||
Initially, Fedora appeared promising — semi-stable with 6-month releases and what we believed was a
|
||||
Hyprland Spin. **Investigation revealed this was wrong on both counts:**
|
||||
|
||||
- **There is no Fedora Hyprland Spin.** It doesn't exist, has never existed, and has no proposal in the
|
||||
pipeline. The Fedora Sway Spin exists; Hyprland does not.
|
||||
- **Hyprland was retired from Fedora 43.** The package was present in Fedora 41 and 42, but was removed
|
||||
from Fedora 43 because `hyprland-qtutils` depended on Qt 6.9 private APIs, and Fedora 43 moved to
|
||||
Qt 6.10. Nobody stepped up to fix it. It was flagged via Bugzilla #2366813 as "F43FailsToInstall" and
|
||||
subsequently retired (Pagure issue #12969).
|
||||
- **Community COPR repos** (`solopasha/hyprland`, `sdegler/hyprland`, etc.) exist but are volunteer-
|
||||
maintained and fragile.
|
||||
|
||||
Fedora's Hyprland situation is arguably **worse** than Debian's — Debian at least still has Hyprland
|
||||
in sid. Fedora's packaging is entirely gone from official repos and trending in the wrong direction.
|
||||
|
||||
### openSUSE Tumbleweed (investigated as alternative)
|
||||
|
||||
Tumbleweed is the strongest traditional option for Hyprland:
|
||||
|
||||
- Hyprland is in **official repos** and actively maintained
|
||||
- Btrfs + Snapper is Tumbleweed's flagship feature (they pioneered the pattern Omarchy adopted)
|
||||
- KIWI image builder is world-class ISO tooling
|
||||
- openQA automated testing catches regressions before they reach users
|
||||
|
||||
However, Tumbleweed is a **rolling release** — continuous updates, not periodic stable releases. This
|
||||
conflicts directly with the project's goal of providing a stable, predictable base. The whole point of
|
||||
Yino was to escape rolling-release churn, and Tumbleweed — however well-tested — is still rolling.
|
||||
|
||||
### NixOS (investigated as alternative)
|
||||
|
||||
NixOS is the most philosophically interesting option:
|
||||
|
||||
- Hyprland is well-maintained in nixpkgs with first-class NixOS module support
|
||||
- The entire system is defined declaratively in configuration files — which aligns perfectly with
|
||||
"an opinionated set of configuration files"
|
||||
- Versions are pinned, updates happen when you choose, rollbacks are atomic
|
||||
- ISO generation is trivial (a Nix expression)
|
||||
- `henrysipp/omarchy-nix` (657 stars) demonstrates significant community interest
|
||||
|
||||
However, NixOS represents a **complete paradigm shift** from Omarchy's architecture. Omarchy is shell
|
||||
scripts overlaying dotfiles onto a traditional Linux system. NixOS would require reimagining the entire
|
||||
project as a Nix flake with home-manager modules. This violates the "match upstream Omarchy" design
|
||||
principle that was paramount for Yino.
|
||||
|
||||
## The landscape at a glance
|
||||
|
||||
| Distribution | Hyprland in official repos | Stability model | Trend |
|
||||
|:---|:---:|:---|:---|
|
||||
| Arch Linux | ✅ Always | Rolling (untested) | Stable — it's the native platform |
|
||||
| Debian sid | ✅ Yes | Unstable | Was in testing, yanked from stable |
|
||||
| Debian Trixie | ❌ Removed | Stable | Gone (Bug #1107152) |
|
||||
| Fedora 43 | ❌ Retired | 6-month releases | Gone (Qt 6.10 breakage) |
|
||||
| Fedora COPR | ⚠️ Community | Fragile | Depends on volunteers |
|
||||
| openSUSE TW | ✅ Official | Rolling (QA-tested) | Healthy |
|
||||
| NixOS | ✅ Official | Pinned by user | Very healthy |
|
||||
|
||||
**Only rolling distros and NixOS maintain healthy Hyprland packaging.** Every traditional stable distro
|
||||
has dropped it.
|
||||
|
||||
## Related community projects
|
||||
|
||||
During research, we found these existing efforts to port Omarchy to other bases:
|
||||
|
||||
| Project | Base | Stars | Notes |
|
||||
|:---|:---|---:|:---|
|
||||
| `henrysipp/omarchy-nix` | NixOS | 657 | Full Omarchy port as a Nix flake |
|
||||
| `elpritchos/omadora` | Fedora | 70 | Minimal Fedora + Hyprland, Omarchy-like |
|
||||
|
||||
The NixOS port has nearly 10x the community interest of the Fedora attempt, suggesting the declarative
|
||||
approach resonates more strongly with the audience that wants "Omarchy but not on Arch."
|
||||
|
||||
## Why we're stopping
|
||||
|
||||
The fundamental tension is irreconcilable:
|
||||
|
||||
> **Hyprland moves fast. Stable distros move slow. Bridging this gap is a full-time packaging job,
|
||||
> not a configuration project.**
|
||||
|
||||
Yino was conceived as "an opinionated set of configuration files" — the same identity as Omarchy.
|
||||
But on Debian (or Fedora), the project would spend most of its effort on **packaging** (building,
|
||||
caching, testing, and maintaining 12+ Hyprland ecosystem packages against a stable base), leaving
|
||||
little room for the actual value proposition: the curated desktop experience.
|
||||
|
||||
On Arch, Omarchy can focus on the experience because the packaging is handled by the distribution.
|
||||
On any stable distro, Yino would have to handle both — and the packaging burden dominates.
|
||||
|
||||
## What would change this conclusion
|
||||
|
||||
- **Hyprland stabilizes its ABI** and gets re-accepted into Debian stable or Fedora — unlikely given
|
||||
the ecosystem's development velocity
|
||||
- **A third party maintains Hyprland packages for Debian/Fedora** reliably (a PPA, COPR, or OBS repo
|
||||
with serious commitment) — possible but not something to bet a project on
|
||||
- **The project embraces NixOS** and accepts the paradigm shift — viable, and `omarchy-nix` proves
|
||||
demand exists, but it's a different project with a different identity
|
||||
- **The project embraces Tumbleweed** and accepts rolling release (with snapshot safety) — the most
|
||||
natural fit technically, but contradicts the original motivation
|
||||
|
||||
## Open questions that were never resolved
|
||||
|
||||
These were identified during requirements analysis but never investigated due to the project being
|
||||
abandoned:
|
||||
|
||||
- **OQ-001:** Would the Hyprland stack from sid actually install cleanly on Trixie, or would it pull
|
||||
cascading dependencies that destabilize the system?
|
||||
- **OQ-002:** What are Walker's build dependencies? Static binary or proper .deb packaging?
|
||||
- **OQ-003:** Ghostty sourcing — build from source (Zig toolchain), community .debs, or use Alacritty?
|
||||
- **OQ-004:** Hyprsunset vs. wlsunset — is the Omarchy-compatible version worth the build effort?
|
||||
- **OQ-006:** ISO build tool choice — live-build, simple-cdd, or manual remastering?
|
||||
|
||||
## Artifacts produced
|
||||
|
||||
All artifacts remain in the repository for reference:
|
||||
|
||||
| File | Description |
|
||||
|:---|:---|
|
||||
| `REQUIREMENTS.md` | Full requirements document (87 requirement IDs, user stories, acceptance criteria) |
|
||||
| `docs/Omarchy.md` | Comprehensive Omarchy analysis at commit `463417a` (architecture, packages, ISO, theming) |
|
||||
| `docs/yino-fsd.md` | Functional specification document |
|
||||
| `iso/preseed.cfg` | Working preseed config for unattended Debian install (LUKS + btrfs + Hyprland) |
|
||||
| `bin/yino-vm` | QEMU VM helper with KVM acceleration |
|
||||
| `CONCLUSIONS.md` | This document |
|
||||
Loading…
x
Reference in New Issue
Block a user