Stable
Experimental

Ryoku 1.0 · Amaterasu · Released

Ryoku

for the sake of power and beauty

Compositor
Hyprland ⇄ niri Wayfire · experimental

Switch any time from the Hub or ryoku wm use niri. No reinstall.

Shell
Quickshell on Go IPC
Theming
matugen, from your wallpaper
Delivery
signed packages
29Hub pages
230Settings
7Bar styles
3Compositors
Source

195 stars 9 forks GPL-3.0

A whole desktop, not a pile of dotfiles.

The bar, launcher, lock screen, capture tool and settings app are one shell, fed by one Go daemon. Run it on Hyprland or niri and switch whenever you like, without reinstalling.

Show it off on Sunday. Forget it’s there on Monday.

I build Ryoku at night, after my two kids are asleep. I don’t have time to babysit a desktop, and you shouldn’t have to either. So Ryoku has two jobs: look finished the moment you log in, and keep working long after you stop paying attention.

  • Change anything. Reinstall nothing.

    Try a new bar, a whole new look or a different window manager tonight. Your files, apps and settings stay put.

  • Same desktop, whatever’s underneath.

    Arch, CachyOS, Void, Fedora or NixOS. Keep the base you trust and get the same Ryoku on top.

  • Nobody builds alone.

    Ryoku began as one person’s late nights. It grows because people file bugs, bring their shells and tell a friend. There’s room for yours.

SUPPORTED LINUX
00 // RYOKU-BASE

one shell, one daemon, every edition.

Everything, already installed.

A fresh box boots into a finished desktop: apps, tools, and toolchains already in place.

packages, grouped90
built by Ryoku13
on disk, fresh13–15 GiB

力 // PREINSTALLED

What ships out of the box

The Ryoku desktop

Ryoku’s own software, built from the monorepo and served from the signed [ryoku] repo.

  • ryoku-shellBar, pill, launcher, overview, capture, lock screen
  • ryoku-hubRyoku Settings, the control center
  • ryokuThe CLI: update, doctor, rollback, snapshots
  • ryoku-rashinThe local agent OS, daemon and dashboard
  • prowl-agentCode-intelligence indexer for the agent OS
  • ryostoreThe store: themes, rices, plugins, lockscreens
  • ryogamiThe wallpaper daemon: catalog, applies, depth
  • ryomotionScreen-demo recorder and editor
  • ryotunesThe music app, native playback (Tauri + libmpv)
  • ryoku-blobsThe shared Ryoku.Blobs QML plugin
  • gpkGlazePKG, the RyokuArch package manager
  • Hyprland pluginshyprglass, imgborders, dynamic cursors, toggled from the Hub
  • ryoku-cursorsThe default Bibata pointer set

Core system & boot

Kernel, the encrypted-Btrfs boot chain, and automatic snapshots.

  • base, base-develCore system and build tools
  • linux, linux-firmwareThe stock kernel and firmware
  • linux-headers, dkmsOut-of-tree module builds
  • rustSo every box can build its Rust dependencies
  • mkinitcpio, btrfs-progs, cryptsetupThe initramfs, Btrfs, LUKS encryption
  • limine, plymouthThe bootloader and the boot splash
  • snapper, snap-pacA snapshot around every pacman transaction

Networking, Bluetooth & audio

Connectivity and a full PipeWire stack with the Bluetooth codecs.

  • networkmanager, iwdNetworking and the default Wi-Fi backend
  • wpa_supplicant, iwThe WPA3 fallback and power-save control
  • bluez, bluez-utilsThe Bluetooth stack and bluetoothctl
  • pipewire (+ pulse, alsa, audio)The audio server and A2DP codecs
  • wireplumberThe PipeWire session manager
  • rtkit, alsa-utilsRealtime scheduling; the classic mixers

Graphics & the session

