Skip to content
Tags give the ability to mark specific points in history as being important
  • v1.9.0
    mako v1.9.0
    
    New features:
    
    - "makoctl mode -t <name>" can be used to toggle modes
    - The "dismiss --no-history" action can be used to bypass history
    - The cursor-shape-v1 protocol is now supported
    
    Full commit history below.
    
    Alexander Orzechowski (1):
          Implement wp_cursor_shape_v1
    
    Liao Junxuan (3):
          Avoid double-destroying the frame callback
          Destroy the frame callback in `destroy_surface`
          Set wayland surface width per each mako_surface
    
    Mohammed Anas (2):
          Remove unused includes
          Allow dismissing notif without adding it to history
    
    Paul Meyer (1):
          Add -t option to toggle modes
    
    Pranjal Kole (1):
          render: fix segfault
    
    Simon Ser (16):
          man: improve binding docs
          man: re-format lists in criteria
          build: drop unnecessary define values
          build: use add_project_arguments() for define
          build: drop intermediate static lib for protocols
          build: use pkg-config to find wayland-scanner
          build: require wayland-scanner v1.14.91
          Replace xdg-output with wl_output v4
          Check wl_display_roundtrip() errors
          Drop wordexp() usage in get_config_path()
          Use mako_asprintf() in notification_execute_binding()
          Define _POSIX_C_SOURCE globally
          Move man pages to doc/ subdir
          doc: link to Pango font description docs
          makoctl: reject mode positional arguments unless -s is used
          build: bump version to 1.9.0
    
    Tobias Rehbein (1):
          readme: basu needs a manual dbus user session
    
  • v1.8.0
    mako v1.8.0
    
    New features:
    
    - A new `makoctl history` command to display history
    - An action name can be passed to `makoctl invoke`
    - `makoctl list` now includes desktop-entry and urgency
    
    Full commit history below.
    
    Access (1):
          Check icon name before pass it to glob()
    
    Consolatis (1):
          Add invoke-action <action>
    
    Dixon Sean Low Yan Feng (2):
          Fix positioning of icon
          Fix positioning of text being offset by border size
    
    Grzegorz Szymaszek (1):
          man: do not merge all makoctl mode invocations
    
    Jadarma (1):
          Add urgency indicator in makoctl list.
    
    Jeff Zhao (1):
          fix segfault when surface->surface_output is NULL
    
    Markus Vieth (1):
          makoctl: add command to list history
    
    Simon Ser (2):
          Add desktop-entry to `makoctl list`
          build: bump version to 1.8.0
    
  • v1.7.1
    mako v1.7.1
    
    Simon Ser (2):
          Fix inverted has_mode condition
          build: bump version to 1.7.1
    
  • v1.7
    mako v1.7
    
    This new release includes:
    
    - Support for multiple modes active at the same time.
    - A new command to list currently active modes.
    - Improved HiDPI support.
    - A new outer-margin option.
    
    Full commit history below.
    
    Alexander Orzechowski (2):
          wayland: Support HiDPI for cursor
          wayland: Don't render a frame on same-size configure
    
    Birger Schacht (1):
          Fix typos
    
    Hugo Osvaldo Barrera (2):
          Fix bad conditional in systemd service file
          Allow rendering notification_id in notifications
    
    Oğuz Ersen (1):
          contrib/completions: add bash completions
    
    Quantum (1):
          Include <errno.h> to use errno in wayland.c
    
    Rouven Czerwinski (2):
          wayland: don't render if we don't have outputs
          wayland: set_dirty if we have outputs again
    
    Simon Ser (21):
          ci: drop -Dsystemd from freebsd build options
          ci: drop removed "systemd" option
          build: use list for sdbus dep, drop sh for scdoc
          build: use get_variable instead of get_pkgconfig_variable
          contrib/apparmor: drop AppArmor profile
          build: switch from join_paths() to /
          build: fix indentation
          build: turn on -Wundef
          build: remove unnecessary intermediate variable
          build: print summary
          Fix -Wundef on libelogind/basu
          Fix a few memory leaks in destroy_notification
          build: fix missing datadir variable for completions
          Use an array to store current modes
          makoctl: fix whitespace
          Add D-Bus method to list modes
          Ensure there are no duplicate modes
          Add D-Bus method to set modes
          makoctl: add commands to set, add and remove modes
          Deprecate the "default" mode
          build: bump version to 1.7
    
    ThinkChaos (1):
          Add outer-margin to allow extra margin for first/last notifications
    
    kraftwerk28 (1):
          Load cursor theme from XCURSOR_THEME
    
    Đoàn Trần Công Danh (1):
          build: find build tools in build system instead of target
    
  • v1.6
    65a314c2 · build: bump to v1.6 ·
    mako v1.6
    
    This release adds the following new features:
    
    - Modes allow to conditonally change options at runtime, and allow to
      setup things like a "do not disturb" mode.
    - Add support for synchronous hints, to easily replace an existing
      notification from a script.
    - Add an "exec" binding to execute a command
    - Add "on-notify" bindings to trigger an action when a notification
      is opened.
    
    The release also includes a few other improvements and some bug fixes.
    
    Full changelot below.
    
    Bill Doyle (1):
          Update IRC channel
    
    Davester47 (1):
          Set the cursor to left_ptr when the mouse moves over a notification
    
    FollieHiyuki (3):
          Fix a small typo in mako --help
          contrib/completion: add missing fish completions
          contrib/completions: keep verbs consistent in zsh completions
    
    Kirens (1):
          contrib/completions: add missing declaration of fish_comp
    
    Matej Novota (1):
          Add anchor to center-right and center-left
    
    Nicolas Cornu (1):
          Fix out-of-bounds write in apply_superset_style
    
    Ragnar Groot Koerkamp (1):
          Print notification category in `makoctl list`
    
    Ricardo Biehl Pasquali (1):
          Fix memory leak by freeing image before returning in error path
    
    Simon Ser (16):
          build: bump version to 1.5
          Rename get_binding to get_button_binding
          readme: use upstream spec link
          Introduce modes
          ci: switch to Alpine edge
          Keep track of surface focus for pointer and touch
          Implement xdg-activation-v1
          man: fix trailing comma
          Make bindings style options
          man: makoctl menu has a mandatory arg
          Add has_prefix helper
          Add an exec binding
          Add id variable to exec binding
          Add on-notify bindings
          build: group add_project_arguments() calls together
          build: bump to v1.6
    
    williamvds (2):
          Use synchronous hints for replacing notifications
          Fix notification replacement tag comparison
    
  • v1.5
    c49350f6 · Add to man page ·
    mako v1.5
    
    This long overdue release contains a lot of new features and bug
    fixes. New features include:
    
    - Allow multiple notifications to be anchored to different outputs, edges and
      layers at the same time
    - Add an history buffer for expired notifications
    - Add customizable button and touch bindings
    - Add regex criteria for summary and body
    - Make icon position configurable
    - Add support for basu, for non-systemd installations
    - Allow specifying notification IDs with makoctl
    - Allow dismissing a whole group at once with makoctl
    - Make text alignment customizable
    
    Thanks to all contributors!
    
    Alexey Yerin (1):
          Add text-alignment option
    
    Arkadij Chistyj (1):
          max-visible = 0 now works
    
    Bill Doyle (25):
          Rework border drawing
          Scale border-radius
          Inset progress completely within border
          Keep minimum height large enough for border-radius
          Disable subpixel antialiasing when requested
          Improve icon-path documentation
          Remove misleading spaces from mako.5
          Add parse_int_ge to improve integer parsing
          Add missing flags to makoctl manpage
          Add validate_criteria
          Document group match rules
          Add anchor and output criteria fields + validation
          Finish adding anchor and output criteria
          Move max_visible back to notification style
          Rematch criteria immediately before rendering
          Note that we don't match criteria while grouping
          Don't accidentally validate failed criteria again
          Limit use of max_visible to output/anchor criteria
          Move new body validation into validate_criteria
          Move mako_criteria_spec_any to correct header
          Simplify counting hidden notifications
          Allow create_notification outside handle_notify
          Replace hidden_style with real criteria
          Improve message handling in validate_criteria
          Add to man page
    
    David Ross (1):
          Add support for body criteria
    
    Faustin Lammler (1):
          Change urgency level name
    
    Graham Christensen (3):
          criteria: always init its list
          Support dismissing notifications by group
          config: allow configuring button and touch bindings
    
    Hugo Osvaldo Barrera (2):
          Include a systemd.service file
          readme: improve documentation regarding delayed startup
    
    J. Konrad Tegtmeier-Rottach (1):
          Add a history buffer for expired notifications
    
    James Mills (1):
          Add missing newline to error
    
    Jan Beich (6):
          eventloop: bump POSIX for monotonic clock and close-on-exec
          build: require epoll-shim on BSDs
          ci: add FreeBSD job
          ci: switch Alpine to elogind after 17b029680585
          notification: simplify evdev include like swaywm/wlroots@f80d174e8b17
          ci: add evdev-proto on FreeBSD for <linux/input-event-codes.h>
    
    Jason Nader (1):
          completions: add fish
    
    Keith Bowes (1):
          Make sure an adequate version of scdoc is available
    
    Kenny Levinsen (3):
          eventloop: Process events before entering loop
          Replace frame callback when surface is closed
          Reschedule frame if configuration is pending
    
    Kirill Chibisov (1):
          makoctl: properly silence checking with 'type'
    
    Mark Stosberg (1):
          systemd: modernize wayland check.
    
    Markus Ongyerth (3):
          Improve center alignment
          Add icon location style option
          Add capabilities to use multiple surfaces
    
    Max Mazurov (1):
          Update AppArmor profile
    
    Maxim Baz (1):
          Do not use state->last_id to retrieve last notification
    
    Riley Sutton (1):
          Add progress functionality info to manpage
    
    Robin Opletal (1):
          readme: add reference to man pages
    
    Roosemberth Palacios (1):
          Add link to FAQ section in the wiki
    
    Simon Ser (11):
          Add `makoctl set`
          contrib/completions: fix path to fish completions
          man: add dismiss -g to makoctl docs
          Remove unnecessary goto
          build: introduce sd-bus-provider option
          build: add basu as sd-bus provider
          ci: add alpine build
          readme: mention basu
          Revert "Add `makoctl set`" (#334)
          contrib: drop apparmor and systemd build-system integration (#338)
          Drop systemd service reference from D-Bus service
    
    TheAvidDev (1):
          Add regex support for summary criteria
    
    Torstein Husebø (1):
          treewide: fix typos
    
    V (1):
          Fix manpage formatting
    
    Vyacheslav Konovalov (1):
          Fix makoctl -gt 5 arguments limit #221
    
    gammafn (1):
          Fix: 'type' does not always have '-p'
    
    pschervakov (1):
          mako.5.scd: fix typo
    
    shroff (1):
          Accept id args in makoctl for menu and dismiss
    
    williamvds (4):
          Fix some memory leaks
          Fix memory leaks caused by -c option
          Fix memory leak when token == NULL
          Ensure config is freed when exiting early
    
    Érico Rolim (1):
          render,criteria: replace assert(0) with abort().
    
  • v1.4.1
    ad972999 · Bump to v1.4.1 ·
    mako v1.4.1
    
    This release contains a few new features and bug fixes. New features
    include:
    
    * `makoctl menu` to choose a notification action
    * A CLI flag to use a custom config file path
    * Improved touch support (multiple touches)
    
    Thanks to all contributors!
    
    Ashkan Kiani (1):
          Add variant for int32_t and fallback error message
    
    Bill Doyle (1):
          Support image-path and more deprecated hints
    
    Dasith Gunawardhana (1):
          Add --config option
    
    Martin Michlmayr (2):
          Allow access to icons in AppArmor profile
          Fix typo in man page
    
    Ryan Adolf (2):
          Add support for tracking multiple touches
          wayland.c style: break if statements into blocks
    
    Simon Ser (4):
          readme: link to the spec
          readme: add jq to list of deps
          Split out configuration docs
          Bump to v1.4.1
    
    rpigott (1):
          Include list command in makoctl zsh completions
    
    xPMo (2):
          makoctl: fix test command in "invoke"
          Support choosing a notification action with 'makoctl menu' (#195)
    
  • v1.4
    mako v1.4
    
    This release polishes icon support introduced in v1.3 and adds a few other
    cool features. Highlights:
    
    * Icon support is now complete
    * Touchscreens are now supported
    * makoctl can now list current notifications
    * makoctl can now list and invoke notification actions
    * A D-Bus service file has been added
    * Various bug fixes
    
    Thanks to all contributors!
    
    AN3223 (1):
          Fixed typo, critiera -> criteria
    
    Bill Doyle (1):
          Allow listing and invoking actions with makoctl (#158)
    
    Daniel Eklöf (1):
          makoctl: unbreak 'dismiss' and 'invoke' called without argument
    
    Joe Lanford (1):
          Add icon_data hint support
    
    Meiyo Peng (1):
          Add a D-Bus service file for mako
    
    Michael Aquilina (1):
          Fix typo in man s/backslack/backslash
    
    Sauyon Lee (2):
          Properly URL decode file:// URIs
          notification.c: use correct format arguments
    
    Simon Ser (4):
          meson: bump version to v1.3
          readme: add gdk-pixbuf dependency
          Add ListNotifications to D-Bus API
          readme: add IRC channel
    
    Stephen Brown II (1):
          Add exact-string matching to criteria
    
    bschacht (1):
          fix typo
    
    qvm1Wak (1):
          Error for when users run Mako and it's already running. (#160)
    
    sheenobu (1):
          Initial touch support
    
    vilhalmer (1):
          Add hint about removing quotes in the config file
    
    xdavidwu (2):
          Add image-data hint support
          Fix memory leak if there are multiple icon data
    
  • v1.3
    mako v1.3
    
    Many changes in this release! The biggest new features are:
    
    * Grouping (#98 and #111)
    * Icons (#115 and #128)
    * Progress bar indicator (#109)
    * Rounded corners (#134)
    
    Big thanks to all contributors!
    
    Packager maintainers: this release contains an optional AppArmor policy and ZSH
    completions. See Meson options to enable them. Please read the AppArmor policy
    if you plan to use it.
    
    Below is the detailed shortlog.
    
    Anton Älgmyr (18):
          Fix rounding errors because of double->int conversion
          Add icon support
          Add --max-icon-size to documentation
          Add dep to CI config
          Add meson flag, redo code to use `gdk_cairo_set_source_pixbuf`
          Move guards
          Add --show-icons (and add missing help text for --max-icon-size)
          get_icon -> create_icon
          Remove duplicate prototype
          --show-icons -> --icons
          Fix style issues
          icon now pointer and part of notification, ifdef only in icon.c
          Explicit build option for no icons, don't fallback on missing deps
          Icon should be NULL for hidden notification
          Go back to storing full scale image
          Small fixes
          Move style check to `handle_notify`
          Advertise icon capability iff icons are used
    
    Cameron Nemo (1):
          AppArmor profile
    
    Clément Martinez (2):
          Add progress indicator
          Add color operator for progress indicator
    
    DarkDefender (1):
          Update README.md with dbus dependency and elogind tip
    
    Denis Zheleztsov (1):
          Add missing border-radius option
    
    Eyal Sawady (1):
          Add support for rounded notifications
    
    Quentin Bourgeois (3):
          Print usage message when not enough or too many argument are given on CLI
          Add a basic makoctl and mako completion function for ZSH
          Add some options into helper output
    
    Simon Ser (11):
          ci: also build without icons
          build: depend on gobject for g_error_free
          build: depend on glib too
          man: fix mixed up headings
          Move shell completions to contrib/, disable by default
          Move AppArmor to contrib/
          meson: split completions logic
          meson: add a man-pages option
          ci: build man pages
          ci: enable all features by default
          Drop GDK dependency
    
    Stephen Brown II (1):
          Add 'center' anchor option, and re-organize order of options
    
    emersion (4):
          Bump to v1.2
          Use frame scheduling when drawing frames
          Use wl_surface.damage_buffer
          readme: add instructions for sway
    
    vilhalmer (36):
          Add create_criteria_from_notification
          Add summary and body to criteria
          Add parse_criteria_spec
          Add group_criteria_spec to style
          Group notifications when adding or removing them
          Fix up circular dependencies
          Make sure all notification string fields are valid
          Fix minor identity crisis
          Fix typo in ci manifest
          Return the same id when replacing a notification
          Nullify things in reset_notification
          Record group_index and group_count
          Start group_index at 0, -1 for ungrouped
          Add group_index and grouped criteria
          apply_criteria_field should always return early
          group_index -> group-index in criteria
          Notifications are ungrouped when created
          Explain grouping and group_index better
          Fix pointer clobbering in group_notifications
          Fix reversed groups
          Fix group-index error message
          Add group_count format specifier
          Add `none` criteria spec and use for grouping
          Regroup notifications on config reload
          Add hidden style to skip grouped notifs in render
          Insert default grouped styles into criteria list
          Store raw criteria strings for debugging
          Rename group option to group-by and expose on cli
          Rename hidden style to invisible
          Update manpage
          De-nit
          Check if wl_pointer exists before releasing it
          Always print help when asked
          Add resolve_icon to support icon names
          Don't render icon if they're disabled in the style
          Add to manpage
    
    xdavidwu (3):
          icon.c: fix build without icons support
          parse_config_arguments: add missing icon-path option
          resolve_icon: also try second level relative dir name for icon size and scale
    
  • v1.2
  • v1.1
    54bed472 · Bump to v1.1 ·
  • v1.0