Reference

Commands

Every ShedOS tool is reachable as a subcommand of shedman. Long flags are the canonical spelling; short flags (-y, -n, -d, …) are aliases you can use wherever they’re listed below.

Note Run shedman with no arguments to list every installed subcommand with a one-line summary. shedman help <cmd> and shedman <cmd> --help both show a subcommand's full usage.

Discovery

CommandDoes
shedmanList every subcommand with one-line summaries.
shedman help <cmd>Show <cmd>'s --help.
shedman versionPrint the installed shedos-system package version.

Shell tab-completion is installed for zsh, bash, and fish. Man pages are available too: man shedman, man shedman-update, man shedman-apply, etc. Third-party packages can drop their own subcommands into /usr/libexec/shedman/.

Daily upgrades

shedman update is the primary upgrade command. It wraps pacman -Syu, yay -Sua (if installed), and shedman config —sync into one interactive flow bracketed by a snapper pre/post snapshot pair.

CommandDoes
shedman updateInteractive: list pending updates, prompt y/N, run pacman → yay → config sync.
shedman update -yUnattended: threads --noconfirm through pacman/yay. Conflicts still drop .shedosnew.
shedman update -lPrint recent snapper snapshots (rollback candidates).
shedman update -r <N>Roll back to snapshot N. Reboot required.
shedman update --historyOpen the upgrade-history TUI.

Dotfile sync — shedman config

CommandDoes
shedman config -sApply the 3-way merge interactively; prints a plan, asks y/N.
shedman config -s -nPrint what would change, do nothing.
shedman config -s --rebuild-manifestRe-hash $HOME against current defaults.
shedman config -rOpen the IDE-style merge TUI for unresolved .shedosnew files.

Rollback & checkpoints

CommandDoes
shedman rollback <N>Rename @ to @.rollback-<ts>, snapshot N into a fresh @. Reboot required.
shedman rollback -lShow recent snapper snapshots and exit.
shedman rollback -uPromote the most recent @.rollback-<ts> back to @.
shedman snapshot <label>Create a checkpoint; prints the snapshot number and the restore command.
shedman snapshot -lList manual checkpoints.

Observability

Four waybar-backed signals. Click the matching waybar pill for the same action.

CommandDoes
shedman updatesPending pacman + AUR update count.
shedman conflictsUnresolved .shedosnew count.
shedman healthDisk / memory / battery / CPU-temp / SMART / btrfs-scrub summary.
shedman doctorDrift between /etc/shedos/system.toml and live state.
shedman statusAll four signals plus a verdict line, in one screen.
shedman status -jAggregated JSON payload (schema-versioned).

Declarative state

/etc/shedos/system.toml is the source of truth for systemd units, drop-ins, pacman repos, snapper configs, and the Postgres service shape.

CommandDoes
shedman applyPlan, prompt, apply.
shedman apply -nPlan and exit.
shedman apply --validateParse and validate the TOML; exit 0 if OK, 2 on schema error.
shedman doctor -dUnified diff for every drift entry.
shedman doctor -fDelegate to shedman apply --yes.
Warning shedman apply is intentionally not timer-driven — surprise reconciles are hostile. shedman doctor runs on a 6-hour user timer and pings the waybar pill + mako if drift appears.

Installation helpers

CommandDoes
shedman install <pkg>Install one or more packages. Source auto-detected: pacman first (official + [shedos]), then yay/AUR.
shedman install -s <query>Search across pacman repos and AUR.
shedman uninstall <pkg>Remove packages + unused deps; routes pacman vs yay automatically, prompts first.
shedman migrate --from-archAdopt an existing Arch install into ShedOS without reinstalling. Dry-run by default.

Desktop & session

CommandDoes
shedman keybindingsEvery keybinding and gesture in a searchable dialog (Super+Alt+K).
shedman launcherOpen the Walker app launcher.
shedman dock <verb>Manage the dock: toggle, position <edge>, pin/unpin, status.
shedman power / lockThe power menu / lock the session.
shedman theme set <key> <value>Switch palette, wallpaper, font_ui, or font_mono; re-renders everything live.

System management

CommandDoes
shedman kernel -lInstalled kernels; * marks the default Limine entry.
shedman servicesTable of expected services with enabled/active state.
shedman datetimeSet timezone, network time, the system clock, and the night-light schedule.
shedman db create / drop / listPer-project databases, run as you.
shedman fingerprint <verb>Manage fingerprint enrollments (login + sudo).
shedman upgrade-historyBrowse past upgrades and roll back to any snapshot.

pacman cheatsheet

CommandDoes
sudo pacman -SyuSystem upgrade (skips the config-sync step).
pacman -Ss <term>Search the repos.
sudo pacman -S <pkg>Install a package.
sudo pacman -Rns <pkg>Remove a package with its config + orphaned deps.
pacman -Qo <path>Which package owns a path?
pacman -QdtList orphaned dependencies.
sudo pacman -SccClean the package cache.

yay cheatsheet (AUR)

CommandDoes
yay -SuaAUR-only upgrade.
yay -S <pkg>Install from AUR (prompts, builds, installs).
yay -Rns <pkg>Remove an AUR package.
yay -YcClean orphan + unneeded AUR deps.
Info Proprietary AUR packages (Chrome, Postman, JetBrains Toolbox) aren't installed by default — shedman install <pkg> adds any of them post-boot from any source with one command. code (open-source VS Code from extra) ships by default.