Skip to content
Justfile reference

Justfile reference

All automation in this repo is a mise task (defined in the repo-root mise.toml), with a matching just recipe kept as a thin shim — just X and mise run X are interchangeable. This page is generated from the live justfile + mise tasks by tools/gen-docs.py — run just docs-update to refresh it.

Run from the repo root. just with no arguments lists everything. Tasks are defined in the repo-root mise.toml — every recipe is equally runnable as mise run <task> (the justfile is a thin shim that delegates to mise).

Top-level

RecipeDescriptionRuns
just full-autoFull auto installationpackages, dev-setup, cli-tools, fish-shell, helix-editor, yazi-file-manager, fastfetch
just full-auto-guiFuller auto (graphical) installationfull-auto, kitty-terminal, niri-window-manager
just packages(Run first unless running full-auto) Setup Flatpak, pacman mirrors, Chaotic AUR, and paru AUR helper
just systemd-niri-configEnables the systemd services for some essential niri helperssystemd-niri-config-install, noctalia-reload
just systemd-niri-config-install

Install: essentials

RecipeDescriptionRuns
just cli-toolsEssential CLI tools from the pacman repos
just dev-setupProgramming languages, runtimes, toolchains, and git
just doom-bootstrapInstall Emacs + Doom: clone the framework, stow config, sync packages
just fish-shellfish shell and plugins
just helix-editor
just yazi-file-managerYazi terminal file manager and plugins

Install: graphical stack

RecipeDescriptionRuns
just kitty-terminal
just niri-window-managerInstall niri and tools used with it

Install: optional extras

RecipeDescriptionRuns
just fastfetch
just herdr-pluginsghzinga’s viewer binary gzg comes from mise (cargo:ghzinga).
just keybase-sshImport the Keybase PGP key into GPG and expose it for SSH auth
just pkg-categoriesList the manifest categories with their package counts
just pkg-installInstall this host’s missing manifest packages (or one category, or all)
just syncthing-file-sync

Stow (symlink management)

RecipeDescriptionRuns
just stowStow base packages + this host’s overlay (hosts/$hostname/), auto-detected
just stow-checkDry-run the stow above (shows what would change, touches nothing)
just unstowRemove all symlinks created by stow (host overlay first, then base)

Services

RecipeDescriptionRuns
just services-enableEnable + start the user services this setup expects

niri: reload helpers

RecipeDescriptionRuns
just caffeineKeep the screen awake (Noctalia’s caffeine: no idle lock or blanking). Also on the power menu.
just ext-brightnessExternal monitor brightness over DDC/CI: up | down | 0-100 (bare shows current)
just ext-displayInteractive TUI for the external monitor over DDC/CI (brightness, contrast, input, presets)
just noctalia-reload

Maintenance

RecipeDescriptionRuns
just doctorHealth check: tools present, shell, host overlay, services, mise, key symlinks
just pkg-driftExplicit installs (post day-0) not yet in the manifest or any recipe
just pkg-missingManifest packages this host expects but lacks (setup/hosts/.categories)
just pkg-tuiInteractive manifest manager: browse categories, install/remove/audit (fzf TUI)
just updateBring an existing machine fully up to date (each step best-effort)

Docs (this site)

RecipeDescriptionRuns
just docsFull docs build: regenerate markdown, then PDFs + cheatsheets, then the HTML sitedocs-pdf, docs-cheatsheets, docs-html
just docs-cheatsheetsLandscape cheatsheet PDFs, Catppuccin Latte (print) + Mocha (dark) variantsdocs-update
just docs-htmlBuild the HTML site into site/public/ (Hugo + Hextra)docs-update
just docs-openOpen a PDF (default: the combined handbook; e.g. just docs-open tmux-shortcuts)docs-pdf
just docs-pdfBuild the PDFs (per-page references + combined handbook) into docs/pdf/docs-update
just docs-serveLive-preview the docs site while editing (opens the browser once it’s up)docs-update
just docs-setupOne-time install of the docs toolchain (hugo, pandoc, typst, fonts)
just docs-updateRegenerate the generated markdown blocks from tmux.conf, binds.kdl, and the justfile

calendar

RecipeDescriptionRuns
just gcalGoogle Calendar (khal+vdirsyncer, chroncal): setup | status | reauth | rotate-client [app]

file-transfer

RecipeDescriptionRuns
just file-transferSet up LocalSend + rsync-over-ssh receiving (packages, firewall, folder, docs)
just file-transfer-hardenHarden a receiving machine: inbound SSH key-only + LLMNR off (disables passwords!)
just gdriveGoogle Drive mount: setup | status | reauth | rotate-client | rotate-password