Skip to content


Repository files navigation


A lightweight notification daemon for Wayland. Works on Sway.

mako screenshot

mako implements the FreeDesktop Notifications Specification.

Feel free to join the IRC channel: #emersion on


mako will run automatically when a notification is emitted. This happens via D-Bus activation, so you don't really need to explicitly start it up (this also allows delaying its startup time and speed up system startup).

If you have several notification daemons installed though, you might want to explicitly start this one. Some ways of achieving this is:

  • If you're using Sway you can start mako on launch by putting exec mako in your configuration file.

  • If you are not using systemd, you might need to manually start a dbus user session: dbus-daemon --session --address=unix:path=$XDG_RUNTIME_DIR/bus


mako can be extensively configured and customized - feel free to read more using the command man 5 mako

For control of mako during runtime, makoctl can be used; see man makoctl


Install dependencies:

  • meson (build-time dependency)
  • wayland
  • pango
  • cairo
  • systemd, elogind or basu (for the sd-bus library)
  • gdk-pixbuf (optional, for icons support)
  • dbus (runtime dependency, user-session support is required)
  • scdoc (optional, for man pages)
  • jq (optional, runtime dependency)

Then run:

meson build
ninja -C build


I have a question!

See the faq section in the wiki.