Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/jpalumickas/dotfiles

@jpalumickas does dotfiles
https://github.com/jpalumickas/dotfiles

dotfiles shell zsh

Last synced: 3 months ago
JSON representation

@jpalumickas does dotfiles

Awesome Lists containing this project

README

        

# jpalumickas does dotfiles

Your dotfiles are how you personalize your system. These are mine.

These are taken from [@holman][] and edited for my personal use.

## 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`.

## install

Run this:

```sh
git clone https://github.com/jpalumickas/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/`.

## 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.
- **Brewfile**: This is a list of applications for
[Homebrew Cask](http://caskroom.io) to install: things like Chrome and
1Password and stuff. Might want to edit this file before running any initial
setup.
- **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/\*.symlink**: Any files ending in `*.symlink` get 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`.

## thanks

[Zach Holman][@holman] for his [dotfiles][holman dotfiles] and [Dotfiles Are Meant To Be Forked][holman article] article.

[@holman]: http://github.com/holman
[holman dotfiles]: http://github.com/holman/dotfiles
[holman article]: http://zachholman.com/2010/08/dotfiles-are-meant-to-be-forked