hellwal_

Your wallpaper.Your entire system

Sixteen colors is everything you need:)

Algorithm
Appearance
Finish
Preview template

$ hellwal -i wallpaper.jpg

~/desktop   terminal · editor · launcher

16 colors   jarvis open vimacs

❯ _
desktop.conf   /   your next setup
1desktop {
2  wallpaper = "not-anime-girl.png"
3  colors = 16
4  mood = "absolute tsoding"
5  only_c = true
6}_
Terminal
Editor
Files
123sway
Terminal
$ hellwal
Your entire system.
_
Editor
client.focused
border · background
text · indicator
123hyprland
❯ hellwal
Your entire system.
_
hl.config({
general = {
colors = wallpaper
}
})
Change wallpaper ↓Shuffle ↻
  1. color0
  2. color1
  3. color2
  4. color3
  5. color4
  6. color5
  7. color6
  8. color7
  9. color8
  10. color9
  11. color10
  12. color11
  13. color12
  14. color13
  15. color14
  16. color15
View JSON output

Add --json to the command above to print this palette.

Sway & Hyprland configurations

Start with a Hellwal template, or copy the resolved colors for the current palette. Save the resolved file, include it at the end of your configuration, then reload.

Sway

Template
set $accent #%%accent.hex%%
set $bg     #%%background.hex%%
set $fg     #%%foreground.hex%%
set $muted  #%%color8.hex%%

# border, background, text, indicator, child border
client.focused \
    $accent $bg $fg $accent $accent
client.focused_inactive \
    $muted $bg $fg $muted $muted
client.unfocused \
    $muted $bg $fg $muted $muted

Save the template as ~/.config/hellwal/templates/hellwal.conf and run Hellwal to fill in the variables.

Colors
set $accent #d67741
set $bg     #2b1a15
set $fg     #bda69d
set $muted  #99847c

# border, background, text, indicator, child border
client.focused \
    $accent $bg $fg $accent $accent
client.focused_inactive \
    $muted $bg $fg $muted $muted
client.unfocused \
    $muted $bg $fg $muted $muted

Save these colors as ~/.config/sway/hellwal.conf, then add:

Include
include ~/.config/sway/hellwal.conf

Reload with swaymsg reload. Configuration reference ↗

Hyprland

Template
hl.config({
    general = {
        ["col.active_border"] = "#%%accent.hex%%",
        ["col.inactive_border"] = "#%%color8.hex%%",
    },
})

Save the template as ~/.config/hellwal/templates/hellwal.lua and run Hellwal to fill in the variables.

Colors
hl.config({
    general = {
        ["col.active_border"] = "#d67741",
        ["col.inactive_border"] = "#99847c",
    },
})

Save these colors as ~/.config/hypr/hellwal.lua, then add:

Include
require("hellwal")

Reload with hyprctl reload. Configuration reference ↗

Real Hellwal output, precomputed for every combination. Comfort fits text contrast while keeping wallpaper hues.Classic keeps the original Hellwal color treatment. About the modes ↗

How to install

Installation method
git clone https://github.com/danihek/hellwal
cd hellwal && make
./hellwal -i wallpaper.jpg --comfort-mode
brew install hellwal
hellwal -i wallpaper.jpg
yay -S hellwal
hellwal -i wallpaper.jpg
nix shell nixpkgs#hellwal
hellwal -i wallpaper.jpg

Or add to your NixOS configuration:

environment.systemPackages = [ pkgs.hellwal ];

hellwal on nixpkgs ↗ · pkgs/by-name/he/hellwal/package.nix:24

Read the documentation ↗