A Hyprland shell whose colours come from a painting.

One black island that changes shape, a desk of widgets under the windows, and every program around it repainted by whatever wallpaper is up.

Read the documentation
git clone https://github.com/andreumassanet/impasto.git ~/impasto && cd ~/impasto && ./setup install

Pick a wallpaper and the page takes its colours, the way the desk does.

The island is one object that changes shape.

A black capsule in the middle of the bar rests on the time and turns into everything else: the glance under the pointer, the control centre, the launcher, the overview, a notification, a game. Each is the size of what is in it, with no title and no close button.

How the island works

Every module on the bar opens into the island.

What is running sits either side of the time: the player, the battery, the processor, the recorder, the weather, the month with its tasks. Click one and the island becomes its detail, rather than a popup of its own.

Every module

Three styles, one layout.

Pieces are dragged out of a catalogue onto a picture of the bar, then drawn grouped round the island, spread to the edges, or all inside one capsule. Any piece can have a look of its own.

Arranging the bar

The palette comes out of the painting.

Pick a wallpaper and its colours reach everything at once. Or pick one of nine palettes instead, and the wallpaper stays where it is. This page does the same with the forty wallpapers the desk comes with.

Where the colours go
  • the island
  • the widgets
  • kitty
  • the prompt
  • btop
  • cava
  • yazi
  • neovim
  • VSCodium
  • GTK
  • Qt and KDE
  • Thunar
  • Vesktop
  • Zen
  • Spotify
  • the login screen

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

Any module can live on the wallpaper.

On a grid, in four shapes: a square, a card, a large square and a band. Right-click the wallpaper to arrange. Modern draws each module as a figure with a caption, Analogue as an object, and either is a choice per widget.

Widgets on the desktop

The first character says what the field is for.

Plain text searches applications, = calculates, @ finds an open window,! starts a countdown, ' is the clipboard history and > is the shell itself. The dock holds what you pinned, then whatever else is open.

The launcher

A note is paper, and a task has a lane.

SUPER + S opens a deck of pastel notes in handwriting, which can also sit on the wallpaper or stack along an edge. SUPER + K is a board of to do, doing and done, and a task's day shows as a dot under the month.

Notes and tasks

Eleven small games, played in the island.

SUPER + G opens a shelf and the island becomes the board. A family of five small creatures lives on the bar, one out at a time, earning levels from being fed and played with. Nothing dies.

Games and pets

The login screen is the lock with the desk taken away.

The shell locks the session itself, over the blurred desk. The SDDM theme draws the same clock, the same face and the same field before anybody has logged in.

Lock and login

Settings is the one panel that is not the island.

An ordinary window where each option is drawn as the thing it changes. Profiles keep whole desks under a name, keys included: Moon castle, Fuji and Night bay come with it.

Settings and profiles

One script installs all of it.

Arch Linux, and Hyprland 0.56 or newer configured in Lua. Run it from a terminal inside the Hyprland session: the plugins are built against the compositor that is running.

Nothing is linked: setup copies, and remembers what it wrote. A file of yours in the way is moved aside first, and a file you edit afterwards is left alone.

Installing, and every flag
$ git clone https://github.com/andreumassanet/impasto.git ~/impasto
$ cd ~/impasto
$ ./setup install

Everything else is in the documentation.