= XFCE Night Mode
Shell script that allows you to easily switch between dark and light variants of the currently used themes. When used as a https://docs.xfce.org/panel-plugins/xfce4-genmon-plugin[Generic Monitor (Genmon)] plugin, it will automatically switch at the times specified.
image::https://i.imgur.com/UVSz6QB.gif[]
It is important to set the desired color schemes before use (see Settings).
== Command line usage
.... $ xfce4-night-mode.sh [day|night|toggle] ....
Parameters
day
:: Use light variant
night
:: Use dark variant
toggle
:: Switch between light and dark variants
Without parameters, it will use dark variant from sunset to sunrise according to the settings (see later).
== Generic Monitor (Genmon) plugin usage
xfce4-genmon-plugin
package if it is not on your system/path/to/xfce4-night-mode.sh
Uncheck the checkbox of Label
Set Period to 300
seconds (5 minutes)== Settings
For settings, open the XFCE Settings Editor -> night-mode
channel.
To find out what values to enter, set the color schemes you want and copy them from the appropriate location:
xsettings/Net/ThemeName
xsettings/Net/IconThemeName
xsettings/Gtk/CursorThemeName
xfwm4/general/theme
The specified UserScript
will be executed when switching the mode, you can use
this for example to change the theme of the terminal, set desktop wallpaper,
etc. You can use the variable XFCE_NIGHT_MODE
in your script if you want to
use the same script in both cases, for example:
....
notify-send --icon "dialog-info" "Mode: $XFCE_NIGHT_MODE" ....
=== Example UserScript
==== Change wallpaper
First you have to find the property of the wallpaper (this could be different on multi-monitor setup) by executing the command below then changing the wallpaper in Desktop setting.
xfconf-query --channel xfce4-desktop --monitor
You have to execute the command below to set up the wallpaper for this desktop.
xfconf-query --channel xfce4-desktop --property <property> --set </path/to/image.jpg>
==== Change panel dark mode
You have to execute the command below to change the panel mode opposite to the windows mode (light windows, dark panel).
xfconf-query --channel xfce4-panel --property /panels/dark-mode --set "$([ "$XFCE_NIGHT_MODE" = "day" ] && echo true || echo false)"
=== Switch at a time specified by antoher program
For example, to use http://jonls.dk/redshift/[Redshift] or another program to
determine when it is night, use xfce4-night-mode-redshift.sh
(or a modified
version of it) instad of xfce4-night-mode.sh
in "Generic Monitor plugin
usage".
== Changes
=== https://github.com/bimlas/xfce4-night-mode/-/compare/v1.0.0\...v2.0.0[2.0.0]