Skip to content

Commit dfca6e7

Browse files
authored
Merge pull request #1 from wassimk/wm/readme-cleanup
docs: clean up README and use italics for paths
2 parents af58b38 + b06d3d8 commit dfca6e7

File tree

1 file changed

+9
-17
lines changed

1 file changed

+9
-17
lines changed

README.md

Lines changed: 9 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -2,11 +2,7 @@
22

33
Exclude developer dependency directories and arbitrary paths from macOS backups.
44

5-
tmignore scans your filesystem for dependency directories (node_modules, target, vendor, .venv, etc.) and marks them as excluded from Time Machine using sticky exclusions (`tmutil addexclusion`). It also excludes common developer toolchain paths (Homebrew, Cargo, npm caches, Xcode DerivedData, etc.) by default.
6-
7-
## Why not asimov?
8-
9-
[asimov](https://github.com/stevegrunwell/asimov) runs as a LaunchDaemon (root context), which means `$HOME` resolves to `/var/root` instead of your home directory. The service runs but silently excludes nothing. tmignore fixes this by running as a LaunchAgent (user context) where `$HOME` resolves correctly. No root access required.
5+
tmignore scans your filesystem for dependency directories (*node_modules*, *target*, *vendor*, *.venv*, etc.) and marks them as excluded from Time Machine using sticky exclusions (`tmutil addexclusion`). It also excludes common developer toolchain paths (Homebrew, Cargo, npm caches, Xcode DerivedData, etc.) by default.
106

117
## Install
128

@@ -39,7 +35,7 @@ tmignore install # Set up background service (every 24h)
3935

4036
## Config
4137

42-
`~/.config/tmignore/config.toml`
38+
*~/.config/tmignore/config.toml*
4339

4440
tmignore ships with sensible defaults built into the binary. The config file is optional and only needed to customize behavior. Run `tmignore init` to generate one.
4541

@@ -72,12 +68,12 @@ This file is designed to be synced across machines via dotfiles, iCloud, or simi
7268

7369
These paths are excluded from backups and skipped during scanning by default. No config needed.
7470

75-
- **Version managers:** ~/.rbenv, ~/.pyenv, ~/.nvm, ~/.asdf, ~/.local/share/mise
76-
- **Language toolchains:** ~/.rustup, ~/.cargo, ~/.gradle, ~/.m2, ~/.npm, ~/.pnpm-store, ~/.cocoapods, ~/.nuget, ~/go/pkg, ~/.gem, ~/.hex, ~/.cpan, ~/.bun, ~/.deno, ~/.yarn, ~/.npm-global, ~/.cache/node
77-
- **Homebrew:** /opt/homebrew
78-
- **Nix/Devbox:** /nix, ~/.cache/nix, ~/.local/share/devbox
79-
- **Docker/Colima:** ~/Library/Containers/com.docker.docker, ~/.colima, ~/.lima
80-
- **Xcode:** ~/Library/Developer/Xcode/DerivedData, iOS/watchOS/tvOS DeviceSupport, ~/Library/Developer/CoreSimulator/Devices
71+
- **Version managers:** *~/.rbenv*, *~/.pyenv*, *~/.nvm*, *~/.asdf*, *~/.local/share/mise*
72+
- **Language toolchains:** *~/.rustup*, *~/.cargo*, *~/.gradle*, *~/.m2*, *~/.npm*, *~/.pnpm-store*, *~/.cocoapods*, *~/.nuget*, *~/go/pkg*, *~/.gem*, *~/.hex*, *~/.cpan*, *~/.bun*, *~/.deno*, *~/.yarn*, *~/.npm-global*, *~/.cache/node*
73+
- **Homebrew:** */opt/homebrew*
74+
- **Nix/Devbox:** */nix*, *~/.cache/nix*, *~/.local/share/devbox*
75+
- **Docker/Colima:** *~/Library/Containers/com.docker.docker*, *~/.colima*, *~/.lima*
76+
- **Xcode:** *~/Library/Developer/Xcode/DerivedData*, iOS/watchOS/tvOS DeviceSupport, *~/Library/Developer/CoreSimulator/Devices*
8177

8278
Use `disable_exclude_paths` to stop excluding any of these. Use `extra_exclude_paths` to add your own.
8379

@@ -132,7 +128,7 @@ Disable any built-in pattern by adding its name to `disable_patterns` in the con
132128

133129
## LaunchAgent service
134130

135-
`tmignore install` creates a LaunchAgent at `~/Library/LaunchAgents/com.wassimk.tmignore.plist` that runs `tmignore run` every 24 hours. Logs are written to `~/Library/Logs/tmignore/`.
131+
`tmignore install` creates a LaunchAgent at *~/Library/LaunchAgents/com.wassimk.tmignore.plist* that runs `tmignore run` every 24 hours. Logs are written to *~/Library/Logs/tmignore/*.
136132

137133
The service runs in user context (not root), so `$HOME` resolves correctly and no elevated permissions are needed.
138134

@@ -152,7 +148,3 @@ tmignore uses `tmutil addexclusion` (without the `-p` flag) which writes a stick
152148
## Attribution
153149

154150
tmignore is inspired by [asimov](https://github.com/stevegrunwell/asimov) by Steve Grunwell.
155-
156-
## License
157-
158-
MIT

0 commit comments

Comments
 (0)