Skip to content

Personal Arch Linux dotfiles with Niri + Noctalia desktop β€” powered by Claude πŸ€–

Notifications You must be signed in to change notification settings

Yestercafe/arch-dotfiles

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

10 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

arch-dotfiles

Powered by Claude Code β€” A personal Arch Linux desktop configuration crafted with AI assistance.

A cohesive Wayland-based desktop environment built around Niri (scrollable-tiling compositor) and Noctalia (custom desktop shell), featuring a warm coral/pink "Noctalia" color scheme across all applications.

Preview

The desktop features a clean, modern aesthetic with:

  • Floating bar with workspace, system monitor, clock, and media widgets
  • Auto-hiding dock for application launching
  • Rounded window corners with coral focus rings
  • Consistent warm coral/pink theming across all applications

Components

Component Description
Niri Scrollable-tiling Wayland compositor with smart column layout
Noctalia Custom desktop shell providing bar, dock, notifications, and control center
Ghostty Modern terminal emulator with GPU acceleration
Emacs Text editor with custom Noctalia theme

Theme

The entire setup uses a consistent "Noctalia" color scheme with warm coral/pink tones on a dark background:

  • Primary: #ffb3af (soft coral/pink)
  • Background: #1b1206 (dark warm brown)
  • On Surface: #f3dfcb (light warm cream)
  • Tertiary: #f7bc70 (warm amber)

Color theming is applied via Noctalia's template system to: Niri, Ghostty, GTK, Qt, Fuzzel, and more.

Installation

# Clone the repository
git clone <repo-url> ~/arch-dotfiles
cd ~/arch-dotfiles

# Deploy all dotfiles (creates symlinks, downloads wallpapers)
./deploy install

# Dry run to see what would be done
./deploy install -n

# Check deployment status
./deploy status

The deploy script will:

  • Create symlinks from .config/ to ~/.config/
  • Create symlinks from .emacs.d/ to ~/.emacs.d/
  • Download wallpapers from wallpapers.txt to ~/Pictures/Wallpapers/
  • Backup any existing files before replacing them

Keybindings

Window Management

  • Mod+T β€” Open Ghostty terminal
  • Mod+D β€” Open fuzzel app launcher
  • Mod+Q β€” Close window
  • Mod+H/J/K/L or Arrows β€” Focus windows/columns
  • Mod+Ctrl+H/J/K/L β€” Move windows/columns
  • Mod+V β€” Toggle floating
  • Mod+F β€” Maximize column
  • Mod+Shift+F β€” Fullscreen window
  • Mod+W β€” Toggle tabbed column display
  • Mod+R β€” Cycle preset column widths

Workspace Management

  • Mod+1-9 β€” Focus workspace by index
  • Mod+Ctrl+1-9 β€” Move column to workspace
  • Mod+U/I or Page Down/Up β€” Focus workspace down/up
  • Mod+O β€” Toggle overview

Media & System

  • Print β€” Screenshot
  • Ctrl+Print β€” Screenshot screen
  • Alt+Print β€” Screenshot window
  • XF86AudioRaiseVolume/LowerVolume/Mute β€” Volume control
  • XF86MonBrightnessUp/Down β€” Brightness control
  • XF86AudioPlay/Stop/Prev/Next β€” Media playback

Note: Mod is Super on TTY, Alt in windowed mode.

Requirements

  • Arch Linux (or compatible distribution)
  • Niri β€” Wayland compositor
  • Noctalia β€” Desktop shell (QS/Quick Shell based)
  • Ghostty β€” Terminal emulator
  • PipeWire & WirePlumber β€” Audio
  • playerctl β€” Media control
  • fcitx β€” Input method
  • qs β€” Quick Shell (for Noctalia)

Configuration

After deployment, reload configurations:

# Niri
niri msg action reload-config

# Ghostty β€” Ctrl+Shift+, or restart

# Noctalia β€” Auto-reloads or restart session

# Emacs β€” M-x load-theme

See CLAUDE.md for detailed configuration guidance.

Structure

.
β”œβ”€β”€ .config/
β”‚   β”œβ”€β”€ niri/           # Niri compositor config (KDL)
β”‚   β”‚   β”œβ”€β”€ config.kdl  # Main configuration
β”‚   β”‚   └── noctalia.kdl # Color theme
β”‚   β”œβ”€β”€ ghostty/        # Terminal config
β”‚   └── noctalia/       # Desktop shell config (JSON)
β”‚       β”œβ”€β”€ settings.json    # Main settings
β”‚       β”œβ”€β”€ colors.json      # Color palette
β”‚       └── plugins.json     # Plugin sources
β”œβ”€β”€ .emacs.d/           # Emacs config
β”‚   β”œβ”€β”€ init.el         # Init file
β”‚   └── themes/         # Custom themes
β”œβ”€β”€ deploy              # Deployment script
└── wallpapers.txt      # Wallpaper download list

License

This is a personal configuration repository. Feel free to adapt and use for your own setup.


Developed with assistance from Claude Code β€” Anthropic's AI-powered CLI for software engineering.

About

Personal Arch Linux dotfiles with Niri + Noctalia desktop β€” powered by Claude πŸ€–

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 2

  •  
  •