My Productivity-Focused Hyprland Desktop Configuration

中文版本

I’ve always sought a clean, efficient, and productivity-focused desktop environment. After trying GNOME and KDE, I ultimately chose Hyprland for its lightweight nature, power, and extensive customization capabilities.

Hyprland Elite Desktop

This article documents the process of how I tailored this Hyprland setup for myself. It’s not a simple copy-paste or beautification tutorial, but a solution refined through continuous thought and practice to solve the specific pain points I encounter in my daily work.

Core Features and Design Philosophy

All my configurations revolve around the core concept of “productivity.” Every feature and script is designed to minimize distractions and maximize efficiency.

1. Input Method Optimization (Fcitx5 + Rime)

The Chinese input method has always been a major challenge on Linux. Although fcitx5-rime is a decent combination, the default experience under Hyprland is far from perfect. I spent a significant amount of time debugging and resolved several key issues:

  • Mixed-up Punctuation: Ensured that full-width punctuation is used in Chinese mode.
  • Abnormal Shift Key Behavior: Fixed the logic for switching between Chinese and English modes with the Shift key.
  • Incomplete Candidate Box Display: Adjusted the configuration to ensure the candidate box displays stably and completely.

After these optimizations, the typing experience is now very close to the native feel on Windows/macOS, allowing for fluid and seamless typing.

2. Efficient Status Bar Tools (Waybar)

The status bar is the central hub for information. I used Waybar to integrate some productivity tools that are personally very useful to me:

  • Pomodoro Timer: Integrated directly into the status bar. A single click starts a 25-minute focus session, helping me manage my time better.
  • TOTP Authenticator: I brought the functionality of Google Authenticator to my desktop. When I need a two-factor authentication code, I simply press Super+T, and the current code is displayed in the status bar, saving me the trouble of reaching for my phone.
  • Notification Center: Implemented based on mako, it allows me to easily view and manage historical notifications, ensuring I never miss any important information.

3. Practical Automation Scripts

I wrote a series of scripts to automate routine repetitive tasks:

  • Automatic Wallpaper Switching: A script automatically downloads high-quality wallpapers from sources like Unsplash and changes them periodically to keep the desktop fresh.
  • Quick Note-Taking: When inspiration strikes, pressing Alt+I brings up a floating window to quickly jot down ideas. The content is automatically saved to my Obsidian daily notes, seamlessly integrating with my knowledge management workflow.
  • System Status Monitoring: Real-time monitoring of CPU and memory usage. It sends a notification when system resources are abnormal, allowing me to intervene in a timely manner.

My Dotfiles

I manage all my configurations in a unified ~/dotfiles directory, which is open-sourced on GitHub.

dotfiles/
├── config/           # Configuration files for various applications (Hyprland, Waybar, Rime...)
├── scripts/          # The automation scripts mentioned above
├── shell/            # zsh/bash related configurations
└── dotfiles.sh       # A script for one-click deployment and management

If you are interested in this setup, you can easily deploy it on your machine:

# 1. Clone my configuration repository
git clone https://github.com/laofahai/hyprland-elite-desktop ~/dotfiles
cd ~/dotfiles

# 2. (Optional) Modify personal settings
# Such as notification push topics, etc.
cp .env.example .env.local
nvim .env.local

# 3. Execute one-click deployment
./dotfiles.sh setup

The script will automatically handle dependency installation and symlink creation. After it finishes, simply log back in to experience the full environment.

Conclusion

I have been using this Hyprland environment stably for over half a year, and it perfectly accommodates my development, writing, and daily use. It may not be the most glamorous, but it is definitely the most comfortable and efficient desktop I have ever used.

It is worth mentioning that during the process of building this configuration, I heavily relied on AI programming tools to assist me in writing and debugging scripts. I proposed ideas and requirements, and the AI handled the specific code implementation. This human-computer collaborative development model greatly enhanced my efficiency.

I hope my sharing can bring you some inspiration. If you also want to build your own efficient desktop, you might want to give Hyprland a try. My configuration files are completely open source, and you are welcome to ask questions or make suggestions on GitHub.

This site is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License.

Comments