Build your desktop
scoot on its own is a compositor: windows, keys, nothing else. Bring the rest.
There are two routes. NixOS takes one switch. Any other Linux takes one config file and a few packages.
What a desktop needs
Section titled “What a desktop needs”| Piece | What you use today | scoot’s own |
|---|---|---|
| Compositor | scoot |
✓ live |
| Status bar | scootbar, or any layer-shell bar (Waybar, …) |
✓ live |
| Wallpaper | scootbg, started by scoot from [wallpaper] |
✓ live |
| App launcher | scootlaunch (install.), or fuzzel |
✓ live |
| Notifications | scootnotify (install.), or mako |
✓ live |
| Idle and lock | swayidle and swaylock | scootlock (planned) |
| Login screen | ReGreet on NixOS; your current login screen elsewhere | a scoot greeter (planned) |
| Clipboard history | cliphist and wl-clipboard | — |
| Screenshots and screen sharing | grim, slurp and xdg-desktop-portal-wlr | — |
When a scoot-made piece ships, it replaces the tool in the same slot. Keys and options keep their names.
NixOS: one switch
Section titled “NixOS: one switch”-
Do the NixOS steps on Install first: a
flake., yournix configuration.and anix home..nix -
Pick a look, the same one on both sides (the system side themes the login screen).
configuration.nix and home.nix programs.scoot.desktop.look = "ginger-night"; -
Rebuild.
Terminal window sudo nixos-rebuild switch --flake .#myhost -
Log out. Pick scoot on your login screen.
You get every row of the table above, themed to the look. The login
screen is the one exception (see below). The looks are ginger-night
(the default), music-desk, radial-burst, moonrise and
vinyl-sunset. You can see them here.
To replace your login screen with ReGreet, add one more line. Do this only after the desktop works:
programs.scoot.greeter.enable = true;Turn off a piece you do not want, on both sides (the system stops installing it, your user stops running it):
programs.scoot.desktop.notifications.enable = false;Every piece and every option: The scoot desktop.
Any other Linux: the parts
Section titled “Any other Linux: the parts”-
Install scoot with the Any Linux script (add
--systemto get it on your login screen,--launchfor the launcher below,--notifyfor notifications). It runs the bar as a service for you. -
Install the parts.
Terminal window sudo apt install foot fuzzel mako-notifier swaylock swayidle fonts-dejavu-coreTerminal window sudo dnf install foot fuzzel mako swaylock swayidle dejavu-sans-fontsOn openSUSE, use
zypper installin place ofdnf install, anddejavu-fontsin place ofdejavu-sans-fonts.Terminal window sudo pacman -S --needed foot fuzzel mako swaylock swayidle ttf-dejavuTerminal window nix profile add nixpkgs#foot nixpkgs#fuzzel nixpkgs#mako nixpkgs#dejavu_fontsInstall
swaylockandswayidlefrom your distro, not from Nix. The distro package installs the PAM file that lets your password unlock the screen. -
Make the config directory.
Terminal window mkdir -p ~/.config/scoot -
Write the bar config to
~/..config/scoot/bar. toml left = ["workspaces"]center = ["clock"]right = ["window-title"] -
Check the bar config. The command prints
ok.Terminal window scootbar daemon --check -
Write the scoot config to
~/.. Change the image path to a picture you have.config/scoot/config. toml [autostart]commands = ["spawn mako",][wallpaper]image = "~/Pictures/wallpaper.jpg"mode = "fill"[binds]"super+d" = "spawn scootlaunch""super+escape" = "spawn swaylock -f"Without
--launch(noscootlaunchonPATH), bind fuzzel instead:"super+d" = "spawn fuzzel". A bind is one command, so there is no fallback: a missing binary logs a warning and the key does nothing. -
Log out and pick scoot on your login screen. Installed without
--system? PressCtrl+Alt+F3, log in, and run:Terminal window scoot-session
The bar is at the top and the wallpaper behind your windows.
Super+d opens the launcher. Super+Escape locks the screen.
Already running scoot? Do steps 2 to 6, then apply the change without a restart:
scoot msg reloadA reload starts the new [autostart] entries once.
Symptom: the bar does not show. Run
journalctl --user -u scootbarand read the error. “no font” means step 2 did not install DejaVu. Install it, then runsystemctl --user restart scootbar.
Symptom: the wallpaper does not show. scoot needs
scootbgon yourPATH. Runcommand -v scootbg. No output meansscootbgis not installed. Install it, then runscoot msg reload.
Symptom:
Super+ddoes nothing. Runscootlaunchin a scoot terminal. An error there names the cause. If it opens, read the scoot log for a warning about[binds]. Bound fuzzel instead? Runfuzzelthe same way.
Lock the screen when you leave
Section titled “Lock the screen when you leave”Locking on idle needs a small script, because spawn does not run a
shell. The recipe is in Idle: locking and screen
power.
Pick a look
Section titled “Pick a look”Each look is a set of files: config. colors, a bar., a
wallpaper and terminal colors. The install script writes the first
three with --look ginger-night (or any look’s name), never over a
file you already have. The terminal and app colors are in the look’s
folder; each look’s README lists them.
Where next
Section titled “Where next”- Keybindings: every key, and how to add your own.
- scootbar modules: sound, network, battery, tray, your own buttons.
- scootbg: a wallpaper per output or per workspace, or from a link.
- Troubleshooting: find a fix by symptom.
