Dunst (Notification Manager)
Global
[global]
Display
# Which monitor should the notifications be displayed on.
monitor = 0
# Display notification on focused monitor.  Possible modes are:
#   mouse: follow mouse pointer
#   keyboard: follow window with keyboard focus
#   none: don't follow anything
#
# "keyboard" needs a windowmanager that exports the
# _NET_ACTIVE_WINDOW property.
# This should be the case for almost all modern windowmanagers.
#
# If this option is set to mouse or keyboard, the monitor option
# will be ignored.
follow = keyboard
# The geometry of the window:
#   [{width}]x{height}[+/-{x}+/-{y}]
# The geometry of the message window.
# The height is measured in number of notifications everything else
# in pixels.  If the width is omitted but the height is given
# ("-geometry x2"), the message window expands over the whole screen
# (dmenu-like).  If width is 0, the window expands to the longest
# message displayed.  A positive x is measured from the left, a
# negative from the right side of the screen.  Y is measured from
# the top and down respectevly.
# The width can be negative.  In this case the actual width is the
# screen width minus the width defined in within the geometry option.
geometry = "250x50-10+37"
# Show how many messages are currently hidden (because of geometry).
indicate_hidden = yes
# Shrink window if it's smaller than the width.  Will be ignored if
# width is 0.
shrink = no
# The transparency of the window.  Range: [0; 100].
# This option will only work if a compositing windowmanager is
# present (e.g. xcompmgr, compiz, etc.).
transparency = 0
# The height of the entire notification.  If the height is smaller
# than the font height and padding combined, it will be raised
# to the font height and padding.
notification_height = 0
# Draw a line of "separator_height" pixel height between two
# notifications.
# Set to 0 to disable.
separator_height = 4
# Padding between text and separator.
padding = 16
# Horizontal padding.
horizontal_padding = 16
# Defines width in pixels of frame around the notification window.
# Set to 0 to disable.
frame_width = 2
# Defines color of the frame around the notification window.
frame_color = "#32302f"
# Define a color for the separator.
# possible values are:
#  * auto: dunst tries to find a color fitting to the background;
#  * foreground: use the same color as the foreground;
#  * frame: use the same color as the frame;
#  * anything else will be interpreted as a X color.
separator_color = frame
# Don't remove messages, if the user is idle (no mouse or keyboard input)
# for longer than idle_threshold seconds.
# Set to 0 to disable.
# default 120
idle_threshold = 120
# Sort messages by urgency.
sort = yes
Text
font = Hack Nerd Font 10 # The height of a single line. If the height is smaller than the # font height, it will get raised to the font height. # This adds empty space above and under the text. line_height = 4 # Possible values are: # full: Allow a small subset of html markup in notifications: # <b>bold</b> # <i>italic</i> # <s>strikethrough</s> # <u>underline</u> # # For a complete reference see # <http://developer.gnome.org/pango/stable/PangoMarkupFormat.html>. # # strip: This setting is provided for compatibility with some broken # clients that send markup even though it's not enabled on the # server. Dunst will try to strip the markup but the parsing is # simplistic so using this option outside of matching rules for # specific applications *IS GREATLY DISCOURAGED*. # # no: Disable markup parsing, incoming notifications will be treated as # plain text. Dunst will not advertise that it has the body-markup # capability if this is set as a global setting. # # It's important to note that markup inside the format option will be parsed # regardless of what this is set to. markup = full # The format of the message. Possible variables are: # %a appname # %s summary # %b body # %i iconname (including its path) # %I iconname (without its path) # %p progress value if set ([ 0%] to [100%]) or nothing # %n progress value if set without any extra characters # Markup is allowed format = "<b>%s</b>\n%b" # Alignment of message text. # Possible values are "left", "center" and "right". alignment = left # Show age of message if message is older than show_age_threshold # seconds. # Set to -1 to disable. show_age_threshold = 300 # Split notifications into multiple lines if they don't fit into # geometry. word_wrap = yes # Ignore newlines '\n' in notifications. ignore_newline = no # Merge multiple notifications with the same content stack_duplicates = false # Hide the count of merged notifications with the same content hide_duplicate_count = false # Display indicators for URLs (U) and actions (A). show_indicators = yes
Icons
# Align icons left/right/off icon_position = off # Limit icons size. max_icon_size=32 # Paths to default icons. icon_path = /usr/share/icons/Arc/16x16/status/:/usr/share/icons/Arc/16x16/devices/
History
# Should a notification popped up from history be sticky or timeout # as if it would normally do. sticky_history = yes # Maximum amount of notifications kept in history history_length = 20
Misc/Advanced
# dmenu path. dmenu = /usr/bin/dmenu -p dunst: # Browser for opening urls in context menu. browser = $BROWSER # Always run rule-defined scripts, even if the notification is suppressed always_run_script = true # Define the title of the windows spawned by dunst title = Dunst # Define the class of the windows spawned by dunst class = Dunst # Print a notification on startup. # This is mainly for error detection, since dbus (re-)starts dunst # automatically after a crash. startup_notification = false
Shortcuts
[shortcuts] # Available modifiers are "ctrl", "mod1" (the alt-key), "mod2", # "mod3" and "mod4" (windows-key). close = mod1+space history = mod1+Escape
Urgency
[urgency_low] background = "#32302f" foreground = "#ebdbb2" timeout = 4 [urgency_normal] background = "#32302f" foreground = "#ebdbb2" timeout = 6 [urgency_critical] background = "#32302f" foreground = "#cc241d" timeout = 0