https://github.com/klaemo/dotfiles
:wrench: .files, including osxdefaults — sensible hacker defaults for OS X
https://github.com/klaemo/dotfiles
dotfiles shell
Last synced: 10 months ago
JSON representation
:wrench: .files, including osxdefaults — sensible hacker defaults for OS X
- Host: GitHub
- URL: https://github.com/klaemo/dotfiles
- Owner: klaemo
- License: mit
- Created: 2015-01-25T22:16:01.000Z (over 11 years ago)
- Default Branch: master
- Last Pushed: 2024-11-13T20:40:06.000Z (over 1 year ago)
- Last Synced: 2025-01-03T15:21:47.364Z (over 1 year ago)
- Topics: dotfiles, shell
- Language: Shell
- Homepage:
- Size: 676 KB
- Stars: 2
- Watchers: 3
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE.md
Awesome Lists containing this project
README
# Clemens' Dotfiles
## How to install
The installation step may overwrite existing dotfiles in your HOME directory.
```bash
$ bash -c "$(curl -fsSL raw.github.com/klaemo/dotfiles/master/bin/dotfiles)"
```
N.B. If you wish to fork this project and maintain your own dotfiles, you must
substitute my username for your own in the above command and the 2 variables
found at the top of the `bin/dotfiles` script.
## How to update
You should run the update when:
* You make a change to `~/.dotfiles/git/gitconfig` (the only file that is
copied rather than symlinked).
* You want to pull changes from the remote repository.
* You want to update Homebrew formulae and Node packages.
Run the dotfiles command:
```bash
$ dotfiles
```
Options:
-h, --help
Help
--no-packages
Suppress package updates
--no-sync
Suppress pulling from the remote repository
## Features
### Automatic software installation
Homebrew formulae:
* git
* htop
* [ansible](https://www.ansible.com/)
* [rsync](https://rsync.samba.org/) (latest version, rather than the out-dated OS X installation)
* [wget](http://www.gnu.org/software/wget/)
* [httpie](https://github.com/jkbrzt/httpie)
### Local/private zsh configuration
Any private and custom zsh commands and configuration should be placed in a
`~/.zsh_extra` file. This file will not be under version control or
committed to a public repository. If `~/.zsh_extra` exists, it will be
sourced for inclusion in `zsh_env`.
Here is an example `~/.zsh_extra`:
```bash
# PATH exports
PATH=$PATH:~/.gem/ruby/1.8/bin
export PATH
# Git credentials
# Not under version control to prevent people from
# accidentally committing with your details
GIT_AUTHOR_NAME="Clemens Stolle"
GIT_AUTHOR_EMAIL="clemens@example.com"
GIT_COMMITTER_NAME="$GIT_AUTHOR_NAME"
GIT_COMMITTER_EMAIL="$GIT_AUTHOR_EMAIL"
# Set the credentials (modifies ~/.gitconfig)
git config --global user.name "$GIT_AUTHOR_NAME"
git config --global user.email "$GIT_AUTHOR_EMAIL"
# Aliases
alias code="cd ~/Code"
```
N.B. Because the `git/gitconfig` file is copied to `~/.gitconfig`, any private
git configuration specified in `~/.extra` will not be committed to
your dotfiles repository.
## Acknowledgements
Inspiration and code was taken from many sources, including:
* [@necolas](https://github.com/necolas) (Nicolas Gallagher)
[https://github.com/necolas/dotfiles](https://github.com/necolas/dotfiles)
* [@mathiasbynens](https://github.com/mathiasbynens) (Mathias Bynens)
[https://github.com/mathiasbynens/dotfiles](https://github.com/mathiasbynens/dotfiles)
* [@hukl](https://github.com/hukl) (hukl)
[https://github.com/hukl/dotfiles](https://github.com/hukl/dotfiles)