Dunst configuration


dunst configuration

Borrowed this configuration from https://www.reddit.com/r/unixporn/comments/a27f5c/i3wm_flower/

https://github.com/Eredarion/dotfiles/blob/master/.config/dunst/dunstrc

[global]
font = SF Pro Display Medium 10
# allow a small subset of html markup:
# <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
# If markup is not allowed, those tags will be stripped out of the message.
allow_markup = yes

# 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
# Markup is allowed
format = "<u><span foreground='#F7B2AE'>%s</span></u>\n%b"

# Sort messages by urgency
sort = yes

# Show how many messages are currently hidden (because of geometry)
indicate_hidden = yes

# Display indicators for URLs (U) and actions (A).
show_indicators = no

# alignment of message text.
# Possible values are "left", "center" and "right"
alignment = center

# The frequency with wich text that is longer than the notification
# window allows bounces back and forth.
# This option conflicts with 'word_wrap'.
# Set to 0 to disable
bounce_freq = 0

# show age of message if message is older than show_age_threshold seconds.
# set to -1 to disable
show_age_threshold = 60

# split notifications into multiple lines if they don't fit into geometry
word_wrap = yes

# ignore newlines '\n' in notifications
ignore_newline = no


# the geometry of the window
# geometry [{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 = "300x5-30+20"
#geometry = "280x20-10+34"
geometry = "480x20-5+30"
# corner_radius = 6
# 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

# 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.
idle_threshold = 999

# 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 = mouse

# should a notification popped up from history be sticky or
# timeout as if it would normally do.
#sticky_history = no

# 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 = 0

# Draw a line of 'separatpr_height' pixel height between two notifications.
# Set to 0 to disable
separator_height = 2

# padding between text and separator>
padding = 10

# horizontal padding
horizontal_padding = 10

# 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 = auto

# print a notification on startup
# This is mainly for error detection, since dbus (re-)starts dunst
# automatically after a crash.
startup_notification = false

# dmenu path
dmenu = /usr/bin/dmenu -p dunst:

# browser for opening urls in context menu
browser = /usr/bin/firefox -new-tab

# Align icons left/right/off
icon_position = left

# Paths to default icons.
icon_folders = /usr/share/icons/Papirus/32x32/status:/usr/share/icons/Papirus/32x32/devices

max_icon_size = 90


[frame]
width = 1
color = "#F7B2AE"

[shortcuts]
# shortcuts are specified as [modifier+][modifier+]...key
# available modifiers are 'ctrl', 'mod1' (the alt-key), 'mod2', 'mod3'
# and 'mod4' (windows-key)
# xev might be helpful to find names for keys

# close notification
close = ctrl+space

# close all notifications
close_all = ctrl+shift+space

# redisplay last message(s)
# On the US keyboard layout 'grave' is normally above TAB and left of '1'.
history = ctrl+mod1+h

# context menu
context = ctrl+shift+period

[urgency_low]
# IMPORTANT: colors have to be defined in quotation marks.
# Otherwise the '#' and following  would be interpreted as a comment.
background = "#101423"
foreground = "#EEFFFF"
timeout = 5

[urgency_normal]
background = "#101423"
foreground = "#EEFFFF"
timeout = 5

[urgency_critical]
background = "#101423"
foreground = "#EEFFFF"
timeout = 5


# Every section that isn't one of the above is interpreted as a rules
# to override settings for certain messages.
# Messages can be matched by 'appname', 'summary', 'body' or 'icon'
# and you can override the 'timeout', 'urgency', 'foreground', 'background'
# and 'format'.
# Shell-like globbing will get expanded.
#
# SCRIPTING
# you can specify a script that gets run when the rule matches by setting
# the 'script' option.
# The script will be called as follows:
# script appname summary body icon urgency
# where urgency can be "LOW", "NORMAL" or "CRITICAL".
#
# NOTE: if you don't want a notification to be displayed, set the format to ""
# NOTE: It might be helpful to run dunst -print in a terminal in order to find
# fitting options for rules.

#[espeak]
summary = "*"
script = dunst_espeak.sh

#[script-test]
#    summary = "*script*"
#    script = dunst_test.sh

#[ignore]
## This notification will not be displayed
#    summary = "foobar"
#    format = ""

#[signed_on]
#    appname = Pidgin
#    summary = "*signed on*"
#    urgency = low
#
#[signed_off]
#    appname = Pidgin
#    summary = *signed off*
#    urgency = low
#
#[says]
#    appname = Pidgin
#    summary = *says*
#    urgency = critical
#
#[twitter]
#    appname = Pidgin
#    summary = *twitter.com*
#    urgency = normal