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.27

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.27
File Size Uploaded
i3_notifier-0.27.tar.gz 2.2 MB Details

Built distribution (wheel)

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

Total release size: 2.2 MB

Release files / i3_notifier-0.27.tar.gz

Download URL i3_notifier-0.27.tar.gz
Size 2.2 MB
Tags Source
SHA-256 checksum
How to use checksums
f9fb8c71da54194014d525c1e64d74bd5891da5e907fd651f890cd39ceac1a55
BLAKE2b-256 checksum
How to use checksums
fe0b5feb25daeb8367032dfe0203ec7b00117d652c7fbd3b8ff60ba5527d8c54
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.27-py3-none-any.whl

Download URL i3_notifier-0.27-py3-none-any.whl
Size 21.4 kB
Tags Python 3
SHA-256 checksum
How to use checksums
2af38818e7f2bd01d250c7a04c99acc8294fbe5189b7324175dfae10fe96c420
BLAKE2b-256 checksum
How to use checksums
a102c65dcbff7e0860ba8b4a7a21f1e0a1d1f26a93a04740d1aaf1de2f2c3354
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

This release

0.27 This release

2 release files

0.26

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