Mako Notification Daemon
Mako is a lightweight notification daemon designed specifically for Wayland compositors. It provides elegant, customizable notifications that integrate seamlessly with the Hyprland desktop environment.Configuration
Mako is configured through a simple text file at~/.config/mako/config.
Basic Configuration
Catppuccin Theme
Matches the desktop color scheme
5 Second Timeout
Notifications auto-dismiss after 5s
3 Max Visible
Shows up to 3 notifications at once
Rounded Corners
10px border radius for modern look
Notification Styling
Color Scheme
Mako uses Catppuccin Mocha colors for consistency:Color Breakdown
Color Breakdown
| Property | Color | Hex | Description |
|---|---|---|---|
| Background | Mantle | #1e1e2e | Dark background |
| Text | Text | #cdd6f4 | Light text color |
| Border | Lavender | #b4befe | Soft purple border |
Border and Shape
- Border Size: 2px solid border for definition
- Border Radius: 10px rounded corners matching Hyprland windows
The border radius matches other UI elements (Hyprland: 9px, Mako: 10px) for visual consistency.
Timeout Behavior
Timeout Settings
Timeout Settings
| Setting | Value | Description |
|---|---|---|
default-timeout | 5000ms | Normal notifications dismiss after 5 seconds |
ignore-timeout | 1 | Respects application-specified timeouts |
Urgency Levels
Mako supports different styles based on notification urgency:Critical Notifications
Red Border
#f38ba8 - Catppuccin RedNo Timeout
Stays until manually dismissed
Darker Background
#313244 for emphasis- Require manual dismissal (timeout=0)
- Have red borders for urgency
- Use a darker background to stand out
- Typical use: System errors, battery warnings
Category-Based Styling
#fab387) to distinguish them from regular notifications.
Maximum Visible Notifications
If more than 3 notifications arrive, they stack in a queue and appear one by one as space becomes available.
Position and Layout
While not explicitly set in this config, Mako defaults are:- Position: Top-right corner
- Width: Auto-sized based on content
- Padding: Internal padding for readability
- Margin: Space between notifications
top-left,top-center,top-rightbottom-left,bottom-center,bottom-right
Usage
Manual Testing
Send a test notification:Common Notification Sources
System Notifications
System Notifications
- Battery warnings
- Volume changes
- Brightness adjustments
- System updates
- Drive mount/unmount
Application Notifications
Application Notifications
- Chat messages
- Email alerts
- Calendar reminders
- Download completions
- Build status
Interactivity
Left Click
Dismiss notification
Right Click
Context menu (if available)
Middle Click
Invoke default action
Hover
Pause auto-dismiss timer
Customization Options
Font Styling
Add font configuration:Icon Display
Control icon appearance:Grouping
Group similar notifications:Actions
Enable notification actions:Advanced Configuration
Per-Application Settings
Multiple Criteria
Format Strings
Customize notification text:%a- App name%s- Summary%b- Body%i- Icon name
Control Commands
Integration with Hyprland
Mako integrates with Hyprland’s window rules:- Stay on top (
pin = on) - Float above other windows
- Don’t interfere with tiling layout
Performance
Lightweight
Minimal memory footprint (~5MB)
Efficient
No background polling or timers
Wayland Native
Built specifically for Wayland
Fast Rendering
Hardware-accelerated with layer-shell
Troubleshooting
Notifications Not Showing
Notifications Not Showing
Check if Mako is running:Start Mako if not running:Ensure Mako starts with Hyprland in
autostart.conf:Config Not Loading
Config Not Loading
Verify config file location:Reload configuration:
Styling Issues
Styling Issues
Check for syntax errors in config file. Each line should be:No spaces around
= sign.