安装步骤未在 README 正文给出,需按 Installation 章节或 Wiki 操作;主题色模块并非全部默认启用,需按 Color Modules 文档手动开启;多显示器热插拔后需按 Super + Alt + r 重载 BSPWM 才会重新配置
dotfiles
gh0stzkGPL-3.0活跃维护一套基于 BSPWM 的 Linux 桌面配置,内置 18 套主题和主题选择器,可随时切换外观,适合想快速搭建平铺式窗口环境的 Arch 用户。
BSPWM environment with 18 themes. With a theme selector to change on the fly.
README 未给出可直接复制的安装命令,安装步骤见 README 的 Installation 章节及 WikiREADME 未说明显存或 GPU 要求;作者称其环境启动时内存占用低于 600 MB,属于轻量窗口管理器方案。
一套开箱即用的 BSPWM 桌面环境配置,内置 18 套主题可随时切换
一套基于 BSPWM 的 Linux 桌面配置,内置 18 套主题和主题选择器,可随时切换外观,适合想快速搭建平铺式窗口环境的 Arch 用户。
核心能力
- 内置 18 套手工配色主题,无需重启会话即可切换
- 主题色模块化同步到 GTK、Rofi、Polybar、Neovim 等组件
- 支持随机、自定义目录、动画、幻灯片等 5 种壁纸设置方式
- 提供 Rofi 小程序:壁纸、网络、蓝牙、剪贴板、截图、电源菜单
- 自带 RiceEditor 图形化调整当前主题的视觉与配置项
容易踩的坑
暂无 release 数据(可能没有发版,或尚未同步)。
用户点评
登录用户的真实使用记录,可按版本和硬件筛选还没有人点评。第一个说出真实体验的人最有价值。
A complete BSPWM Window Manager Environment
Install Features Themes Keybindings Wiki
https://github.com/user-attachments/assets/3eaae1e2-04dc-4a9b-8c91-139f85f5fb9e
👻 Welcome
Welcome to my dotfiles. I’m gh0stzk from Mexico.
These dotfiles are designed with the goal of providing a bspwm environment that is lightweight, efficient, and functional, tailored for any use—whether it’s gaming, web browsing, or a productive work setting.
You’ll have 18 unique themes to choose from, each with its own style, colors, and navigation bar options. With this variety, you’re sure to find one that suits your preferences and needs.
:book: Wiki
I already started writing the Wiki, you should give it a read. If it is your first time with a WM, you may be interested in reading First steps after installing the dotfiles or maybe read frequently asked questions and answers Keybinds Firefox Theme.
🚀 Features
Change themes on the fly
You can switch themes instantly, with no need to restart your session or environment. With just one click, the change is applied immediately.
Consistency Across the Environment
Unlike Matugen, Pywal, and other wallpaper-based theming tools, colors are not extracted from images. Every theme includes a handcrafted color palette, carefully selected to maintain consistency, readability, and visual appeal.
A modular theming system propagates these colors across the entire desktop environment. Switching themes instantly updates:
- BSPWM
- GTK (3.x)
- Dunst
- Rofi
- Terminals
- Alacritty
- Ghostty
- Kitty
- St
- Xfce-terminal
- Neovim
- Eww
- Firefox
- Jgmenu
- Geany
- ScreenLocker (i3lock-color)
- Mpv Player
- Cava
- Zathura
- Polybar
- Cli-Tools
- Yazi
- Fzf-Tab
- Bat
- Eza
- Ncmpcpp
Not all modules are enabled.
If you want to know how it works and how to enable or disable modules, go to Color Modules
ToDo-List:
- Obsidian
- Telegram-desktop
- Steam
- Btop
- Qt (5/6)
- Rmpc
Performance optimized
BSPWM is not a desktop environment (DE), and that’s exactly what makes it stand out in terms of lightweight performance. On my systems, my BSPWM-dotfiles environment starts with under 600 MB of RAM usage. While these numbers don't tell the whole story, they do highlight the minimalist approach that a window manager should embrace.
In addition, each theme can be configured independently — either by manually editing the theme’s configuration file or using my RiceEditor application. This ensures a high level of customization: if you want a minimalist setup for a specific theme, you can disable animations, shadows, rounded borders, or fading effects. On the other hand, if you prefer a more visually rich theme with all those features enabled, that’s fully supported as well. My dotfiles are built to provide that level of flexibility.
Multi-Monitor support
If you have multiple monitors, BSPWM will automatically detect and configure up to 4 displays when launching with my dotfiles.
If you connect an additional monitor while the session is already running, simply reload BSPWM using the Super + Alt + r key combination, and your monitors will be configured instantly.
You can check the Wiki 👉 Monitors Setup if you want to edit the default layouts.
RiceEditor
Is an application designed to simplify the customization of your current theme. It allows you to easily adjust various visual and configuration aspects, tailoring your environment to your preferences without the need to manually edit configuration files.
Wallpaper Engines
My dotfiles support 5 different methods for setting your favorite wallpaper:
- Random: Sets a random wallpaper from the theme’s Walls directory.
- CustomDir: Sets a random wallpaper from a directory you specify.
- Default: Sets a specific image as wallpaper. (Default)
- CustomAnimated: Supports animated wallpapers (.mp4, .mkv, .gif).
- Slideshow: Changes the wallpaper every 15 minutes with a random image from the theme’s Walls directory.
Each option is theme-specific, meaning you can have an animated wallpaper in one theme, a static image in another, or a custom directory in a third — And all your settings will be preserved per theme. By default, all themes load a default wallpaper from their Walls Rice folder.
Check the wiki for more details: 👉 Wallpapers Configuration
Scratchpad
A scratchpad is a tool designed to provide quick, temporary access to applications or notes without disrupting the desktop workflow. When activated, the scratchpad appears over the current workspace, allowing the user to access applications like a terminal, text editor, or any configured tool. Minimizing it hides the scratchpad from view but keeps it running in the background, ready to be reopened with a simple keyboard shortcut.
It's ideal for quick note-taking, running commands, or accessing auxiliary tools without losing focus on the current task.
Rofi Applets
Rofi applets to simplify your workflow:
- Wallpaper Selector - See the wiki WallpaperSelector
- Network Manager
- Bluetooth Controller
- Clipboard Manager
- Screenshot Tool
- Android MTP Manager
- Power Menu
- Keyboard Layout
- Terminal Selector (Alacritty, Kitty, ST and ghostty)
- Rofi app launcher style selector
- Tab app switcher
- Pass Manager (Using pass app)
Neovim Setup
Simple yet powerful neovim configuration with the following features:
- Treesitter
- Lsp servers
- Completions blink.nvim
- Formatting conform.nvim
- Picker Snacks-picker
- Explorer Snacks-explorer
- Tab Line barbar.nvim
- Statusline lualine.nvim
- Autopairs mini-autopairs
- Hipatterns mini-hipatterns
- Indent guides Snacks-indent
- Dashboard Snacks-dashboard
- WhichKey which-key.nvim
Optimized ZSH Configuration
Optimized, native ZSH configuration. Not Oh-My-Zsh or other bloated plugin managers. Some features:
- Fastest and optimized performance compinit function
- Autocompletion
- Syntax highlighting
- History substring search
- Fzf-tab completion with previews!!
🎨 Launchers
| :tshirt: Theme Selector |
|---|
| :traffic_light: Wallpaper Selector |
|---|
| :tshirt: Bar Selector |
|---|
🎨 The themes
| Emilia |
|---|
| Jan |
|---|
| Aline |
|---|
| Andrea |
|---|
| Cynthia |
|---|
| Isabel |
|---|
| Silvia |
|---|
| Melissa |
|---|
| Pamela |
|---|
| Cristina |
|---|
| Karla |
|---|
| z0mbi3 |
|---|
| Brenda |
|---|
| Daniela |
|---|
| Marisol |
|---|
| h4ck3r |
|---|
| Varinka |
|---|
| Yael |
|---|
Rofi applets
| Power Menu | Screenshoter |
| Keyboard Layout | Android Mount |
| Network Manager | Clipboard Manager |
| Bluetooth Manager | Terminal Manager |
| Tab app switcher | Rofi style selector |
| Rofi password manager |
Rofi app launcher styles
| Normal | Full | Minimal |
Fzf tab terminal completions with previews!
| cd, ls, pacman, systemctl, kill, cat, commands with preview! |
Eww widgets
| Profile Panel | Music Player |
Rice Editor
| Rice Editor |
Lockscreen
| Lockscreen |
Jgmenu
| Jgmenu |
Yazi config
https://github.com/user-attachments/assets/8e15cc1a-88b8-4a7e-a4de-e7da76021406
Scratchpad
https://github.com/user-attachments/assets/79764678-c519-4a41-a333-2a862a6d10f8
Environment
| The environment changes with each theme. In the gif: (Ranger, Thunar, Ncmpcpp) |
Firefox theme
| Firefox theme - z0mbi3 Fox |
|---|
Neovim setup
| Neovim setup |
|---|
| Plugins included Neovim setup wiki |
Very useful keybindigs to know...
| Keys | Action |
|---|---|
super + x | Close Windows |
super + Entersuper + alt + Enter | Open a terminalOpen a floating terminal. |
alt + @space | Display menu to select a theme. |
super + @space | Apps Menu. |
super + alt + @space | Bar Selector. |
super + alt + w | Opens a menu to select a wallpaper. |
super + alt + hsuper + alt + u | Hides bar/sunhide bar/s |
super + alt + s | Takes screenshot. |
ctrl + alt + [plus,minus,t] | Changes transparency on focused window. |
ctrl + super + alt + pctrl + super + alt + rctrl + super + alt + k | Power off computerRestart computerBrute kill a window/process |
super + alt + r | Restart bspwm. |
alt + F1 | Show keybinds cheatsheet |
And more.. You need to look sxhkdrc file for more, or press Alt + F1 for a cheatsheet.
[!CAUTION] ⚠️⚠️⚠️ My dotfiles are designed for a 1600x900 resolution with 96 DPI on a single monitor. Some elements may appear different on higher or lower resolutions. You may need to make adjustments to adapt them to your preferences and setup. ⚠️⚠️⚠️
[!important] ✏️✏️✏️ The installer assumes you already have a functional Arch Linux installation, whether it’s a fresh install or an existing setup.
A login manager of your choice is required; lightdm is recommended.
The rofi connection manager applet, works with NetworkManager
If using a virtual machine, be sure to change the Picom backend from glx to xrender before rebooting, and verify that hardware acceleration is correctly configured in your VM. ✏️✏️✏️
[!warning] :wrench::wrench::wrench: I have tested the installation and functionality of these dotfiles on both high- and low-end machines.
Some adjustments may still be needed, such as changing the Picom backend or VSync settings to ensure compatibility with your graphics card.
If you encounter any issues, feel free to open an issue. :wrench::wrench::wrench:
💾 Installation:
[!NOTE] The installer only works for ARCH Linux, and based distros. (Except NO-Systemd ditros like Artix)
Before running this command, check RiceInstaller to make sure it's working and confirm it's safe for your system.
- Open a terminal and execute this commands one by one:
# Download the installer in your $HOME
curl -LO http://gh0stzk.github.io/dotfiles/RiceInstaller
# Give it execution permission
chmod +x RiceInstaller
# Run the installer
./RiceInstaller