This repository contains dotfiles and configuration scripts to set up my own development environment on a new machine. I'm currently using WSL and various Linux machines so that's what this is mostly for. Feel free to use this yourself but use at your own risk.
To set up everything do the following.
- Install git.
- Clone the repository:
git clone https://github.com/sten626/dotfiles.git
- Run the install script in the root directory,
./install.sh
.
Note: I may add back a standalone install script that doesn't require git to be preinstalled at some point but not right now.
- Creates symlinks for all the dotfiles in the
bash
directory in your user home directory. - Creates local config files for
bash
andgit
, to include personal information that shouldn't be stored in the repository. - Installs various applications and command line tools.
The ~/.bash.local
file is sourced last and is a good place to store local aliases or PATH
modifications.
The ~/.gitconfig.local
is included by the regular ~/.gitconfig
file and is the ideal place to store sensitive or personal information such as your name or email address.
Some utility scripts I like to use.
Checks if a given branch name exists in the current repository. Could easily be a bash function, but made it a script to more easily incorporate into other scripts.
Script for easily changing branches in a git repository. I've tried to make it fairly agnostic and extendible.
If a script with this name exists in your PATH
, switchto
will pass a bash array of branch and tag names to it. Use the script to filter out ones you don't want, and return wanted branches and tags one-per-line.
If a script with this name exists in your PATH
, switchto
will use it to install/compile after switching branches. By default it will only run npm install
or make
depending on what files it sees in the project root.
- Cătălin Mariș and his dotfiles repository was where I took most of the inspiration for this, as I really liked how his was set up.
- Mathias Bynens and his dotfiles repository as his seems to be incredibly popular and I took browsed it often as well.