Skip to main content

i3 Notification Manager (Requires rofi)

This is a notification manager for i3 desktop environment inspired by Rofication. Like Rofication, it implements the Gnome Desktop Notifications Standard standard.

Also see the companion py3status module py3-notifier.

Differences from Rofication

  • Notifications are stored in a tree structure, where they can be grouped by, for example, the application that is sending the notification and the subject. This is highly configurable. (No docs at the moment, but see the examples/i3_notifier_config.py; also see the comments in i3notifier/config.py)
  • Allows bulk deletion of notifications in a category.
  • Implements "default" action.
  • Shows icons.
  • Does not use sockets, rather adds new dbus methods to show the notifications and get the count of notifications.
  • Code is modular, should be straight forward to use another GUI rather than Rofi; or another data structure rather than tree structure.

What does it look like?

animation

Usage

To install (also see the requirements.txt)

pip install i3-notifier

Make sure you are not running any other notification daemon (if you are running dunst for example, kill it with killall dunst). Then start i3-notifier. You might want to make sure i3-notifier and its companion script switch-to-urgent.py are in the $PATH. You can confirm it is running by

dbus-send --session --print-reply --dest=org.freedesktop.Notifications /org/freedesktop/Notifications org.freedesktop.Notifications.GetServerInformation

Then to launch GUI; bind this to a shortcut

dbus-send --session --print-reply --dest=org.freedesktop.Notifications /org/freedesktop/Notifications org.freedesktop.Notifications.ShowNotifications

Keybindings

Key Action
j, Down, Tab or Ctrl-N Choose next
k, Up or Ctrl-P Choose previous
Enter, Space or Left Click Expand if group; execute action if singleton
Shift-Enter Execute action
Esc, Ctrl+[ or Backspace One level up or exit from top level
`, Ctrl+Backspace or Shift-Backspace Exit from any level.
Delete Delete notification or group
Ctrl+Delete, Shift+Delete Delete single notification

To get notification count & urgency

dbus-send --session --print-reply=literal --dest=org.freedesktop.Notifications /org/freedesktop/Notifications org.freedesktop.Notifications.ShowNotificationCount

One can use this with i3blocks to show notifications in the bar or even better switch to py3status and install py3-notifier.

command = "(dbus-send --session --print-reply=literal --dest=org.freedesktop.Notifications /org/freedesktop/Notifications org.freedesktop.Notifications.ShowNotificationCount 2>/dev/null || ($HOME/.local/bin/i3-notifier && echo '? ? ?'))|tr -s ' '|cut -d' ' -f 3"

Metadata

Release files for i3-notifier 0.26

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for i3-notifier 0.26
File Size Uploaded
i3_notifier-0.26.tar.gz 2.2 MB Details

Built distribution (wheel)

Table of built distributions (wheels) for i3-notifier 0.26
File Interpreter ABI Platform
i3_notifier-0.26-py3-none-any.whl Python 3 none any Details

Total release size: 2.2 MB

Release files / i3_notifier-0.26.tar.gz

Download URL i3_notifier-0.26.tar.gz
Size 2.2 MB
Tags Source
SHA-256 checksum
How to use checksums
e7fb94214e122652977a7e7708f1c015c846b307309ff59142adc920770c8373
BLAKE2b-256 checksum
How to use checksums
4ef5c228b6e5e06eb307b22e39d077b3b5025be199077cf9cf94f320cfa7ce4b
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 18, 2026.

Transparency log

Release files / i3_notifier-0.26-py3-none-any.whl

Download URL i3_notifier-0.26-py3-none-any.whl
Size 21.1 kB
Tags Python 3
SHA-256 checksum
How to use checksums
23daf4ad39eef51a8dca32010b32597beaf80d03b91af4ce8191cf22a4018495
BLAKE2b-256 checksum
How to use checksums
9653dedf17301741244e026e9dfa0c9d71e56131bbbcd573ce2956a0d705a08b
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 18, 2026.

Transparency log

Release history Release notifications | RSS feed

0.30

2 release files

0.28

2 release files

0.27

2 release files

This release

0.26 This release

2 release files

0.25

2 release files

0.24

2 release files

0.23

2 release files

0.22

2 release files

0.21

2 release files

0.20.0

3 release files

0.19

2 release files

0.18

1 release file

0.17

1 release file

0.16

1 release file

0.15

1 release file

0.13

1 release file

0.12

1 release file

0.11

1 release file

0.10

1 release file

0.9

1 release file

0.8

1 release file

0.7

1 release file

0.6

1 release file

0.5

1 release file

0.4

1 release file

0.3

1 release file

0.2

1 release file

0.1

1 release file

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page