MCPcopy Index your code
hub / github.com/amadejkastelic/Hyprlux

github.com/amadejkastelic/Hyprlux @0.1.8

Chat with this repo
repository ↗ · DeepWiki ↗ · release 0.1.8 ↗ · + Follow
38 symbols 78 edges 7 files 0 documented · 0% updated 8mo ago0.1.8 · 2025-11-06★ 371 open issues
What it actually does AI analysis from the code graph — generated when you open this
loading…
README

Hyprlux

A Hyprland utility program that automatically switches between shaders.

It currently supports two shaders with configurable strengths: - Night light (blue light filter) - based on location or custom times - Vibrance - toggles digital vibrance based on currently active window

Installation

Cargo Cargo Version

Click to expand

bash cargo install hyprlux

NixOS NixOS Version

Click to expand

Add hyprlux to your flake inputs: nix inputs = { hyprlux = { url = "github:amadejkastelic/Hyprlux"; }; }; Then import either the home manager module or nixos module: nix imports = [ inputs.hyprlux.nixosModules.default ]; nix imports = [ inputs.hyprlux.homeManagerModules.default ]; And configure it: ```nix {inputs, ...}: { programs.hyprlux = { enable = true;

  systemd = {
    enable = true;
    target = "hyprland-session.target";
  };

  night_light = {
    enabled = true;
    # Manual sunset and sunrise
    start_time = "22:00";
    end_time = "06:00";
    # Automatic sunset and sunrise
    latitude = 46.056946;
    longitude = 14.505751;
    temperature = 3500;
  };

  vibrance_configs = [
    {
      window_class = "steam_app_1172470";
      window_title = "Apex Legends";
      strength = 100;
    }
    {
      window_class = "cs2";
      window_title = "";
      strength = 100;
    }
  ];
};

} ```

Arch AUR Version

Click to expand

Install using your favorite AUR helper: bash paru -S hyprlux

Configuration

Hyprlux looks for configs in the following locations (sorted by priority): - Path passed as first argument when running the binary - $XDG_CONFIG_HOME/hypr/hyprlux.toml - /etc/hyprlux/config.toml

Example configurations are available in examples.

Running

Either run it as a systemd service or include it in your hyprland exec-once config:

exec-once=hyprlux > /tmp/hyprlux.log 2>&1

Building

Run cargo build

Extension points exported contracts — how you extend this code

Shader (Interface)
(no doc) [2 implementers]
src/shaders/shader.rs

Core symbols most depended-on inside this repo

new
called by 29
src/shaders/vibrance.rs
new
called by 15
src/shaders/night_light.rs
load_config_and_shaders
called by 3
src/main.rs
should_apply
called by 3
src/shaders/vibrance.rs
hash
called by 2
src/shaders/vibrance.rs
unix_to_string
called by 2
src/shaders/night_light.rs
remove
called by 2
src/shaders/shader.rs
path
called by 1
src/config.rs

Shape

Function 21
Method 9
Class 7
Interface 1

Languages

Rust100%

Modules by API surface

src/shaders/night_light.rs10 symbols
src/shaders/vibrance.rs8 symbols
src/utils.rs7 symbols
src/config.rs6 symbols
src/shaders/shader.rs4 symbols
src/main.rs3 symbols

For agents

$ claude mcp add Hyprlux \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact

Ask about this repo answers extend the page