Files
quartz/content/10-19 LIFE/13 TECH SETUP/13.13 OS SETUP/Mako.md
Quartz Syncer 125a9b1752
All checks were successful
Build and Deploy Quartz / build (push) Successful in 26s
Published multiple files
2026-02-05 09:53:27 -07:00

107 lines
1.7 KiB
Markdown

---
publish: true
permalink: /10-19 LIFE/13 TECH SETUP/13.13 OS SETUP/Mako.md
title: Mako
created: 2026-01-29T15:18:16.265-07:00
modified: 2026-02-05T09:20:32.970-07:00
tags:
- notifications
- wayland
- hyprland
cssclasses: ""
---
Mako is a lightweight notification daemon for Wayland compositors.
## Installation
```bash
sudo pacman -S mako libnotify
```
## Configuration
Config location: `~/.config/mako/config`
```ini
# Appearance
font=monospace 11
background-color=#282828
text-color=#ebdbb2
border-color=#458588
border-size=2
border-radius=5
# Behavior
default-timeout=5000
ignore-timeout=0
max-visible=5
# Position
anchor=top-right
margin=10
# Grouping
group-by=app-name
# Actions
on-button-left=dismiss
on-button-right=dismiss-all
# Urgency-specific
[urgency=low]
background-color=#282828
[urgency=normal]
background-color=#282828
[urgency=critical]
background-color=#cc241d
default-timeout=0
```
## Hyprland Integration
Add to `~/.config/hypr/hyprland.conf`:
```bash
exec-once = mako
```
## Usage
### Test notifications
```bash
notify-send "Hello" "This is a test notification"
notify-send -u critical "Warning" "This is urgent!"
```
### Control mako
```bash
makoctl dismiss # Dismiss latest
makoctl dismiss --all # Dismiss all
makoctl restore # Restore last dismissed
makoctl list # List waiting notifications
makoctl reload # Reload config
```
## Do Not Disturb
```bash
# Enable DND
makoctl set-mode do-not-disturb
# Disable DND
makoctl set-mode default
```
Add a keybind:
```bash
bind = SUPER, N, exec, makoctl set-mode do-not-disturb
bind = SUPER SHIFT, N, exec, makoctl set-mode default
```
## Resources
- GitHub: https://github.com/emersion/mako
- Man page: `man 5 mako`