Skip to content
dot
Esc
↑↓navigate↵open⌘Jpreview
On this page

Check and apply

See what differs from your config, then fix only that.

dot check                           # everything in config/; changes nothing
dot apply                           # fix every difference
dot check dock                      # one file: config/dock.conf
dot apply keyboard repeat-rate 1    # try one setting, not saved anywhere
✓ dock visibility hidden
~ keyboard repeat-rate 2
    NSGlobalDomain KeyRepeat: 5 → 2
~ system hostname your-mac
    ComputerName: Your MacBook Pro → your-mac  (sudo)
✓ shell init zsh
    · not from this repo: ~/.zshrc line(s) 1
! mouse secondary-click: expected right, left or off, got 'middle'
Mark Meaning
✓ matches
~ differs; each indented line is an underlying value and its target
→ changed by apply
! an invalid value or a failed step; nothing changed for it
· a note: information only, never a difference
(sudo) needs your password; apply asks for it

check never changes anything and never asks for a password or Touch ID. apply changes only what differs, so running it twice is safe. At the end it restarts the apps that need it and lists anything left for you, such as logging out.

Try before you keep

dot apply <topic> <setting> <value> applies one setting without saving it anywhere. To keep it, add the same line to a file in config/.

Ask what a line does

dot explain                       # every setting, and where config/ uses it
dot explain trackpad              # one topic
dot explain dock visibility       # one setting
dot explain brew cask ghostty     # one line

The more you give, the more it says. Given a whole line, it shows the line in config/ with the comment above it, and what it refers to on this Mac; for a package, its description, version, and whether it’s installed:

brew cask <name>
    an app, font or prebuilt binary, e.g. 1password

    in config/apps.conf:
      # Terminal.
      brew cask ghostty

    ghostty: Terminal emulator that uses platform-native UI and GPU acceleration
      https://ghostty.org/
      version 1.3.1, installed 1.3.1

A line that isn’t in config/ yet is explained too, with a reminder to add it. explain changes nothing.

Every setting dot knows is in the settings reference.

Was this page helpful?