Skip to content

Blazingly fast interpolated LUT generator and applicator for arbitrary and popular color palettes.

License

Notifications You must be signed in to change notification settings

iruzo/lutgen-rs

 
 

Repository files navigation


lutgen-rs

crate crate build ci

A blazingly fast interpolated LUT utility for arbitrary and popular color palettes. Theme any image to your desktop colorscheme!


Example Output

Hald Cluts

Catppuccin Mocha
Gruvbox Dark
Nord

Color Corrections

Original Image
Catppuccin Mocha
Gruvbox Dark
Nord

Lutgen CLI

Package Repositories

Packaging status

Install from source

git clone https://github.com/ozwaldorf/lutgen-rs
cd lutgen-rs
cargo install --path crates/cli

Crates.io

cargo install lutgen-cli

Docker image

Build the Docker image:

sh <(curl -L https://raw.githubusercontent.com/ozwaldorf/lutgen-rs/main/scripts/build.sh)

Run with volume mounted for file access:

docker run --rm -v $PWD:/workspace lutgen:latest --help
docker run --rm -v $PWD:/workspace lutgen:latest apply -p=catppuccin-mocha /workspace/example.png

Documentation

Detailed documentation, examples, and more are available on The Lutgen Wiki

Lutgen Studio

Package Repositories

Packaging status

Required Dependencies

(For this example, Ubuntu packages are listed)

  • libxcb-render0-dev
  • libxcb-shape0-dev
  • libxcb-xfixes0-dev
  • libxkbcommon-dev
  • libssl-dev
  • wayland

Install from source

git clone https://github.com/ozwaldorf/lutgen-rs
cd lutgen-rs
cargo install --path crates/studio

Crates.io

cargo install lutgen-studio

Rust Library

See the latest rust documentation on docs.rs/lutgen

Nix flake

A nix flake is available providing both lutgen and lutgen-studio packages. The flake can be easily run via:

nix run github:ozwaldorf/lutgen-rs
nix run github:ozwaldorf/lutgen-rs#lutgen-studio

Cache is provided via https://garnix.io

Development Shell

A development environment is also provided in the flake:

git clone https://github.com/ozwaldorf/lutgen-rs
cd lutgen-rs
nix develop

# inside dev shell
cargo run -r --bin lutgen
cargo run -r --bin lutgen-studio

Planned features

  • Interpolation for more accuracy when correcting with low level luts (<16)
  • Hardware acceleration for applying luts to images

Sources

Special Thanks

  • Gingeh for the initial inspiration and imagemagick approach
  • The Catppuccin Org for continual feedback and support along the way
  • Stonks3141 for maintaining the Alpine Linux package
  • All the nixpkgs maintainers

About

Blazingly fast interpolated LUT generator and applicator for arbitrary and popular color palettes.

Resources

License

Contributing

Stars

Watchers

Forks

Packages

 
 
 

Languages

  • Rust 95.3%
  • Nix 3.9%
  • Other 0.8%