canido.dev
Projects/hyprwm / hyprsunset

hyprsunset

A blue-light filter and night light for Hyprland

Get it on GitHub
Unclaimed

Built by @hyprwm on GitHub. This page was written by @iluxav from public sources, last updated for v0.4.0 (2026-07-13), and may lag behind new releases.

Maintain hyprsunset? Claim it
v0.4.0 / 2026-07-135 things you can do2 changes to know before upgradingFollow (Atom feed)

Warm your screen's color temperature and adjust gamma on Hyprland, by hand, from scripts, or on a daily schedule.

What you can do with it

Shift the color temperature of all screens to a warmer tone to reduce blue light.

Good to know

Works only on compositors with hyprland-ctm-control-v1, in practice Hyprland 0.45.0 or newer.

Since v0.1.0

Dim or brighten the picture on all screens by setting display gamma.

Good to know

Gamma above 100% needs --gamma_max raised; the maximum is 200%.

Since v0.2.0

Change temperature, gamma or identity of a running hyprsunset through its IPC socket.

Since v0.2.0

Start hyprsunset with your session through a systemd user service.

Since v0.2.0

Apply different temperature and gamma settings at set times of day from a config file.

Good to know

Times are fixed clock times; nothing in the code follows sunrise or sunset.

Since v0.3.1

Before you upgrade

Newest first
v0.2.02025-03-24

Upgrade Hyprland to 0.48.0 or newer before upgrading to hyprsunset v0.2.0.

Action requiredAffects: Users on Hyprland older than 0.48.0
Read the evidence
Release history 6
v0.4.02026-07-13

Go back to the scheduled profile after changing settings by hand.

Details

New IPC commands: reset (whole profile) or reset temperature|gamma|identity, profile (prints time, temperature, gamma and identity of the current profile) and identity get.

Also: Fixes high CPU use from a busy loop in the event loop; max-gamma now applies without profiles.

v0.4.0.

Improved: Change temperature, gamma or identity of a running…Now works: Shift the color temperature of all screens to a war…Now works: Dim or brighten the picture on all screens by setti…

Seeded by @iluxav with Claude Code (canido)

Read the evidence
v0.3.32025-10-03

Keep scheduled profiles correct after the computer wakes from suspend.

Details

Scheduling is recalculated after suspend, and the systemd user unit installs to the right directory.

v0.3.3.

Now works: Apply different temperature and gamma settings at s…Now works: Start hyprsunset with your session through a system…

Seeded by @iluxav with Claude Code (canido)

Read the evidence
v0.3.22025-08-13

Rely on scheduled profiles switching at the configured times.

Details

Fixes how the next profile switch is scheduled.

v0.3.2.

Now works / inferred: Apply different temperature and gamma settings at s…

Seeded by @iluxav with Claude Code (canido)

Read the evidence
v0.3.12025-07-24

Switch temperature and gamma automatically at set times of day.

Details

New hyprsunset.conf in the hypr config directory with max-gamma and profile blocks, each with time (HH:MM), temperature, gamma and identity; hyprsunset applies the profile for the current time and switches at the next one. Adds --verbose and -v/--version. Groups v0.3.0 and v0.3.1.

Also: hyprsunset now exits on SIGINT and SIGTERM; bad IPC input no longer crashes it.

v0.3.1. Documentation moved to the Hyprland wiki.

Added / inferred: Apply different temperature and gamma settings at s…Now works: Shift the color temperature of all screens to a war…

Seeded by @iluxav with Claude Code (canido)

Read the evidence
v0.2.02025-03-24

Change temperature and gamma while hyprsunset runs, from scripts or keybindings, without restarting it.

Details

New -g/--gamma (default 100%) and --gamma_max (up to 200%). An IPC socket in the Hyprland runtime directory accepts temperature, gamma and identity commands, with +N or -N for relative steps. Only one instance can run at a time, and a systemd user service ships with it.

v0.2.0; needs Hyprland 0.48.0 or newer.

Added: Dim or brighten the picture on all screens by setti…Added: Change temperature, gamma or identity of a running…Added: Start hyprsunset with your session through a system…Action requiredBehavior changed: Shift the color temperature of all screens to a war…

Seeded by @iluxav with Claude Code (canido)

Read the evidence
v0.1.02024-10-08
First release

Warm the color temperature of your screens on Hyprland to cut blue light.

Details

First release. hyprsunset -t <kelvin> sets the temperature (default 6000K); -i applies the identity matrix, leaving colors unchanged.

Build from source; needs Hyprland 0.45.0 or newer for hyprland-ctm-control-v1.

Added: Shift the color temperature of all screens to a war…

Seeded by @iluxav with Claude Code (canido)

Read the evidence