A clean, functional Quickshell configuration for Hyprland that includes a top bar with workspace indicators, a clock, and a dashboard overlay with GitHub contribution tracking, it's main purpose is to introduce people to ricing their desktop experience.
This is a "rice" (customized desktop environment configuration) built with Quickshell, a Qt-based shell for Wayland compositors. It's designed to be:
- Simple - Main branch is a declutered starting point
- Functional - Daily driver ready with practical features
- Beginner-friendly - Well-organized, easy to configure code (at least I hope so)
- Workspace indicators - Visual dots showing your Hyprland workspaces that you can click to switch to them
- Clock - Shows current time in 24-hour format
- Minimal design that you can expand upon and create your own rice
Press your configured keybind to toggle a centered popup with:
- Profile section - Your profile picture and quick action buttons
- GitHub contributions graph - Live visualization of your yearly GitHub activity
- Quick actions:
- Power off
- Reboot
- Screenshot (using grim + slurp + swappy)
- App launcher (wofi)
- Launch Steam
- Color picker (hyprpicker)
- Quickshell - The shell itself
- Hyprland - Wayland compositor
- Qt 6 with QML support
curl- For fetching GitHub contributionsgrim,slurp,swappy- Screenshot functionalitywofi- Application launcherhyprpicker- Color pickersteam- If you want the Steam launcher button
-
Clone this repository to your Quickshell config directory:
git clone https://github.com/yourusername/nicea ~/.config/quickshell/nicea -
Configure Quickshell to use this configuration. Create or edit
~/.config/quickshell/shell.qml:import "nicea"
-
Set up the dashboard toggle by adding to your Hyprland config (
~/.config/hypr/hyprland.conf):bind = SUPER, D, exec, echo "toggle" > /tmp/qs-dashboard.fifo(Replace
SUPER, Dwith your preferred keybind) -
Customize your settings in
Themes/Config.qml:- Change
githubUsernameto your GitHub username - Replace
pfp.jpgwith your own profile picture - Adjust bar positioning if needed
- Change
Edit Themes/Colors.qml to modify the color scheme. The current theme uses a gray/red palette, but you can easily change it:
property color barBackground: "#333333" // Dark gray bar
property color conlevel5: "#D35435" // Accent color (red)
// ... and moreAll dimensions are centralized in DashboardUtils/Dimensions.qml:
readonly property int dashWidth: 650 // Dashboard width
readonly property int btnSize: 40 // Button size
readonly property int tileWidth: 11 // Contribution square size
// ... etcEdit the model array in DashboardUtils/DashButtons.qml to add or remove buttons. Each button needs:
- An icon (place SVG in
icons/folder) - A tooltip
- A command in the switch statement
Change bar position in Themes/Config.qml:
readonly property bool barTop: true // Set to false for bottom bar
readonly property bool barBottom: false // Set to true for bottom barnicea/
├── shell.qml # Main entry point
├── Bar.qml # Top bar component
├── Dashboard.qml # Dashboard overlay
├── DashboardUtils/ # Dashboard components
│ ├── ContribGraph.qml # GitHub contributions graph
│ ├── DashButtons.qml # Profile + action buttons
│ ├── Dimensions.qml # Size constants
│ └── scripts/ # Shell scripts for actions
├── Themes/ # Theming configuration
│ ├── Colors.qml # Color palette
│ └── Config.qml # User configuration
└── icons/ # SVG icons and images
Dashboard won't toggle:
- Make sure the FIFO pipe is being created:
ls -la /tmp/qs-dashboard.fifo - Check your Hyprland keybind is correct
- Verify the toggle command:
echo "toggle" > /tmp/qs-dashboard.fifo
GitHub graph not showing:
- Check your internet connection
- Verify your username in
Themes/Config.qml - Check console output:
quickshellwill show fetch errors
Screenshots (and Steam, search, color-picker) not working:
- Install required tools:
grim,slurp,swappy - Make scripts executable:
chmod +x ~/.config/quickshell/nicea/DashboardUtils/scripts/*.sh
Icons not appearing:
- Verify icon paths in
Themes/Config.qml - Make sure SVG files exist in the
icons/directory
- Built with Quickshell
- GitHub contributions API by grubersjoe
- Designed for Hyprland
This is my current daily driver, so it's actively maintained! Feel free to:
- Open issues for bugs
- Submit PRs for improvements
- Fork and customize for your own setup
- Check the personal branch to see how I use nicea personally