1.1 KiB
1.1 KiB
Sigil
Sigil is a minimal symlink-based dotfile manager with per-package Lua config.
Install (dev)
go run . <command>
Commands
sigil apply— apply symlinks from~/.dotfilessigil apply --prune— prune stale links without promptingsigil add <path>— add a file/dir to the repo and symlink itsigil status— show stale linkssigil unlink <spec>— restore file(s) and remove from reposigil remove <spec>— same as unlink, plus remove package/subpath
Repo layout
~/.dotfiles/
<package>/
config.lua
files/
...
config.lua
return {
target = {
linux = "~/.config/nvim",
macos = "~/Library/Application Support/nvim",
default = "~/.config/nvim",
},
}
Spec formats
unlink/remove accept:
packagepackage:relative/path- repo path:
~/.dotfiles/<pkg>/files/... - target path: e.g.
~/.config/<app>/...
Notes
- Uses
SIGIL_REPOenv var to override the repo path. - Conflicts are detected (existing non-symlink files will stop apply).
- Prefer
sigil addover manual edits infiles/.