gardesk

A modular X11 desktop environment suite

New on the scene and in active development. Written in Rust. Configured in Lua. Built for power users.

bash
$ curl -fsSL https://gar.musicsian.com/install.sh | bash

Built for power users

A lightweight desktop environment with sensible defaults and full configurability.

Rust Powered

Memory-safe, performant, and compiled. No runtime dependencies, just native binaries.

Lua Configuration

Full Lua 5.4 scripting for your window manager. Define keybinds, rules, and layouts with ease.

X11 Native

Built directly on X11 with x11rb. Works with NVIDIA out of the box.

Modular Design

Install only what you need. Each component works standalone or together as a complete desktop.

Stable

gar

Tiling Window Manager

An event-driven X11 tiling window manager with a binary tree layout engine. Configure everything with Lua, from keybindings to window rules.

  • Binary tree layout with smart splits
  • Full Lua 5.4 configuration
  • Multi-monitor workspace support
  • EWMH compliant for compatibility
  • Unix socket IPC with garctl
Learn More
Beta

garchomp

X11 Compositor

A GPU-accelerated X11 compositor with wgpu rendering, Lua-scripted animations, per-window rules, and HDR support. Replaces picom with tighter gar integration.

  • GPU-accelerated wgpu rendering
  • Dual Kawase blur and shadow effects
  • Lua-scripted animation system
  • Per-window rules and overrides
  • HDR tonemapping support
Learn More
Beta

garfield

File Manager

A multi-paned graphical file manager with tabbed navigation, multiple view modes, and full file operations. Features undo/redo, Freedesktop trash support, and IPC control.

  • List, grid, and column view modes
  • Multi-tab, split-pane layouts
  • Copy, move, trash with undo/redo
  • Bookmarks and XDG places sidebar
  • Inline rename and conflict resolution
Learn More
Beta

garview

Image & Document Viewer

A multi-format image and document viewer with PDF text search, text selection, and clickable links. Supports gallery mode, slideshow, zoom/pan, rotation, and session persistence.

  • PDF with text search, selection, links, TOC
  • Raster images (PNG, JPEG, GIF, WebP, TIFF)
  • SVG/SVGZ and animated GIF/APNG support
  • Gallery mode with thumbnail grid
  • Session persistence (remembers zoom, page)
Learn More
Beta

garterm

Terminal Emulator

A GPU-accelerated terminal emulator with tabbed and split-pane interface. Integrates tightly with gar via Lua configuration, supporting multiple color themes and rich IPC control.

  • GPU-accelerated wgpu rendering
  • Tabs and horizontal/vertical splits
  • Lua + TOML configuration
  • 8 built-in color themes
  • IPC control via gartermctl
Learn More
Beta

garedit

Text & Code Editor

A native X11 text editor with Cairo/Pango rendering via gartk. Features full undo/redo history, mouse-driven selection, word-level navigation, and IPC control via gareditctl.

  • Cairo/Pango rendering via gartk
  • Full undo/redo with 512-snapshot history
  • Mouse click, drag, and scroll support
  • Emacs-style and standard keybindings
  • IPC control via gareditctl
Learn More
Stable

garbar

Async Status Bar

A Tokio-powered status bar with modular widgets and Cairo/Pango rendering. Displays system info, workspaces, and more.

  • Async module architecture
  • Cairo/Pango vector rendering
  • Battery, CPU, memory widgets
  • Workspace and window title display
  • System tray support
Learn More
Beta

gartray

System Tray

A system tray with quick settings panel. Supports XEMBED and StatusNotifierItem protocols, with controls for volume, brightness, network, bluetooth, and power.

  • XEMBED and StatusNotifierItem support
  • Quick settings panel (volume, brightness)
  • Network and bluetooth controls
  • Battery status and power options
  • D-Bus integration via zbus
Learn More
Beta

garnotify

Notification Daemon

A desktop notification daemon implementing the FreeDesktop Notifications Spec. Features smooth animations, urgency styling, action buttons, history, and a powerful rule engine.

  • FreeDesktop Notifications 1.2 compliant
  • Smooth fade and slide animations
  • Urgency-based styling (low, normal, critical)
  • Rule engine for filtering/modifying
  • gar integration with auto-spawn
Learn More
garbg wallpaper daemon screenshot 640 × 400
Stable

garbg

Wallpaper Daemon

A multi-source wallpaper daemon with caching and animation support. Load backgrounds from local files, HTTP, or S3.

  • Local, HTTP, and S3 sources
  • LRU cache with blake3 hashing
  • Animated GIF/WebP support
  • Optional video playback (ffmpeg)
  • Systemd user service integration