The Wayland compositor, the Qt6 runtime, portals, and the themes.

  • hyprland, xorg-xwaylandThe compositor and X11 app support
  • mesa, vulkan-icd-loaderThe GL and Vulkan base
  • qt6-*wayland, declarative, 5compat, svg, multimedia
  • xdg-desktop-portal-*Screen-share (Hyprland) and file chooser (GTK)
  • hyprpolkitagentThe polkit authentication agent
  • westonThe Wayland compositor that hosts the SDDM greeter
  • sddmThe login greeter
  • gst-plugins-*, gst-libavGStreamer media codecs
  • polkit, gnome-keyringAuthorization and the secrets store
  • papirus, adwaita, adw-gtk-themeThe icon and dark GTK themes
  • flatpakThe portable app channel

Wayland tools

The small daemons the desktop leans on every session.

  • matugenRecolors everything from the wallpaper
  • hypridle, hyprsunsetIdle/lock management and the night light
  • brightnessctl, ddcutilLaptop and external-monitor brightness
  • upower, power-profiles-daemonBattery status and power profiles
  • grim, slurp, hyprpickerScreenshot, region select, color picker
  • wl-clipboard, cliphistThe clipboard and its history
  • playerctlMedia control over MPRIS
  • fuzzelA fallback launcher

Everyday apps

The applications you actually open on day one.

  • chromium, firefoxTwo browsers, both engines on hand
  • kittyThe default terminal
  • mpv (+ mpris)The media player
  • nautilus (+ python)The file manager and its stash actions
  • spotify-launcherSpotify, wired to the Canvas widget

Terminal, CLI & TUI

A command line that is already comfortable.

  • fish, zsh, starshipThe shells and the prompt
  • bat, eza, fd, fzf, ripgrep, zoxideThe modern coreutils layer
  • fastfetch, jqSystem readout and JSON on the CLI
  • git, github-cli, lazygitVersion control and a git TUI
  • neovimThe editor
  • btopThe resource monitor
  • yaziA terminal file manager

Capture & shell helpers

The screen tools, plus what the shell shells out to.

  • quickshellThe framework the shell UI runs on
  • cavaThe audio visualizer
  • waifu2x-ncnn-vulkanGPU upscaler for HD export and Enhance
  • imagemagick, ffmpeg, yt-dlpImage/media processing and download
  • tesseract, zbarOCR text grab and QR scanning
  • gpu-screen-recorder, wf-recorderScreen recording, with a fallback
  • wtype, libqalculate, songrecVoice typing, calculator, Recognize Music
  • openrgbKeyboard and LED accent sync

Developer toolchains

Every machine is dev-ready the moment it boots.

  • goThe Go toolchain
  • nodejs, npmNode and npm
  • python, python-pip, python-pipxPython with pip and pipx
  • miseA runtime version manager

Gaming & virtualization

A Bazzite-style gaming stack and the base VM tooling.

  • gamescopeA nested micro-compositor that isolates a game
  • gamemodeThe performance governor Steam invokes
  • mangohudThe FPS and frametime overlay
  • qemu-desktop, edk2-ovmf, virglrendererThe base VM stack

Fonts

UI text, Japanese labels, emoji, terminal glyphs, icon symbols.

  • inter-font, otf-space-groteskThe UI sans stack
  • noto-fonts (+ cjk, emoji)Latin, Japanese, and emoji coverage
  • ttf-*-nerd, ttf-maple-mono-nfTerminal and code fonts with glyphs
  • ttf-material-symbols-variableThe icons the bar and pill are drawn from

From the AUR (after install)

Built in the post-install step. Best-effort; the box comes up fine without them.

  • yay-binThe AUR helper, bootstrapped first
  • zen-browser-binZen, the default browser
  • voxtype-binThe offline Whisper voice-dictation daemon
  • localsend-binAirDrop-style LAN file sharing
  • nvibrant-binNVIDIA digital vibrance for the pill fader
  • phinger / catppuccin / apple cursorsExtra cursor themes for the Hub picker
  • ttf-fraunces-variableFraunces, the editorial brand serif

The CachyOS layer

On the CachyOS image only. Install from that ISO and a Ryoku box is a CachyOS box.

  • linux-cachyos (+ headers)The optimized kernel, booted by default
  • cachyos-settingsThe sysctl, udev, and systemd tuning
  • ananicy-cpp (+ rules)Auto-nice daemon for a responsive compositor
  • scx-schedsThe sched-ext userspace schedulers
  • proton-cachyos-slrThe CachyOS-tuned Proton for Steam and Lutris
  • cachyos keyring + mirrorlistsTrust and mirrors for ongoing updates

