Skip to content
GitHub

Wallpapers and palettes

The palette comes out of the wallpaper. Pick a wallpaper and the shell takes one accent colour from it, builds a palette around that accent, and hands it to every program it reaches: the island and the widgets, the terminal and what runs in it, both editors, the GTK, Qt and KDE windows, Thunar, Zen and Vesktop. Pick one of the nine fixed palettes instead and the wallpaper stops deciding.

Try it here: pick a wallpaper or a palette and this site takes the same colours the desk would.

Showing Pagoda Fuji Blossom

Surfaces

background
#12161f
surface
#20242d
surfaceHover
#30343f
border
#404453

Type

text
#eef2f7
textMuted
#94a1b2

Accent

accent
#2e509e
accentHover
#436bc4
accentText
#ffffff

Status

red
#f38ba8
green
#a6e3a1
yellow
#f9e2af
blue
#89b4fa
Three wallpapers, and the desk repainted after each one.

SUPER T opens appearance on the island. The wallpapers are a strip with the one in the middle drawn large: Left and Right slide it, Enter applies the one in the middle, and the panel stays open so you can try the next. The folder is read again every time the panel opens.

The wallpapers, on SUPER + T.
The palettes, on SUPER + SHIFT + T.

The same panel, or the same result, from elsewhere:

FromHow
The islandSUPER T
The launchertype > and pick Appearance
The control centreclick the Appearance block, which shows the wallpaper in use
SettingsAppearance → Theme → Theme and wallpaper → Open
Thunarright-click a picture → Set as Wallpaper
A terminalqs ipc call wallpaper set /path/to/picture.jpg

Thunar and the terminal take any picture on the disk, not only the ones in the wallpapers folder, and go through the shell the way the island does: the same transition, the same repaint.

A profile carries a wallpaper and a palette, so switching profile under Settings → System changes both. See Settings.

The next wallpaper arrives over the last one with an effect, chosen under Settings → Appearance → Theme → Transition: Fade, Wipe, Wave, Circle, Outer, None or Random. Each tile plays its effect in miniature over two of your wallpapers. Wipe is the default, and Random picks one of the others, never None, every time a wallpaper is applied. The wallpaper is drawn by awww, and a transition takes one second.

Put the picture in ~/.local/share/wallpapers/ and open the appearance panel again. JPEG, PNG and WebP files are read (.jpg, .jpeg, .png, .webp); subfolders and hidden files are not. The name under the tile is the file name, with dashes and underscores turned into spaces.

setup never touches a file it did not put there, so your pictures stay through ./setup update and ./setup uninstall.

The forty that come with the desk are AI-generated images in an impasto style. The questions page says which file is which.

The forty that come with it.

One accent, and a palette built around it. The picture is shrunk and reduced to 24 colours with ImageMagick, and the accent is the most saturated mid-tone among them. A picture with nothing in the middle range gets its most colourful swatch instead, and one with no colour at all gets a neutral blue.

TokensWhere they come from
accentthe wallpaper
accentHoverthe accent, lighter
accentTextblack or white, whichever reads on the accent
background, surface, surfaceHover, bordernear-black, tinted with a few per cent of the accent
text, textMutedfixed greys
red, green, yellow, bluefixed, so a status colour means the same under every wallpaper

Each program then takes what it needs, and a colour that carries text is made lighter or darker until it reads on that program’s own background, keeping its hue. The terminal, for one, sits on the accent at 22 % under every palette, so it stays dark even under Catppuccin Latte.

  • The island is pure black under every palette. It is the shell’s identity, not a themed surface; the wallpaper shows in the accent on its rings and highlights.
  • Warnings keep fixed colours. The battery ring and the timer ring step through the same hues whatever the wallpaper, so a colour always means the same reading.
  • The login screen does not follow the palette: it runs before anybody has chosen one.
  • Spotify takes a new palette at its next start, not while it plays. See Applications.

SUPER SHIFT T opens the palettes, the page under the wallpapers in the same panel; Down and Up switch between the two. The first tile, Adaptive (Wallpaper), is the palette taken from the wallpaper, and it is the default. Any other tile keeps its palette whatever wallpaper you pick afterwards, until you go back to Adaptive.

PaletteLabelAccentBy
Catppuccin MochaDark Pastel#89b4faCatppuccin
Catppuccin LatteLight Clean#1e66f5Catppuccin — the one light palette
Tokyo NightCyber City#7aa2f7Tokyo Night
Gruvbox DarkWarm Retro#d79921Gruvbox
NordArctic Frost#88c0d0Nord
Rosé PineSoho Dusk#ebbcbaRosé Pine
CyberpunkNeon Synth#ff007fimpasto
BauhausModernist#e52521impasto
Crimson MoonVampiric#e63946impasto

Six are other people’s work, carried as they are; the last three are the shell’s own. Credits links each project.

Every palette change is pushed to the programs around the shell. Some repaint where they stand; others take it the next time they open a window.

ProgramTakes the new palette
The island, the bar, the widgets, the dock, the notes, the petsat once
The pointer, when its colour is Palette (Settings → Input)at once, once the vector cursor is built
kitty and the promptevery open terminal, at once
The greeting’s scenesredrawn in the background, a few seconds later
cava, neovimrunning ones repaint
btop, yazi, imvthe next one started
GTK windows, Thunar and its folders, Qt and KDE windowsthe next window started
Zen, VSCodiumthe next window
Vesktopat once
Spotifyits next start
The login screennever