Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/metcalfc/dotfiles
https://github.com/metcalfc/dotfiles
Last synced: about 1 month ago
JSON representation
- Host: GitHub
- URL: https://github.com/metcalfc/dotfiles
- Owner: metcalfc
- License: mit
- Created: 2020-01-31T20:54:00.000Z (almost 5 years ago)
- Default Branch: main
- Last Pushed: 2024-04-19T02:34:23.000Z (8 months ago)
- Last Synced: 2024-04-19T03:30:08.779Z (8 months ago)
- Language: Shell
- Size: 185 KB
- Stars: 3
- Watchers: 2
- Forks: 0
- Open Issues: 3
-
Metadata Files:
- Readme: README.md
- License: LICENSE.md
Awesome Lists containing this project
README
# metcalfc does dotfiles the holman way
Your dotfiles are how you personalize your system. These are mine.
## topical
Everything's built around topic areas. If you're adding a new area to your
forked dotfiles — say, "Java" — you can simply add a `java` directory and put
files in there. Anything with an extension of `.zsh` will get automatically
included into your shell. Anything with an extension of `.symlink` will get
symlinked without extension into `$HOME` when you run `script/bootstrap`.## components
There's a few special files in the hierarchy.
- **bin/**: Anything in `bin/` will get added to your `$PATH` and be made
available everywhere.
- **topic/\*.zsh**: Any files ending in `.zsh` get loaded into your
environment.
- **topic/path.zsh**: Any file named `path.zsh` is loaded first and is
expected to setup `$PATH` or similar.
- **topic/completion.zsh**: Any file named `completion.zsh` is loaded
last and is expected to setup autocomplete.
- **topic/install.sh**: Any file named `install.sh` is executed when you run `script/install`. To avoid being loaded automatically, its extension is `.sh`, not `.zsh`.
- **topic/\*.symlink**: Any file ending in `*.symlink` gets symlinked into
your `$HOME`. This is so you can keep all of those versioned in your dotfiles
but still keep those autoloaded files in your home directory. These get
symlinked in when you run `script/bootstrap`.## install
Run this:
```sh
git clone https://github.com/metcalfc/dotfiles.git ~/.dotfiles
cd ~/.dotfiles
script/bootstrap
```This will symlink the appropriate files in `.dotfiles` to your home directory.
Everything is configured and tweaked within `~/.dotfiles`.The main file you'll want to change right off the bat is `zsh/zshrc.symlink`,
which sets up a few paths that'll be different on your particular machine.`dot` is a simple script that installs some dependencies, sets sane macOS
defaults, and so on. Tweak this script, and occasionally run `dot` from
time to time to keep your environment fresh and up-to-date. You can find
this script in `bin/`.## thanks
I forked [Zach Holman's dotfiles](https://github.com/holman/dotfiles) who
forked [Ryan Bates](http://github.com/ryanb)' excellent
[dotfiles](http://github.com/ryanb/dotfiles) for a couple years before the
weight of his changes and tweaks inspired him to finally roll his own.