Storage footprint

Measured by the installer to size the root partition.

  • On disk, freshThe base + dev + desktop closure lands at ~13–15 GiB after Btrfs zstd:1 compression.
  • Root floorThe installer reserves 20 GiB for AUR builds, snapshots, and first-launch downloads.
  • Minimum disk32 GiB for a whole-disk install; 2 + 20 + swap GiB free to dual-boot.
system/packages/ · release/packages/ryoku-desktop

Common questions.

What is Ryoku?

Ryoku 1.0, Amaterasu, is one complete Wayland desktop and the system that keeps it working. Arch and CachyOS are stable; Void, Fedora, the community NixOS port and the Wayfire compositor are experimental.

Read the manual →

Is Ryoku free and open source?

Yes. Ryoku is free and open source, developed in the open on GitHub, and its Arch, CachyOS, Void and Fedora packages ship through signed repositories.

Source on GitHub →

Is Ryoku an Omarchy alternative?

Yes, and it is its own project, not a fork. You get the same opinionated, keyboard-driven, pre-riced Arch spirit, built from the ground up with its own compositor-independent Quickshell desktop, a control center, and a reproducible single-source system.

How they compare →

How do I install Ryoku?

Boot a signed ISO for a fresh disk, or run the one-line install script to convert an existing Arch, CachyOS, glibc Void or mutable Fedora 44 / 45 system. The NixOS community port has its own site and installer.

Install guide →

Can I switch compositors?

Yes, without reinstalling. Hyprland and niri are stable. Wayfire is experimental on Arch and CachyOS only. Pick one in Ryoku Settings under Window Manager, or run ryoku wm use with its name.

Ryoku Settings →

What hardware does Ryoku need?

Every edition needs x86_64 hardware, at least 8 GB of RAM and 32 GB of storage. Ryoku is a full desktop: it idles at 1 to 4 GB of RAM depending on your settings, and it runs best on a dedicated GPU. Graphics need working KMS and hardware OpenGL or Vulkan; Void niri does not run on software rendering.

Hardware notes →

How do I update or roll back Ryoku?

Run ryoku update for Ryoku packages, configuration and health checks. Arch, CachyOS and Void ISO installs add Btrfs snapshot recovery; Fedora keeps GRUB and rolls Ryoku packages back without system snapshots; NixOS uses generations.

Updates & rollback →

Hey, I’m Carlos.

I made Ryoku. I’m 27, Guatemalan and American, married, and a dad of two. Most of this distro gets written after the kids are asleep.

I served in the US Army, first as an infantryman and later as an IT specialist, then went back to school for cybersecurity and networking. No, I didn’t invent a programming language worth half a trillion dollars. I am poking at one in my free time though, so we’ll see.

Why Ryoku

Ryoku is opinionated, and my opinion is freedom. You shouldn’t get a pile of apps shoved at you that you never asked for. If you see a setup you love on Reddit, you shouldn’t have to run some sketchy install script or burn 50 hours hunting down someone’s dotfiles to get it.

I want a distro where you can live in one shell for a week and switch to a completely different one the next, without reinstalling anything or figuring out which folder gets what.

I don’t want Ryoku to feel like a dotfiles repo. I want developers to build their shells inside it, instead of everyone starting from zero alone, struggling to find users and burning out. Use what Ryoku already has, team up with other people, and ship something together.

Build your shell on Ryoku

Other things I’ve made

  • GlazePKGOne command for every package manager on your machine. It’s also Ryoku’s package manager.
  • ProwlA local code index and model router, so AI agents get small cited answers instead of reading whole files.

Keep Ryoku going.

Ryoku is free and it’s staying free. It runs on one person’s nights and weekends, plus everyone who shows up with bug reports and pull requests. If it saved you some hours, you can chip in.

Can’t donate? A star on GitHub, a good bug report, or telling a friend helps too.