Cătălin’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.
To set up 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 |
|---|---|
macOS |
bash -c "$(curl -LsS https://raw.github.com/alrra/dotfiles/master/src/os/setup.sh)" |
Ubuntu |
bash -c "$(wget -qO - https://raw.github.com/alrra/dotfiles/master/src/os/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, andvimfiles - Install applications / command-line tools for
macOS/Ubuntu - Set custom
macOS/Ubuntupreferences - Install
vimplugins
Setup process in action:
|
|
|
| macOS | Ubuntu |
Output for git status:
|
|
|
| macOS | Ubuntu |
Output for git log:
|
|
|
| macOS | Ubuntu |
|
|
|
| macOS | Ubuntu |
The dotfiles can be easily extended to suit additional local
requirements by using the following files:
The ~/.bash.local file 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="$PATH:$HOME/projects/dotfiles/src/bin"
export PATH
The ~/.gitconfig.local file 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.:
[commit]
# Sign commits using GPG.
# https://help.github.com/articles/signing-commits-using-gpg/
gpgsign = true
[user]
name = Cătălin Mariș
email = [email protected]
signingkey = XXXXXXXXThe ~/.vimrc.local file it will be automatically sourced after
~/.vimrc, thus, allowing its content to add or overwrite the
settings from ~/.vimrc.
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.