You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
docs(readme): rewrite stub into proper entry point
The previous readme was a 17-line stub with a typo (configration), a
single Docker snippet, and a stale "Add mason.nvim" road map item that
shipped years ago. Replace it with an entry point that actually
explains the repo: the dotfm + per-tool setup two-layer design, a
correct quick-start (dotfm apply as the everyday flow, setup.{ps1,sh}
as per-tool bootstrap fallback), a tool catalogue table, and pointers
to docs/STRUCTURE.md for the full design.
[](https://github.com/ShortArrow/dotfiles/actions/workflows/hugo.yml)
4
4
5
-
## Quick Test on Docker
5
+
Cross-platform dotfiles of [@ShortArrow](https://github.com/ShortArrow). Same end state on Windows / Linux / macOS via a single source of truth (`dotfm.toml`).
6
+
7
+
## How it works
8
+
9
+
Two parallel layers produce the same symlink tree — pick whichever is bootstrappable on the host:
10
+
11
+
1.**[`dotfm`](https://github.com/ShortArrow/dotfm)** — small Rust binary, reads `dotfm.toml` and applies the link rules. Recommended for everyday use.
12
+
2.**`<tool>/setup.ps1` / `<tool>/setup.sh`** — bootstrap launchers used when `dotfm` isn't available yet (fresh boxes, no Rust). They consume the same `dotfm.toml` through `lib/_lib.{ps1,sh}`.
13
+
14
+
Running both is a no-op the second time. See [`docs/STRUCTURE.md`](docs/STRUCTURE.md) for the full design (decision matrix for `symlink` / `copy` / `post_apply` / `script`, security rules, how to add a tool).
15
+
16
+
## Quick start
17
+
18
+
The everyday flow is `dotfm apply`. The `<tool>/setup.{ps1,sh}` launchers exist as **per-tool** fallbacks for hosts where `dotfm` isn't installed yet — each one only touches its own tool.
Each top-level directory contains the actual config files plus optional `setup.{ps1,sh}` and `doctor.ps1`. The full mapping (which file goes where on which OS) lives in [`dotfm.toml`](dotfm.toml).
73
+
74
+
## Branch strategy
75
+
76
+
`main` only. Topic branches are optional; merge back to `main`.
0 commit comments