Skip to content
This repository was archived by the owner on Aug 26, 2026. It is now read-only.

Latest commit

 

History

56 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Hanz Jefferson's Dotfiles

Arch Linux rice built around dwl — dwm for Wayland. A minimal, suckless-inspired setup with a patched compositor, a lightweight status bar, and a set of helper scripts.

Features

  • dwl — hackable Wayland compositor based on wlroots, patched with 16 community patches (autostart, systray, gaps, centeredmaster, movestack, moveresizekb, swapfocus, alwayscenter, attachfocused, bar, bar-notitle, hide_vacant_tags, hide-cursor-when-typing, nextlayout, setupenv, follow)
  • slstatus — suckless status bar showing WiFi percentage and date/time
  • foot — fast Wayland terminal (Cascadia Code NF)
  • tofi — minimalist launcher used as app menu (MOD+p)
  • mako — lightweight notification daemon
  • wbg — wallpaper daemon, autostarted by dwl
  • Helper scripts — clipboard, screenshots, power menu, and brightness control
  • Liquorix kernel — optional, recommended for low-end hardware

Repository Structure

.
├── config/               # dotfiles deployed to ~/.config
│   ├── foot/             # terminal
│   ├── fontconfig/       # font rendering settings
│   ├── mako/             # notifications
│   ├── tofi/             # launcher
│   └── VSCodium/         # editor settings
├── dwl/                  # patched dwl compositor
│   ├── patches/          # 16 applied community patches
│   ├── config.h          # dwl configuration
│   ├── systray/          # status bar with systray support
│   └── Makefile
├── slstatus/             # status bar
│   ├── config.h          # slstatus configuration
│   └── components/
├── scripts/              # deployed to ~/.local/bin
│   ├── dwl-brightness    # backlight control
│   ├── dwl-clipboard     # cliphist + tofi clipboard picker
│   ├── dwl-power         # suspend/logout/reboot/shutdown menu
│   └── dwl-screenshot    # full/window/region screenshots
├── core.pkgs             # official repo packages
├── desktop.pkgs          # AUR packages
├── fonts.pkgs            # font packages
├── install.sh            # automated setup script
└── wallpaper             # default wallpaper

Requirements

  • Arch Linux (or an Arch-based distribution using pacman)
  • An AUR helper for desktop packages (optional): yay, paru, or trizen
  • A Wayland session (dwl provides it)

Installation

Clone the repository and run the installer:

git clone git@github.com:hanzjefferson/dotfiles.git
cd dotfiles
./install.sh

The installer will:

  1. Prompt you to choose an AUR helper (yay / paru / trizen, or skip AUR packages)
  2. Install official packages from core.pkgs via pacman
  3. Install AUR packages from desktop.pkgs and fonts from fonts.pkgs
  4. Build and install dwl, then copy it into config/dwl/
  5. Back up ~/.config to ~/.config.bak and deploy config/ to ~/.config
  6. Deploy scripts/ to ~/.local/bin and make them executable
  7. Optionally install the liquorix kernel for better low-end performance

To skip specific packages, add their names to a .pkgignore file in the repo root.

Keybindings

MOD is the Super/Windows key.

Launch

Keybinding Action
MOD + p Launch app (tofi)
MOD + Return Open terminal (foot)
MOD + b Open browser (Brave)
MOD + e Open file manager (PCManFM)
MOD + Escape Power menu
MOD + v Clipboard picker

Screenshot & Brightness

Keybinding Action
MOD + Print Full screenshot
MOD + Shift + Print Region screenshot
MOD + Alt + Print Window screenshot
XF86MonBrightnessUp Increase brightness
XF86MonBrightnessDown Decrease brightness

Focus & Stack

Keybinding Action
MOD + j / MOD + k Focus previous / next window
MOD + Shift + j/k Move window up / down stack
MOD + Tab Swap focus

Layout

Keybinding Action
MOD + = / MOD + - Increase / decrease master count
MOD + h / MOD + l Decrease / increase master ratio
MOD + / Zoom (toggle master)
MOD + Space Next layout
MOD + w Toggle floating
MOD + f Toggle fullscreen
MOD + q Close focused window
MOD + g Toggle gaps

Move / Resize (floating windows)

Keybinding Action
MOD + Arrow Move window 40px
MOD + Shift + Arrow Resize window 40px

Tags

Keybinding Action
MOD + 1..4 View tag
MOD + Ctrl + 1..4 Toggle tag view
MOD + Shift + 1..4 Send window to tag
MOD + Ctrl + Shift + 1..4 Send window + keep tag visible

System

Keybinding Action
MOD + Shift + Escape Quit dwl
Ctrl + Alt + F1..F12 Switch virtual terminal

Scripts

Script Description
dwl-brightness up / down adjusts backlight via brightnessctl
dwl-clipboard Pick from cliphist history with tofi, paste via wtype
dwl-power tofi-based suspend / logout / reboot / shutdown menu
dwl-screenshot full / window / region, saved to ~/Pictures/Screenshots and copied to clipboard

Credits

This setup would not exist without these awesome projects:

  • dwl — a compact, hackable Wayland compositor based on wlroots, the Wayland counterpart of dwm. dwl · MIT license
  • slstatus — a suckless status monitor providing system information (WiFi, battery, CPU, memory, and more) over stdout/EWMH. slstatus · MIT license
  • Wallpaper — the bundled wallpaper comes from the D3Ext/aesthetic-wallpapers collection. · MIT license
  • suckless.org — philosophy and inspiration behind dwm, slstatus, and the "do one thing well" approach
  • wlroots & sway — foundation and reference implementations that dwl builds upon
  • dwl-patches community — the patches in dwl/patches/ are adapted from the dwl-patches repository

License

This repository does not ship its own license. The bundled third-party components retain their respective licenses — dwl (MIT), slstatus (MIT), and the wallpaper collection (MIT, see the D3Ext/aesthetic-wallpapers repository).

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages