Abilitare le notifiche desktop OSD
Le notifiche OSD.
Sono felicemente un utente BSPWM, un window manager tiled, leggero e duttile. Ovviamente molto scarno e quindi privo by design di molti fronzoli ma che rimettiamo alla prima occasione. Qui potremmo riflettere sulla scelta di un WM scarno e privo di fronzoli per poi “perdere” molto tempo a rimetterli… immagino sia soprattutto per divertimento ma anche volersi ritagliare il proprio setup. Si beh insomma… divertimento da nerd! Veniamo a noi, tra i tanti “fronzoli” mancanti manca anche un bus per le notifiche; ad esempio quando vi arriva una email, quando il vostro player audio cambia brano, un messaggio chat… La soluzione che ho adottato è stato installare il pacchetto notify-osd:
sudo pacman -S notify-osd
Bspwm non prevede una vero sistema di autostart come ad esempio Gnome (~/.config/autostart) dove vengono creati tutti file service che fanno partire i programmi a inizio sessione. Con questo WM semplicemente andrete a modificare il vostro bspwmrc che nel mio caso sta qui:
cd ~/.config/bspwm
ls bspwmrc
Nel mio file rc ho predisposto una sezione iniziale dove invocare ciò che voglio a inizio sessione quindi anche il notify-osd oltre al resto.
# -------------- AUTOSTART --------------------------
sxhkd -c ~/.config/sxhkd/sxhkdrc &
/usr/lib/notify-osd/notify-osd &
setxkbmap it &
sudo brightnessctl --device='smc::kbd_backlight' set 25
/usr/bin/xrandr --output LVDS-2 --primary --mode 1440x900 --rotate normal --output DP-2 --mode 1920x1080 --rotate normal --left-of LVDS-2 --rate 60 &
/usr/bin/nitrogen --set-zoom-fill --force-setter=xinerama --random $HOME/MEGAsync\ Downloads/walls &
~/bin/polybar.sh &
~/bin/compiz.sh
~/bin/rmount.sh
/usr/bin/megasync &
/usr/bin/xscreensaver -no-splash &
/usr/bin/telegram-desktop -autostart &
/usr/bin/skypeforlinux &
# ------------- END AUTOSTART -----------------------
Come vedete in riga 2 trovare notify-osd. Una volta avviato potete testarlo con questo comando come esempio:
notify-send 'Ci sei. Notifica inviata.'
Per tutte le info ovviamente il man è sempre presente. Questa la notifica che ho utilizzato all’interno di neomutt cioè nel neomuttrc:
set new_mail_command = "notify-send 'Nuova Email' '%n new message, %u unread.' --icon='/usr/share/notify-osd/icons/hicolor/scalable/status/notification-message-email.svg' &"
PS. OSD sta per On Screen Display.