jkon's dotfiles
These are the base dotfiles that I start with when I set up a
new environment. For more specific local needs I use the .local
files described in the Local Settings
section.
this repo was forked from (https://github.com/wilsonwc/dotfiles) which installs more tools. I didn't want everything on the list, so I forked and commented out some things
To setup the dotfiles just run the appropriate snippet in the terminal:
(:warning: DO NOT run the setup snippet if you don't fully understand what it does. Seriously, DON'T!)
OS | Snippet |
---|---|
OS X | bash -c "$(curl -LsS https://raw.github.com/jkon/dotfiles/master/setup.sh)" |
Ubuntu | bash -c "$(wget -qO - https://raw.github.com/jkon/dotfiles/master/setup.sh)" |
That's it! ✨
The setup process will:
- Download the dotfiles on your computer (by default it will suggest
~/projects/dotfiles
) - Create some additional directories
- Symlink the git, shell, and vim files
- Install applications / command-line tools for OS X / Ubuntu
- Set custom OS X / Ubuntu preferences
- Install vim plugins
Setup process in action | |
Output for Git status | |
Output for Git log | |
The dotfiles can be easily extended to suit additional local requirements by using the following files:
If the ~/.bash.local
file exists, it will be automatically sourced
after all the other bash related files, thus, allowing its
content to add to or overwrite the existing aliases, settings, PATH,
etc.
Here is a very simple example of a ~/.bash.local
file:
#!/bin/bash
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
# Set local aliases
alias starwars="telnet towel.blinkenlights.nl"
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
# Set PATH additions
PATH="/usr/local/bin:$PATH"
PATH="$PATH:$HOME/projects/dotfiles/bin"
export PATH
If the ~/.gitconfig.local
file exists, it will be automatically
included after the configurations from ~/.gitconfig
, thus, allowing
its content to overwrite or add to the existing git
configurations.
Note: Use ~/.gitconfig.local
to store sensitive information such
as the git
user credentials, e.g.:
[user]
name = Cătălin Mariș
email = [email protected]
signingkey = XXXXXXXX
If the ~/.vimrc.local
file exists, it will be automatically sourced
after ~/.vimrc
, thus, allowing its content to add or overwrite the
settings from ~/.vimrc
.
Same as ~/.vimrc.local
but for ~/.gvimrc
.
If you decide to fork this project, don't forget to substitute my
username with your own in the setup snippets and in the
setup
script.
To update the dotfiles you can either run the setup
script or, if you want to just update one particular part,
run the appropriate os
script.
Inspiration and code was taken from many sources, including:
The code is available under the MIT license.