/dotfiles

This is a collection of scripts, functions and dotfiles I use for customizing my development workflow I use on a day-to-day basis.

Primary LanguageShell

Sebastian Glahn's Dotfiles

This is a collection of scripts, function and dotfiles I use for customizing my development workflow I use on a day-to-day basis. My setup is inspired by the this article.

Features

  • Supports both Ubuntu and OS X
  • Supports both Bash and Zsh
  • Aliases for Git, Docker, Gradle, ...
  • Vim configuration and plugins
  • Tmux configuration
  • Custom bash prompt

Installation

Clone into a bare repository in your home directory:

git clone --bare https://github.com/sglahn/dotfiles.git $HOME/.cfg

Create an alias in the current shell scope:

alias config='/usr/bin/git --git-dir=$HOME/.cfg/ --work-tree=$HOME'

Checkout the actual content from the bare repository:

config checkout

If this step fails move or delete the already existing files.

Set a flag to hide files not explicitly tracked. So typing e.g. "config status" and other commands later, will not show up all files of your home directory as untracked:

config config --local status.showUntrackedFiles no

Source the aliases

source .aliases

To update the submodules in the project first source the .aliases file and then type:

configsub

Dependencies

Tmux

Tmux comes with the Tmux Plugin Manager already installed. To install the rest of the Tmux plugins configured in the .tmux.conf file, type prefix+I. The tmux-yank plugin has the following additional dependencies:

On Linux:

  • xsel, install it with:
sudo apt-get install xsel

On OS X:

  • reattach-to-user-namespace, install it with:
brew install reattach-to-user-namespace

SDKMAN!

SDKMAN! is already configured in the .bash_profile and works for zsh and bash. To use it it has to be installed.

The Font I Use

Fira Code

License