bimlas / xfce4-night-mode

XFCE4 GenMon plugin: Switch between light and dark variants of a theme
86 stars 7 forks source link
dark-mode night-mode xfce xfce4 xfce4-genmon-plugin xfce4-panel-plugin

= 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

== 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:

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:

....

!/bin/bash

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]