Skip to main content

Documentation Index

Fetch the complete documentation index at: https://docs.jylhis.com/llms.txt

Use this file to discover all available pages before exploring further.

Feature flags are the primary way to configure Marchyo. Each flag enables a group of related packages, services, and configurations.

Available flags

OptionDefaultDescription
marchyo.desktop.enablefalseDesktop environment (Hyprland, Wayland, audio, bluetooth, fonts)
marchyo.development.enablefalseDevelopment tools (git, Docker, buildah, gh, virtualization)
marchyo.media.enablefalseMedia applications (Spotify, MPV, etc.)
marchyo.office.enablefalseOffice applications (LibreOffice, Papers, etc.)

Cascading defaults

When you enable marchyo.desktop.enable, related flags are automatically enabled at a lower priority using lib.mkDefault:
# Enabling desktop...
marchyo.desktop.enable = true;

# ...automatically enables these (you can override them):
# marchyo.office.enable = true;
# marchyo.media.enable = true;
Since these use lib.mkDefault, you can override them:
{
  marchyo.desktop.enable = true;
  marchyo.media.enable = false;   # Disable media despite desktop being on
}

Desktop environment

When marchyo.desktop.enable = true, Marchyo configures:
  • Hyprland — Wayland compositor with pre-configured keybindings and window rules
  • Audio — PipeWire with PulseAudio and ALSA compatibility
  • Bluetooth — Enabled and configured
  • Fonts — Curated set of fonts including Nerd Fonts
  • Theming — Stylix-based consistent theming across GTK, Qt, and terminal apps
  • Application launcher — Vicinae
  • Terminal emulators — Kitty and Alacritty
  • Default applications — Configurable via marchyo.defaults.*

Development tools

When marchyo.development.enable = true, Marchyo configures:
  • Git with Git LFS and GitHub CLI
  • Docker with docker-compose
  • Virtualization via QEMU/KVM (libvirtd)
  • Container tools — Buildah, kubectl
  • Shell enhancements — Starship prompt, zoxide, fzf, ripgrep, fd
Last modified on May 5, 2026