Learn More
garlock screen locker screenshot 640 × 400
Stable

garlock

Screen Locker

A PAM-authenticated screen locker with secure input handling. Features background blur and status indicators.

  • PAM authentication
  • Secure password handling (zeroize)
  • Configurable background blur
  • Caps lock and time indicators
  • Grace period support
Learn More
gardm display manager screenshot 640 × 400
Beta

gardm

Display Manager

A system-level display manager with a graphical greeter. Manages login sessions and user switching.

  • Graphical greeter UI
  • PAM-based authentication
  • Session management
  • Multi-user support
  • Systemd service integration
Learn More
Beta

garlaunch

Application Launcher

A rofi-like application launcher with fuzzy search. Browse .desktop entries, run commands, switch windows, or execute custom scripts.

  • Fuzzy search with nucleo
  • Desktop entry mode (drun)
  • Command execution mode (run)
  • Window switcher mode
  • Custom script mode with JSON protocol
Learn More
gartk toolkit diagram 640 × 400
Beta

gartk

UI Toolkit

A shared UI toolkit library used by gardesk components. Provides X11 window management, Cairo/Pango rendering, and theming.

  • X11 connection and window management
  • Cairo/Pango text and shape rendering
  • Built-in dark, light, and high-contrast themes
  • Monitor detection with RandR
  • Keyboard and pointer grabbing
Learn More
garclip clipboard manager screenshot 640 × 400
Beta

garclip

Clipboard Manager

An X11 clipboard manager with persistent history. Monitors CLIPBOARD and PRIMARY selections, supports text and images, with XFixes event-driven detection.

  • Text and image history with persistence
  • XFixes event-driven clipboard monitoring
  • Regex and window class filtering
  • garclip-picker UI with fuzzy search
  • Systemd user service integration
Learn More
Stable

garshot

Screenshot Utility

A fast X11 screenshot tool with interactive region selection, built-in annotation editor, and multiple output formats.

  • MIT-SHM for fast captures (~50ms)
  • Built-in annotation editor with 8 tools
  • Interactive region selection with blur
  • Color picker with HSV, RGB, and eyedropper
  • PNG, JPEG, WebP output formats
Learn More
gargears control panel interface 640 × 400
Stable

gargears

Desktop Control Panel

A centralized GUI control panel for all gardesk components. Configure window manager, status bar, wallpapers, and more from a single interface with live daemon communication.

  • 11 configuration panels for all components
  • Real-time daemon communication via IPC
  • Instant apply mode for live changes
  • Manages Lua and TOML config files
  • CLI control via gargearsctl
Learn More
Stable

gartop

System Monitor

A modular system monitor daemon and interactive GUI. Real-time monitoring of CPU, memory, network, disk I/O, temperature, GPU, and processes with time-series graphs.

  • CPU, memory, network, disk monitoring
  • Temperature sensors and GPU stats
  • Interactive process list with tree view
  • Time-series graphs with Cairo rendering
  • Background daemon with gartopctl CLI
Learn More
gardisplay monitor configuration interface 640 × 400
Beta

gardisplay

Display Configuration

A graphical X11 monitor manager with drag-and-drop layout, per-monitor resolution and refresh rate, fractional scaling via RandR CRTC transforms, named profiles, and a 15-second auto-revert watchdog.

  • Drag-and-drop monitor arrangement
  • Per-monitor resolution, refresh, rotation, scale
  • Named profiles for different setups
  • 15-second auto-revert watchdog
  • DPI scaling via xsettingsd and xrdb
Learn More
garcalc graphing calculator interface 640 × 400
Beta

garcalc

Graphing Calculator with CAS

A TI-Nspire-inspired graphing calculator with a built-in computer algebra system. Supports symbolic differentiation, integration, limits, 2D/3D graphing, and matrix operations. Runs standalone or as a daemon with IPC control.

  • CAS engine with symbolic math
  • 2D graphing: explicit, parametric, implicit
  • 3D surface and parametric plotting
  • garcas standalone CAS REPL
  • Daemon mode with garcalcctl IPC
Learn More

Get started in seconds

Choose your distribution or use the universal installer.

bash
# Full desktop (gar, garbar, garbg, garlock)
$curl -fsSL https://gar.musicsian.com/install.sh | bash -s -- --component=desktop
# Individual components
$curl -fsSL https://gar.musicsian.com/install.sh | bash -s -- --component=garfield
$curl -fsSL https://gar.musicsian.com/install.sh | bash -s -- --component=garshot

The installer will prompt you to select which components to install.

For manual installation, see the documentation on GitHub .