danielbernalo / dotfiles

:desktop_computer: The very heart of an efficient work environment

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

dotfiles_danielbernalo

Proper dotfiles are the very heart of an efficient working environment.

This repository ships a set of configuration files for modern command line tools, such as tmux, vim, and zsh. Additionally, it provides a portable script for managing dotfiles and quickly getting up and runninng on a new machine.

Usage

Begin with cloning this repository somewhere:

git clone https://github.com/danielbernalo/dotfiles.git ~/.dotfiles
cd .dotfiles

Dotfile Management

The POSIX shell script dots installs (= symlinks) and removes subsets of dotfiles according to your needs. For example, install all dotfiles as follows:

./dots install -a

Alternatively, install only dotfiles for vim and zsh:

./dots install vim zsh

Similarly, remove all installed dotfiles:

./dots uninstall -a

The installer script does not override existing dotfiles unless the command line includes the -f switch. When in doubt what the installation of a subset of the dotfiles would look like, it is possible to look at the diff first:

./dots diff -a

System Bootstrapping

In addition to managing dotfiles, the script bootstrap facilitates getting up and running on a new machine. Passing -h shows the available aspects available for configuration:

  1. system: adjust system defaults for productivity
  2. homebrew:setup Homebrew and install bundled packages
  3. dotfiles: setup dotfiles via ./dots install -a
  4. postfix: setup postfix as GMail relay
  5. tmux: install tmux plugins
  6. vim: install vim plugins
  7. zsh: setup zsh as login shell

Invoking

./bootstrap

without any arguments sets up all aspects in the above order. On macOS, (1) includes:

  1. Adjust various default settings, e.g.:
    • Improve security and privacy settings
    • Disable boot sound
    • Reduce UI effects for improved speed
    • Make the keyboard faster
  2. Perform a software update
  3. Install XCode

Extras

Browser

My browser is Safari, which I beef up with the following enhancements:

Browse through this curated list of extensions for further inspiration.

About

:desktop_computer: The very heart of an efficient work environment


Languages

Language:Shell 80.6%Language:Vim Script 6.7%Language:C 5.6%Language:R 2.9%Language:Python 2.7%Language:Ruby 0.8%Language:Perl 0.6%Language:Makefile 0.0%