@sebastienrousseau/dotfiles 0.2.508 → 0.2.510
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +30 -0
- package/README.md +5 -5
- package/docs/COPYRIGHT +1 -1
- package/docs/GOVERNANCE.md +2 -2
- package/docs/adr/ADR-011-nushell-tier3-keep.md +2 -2
- package/docs/guides/INSTALL.md +3 -3
- package/docs/index.md +116 -27
- package/docs/interop/A2A.md +2 -2
- package/docs/interop/POWERSHELL.md +4 -4
- package/docs/manual/00-introduction.md +3 -3
- package/docs/manual/01-concepts/02-trust-model.md +3 -3
- package/docs/manual/01-concepts/04-fleet.md +1 -1
- package/docs/manual/02-tutorials/01-first-install.md +1 -1
- package/docs/manual/02-tutorials/05-deploy-fleet.md +2 -2
- package/docs/manual/03-reference/02-config-files.md +1 -1
- package/docs/manual/03-reference/04-templates.md +1 -1
- package/docs/manual/04-cookbook/01-recipes.md +1 -1
- package/docs/manual/04-cookbook/02-troubleshooting.md +1 -1
- package/docs/manual/05-appendices/B-security-checklist.md +1 -1
- package/docs/manual/command-index.md +76 -1
- package/docs/manual/index.md +1 -1
- package/docs/operations/ARCHITECTURE_ROADMAP.md +145 -0
- package/docs/operations/CI_CADENCE.md +2 -2
- package/docs/operations/COMPLETIONS.md +2 -2
- package/docs/operations/COVERAGE.md +4 -4
- package/docs/operations/DRIFT.md +1 -1
- package/docs/operations/MAINTENANCE.md +6 -6
- package/docs/operations/PERFORMANCE.md +6 -6
- package/docs/operations/RELIABILITY.md +1 -1
- package/docs/operations/ROADMAP_V0_2_503.md +1 -1
- package/docs/operations/TRACEABILITY.md +2 -0
- package/docs/operations/TRUSTED_AGENT_WORKSTATION.md +6 -6
- package/docs/operations/VERSION_SYNC.md +3 -3
- package/docs/reference/UTILS.md +82 -0
- package/docs/security/AUDIT_BYPASS.md +3 -3
- package/docs/security/AUTOMATION_SECRETS.md +1 -1
- package/docs/security/CI_PINNING.md +10 -10
- package/docs/security/COMMIT_SIGNING.md +10 -10
- package/docs/security/DEPS_DEV_EXCEPTIONS.md +4 -4
- package/docs/security/DISCLOSURE.md +3 -3
- package/docs/security/INCIDENT_RESPONSE.md +1 -1
- package/docs/security/INSTALL_VERIFICATION.md +2 -2
- package/docs/security/MCP_POLICY.md +4 -4
- package/docs/security/SCORECARD.md +7 -7
- package/docs/security/SECURITY_CHECKLIST.md +1 -1
- package/docs/security/SHELL_EXEMPTIONS.md +2 -2
- package/docs/security/SOUP_REGISTER.md +4 -4
- package/docs/stylesheets/extra.css +444 -0
- package/docs/themes/hero-shot.svg +1 -1
- package/install.sh +17 -6
- package/package.json +1 -1
- package/scripts/ci/check-copyright-headers.sh +1 -1
- package/scripts/ci/check-shell-preamble.sh +1 -1
- package/scripts/ci/guard-gitleaks-checkout.sh +1 -1
- package/scripts/dot/commands/agent.sh +7 -6
- package/scripts/dot/commands/ai.sh +8 -5
- package/scripts/dot/commands/appearance.sh +14 -1
- package/scripts/dot/commands/completion.sh +134 -0
- package/scripts/dot/commands/core.sh +8 -0
- package/scripts/dot/commands/diagnostics.sh +16 -0
- package/scripts/dot/commands/fleet.sh +7 -3
- package/scripts/dot/commands/lint.sh +55 -30
- package/scripts/dot/commands/secrets.sh +61 -7
- package/scripts/dot/commands/security.sh +8 -0
- package/scripts/dot/powershell/Dot.psm1 +1 -1
- package/scripts/git-hooks/pre-commit-audit.sh +1 -1
- package/scripts/ops/heal-tools.sh +28 -0
- package/scripts/ops/teleport.sh +2 -2
- package/scripts/qa/examples-coverage.sh +94 -0
- package/scripts/version-sync.sh +29 -2
- package/docs/_config.yml +0 -59
package/CHANGELOG.md
CHANGED
|
@@ -2,6 +2,36 @@
|
|
|
2
2
|
|
|
3
3
|
This file documents all notable changes to this project.
|
|
4
4
|
|
|
5
|
+
## v0.2.510 — 2026-07-05
|
|
6
|
+
|
|
7
|
+
Post-v0.2.509 quality-of-life release: default branch renamed `master` → `main`, docs site relit with a custom dark + terminal-green MkDocs Material theme, shells warmed up (fish alias→abbr, zsh PATH prune), font bumped to 20pt across every terminal template, themes rebuilt from wallpapers.
|
|
8
|
+
|
|
9
|
+
### Added
|
|
10
|
+
|
|
11
|
+
- **Custom docs theme** (#960). doc.dotfiles.io now serves MkDocs Material with a bespoke palette (near-black `#0b0e14` background, terminal-green `#7ee787` accent), Inter + JetBrains Mono fonts, hero + 8-card feature grid landing page. Header, tabs, sidebar, TOC, admonitions, code blocks, tables, custom scrollbar all restyled in `docs/stylesheets/extra.css`.
|
|
12
|
+
- **CLAUDE.md `## Handing over commands` rule** (#959). Cross-project preference deployed to `~/.claude/CLAUDE.md`: when Claude Code needs the user to run shell steps themselves, it must hand them over as one runnable script file, not fenced code blocks or scattered one-liners.
|
|
13
|
+
- **`mirror-main-to-master` workflow** (#961). Fast-forwards `master` from `main` on every push during the rename grace period so bookmarked `raw.githubusercontent.com/…/master/…` install URLs keep resolving. Retire on 2027-07-05 per tracking issue #962.
|
|
14
|
+
- **fish alias-cache pre-warm** (#964). New `run_onchange_after_30-regen-fish-alias-cache.sh.tmpl` regenerates `~/.cache/fish/bash-aliases.fish` at chezmoi-apply time when the alias sources change, so the first fish shell after apply doesn't pay ~200ms rebuilding the cache from scratch.
|
|
15
|
+
|
|
16
|
+
### Changed
|
|
17
|
+
|
|
18
|
+
- **Default branch: `master` → `main`** (#961). GitHub-side rename plus 96 in-repo edits (workflow triggers, docs URIs, install URLs, ruleset filename, git aliases). Every `raw.githubusercontent.com/…/master/…` and `github.com/…/blob/master/…` reference now points at `/main/`. Workflow `pull_request:` / `push:` triggers keep `master` as a grace-period fallback until the mirror is retired.
|
|
19
|
+
- **Portability + missing commands** (#953). Ships as part of v0.2.509 via PR #953 (already tagged) — cross-platform fixes for macOS/BSD/Alpine/openSUSE (base64 `-D` fallback, `sort -V` stdin buffering, `date +%s%3N` guards, zypper/apk/pkg package-manager detection) plus wiring for `dot teleport`, `dot uninstall`, `dot policy`, `dot secret-audit`, `dot completion <bash|zsh|fish|nu>`, `dot fonts patch`. Cross-shell parity for `dot secrets load --shell posix|fish|nu` and auto-secret-load in bash/fish/nushell. See [v0.2.509 release notes](https://github.com/sebastienrousseau/dotfiles/releases/tag/v0.2.509).
|
|
20
|
+
- **Terminal font 12 → 20** (#963). `defaults/.chezmoidata.toml` and every terminal template (alacritty, wezterm, ghostty, kitty, waybar) bumped so a fresh install reads at 20pt across the surface.
|
|
21
|
+
- **Themes rebuilt** (#963). K-Means CIELAB color extraction re-run over all 206 detected wallpapers → 752 theme sections. Five dark themes removed where the underlying wallpaper is inherently light-toned (hello, iphone, valentine, modern, firewatch) — their `-light` counterparts kept.
|
|
22
|
+
- **Zsh PATH prune** (#963). The pre-existing dedup+prune tail in `00-core-paths.sh` was gated behind `[ -z "$ZSH_VERSION" ]`, so zsh never pruned. Now runs native zsh path-array iteration for zsh (89 → 77 entries with no non-existent dirs) alongside the existing bash 4+ associative-array and bash 3.x awk paths.
|
|
23
|
+
|
|
24
|
+
### Fixed
|
|
25
|
+
|
|
26
|
+
- **Fish startup 217 ms → 119 ms** (#963). `defaults/dot_config/fish/conf.d/aliases.fish.tmpl` now writes the bash-bridge cache as `abbr --add NAME -- VALUE` instead of `alias NAME=VALUE`. Fish's `alias` builtin creates one function per entry (~183 µs); `abbr` is a command-line-time expansion at ~40 µs. Sourcing the same 878-entry cache went 170 ms → 34 ms. Cache self-heals on upgrade (staleness now also fires on the old `alias` format).
|
|
27
|
+
- **Scorecard code-scanning alerts** (this release, #965). Nine `TokenPermissionsID` alerts closed by adding top-level `permissions: contents: read` (least-privilege default) to workflows that only declared job-level write permissions. One `PinnedDependenciesID` alert closed by hash-locking `requirements-docs.txt` via `pip-compile --generate-hashes` and switching pages.yml to `pip install --require-hashes`.
|
|
28
|
+
|
|
29
|
+
### Housekeeping
|
|
30
|
+
|
|
31
|
+
- Bumped `package.json`, `defaults/.chezmoidata.toml`, and every managed markdown reference from `v0.2.508` → `v0.2.510` (26 files consistent).
|
|
32
|
+
- Pruned the stale `feat/v0.2.509` local branch (its remote was deleted at merge time).
|
|
33
|
+
- Retired the `.git/*.sh` session helper scripts left over from the rename + docs-theme + housekeeping PRs.
|
|
34
|
+
|
|
5
35
|
## v0.2.508 — 2026-06-30
|
|
6
36
|
|
|
7
37
|
Makes `dot apply` / `dot update` behave like an OS package-manager update —
|
package/README.md
CHANGED
|
@@ -10,7 +10,7 @@
|
|
|
10
10
|
|
|
11
11
|
<p align="center">
|
|
12
12
|
<a href="https://github.com/sebastienrousseau/dotfiles/actions"><img src="https://img.shields.io/github/actions/workflow/status/sebastienrousseau/dotfiles/ci.yml?style=for-the-badge&logo=githubactions&logoColor=white" alt="Build" /></a>
|
|
13
|
-
<a href="https://github.com/sebastienrousseau/dotfiles/releases/latest"><img src="https://img.shields.io/badge/Version-v0.2.
|
|
13
|
+
<a href="https://github.com/sebastienrousseau/dotfiles/releases/latest"><img src="https://img.shields.io/badge/Version-v0.2.510-blue?style=for-the-badge&logo=semanticrelease&logoColor=white" alt="Version" /></a>
|
|
14
14
|
<a href="https://github.com/sebastienrousseau/dotfiles/releases"><img src="https://img.shields.io/github/downloads/sebastienrousseau/dotfiles/total?style=for-the-badge&logo=github&logoColor=white" alt="Downloads" /></a>
|
|
15
15
|
<a href="https://codespaces.new/sebastienrousseau/dotfiles"><img src="https://img.shields.io/badge/Open%20in-Codespaces-blue?style=for-the-badge&logo=github&logoColor=white" alt="Open in GitHub Codespaces" /></a>
|
|
16
16
|
<a href="https://scorecard.dev/viewer/?uri=github.com/sebastienrousseau/dotfiles"><img src="https://img.shields.io/ossf-scorecard/github.com/sebastienrousseau/dotfiles?style=for-the-badge&logo=linuxfoundation&logoColor=white&label=OpenSSF%20Scorecard" alt="OpenSSF Scorecard" /></a>
|
|
@@ -30,7 +30,7 @@
|
|
|
30
30
|
--idle-time-limit 1 --rows 30 --cols 100 \
|
|
31
31
|
--title "Dotfiles: install → doctor → theme"
|
|
32
32
|
# in the recording shell:
|
|
33
|
-
# curl -fsSL https://raw.githubusercontent.com/sebastienrousseau/dotfiles/
|
|
33
|
+
# curl -fsSL https://raw.githubusercontent.com/sebastienrousseau/dotfiles/main/install.sh | bash
|
|
34
34
|
# dot doctor
|
|
35
35
|
# dot theme rebuild --force
|
|
36
36
|
# then Ctrl-D to stop
|
|
@@ -52,7 +52,7 @@
|
|
|
52
52
|
|
|
53
53
|
```bash
|
|
54
54
|
curl -fsSL -o /tmp/dotfiles-install.sh \
|
|
55
|
-
https://raw.githubusercontent.com/sebastienrousseau/dotfiles/v0.2.
|
|
55
|
+
https://raw.githubusercontent.com/sebastienrousseau/dotfiles/v0.2.510/install.sh
|
|
56
56
|
echo "d5a04c5e2813a93a63c8ecce9655cf3d107f6068862c6eba84a92cf22f801c7e /tmp/dotfiles-install.sh" \
|
|
57
57
|
| shasum -a 256 -c
|
|
58
58
|
bash /tmp/dotfiles-install.sh
|
|
@@ -61,7 +61,7 @@ bash /tmp/dotfiles-install.sh
|
|
|
61
61
|
**Trust-source one-liner** (skips the SHA check — fine for sandboxes and ephemeral CI, not recommended for primary workstations):
|
|
62
62
|
|
|
63
63
|
```bash
|
|
64
|
-
bash -c "$(curl -fsSL https://raw.githubusercontent.com/sebastienrousseau/dotfiles/
|
|
64
|
+
bash -c "$(curl -fsSL https://raw.githubusercontent.com/sebastienrousseau/dotfiles/main/install.sh)"
|
|
65
65
|
```
|
|
66
66
|
|
|
67
67
|
Then verify and explore:
|
|
@@ -80,7 +80,7 @@ Silent install (no prompts):
|
|
|
80
80
|
|
|
81
81
|
```bash
|
|
82
82
|
DOTFILES_SILENT=1 DOTFILES_NONINTERACTIVE=1 \
|
|
83
|
-
bash -c "$(curl -fsSL https://raw.githubusercontent.com/sebastienrousseau/dotfiles/
|
|
83
|
+
bash -c "$(curl -fsSL https://raw.githubusercontent.com/sebastienrousseau/dotfiles/main/install.sh)"
|
|
84
84
|
```
|
|
85
85
|
|
|
86
86
|
Docker sandbox:
|
package/docs/COPYRIGHT
CHANGED
package/docs/GOVERNANCE.md
CHANGED
|
@@ -22,7 +22,7 @@ exist.
|
|
|
22
22
|
## Contribution flow
|
|
23
23
|
|
|
24
24
|
1. **Issue** for non-trivial work. Confirm scope before coding.
|
|
25
|
-
2. **Branch** off `
|
|
25
|
+
2. **Branch** off `main`: `feat/<scope>`, `fix/<scope>`,
|
|
26
26
|
`docs/<scope>`, etc.
|
|
27
27
|
3. **PR** with description following the template:
|
|
28
28
|
- Summary (1–3 bullets)
|
|
@@ -51,7 +51,7 @@ For breaking changes or substantial new features:
|
|
|
51
51
|
- **Backwards compatibility** (what breaks, migration path)
|
|
52
52
|
- **Alternatives considered** (with reasons rejected)
|
|
53
53
|
- **Unresolved questions**
|
|
54
|
-
2. Open a PR labelled `rfc` against `
|
|
54
|
+
2. Open a PR labelled `rfc` against `main`.
|
|
55
55
|
3. Comment window: 14 days minimum.
|
|
56
56
|
4. Maintainer renders a decision (accept / accept-with-changes /
|
|
57
57
|
reject) with public reasoning in the PR.
|
|
@@ -137,8 +137,8 @@ plugin system, bash bridge for aliases) await an actual user request.
|
|
|
137
137
|
|
|
138
138
|
## References
|
|
139
139
|
|
|
140
|
-
- [`dot_config/nushell/cached_eval.nu`](
|
|
141
|
-
- [`dot_config/nushell/env.nu.tmpl`](
|
|
140
|
+
- [`dot_config/nushell/cached_eval.nu`](https://github.com/sebastienrousseau/dotfiles/blob/main/defaults/dot_config/nushell/cached_eval.nu) — the new module.
|
|
141
|
+
- [`dot_config/nushell/env.nu.tmpl`](https://github.com/sebastienrousseau/dotfiles/blob/main/defaults/dot_config/nushell/env.nu.tmpl) — adopter.
|
|
142
142
|
- ADR-007 (Multi-Shell Parity Strategy) — establishes the tier definitions.
|
|
143
143
|
- ADR-002 (Shell Performance Optimization Strategy) — establishes `_cached_eval` semantics this module ports.
|
|
144
144
|
- Issue [#880](https://github.com/sebastienrousseau/dotfiles/issues/880).
|
package/docs/guides/INSTALL.md
CHANGED
|
@@ -14,7 +14,7 @@ Set up on macOS, Linux, or WSL in 3 to 5 minutes.
|
|
|
14
14
|
|
|
15
15
|
```bash
|
|
16
16
|
bash -c "$(
|
|
17
|
-
curl -fsSL https://raw.githubusercontent.com/sebastienrousseau/dotfiles/
|
|
17
|
+
curl -fsSL https://raw.githubusercontent.com/sebastienrousseau/dotfiles/main/install.sh
|
|
18
18
|
)"
|
|
19
19
|
```
|
|
20
20
|
|
|
@@ -99,7 +99,7 @@ Use this mode for CI or scripts that run without user input:
|
|
|
99
99
|
```bash
|
|
100
100
|
DOTFILES_SILENT=1 DOTFILES_NONINTERACTIVE=1 \
|
|
101
101
|
bash -c "$(
|
|
102
|
-
curl -fsSL https://raw.githubusercontent.com/sebastienrousseau/dotfiles/
|
|
102
|
+
curl -fsSL https://raw.githubusercontent.com/sebastienrousseau/dotfiles/main/install.sh
|
|
103
103
|
)"
|
|
104
104
|
```
|
|
105
105
|
|
|
@@ -136,7 +136,7 @@ rm -rf ~/.local/share/chezmoi ~/.local/share/dotfiles.log
|
|
|
136
136
|
|
|
137
137
|
### Signed contributions
|
|
138
138
|
|
|
139
|
-
All commits must be signed. See [Contributing](
|
|
139
|
+
All commits must be signed. See [Contributing](https://github.com/sebastienrousseau/dotfiles/blob/main/CONTRIBUTING.md) for details.
|
|
140
140
|
|
|
141
141
|
---
|
|
142
142
|
|
package/docs/index.md
CHANGED
|
@@ -1,43 +1,132 @@
|
|
|
1
1
|
---
|
|
2
|
+
title: .dotfiles — dark, signed, cross-platform
|
|
3
|
+
description: Cross-platform, signed, local-first dotfiles for macOS, Linux, and WSL.
|
|
4
|
+
hide:
|
|
5
|
+
- navigation
|
|
6
|
+
- toc
|
|
2
7
|
render_with_liquid: false
|
|
3
8
|
---
|
|
4
9
|
|
|
10
|
+
<section class="dot-hero" markdown>
|
|
11
|
+
|
|
5
12
|
# .dotfiles
|
|
6
13
|
|
|
7
|
-
Cross-platform, signed, local-first dotfiles for macOS, Linux, and WSL
|
|
14
|
+
<p class="tagline">Cross-platform, signed, local-first dotfiles for macOS, Linux, and WSL — multi-shell parity (bash/zsh/fish/nushell), a fast <code>dot</code> CLI, wallpaper-driven themes, SLSA-signed releases, and AI/MCP-aware tooling.</p>
|
|
15
|
+
|
|
16
|
+
<div class="buttons">
|
|
17
|
+
<a class="primary" href="guides/INSTALL/">Install →</a>
|
|
18
|
+
<a href="https://github.com/sebastienrousseau/dotfiles">GitHub</a>
|
|
19
|
+
<a href="reference/UTILS/">Utilities</a>
|
|
20
|
+
<a href="architecture/ARCHITECTURE/">Architecture</a>
|
|
21
|
+
</div>
|
|
22
|
+
|
|
23
|
+
</section>
|
|
24
|
+
|
|
25
|
+
## What's inside
|
|
26
|
+
|
|
27
|
+
<div class="grid cards" markdown>
|
|
28
|
+
|
|
29
|
+
- :material-console:{ .lg .middle } **Multi-shell parity**
|
|
30
|
+
|
|
31
|
+
---
|
|
32
|
+
|
|
33
|
+
Bash, Zsh, Fish, Nushell — same aliases, functions, prompt, and completions. Cross-shell env parity from `.chezmoidata.toml`.
|
|
34
|
+
|
|
35
|
+
[→ Shell hub](reference/UTILS.md)
|
|
36
|
+
|
|
37
|
+
- :material-lock-check:{ .lg .middle } **Signed & attested**
|
|
38
|
+
|
|
39
|
+
---
|
|
40
|
+
|
|
41
|
+
Every commit SSH-signed, DCO enforced, SLSA-signed releases, SBOM + CVE gate, secret encryption via age.
|
|
42
|
+
|
|
43
|
+
[→ Security](operations/ATTESTATION.md)
|
|
44
|
+
|
|
45
|
+
- :material-palette:{ .lg .middle } **190 wallpaper-driven themes**
|
|
46
|
+
|
|
47
|
+
---
|
|
48
|
+
|
|
49
|
+
K-Means CIELAB color extraction. Terminal, editor, DE — all follow the wallpaper. `dot theme rebuild --force` regenerates from `~/Pictures/Wallpapers/`.
|
|
50
|
+
|
|
51
|
+
[→ Theme system](reference/UTILS.md)
|
|
52
|
+
|
|
53
|
+
- :material-rocket-launch:{ .lg .middle } **Fast `dot` CLI**
|
|
54
|
+
|
|
55
|
+
---
|
|
56
|
+
|
|
57
|
+
142+ subcommands: apply, health, doctor, heal, ai, agent, fleet, secrets, teleport, uninstall — with fzf pickers and a Bubble Tea cockpit.
|
|
58
|
+
|
|
59
|
+
[→ CLI reference](reference/UTILS.md)
|
|
60
|
+
|
|
61
|
+
- :material-check-decagram:{ .lg .middle } **CI you can trust**
|
|
62
|
+
|
|
63
|
+
---
|
|
64
|
+
|
|
65
|
+
35+ checks — shellcheck, shfmt, luacheck, stylua, CodeQL, Snyk, grype/SBOM, deps.dev, doc-drift gate, examples contract at 100%.
|
|
66
|
+
|
|
67
|
+
[→ Operations](operations/OPERATIONS.md)
|
|
68
|
+
|
|
69
|
+
- :material-earth:{ .lg .middle } **Cross-platform**
|
|
70
|
+
|
|
71
|
+
---
|
|
72
|
+
|
|
73
|
+
macOS (Intel & Apple Silicon), Linux (Ubuntu, Fedora, Arch, Alpine, openSUSE), WSL, PowerShell 7.5+, real BSDs.
|
|
74
|
+
|
|
75
|
+
[→ Support matrix](reference/SUPPORT_MATRIX.md)
|
|
76
|
+
|
|
77
|
+
- :material-brain:{ .lg .middle } **AI & MCP aware**
|
|
78
|
+
|
|
79
|
+
---
|
|
80
|
+
|
|
81
|
+
18-agent fleet cockpit (`dot ai`), local Claude gateway, MCP registry, context patterns, provider secrets — first-class support, not bolted on.
|
|
82
|
+
|
|
83
|
+
[→ AI operations](AI.md)
|
|
84
|
+
|
|
85
|
+
- :material-account-cog:{ .lg .middle } **Chezmoi under the hood**
|
|
86
|
+
|
|
87
|
+
---
|
|
88
|
+
|
|
89
|
+
Deterministic templates, feature flags, profiles, `run_onchange_` hooks. Everything lives in `defaults/` and applies to `$HOME` on-demand.
|
|
90
|
+
|
|
91
|
+
[→ Architecture](architecture/ARCHITECTURE.md)
|
|
92
|
+
|
|
93
|
+
</div>
|
|
94
|
+
|
|
95
|
+
## Quick start
|
|
96
|
+
|
|
97
|
+
Install onto a fresh machine:
|
|
8
98
|
|
|
9
|
-
|
|
10
|
-
[](https://github.com/sebastienrousseau/dotfiles/releases/tag/v0.2.508)
|
|
11
|
-
[](https://github.com/sebastienrousseau/dotfiles/releases)
|
|
99
|
+
=== "macOS / Linux / WSL"
|
|
12
100
|
|
|
13
|
-
|
|
101
|
+
```bash
|
|
102
|
+
bash -c "$(curl -fsSL https://raw.githubusercontent.com/sebastienrousseau/dotfiles/main/install.sh)"
|
|
103
|
+
```
|
|
14
104
|
|
|
15
|
-
|
|
105
|
+
=== "Windows (PowerShell 7+)"
|
|
16
106
|
|
|
17
|
-
|
|
18
|
-
-
|
|
19
|
-
|
|
20
|
-
- [Support matrix](reference/SUPPORT_MATRIX.md)
|
|
107
|
+
```powershell
|
|
108
|
+
iwr -useb https://raw.githubusercontent.com/sebastienrousseau/dotfiles/main/install.ps1 | iex
|
|
109
|
+
```
|
|
21
110
|
|
|
22
|
-
|
|
111
|
+
Once installed:
|
|
23
112
|
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
-
|
|
28
|
-
|
|
29
|
-
- [Repository layout](architecture/REPO_LAYOUT.md)
|
|
113
|
+
dot doctor # verify state
|
|
114
|
+
dot health # dashboard with actionable warnings
|
|
115
|
+
dot ai # launch the AI cockpit (Bubble Tea TUI)
|
|
116
|
+
dot theme # pick a wallpaper-driven theme
|
|
117
|
+
dot help all # full CLI reference
|
|
30
118
|
|
|
31
|
-
##
|
|
119
|
+
## Where to next
|
|
32
120
|
|
|
33
|
-
- [
|
|
34
|
-
- [
|
|
35
|
-
- [
|
|
36
|
-
- [
|
|
37
|
-
- [
|
|
121
|
+
- [**Install guide**](guides/INSTALL.md) — full bootstrap walkthrough, per-platform.
|
|
122
|
+
- [**Utilities & `dot` CLI**](reference/UTILS.md) — every subcommand with examples.
|
|
123
|
+
- [**Architecture**](architecture/ARCHITECTURE.md) — how the layers fit together.
|
|
124
|
+
- [**Trusted agent workstation**](operations/TRUSTED_AGENT_WORKSTATION.md) — hardening + attestation runbook.
|
|
125
|
+
- [**Troubleshooting**](guides/TROUBLESHOOTING.md) — the common gotchas.
|
|
126
|
+
- [**Support matrix**](reference/SUPPORT_MATRIX.md) — OS × shell × package-manager grid.
|
|
127
|
+
- [**Security overview**](security/SECURITY.md) — signing, attestation, secret handling, threat model.
|
|
38
128
|
|
|
39
|
-
## Current
|
|
129
|
+
## Current release
|
|
40
130
|
|
|
41
|
-
-
|
|
42
|
-
-
|
|
43
|
-
- Source repository: [sebastienrousseau/dotfiles](https://github.com/sebastienrousseau/dotfiles)
|
|
131
|
+
- Release feed: [GitHub releases](https://github.com/sebastienrousseau/dotfiles/releases/latest)
|
|
132
|
+
- Source: [sebastienrousseau/dotfiles](https://github.com/sebastienrousseau/dotfiles)
|
package/docs/interop/A2A.md
CHANGED
|
@@ -8,8 +8,8 @@ The repository now ships an agent card and an A2A-ready discovery document.
|
|
|
8
8
|
|
|
9
9
|
Artifacts:
|
|
10
10
|
|
|
11
|
-
- [agent-card.json](
|
|
12
|
-
- [agent.json](
|
|
11
|
+
- [agent-card.json](https://github.com/sebastienrousseau/dotfiles/blob/main/defaults/dot_config/dotfiles/agent-card.json)
|
|
12
|
+
- [agent.json](https://github.com/sebastienrousseau/dotfiles/blob/main/.well-known/agent.json)
|
|
13
13
|
|
|
14
14
|
Core properties:
|
|
15
15
|
|
|
@@ -13,9 +13,9 @@ and what specifically is verified. Closes the docs slice of
|
|
|
13
13
|
|
|
14
14
|
| File | Role |
|
|
15
15
|
|---|---|
|
|
16
|
-
| [`dot_config/powershell/Microsoft.PowerShell_profile.ps1.tmpl`](
|
|
17
|
-
| [`scripts/qa/powershell-contract.ps1`](
|
|
18
|
-
| [`tests/unit/install/test_powershell_profile_syntax.sh`](
|
|
16
|
+
| [`dot_config/powershell/Microsoft.PowerShell_profile.ps1.tmpl`](https://github.com/sebastienrousseau/dotfiles/blob/main/defaults/dot_config/powershell/Microsoft.PowerShell_profile.ps1.tmpl) | The dotfiles PowerShell profile. Deployed to `$PROFILE` (resolves to `~/.config/powershell/Microsoft.PowerShell_profile.ps1` on Linux/macOS; `Documents\PowerShell\Microsoft.PowerShell_profile.ps1` on Windows). |
|
|
17
|
+
| [`scripts/qa/powershell-contract.ps1`](https://github.com/sebastienrousseau/dotfiles/blob/main/scripts/qa/powershell-contract.ps1) | The runtime contract. Renders the template, dot-sources it, asserts required function shims exist, runs PSScriptAnalyzer. |
|
|
18
|
+
| [`tests/unit/install/test_powershell_profile_syntax.sh`](https://github.com/sebastienrousseau/dotfiles/blob/main/tests/unit/install/test_powershell_profile_syntax.sh) | Static-syntax test runnable on Linux/macOS via `pwsh` when present; falls back to brace-balance + textual invariants when not. |
|
|
19
19
|
|
|
20
20
|
## What's verified
|
|
21
21
|
|
|
@@ -96,7 +96,7 @@ pwsh ./scripts/qa/powershell-contract.ps1
|
|
|
96
96
|
## References
|
|
97
97
|
|
|
98
98
|
- [PowerShell 7 docs](https://learn.microsoft.com/en-us/powershell/scripting/overview)
|
|
99
|
-
- [PSScriptAnalyzer rule reference](https://github.com/PowerShell/PSScriptAnalyzer/blob/
|
|
99
|
+
- [PSScriptAnalyzer rule reference](https://github.com/PowerShell/PSScriptAnalyzer/blob/main/docs/Rules/README.md)
|
|
100
100
|
- `.github/workflows/reliability-gate.yml` — Windows job definition.
|
|
101
101
|
- Issue [#860](https://github.com/sebastienrousseau/dotfiles/issues/860).
|
|
102
102
|
{% endraw %}
|
|
@@ -4,7 +4,7 @@ render_with_liquid: false
|
|
|
4
4
|
|
|
5
5
|
# Introduction
|
|
6
6
|
|
|
7
|
-
This manual describes `.dotfiles` v0.2.
|
|
7
|
+
This manual describes `.dotfiles` v0.2.510 — a trusted agent workstation baseline for macOS, Linux, and WSL.
|
|
8
8
|
|
|
9
9
|
The repository is more than a personal dotfiles collection. It ships as workstation infrastructure: signed, attested, multi-platform, AI-aware, and self-healing. Chezmoi handles templating and platform differences. The `dot` CLI sits on top and coordinates lifecycle operations.
|
|
10
10
|
|
|
@@ -52,7 +52,7 @@ dot manual text # pipe plain text to pager
|
|
|
52
52
|
## Quick Install
|
|
53
53
|
|
|
54
54
|
```sh
|
|
55
|
-
bash -c "$(curl -fsSL https://raw.githubusercontent.com/sebastienrousseau/dotfiles/
|
|
55
|
+
bash -c "$(curl -fsSL https://raw.githubusercontent.com/sebastienrousseau/dotfiles/main/install.sh)"
|
|
56
56
|
dot doctor
|
|
57
57
|
```
|
|
58
58
|
|
|
@@ -86,4 +86,4 @@ Individual tools packaged, referenced, or templated by this repository retain th
|
|
|
86
86
|
|
|
87
87
|
- **Bugs and feature requests** — <https://github.com/sebastienrousseau/dotfiles/issues>
|
|
88
88
|
- **Security vulnerabilities** — see [Security Policy](../security/SECURITY.md); do not open public issues for unpatched vulnerabilities
|
|
89
|
-
- **Documentation corrections** — open a pull request against `docs/manual/` on the `
|
|
89
|
+
- **Documentation corrections** — open a pull request against `docs/manual/` on the `main` branch
|
|
@@ -21,7 +21,7 @@ The trust model combines cryptographic signing, local-first secrets, policy-gate
|
|
|
21
21
|
|
|
22
22
|
### SSH ED25519 for Git
|
|
23
23
|
|
|
24
|
-
Every commit on `
|
|
24
|
+
Every commit on `main` is signed with SSH ED25519:
|
|
25
25
|
|
|
26
26
|
```sh
|
|
27
27
|
git verify-commit HEAD
|
|
@@ -62,7 +62,7 @@ CI runs three independent scanners:
|
|
|
62
62
|
|
|
63
63
|
| Scanner | Purpose | Threshold |
|
|
64
64
|
|:---|:---|:---|
|
|
65
|
-
| `gitleaks` | Pattern-based secret detection | Zero leaks on `
|
|
65
|
+
| `gitleaks` | Pattern-based secret detection | Zero leaks on `main` |
|
|
66
66
|
| `detect-secrets` | Baseline-comparing scanner | Zero new secrets vs `.secrets.baseline` |
|
|
67
67
|
| `trufflehog` | Verified-secret scanner (API-tested) | Zero verified secrets |
|
|
68
68
|
|
|
@@ -119,7 +119,7 @@ Violations are logged to `~/.local/state/dotfiles/mcp-violations.log` and report
|
|
|
119
119
|
},
|
|
120
120
|
"git": {
|
|
121
121
|
"head": "abc123...",
|
|
122
|
-
"branch": "
|
|
122
|
+
"branch": "main",
|
|
123
123
|
"signed": true,
|
|
124
124
|
"verified": true
|
|
125
125
|
}
|
|
@@ -91,7 +91,7 @@ Recommended rollout procedure for fleet-wide changes:
|
|
|
91
91
|
|
|
92
92
|
1. **Develop on one host** — make the change, test locally with `dot apply --dry-run` then `dot apply`
|
|
93
93
|
2. **Open a PR** — CI validates shellcheck, tests, security scanners
|
|
94
|
-
3. **Merge to
|
|
94
|
+
3. **Merge to main** — signed commit required
|
|
95
95
|
4. **Per-host pull** — on each fleet host: `dot update` (git pull + apply)
|
|
96
96
|
5. **Verify alignment** — run `dot fleet attest` from any host
|
|
97
97
|
|
|
@@ -16,7 +16,7 @@ End-to-end installation and verification, from zero to a fully-working environme
|
|
|
16
16
|
## Step 1: Run the Installer
|
|
17
17
|
|
|
18
18
|
```sh
|
|
19
|
-
bash -c "$(curl -fsSL https://raw.githubusercontent.com/sebastienrousseau/dotfiles/
|
|
19
|
+
bash -c "$(curl -fsSL https://raw.githubusercontent.com/sebastienrousseau/dotfiles/main/install.sh)"
|
|
20
20
|
```
|
|
21
21
|
|
|
22
22
|
The installer:
|
|
@@ -21,7 +21,7 @@ Goal: all three running identical `.dotfiles` with per-host customization, with
|
|
|
21
21
|
On each new host:
|
|
22
22
|
|
|
23
23
|
```sh
|
|
24
|
-
bash -c "$(curl -fsSL https://raw.githubusercontent.com/sebastienrousseau/dotfiles/
|
|
24
|
+
bash -c "$(curl -fsSL https://raw.githubusercontent.com/sebastienrousseau/dotfiles/main/install.sh)"
|
|
25
25
|
```
|
|
26
26
|
|
|
27
27
|
During `chezmoi init`, answer with the host's preset:
|
|
@@ -164,7 +164,7 @@ Both hosts render from the same templates, producing correct platform-appropriat
|
|
|
164
164
|
|
|
165
165
|
## Step 6: Fleet-Wide Updates
|
|
166
166
|
|
|
167
|
-
When you push a commit to
|
|
167
|
+
When you push a commit to main, each host pulls independently:
|
|
168
168
|
|
|
169
169
|
```sh
|
|
170
170
|
# On each host
|
|
@@ -247,7 +247,7 @@ Agent Card (MCP A2A spec):
|
|
|
247
247
|
|
|
248
248
|
## Verified Files
|
|
249
249
|
|
|
250
|
-
Every commit on `
|
|
250
|
+
Every commit on `main` modifies tracked files only. Untracked files in the source directory (e.g. editor swap files) are ignored via `.chezmoiignore`:
|
|
251
251
|
|
|
252
252
|
```
|
|
253
253
|
.DS_Store
|
|
@@ -11,7 +11,7 @@ Thirty short recipes for common tasks.
|
|
|
11
11
|
### 1. Install on a fresh machine
|
|
12
12
|
|
|
13
13
|
```sh
|
|
14
|
-
bash -c "$(curl -fsSL https://raw.githubusercontent.com/sebastienrousseau/dotfiles/
|
|
14
|
+
bash -c "$(curl -fsSL https://raw.githubusercontent.com/sebastienrousseau/dotfiles/main/install.sh)"
|
|
15
15
|
```
|
|
16
16
|
|
|
17
17
|
### 2. Update everything
|
|
@@ -17,7 +17,7 @@ Symptom → cause → fix.
|
|
|
17
17
|
|
|
18
18
|
```sh
|
|
19
19
|
export PATH="$HOME/.local/bin:$PATH"
|
|
20
|
-
bash -c "$(curl -fsSL https://raw.githubusercontent.com/sebastienrousseau/dotfiles/
|
|
20
|
+
bash -c "$(curl -fsSL https://raw.githubusercontent.com/sebastienrousseau/dotfiles/main/install.sh)"
|
|
21
21
|
```
|
|
22
22
|
|
|
23
23
|
### Symptom: "could not create directory ~/.local/share/chezmoi"
|
|
@@ -12,11 +12,36 @@ job `lint/command-index` fails when this file is stale.
|
|
|
12
12
|
|---------|---------|
|
|
13
13
|
| `dot add` | Add a file to chezmoi source |
|
|
14
14
|
| `dot agent` | Profile-aware execution, agent card, a2a-card, session log, checkpoints, and conformance |
|
|
15
|
+
| `dot agent` | a2a-card Show or validate the A2A v0.3 agent card |
|
|
16
|
+
| `dot agent` | card Show the local agent card metadata |
|
|
17
|
+
| `dot agent` | checkpoint Manage agent run checkpoints (save/list/show/replay) |
|
|
18
|
+
| `dot agent` | conformance Run the A2A conformance test suite |
|
|
19
|
+
| `dot agent` | delegate Delegate execution to an allowed sub-agent |
|
|
20
|
+
| `dot agent` | log Tail the agent session audit log |
|
|
21
|
+
| `dot agents` | check Verify AGENTS.md tracks CLAUDE.md (exit 1 if drifted) |
|
|
22
|
+
| `dot agents` | list Show recognised AI agent harnesses and their config paths |
|
|
23
|
+
| `dot agents` | render Regenerate AGENTS.md and per-harness config from CLAUDE.md |
|
|
15
24
|
| `dot agy` | Antigravity CLI with context patterns |
|
|
16
25
|
| `dot ai` | AI fleet cockpit, gateway, and cost |
|
|
26
|
+
| `dot ai` | ask Context-aware RAG query over your dotfiles |
|
|
27
|
+
| `dot ai` | chat Start an interactive AI session with a chosen tool |
|
|
28
|
+
| `dot ai` | cost Report AI spend across every provider from the unified run log |
|
|
29
|
+
| `dot ai` | delegate Delegate a coding task to a cheaper AI model under agent policy |
|
|
30
|
+
| `dot ai` | doctor Diagnose AI tooling configuration and connectivity |
|
|
31
|
+
| `dot ai` | install Install AI CLI tools via mise/native installers |
|
|
32
|
+
| `dot ai` | login Interactive setup/authentication for installed AI CLI tools |
|
|
33
|
+
| `dot ai` | run Run a one-shot prompt with an AI tool |
|
|
34
|
+
| `dot ai` | serve Run the local AI gateway/proxy that routes non-Claude providers |
|
|
35
|
+
| `dot ai` | tools Show installed AI CLI tools and their versions |
|
|
17
36
|
| `dot ai-query` | Context-aware RAG query over your dotfiles |
|
|
18
37
|
| `dot ai-setup` | Interactive setup for all AI CLI tools |
|
|
19
38
|
| `dot aider` | Aider with context patterns |
|
|
39
|
+
| `dot aliases` | cheatsheet Generate the alias cheatsheet markdown |
|
|
40
|
+
| `dot aliases` | list List all shell aliases shipped by the dotfiles |
|
|
41
|
+
| `dot aliases` | search Search aliases by term |
|
|
42
|
+
| `dot aliases` | stats Show alias usage counts from shell history |
|
|
43
|
+
| `dot aliases` | tiers Show which alias tiers/ecosystems are enabled |
|
|
44
|
+
| `dot aliases` | why Show details and deprecation status for a single alias |
|
|
20
45
|
| `dot attest` | Export workstation attestation evidence (--json |
|
|
21
46
|
| `dot backup` | Create a compressed backup of your home |
|
|
22
47
|
| `dot bundle` | Create offline archive of dotfiles environment |
|
|
@@ -25,6 +50,7 @@ job `lint/command-index` fails when this file is stale.
|
|
|
25
50
|
| `dot chaos` | Simulate config corruption to test self-healing |
|
|
26
51
|
| `dot cl` | Claude CLI with context patterns |
|
|
27
52
|
| `dot commit` | AI-powered conventional commit |
|
|
53
|
+
| `dot completion` | Generate shell completions (bash/zsh/fish/nu) from the command registry |
|
|
28
54
|
| `dot copilot` | GitHub Copilot CLI with context patterns |
|
|
29
55
|
| `dot diff` | Show chezmoi diff with exclusions |
|
|
30
56
|
| `dot dns-doh` | Enable DNS-over-HTTPS [macOS,Linux] |
|
|
@@ -33,34 +59,70 @@ job `lint/command-index` fails when this file is stale.
|
|
|
33
59
|
| `dot edit` | Open chezmoi source in $EDITOR |
|
|
34
60
|
| `dot encrypt-check` | Check disk encryption status |
|
|
35
61
|
| `dot env` | Tool versions (mise) |
|
|
62
|
+
| `dot env` | emit Emit a portable workstation environment manifest (SBOM; --format json) |
|
|
63
|
+
| `dot env` | install Install requested tool versions via mise |
|
|
64
|
+
| `dot env` | list List managed tool versions via mise |
|
|
65
|
+
| `dot env` | prune Show or remove orphan tool installs (--yes to commit) |
|
|
66
|
+
| `dot env` | use Pin a tool version globally/locally via mise |
|
|
36
67
|
| `dot firewall` | Apply firewall hardening [macOS,Linux] |
|
|
37
68
|
| `dot fleet` | Show fleet node status, drift, and namespace (--json for machine output) |
|
|
69
|
+
| `dot fleet` | apply SSH to every host in fleet.toml and run dot sync (or a custom --cmd) |
|
|
38
70
|
| `dot fleet` | drift Check for configuration drift across managed files |
|
|
71
|
+
| `dot fleet` | enforce Show or set RBAC enforcement mode (advisory/strict) for agent profiles |
|
|
39
72
|
| `dot fleet` | events Show recent fleet events from local event log |
|
|
40
73
|
| `dot fleet` | namespace Show or set the active namespace for multi-tenant isolation |
|
|
41
|
-
| `dot
|
|
74
|
+
| `dot fleet` | status Show this node's fleet status: id, namespace, version, OS, drift, last apply |
|
|
75
|
+
| `dot fonts` | Install (default) or patch Nerd Fonts (JetBrainsMono by default) |
|
|
42
76
|
| `dot help` | Show this help message |
|
|
43
77
|
| `dot history` | Shell history analysis |
|
|
44
78
|
| `dot keys` | Keybindings (sign-check: verify git signing) |
|
|
79
|
+
| `dot keys` | sign-check Verify git commit-signing configuration and key availability |
|
|
45
80
|
| `dot kiro` | Kiro CLI with context patterns |
|
|
46
81
|
| `dot learn` | Start the interactive tour of your new tools |
|
|
47
82
|
| `dot lint` | Lint shell scripts (--fix |
|
|
48
83
|
| `dot load-bench` | Measure time to heavy-layer readiness |
|
|
49
84
|
| `dot lock-screen` | Enforce lock screen idle settings [Linux] |
|
|
50
85
|
| `dot mcp` | Inspect MCP policy, supply chain, and registry |
|
|
86
|
+
| `dot mcp` | doctor Run the MCP policy/supply-chain/config audit |
|
|
87
|
+
| `dot mcp` | registry Show the configured MCP server registry |
|
|
51
88
|
| `dot metrics` | Show recent observability metrics (JSONL) |
|
|
52
89
|
| `dot mode` | Set or inspect agent operating profiles (ask/plan/apply/audit) |
|
|
90
|
+
| `dot mode` | current Show the active agent profile and its policy |
|
|
91
|
+
| `dot mode` | doctor Validate the agent-profiles.json config and default profile |
|
|
92
|
+
| `dot mode` | list List available agent operating profiles (ask/plan/apply/audit) |
|
|
93
|
+
| `dot mode` | run Run a command under a given agent profile with a checkpoint |
|
|
94
|
+
| `dot mode` | set Switch the active agent profile |
|
|
95
|
+
| `dot mode` | show Show details of a specific agent profile |
|
|
53
96
|
| `dot new` | Create a new project from a template |
|
|
54
97
|
| `dot ollama` | Ollama with context patterns |
|
|
55
98
|
| `dot opencode` | OpenCode with context patterns |
|
|
56
99
|
| `dot packages` | List installed packages and package managers |
|
|
100
|
+
| `dot patterns` | edit Edit an AI steering pattern in $EDITOR |
|
|
101
|
+
| `dot patterns` | list List AI steering patterns |
|
|
102
|
+
| `dot patterns` | view View an AI steering pattern |
|
|
57
103
|
| `dot perf` | Show performance mode and quick timing |
|
|
104
|
+
| `dot policy` | Check and enforce security policies across the environment |
|
|
58
105
|
| `dot profile` | Show/switch configuration profile |
|
|
106
|
+
| `dot profile` | set Set the active configuration profile (run dot sync to apply) |
|
|
107
|
+
| `dot profile` | show Show the active configuration profile and feature flags |
|
|
108
|
+
| `dot registry` | info Print full metadata for a registry module |
|
|
109
|
+
| `dot registry` | install Install a registry module (scaffold) |
|
|
110
|
+
| `dot registry` | list List modules in the configured module registry |
|
|
111
|
+
| `dot registry` | search Filter registry modules by keyword |
|
|
112
|
+
| `dot registry` | set-url Override the registry URL (https only; persists) |
|
|
113
|
+
| `dot registry` | url Show the active registry URL |
|
|
59
114
|
| `dot rollback` | Rollback dotfiles to a previous state |
|
|
60
115
|
| `dot sandbox` | Launch a safe sandbox preview (Docker/Podman) |
|
|
61
116
|
| `dot score` | System health and security scorecard |
|
|
62
117
|
| `dot search` | Find commands by keyword |
|
|
118
|
+
| `dot secret-audit` | Audit secret hygiene and leakage surface |
|
|
63
119
|
| `dot secrets` | Edit encrypted secrets (age) |
|
|
120
|
+
| `dot secrets` | edit Edit the encrypted secrets file (age) |
|
|
121
|
+
| `dot secrets` | get Retrieve a secret value (--raw for plaintext) |
|
|
122
|
+
| `dot secrets` | list List indexed secret keys |
|
|
123
|
+
| `dot secrets` | load Emit export lines for a secrets bucket (use with eval) |
|
|
124
|
+
| `dot secrets` | provider Show the active secrets provider |
|
|
125
|
+
| `dot secrets` | set Store a secret value under a key |
|
|
64
126
|
| `dot secrets-create` | Create an encrypted secrets file |
|
|
65
127
|
| `dot secrets-init` | Initialize age key for secrets |
|
|
66
128
|
| `dot sgpt` | Shell-GPT with context patterns |
|
|
@@ -70,10 +132,23 @@ job `lint/command-index` fails when this file is stale.
|
|
|
70
132
|
| `dot status` | Show configuration drift (chezmoi status) |
|
|
71
133
|
| `dot sync` | Apply dotfiles (alias for apply; --pull to fetch, --check to preview) |
|
|
72
134
|
| `dot telemetry` | Disable OS telemetry [macOS,Linux] |
|
|
135
|
+
| `dot teleport` | Deploy the dotfiles environment to a remote host over SSH |
|
|
73
136
|
| `dot theme` | Switch terminal theme (dark/light) |
|
|
137
|
+
| `dot theme` | current Show the current theme info |
|
|
138
|
+
| `dot theme` | family Cycle between theme families |
|
|
139
|
+
| `dot theme` | list Show all available terminal/wallpaper themes |
|
|
140
|
+
| `dot theme` | rebuild Regenerate themes from system and custom wallpapers |
|
|
141
|
+
| `dot theme` | set Set a theme by name (interactive picker if omitted) |
|
|
142
|
+
| `dot theme` | sync Sync the dotfiles theme with system dark/light mode |
|
|
143
|
+
| `dot theme` | toggle Toggle light/dark within the current theme family |
|
|
74
144
|
| `dot tools` | Show or install nix packages |
|
|
145
|
+
| `dot tools` | docs Show the full tools markdown documentation |
|
|
146
|
+
| `dot tools` | install Enter the Nix development shell with all managed tools |
|
|
75
147
|
| `dot tune` | Apply OS tuning (opt-in) [macOS,Linux] |
|
|
148
|
+
| `dot uninstall` | Remove the managed dotfiles environment (prompts unless --force) |
|
|
76
149
|
| `dot upgrade` | Update system toolchains, plugins, and dotfiles |
|
|
77
150
|
| `dot usb-safety` | Disable automount for removable media [Linux] |
|
|
78
151
|
| `dot version` | Show version information. |
|
|
79
152
|
| `dot wallpaper` | Apply a wallpaper from your library [macOS,Linux] |
|
|
153
|
+
| `dot wallpaper` | rotate Rotate to the next wallpaper in your library |
|
|
154
|
+
| `dot wallpaper` | sync Sync wallpaper from your library |
|