BLUGON(1)

πŸ“¦ version 1.12.1, in nixos 26.05, nixpkgs unstable

πŸ’– BLUGON(1) β€” the iconic blue light filter πŸ’–

okay bestie, so blugon is literally the most precious little manual page ever, and I'm about to spill all the tea on it. no cap, this is the whole thing, every single flag and file path, so you can slay your screen game πŸ’…βœ¨

✨ NAME ✨

blugon β€” a simple Blue Light Filter for X πŸ¦‹ (yes, that's the whole vibe, it filters out the blue light so your eyes don't scream at 2am 😭)

🌸 SYNOPSIS 🌸

blugon [-h] [-v] [-V] [-p] [-o] [-r] [-S temperature] [-s] [-f] [-i
interval] [-c directory] [-b backend] [-w]

πŸŽ€ DESCRIPTION πŸŽ€

okay so blugon is this simple blue light filter, right? it uses xgamma as a backend (that's the main character energy right there), and it gets configured in "$XDG_CONFIG_HOME/blugon/" β€” or if that's not a thing, it falls back to "$HOME/.config/blugon/". the way it just knows where to look, iykyk 🧚

first thing you gotta do: make the directory, fr fr

$ mkdir -p ~/.config/blugon

the config files are literally just 'config' and 'gamma' β€” those are the two icons πŸ‘‘

to get a 'config' file with all the default values, just run this and it'll print them out for you:

$ blugon --printconfig > ~/.config/blugon/config

and to copy the default 'gamma' config into your home directory (so you have a starting point, no stress):

$ cp /usr/share/blugon/configs/default/gamma ~/.config/blugon/

there are literally more templates for 'gamma' chilling in "/usr/share/blugon/" β€” obsessed πŸ’–

now, the syntax in 'gamma' has to be in one of these two forms, periodt:

$ [hour] [minute]   [red]   [green] [blue]
$ [hour] [minute]   [temperature]
  • [red], [green], [blue] go between 0 and 1
  • [temperature] goes between 1000 (that's the red side, πŸ”₯) and 20000 (that's the blue side, 🧊), and the default is 6600

you can enable the systemd service as a user like this, bestie:

$ systemctl --user enable blugon.service

and just so you know, the file 'current' is where the color temperature for --readcurrent gets stored. that's its whole job πŸ’…

πŸ’… OPTIONS πŸ’…

  • -h, --help β€” shows you a quick help and then dips out. super quick, no commitment.
  • -v, --version β€” tells you the version of your blugon and then exits. iconic.
  • -V, --verbose β€” be verbose! prints extra info so you can debug the program. it's giving "let me tell you everything" energy.
  • -p, --printconfig β€” prints the default configuration straight to stdout and then exits. perfect for piping into your config file.
  • -o, --once β€” applies the gamma values of the current time and then bounces. one and done.
  • -r, --readcurrent β€” reads the temperature value from the file 'current' instead of 'gamma'. this is lowkey so useful for controlling the current temperature with hotkeys or scripts, especially when you pair it with --setcurrent.
  • -S temperature, --setcurrent=temperature β€” sets the temperature value to the file 'current'. if you prepend a + or - to the temperature, it'll add or subtract that value instead of setting it absolutely (so +100 means "make it 100 warmer"). this automatically implies the --readcurrent and --once flags β€” sneaky but slay.
  • -s, --simulation β€” starts a simulation of the configuration you chose so you can see how it changes over the day. changing the interval will not have an effect here (just FYI, bestie), and the program exits after the simulation. it's like a little movie of your screen's vibe 🌈
  • -f, --fade β€” fades in the screen color on startup. so smooth. but heads up: this does not work with the --simulation flag. they're not compatible, periodt.
  • -i seconds, --interval=seconds β€” sets the time period blugon waits to refresh the gamma values of your screen, in seconds. basically how often it checks in on your eyes.
  • -c path, --configdir=path β€” specifies the path that blugon is gonna search for configuration files like 'config', 'gamma' and 'current'. the path must lead to a directory, okay? no funny business.
  • -b backend, --backend=backend β€” specifies the backend to be used. make sure the backend you want is actually installed on your system first, bestie. the available backends are:
    • xgamma
    • scg
    • tty
  • -w, --waitforx β€” instead of crashing when the backend fails, the program will just continue. this is automatically used by the systemd service to prevent failing when you switch to another TTY. it's giving "resilient queen" energy πŸ‘‘

πŸ”₯ EXAMPLES πŸ”₯

to just apply the blue filter and then exit, use:

$ blugon --once

you can run blugon in your tty by appending this code to your "~/.bashrc" (so it just works every time you open a terminal):

$ if [ "$TERM" = "linux" ]; then
$   blugon --once --backend="tty" && clear
$   (blugon --backend="tty")&
$ fi

🌈 SEE ALSO 🌈

xgamma(8) β€” that's the backend bestie, go check it out if you're curious.

😭 PROBLEMS 😭

if you're having trouble enabling the systemd service, but starting it later on works fine, try increasing the time before restarting in 'config'. (just so you know, blugon will restart if it cannot find the X-Server.) here's an example with 3 seconds:

$ [wait_for_x]
$ sleep_after_failed_startup = 3

it's literally just giving the X-Server a little more time to wake up. we've all been there πŸ’€

πŸ‘‘ AUTHOR πŸ‘‘

Felix Springer <felixspringer149@gmail.com> β€” the legend who made this all happen 🫢


slay, that's the whole page! πŸ’– no cap, you're now a blugon expert. go forth and filter that blue light, bestie. your eyes will thank you.

blugon 1.12.1 β€” last updated: 26 January 2020 ✨ (yes, this icon has been serving since 2020 and still looks flawless) πŸŽ€

πŸ“¦ where this page comes from