Skip to content

Start here

Other ways to install

You don’t need anything on this page to use kakemono. It’s for the command-line tool, checking a download, and building from source.

Platform App (includes the CLI) CLI only
macOS, Apple silicon kakemono-macos-arm64.dmg kakemono-cli-macos-arm64.tar.gz
macOS, Intel kakemono-macos-x64.dmg kakemono-cli-macos-x64.tar.gz
Linux, x86_64 .deb, .rpm, .AppImage kakemono-cli-linux-x64.tar.gz
Linux, ARM64 None kakemono-cli-linux-arm64.tar.gz
Windows, x64 -setup.exe, .msi kakemono-cli-windows-x64.zip

Every file is also on the GitHub releases page, with a SHA256SUMS file. The .msi installs the same app as -setup.exe.

On Arch Linux, install it from the AUR. winget doesn’t have kakemono yet.

The kakemono binary is both the daemon and the command-line tool. The app adds the menu-bar (tray) icon, the picker, and the settings window.

Every app download already includes the command-line tool. The .deb and .rpm packages put kakemono in /usr/bin. On a Mac, link it onto your PATH:

Terminal
ln -s /Applications/kakemono.app/Contents/MacOS/kakemono ~/.local/bin/kakemono

To install only the command-line tool, on servers, window managers, ARM Linux, or anywhere you don’t want the app, use Homebrew on macOS or Linux:

Terminal
brew install rielj/tap/kakemono-cli

Or download it:

Terminal
# Pick one: macos-arm64, macos-x64, linux-x64, or linux-arm64
platform=linux-x64
curl -fsSL https://github.com/RielJ/kakemono/releases/latest/download/kakemono-cli-$platform.tar.gz | tar xz
install -m 755 kakemono-cli-$platform/kakemono ~/.local/bin/

On Windows, unzip kakemono-cli-windows-x64.zip and put kakemono.exe on your PATH.

Without the app, the pick and settings commands have nothing to open. The commands reference lists every command.

Download SHA256SUMS from the same release, then run this command in the folder with your download:

Terminal
shasum -a 256 -c SHA256SUMS --ignore-missing

kakemono builds with stable Rust 1.99 or newer. To build and install only the command-line tool and daemon:

Terminal
git clone https://github.com/RielJ/kakemono.git && cd kakemono
cargo install --locked --path crates/cli # installs kakemono into ~/.cargo/bin

The app is a Tauri 2 project in crates/ui. It also needs Node.js 26 or newer, as set in .node-version. On Linux, it needs the WebKitGTK development packages too. On Debian and Ubuntu:

Terminal
sudo apt install libwebkit2gtk-4.1-dev libayatana-appindicator3-dev librsvg2-dev

To build the app bundle, which contains the kakemono binary:

Terminal
scripts/build-sidecar.sh
cd crates/ui/frontend
npm ci
TAURI_APP_PATH=../src-tauri npm run tauri -- build --config ../src-tauri/tauri.bundle.conf.json

The bundles go to target/release/bundle/.

A build from source doesn’t update itself the way a release does. See Updating.

The app starts the daemon for you. With the command-line tool only, start the daemon yourself, then send it commands:

Terminal
kakemono daemon # start the daemon in the background
kakemono next # set a new wallpaper now
kakemono status # show the current wallpaper
kakemono prev # go back in the history
kakemono favorite # copy the current wallpaper to the favorites folder
kakemono trash # move the current wallpaper to the trash folder and set the next one
kakemono set ~/Downloads/photo.jpg
kakemono pause # stop the timer; `kakemono resume` starts it again

If a command can’t reach the daemon, it exits with code 1 and says how to start the daemon. The commands reference lists every command.

On Linux, run kakemono detect once to see which wallpaper backend kakemono picked for your desktop. If wallpapers don’t change, run kakemono doctor. See Linux desktops.

To start the daemon every time you log in, install it as a login service:

Terminal
kakemono service install

The service depends on your system:

OS What service install creates Logs
macOS The LaunchAgent dev.rielj.kakemono.daemon in ~/Library/LaunchAgents/ ~/.local/state/kakemono/launchd.log
Linux The systemd user unit ~/.config/systemd/user/kakemono.service, part of graphical-session.target journalctl --user -u kakemono.service
Windows The value kakemono-daemon under HKCU\Software\Microsoft\Windows\CurrentVersion\Run %LOCALAPPDATA%\kakemono\logs\

To see whether the service is installed and running, run kakemono service status. To remove it, run kakemono service uninstall.