Coder Social home page Coder Social logo

dotmatrix's Introduction

DOTMATRIX

Dotmatrix is a collection of dotfiles used at Hashrocket to customize various development tools. This project is the culmination of many years worth of tinkering with our favorite tools to get them to behave just right. We think using dotmatrix makes working with these tools more pleasant and hope you will too!

What are dotfiles?

Dotfile are really just plain text files that start with a '.' and they are used to set preferences for things like Git and Vim. To see your current dotfiles, open a terminal and in your home folder run this:

$ ls -a

Install

Start by cloning down the repo:

$ git clone https://github.com/hashrocket/dotmatrix.git

Then run this script:

$ bin/install

This script symlinks all dotfiles into your home directory.

Please note: This will only install files that do not already exist in your $HOME directory. If you have, e.g. your own .bashrc file, you can move it to ~/.bashrc.local, and dotmatrix will source it for you.

Partial Installation

Sometimes it's useful to only install part of dotmatrix. For partial installation, you can create a FILES file in the root of dotmatrix that contains a newline-delimited list of dotfiles to symlink and keep up to date with dotmatrix.

When FILES exists in the dotmatrix source directory, running bin/install will only symlink the dotfiles listed within FILES.

If, for example, you only want the tmux configuration and sharedrc files, and want to ignore all of the rest of dotmatrix's dotfiles:

$ cd path/to/dotmatrix
$ cat FILES
.tmux.conf
.sharedrc
$ bin/install # Only installs .tmux.conf and .sharedrc

Useful Commands

Aliases for useful commands:

# Get the public IP Address
alias whatsmyip="wget http://ipinfo.io/ip -qO -"

# Colorize ls output
alias ls='ls --color'

## Colorize the grep command output for ease of use (good for log files)##
alias grep='grep --color=auto'
alias egrep='egrep --color=auto'
alias fgrep='fgrep --color=auto'

# auto recursive make directory
alias mkdir='mkdir -pv'

#Networking
alias ports='sudo netstat -tulanp'

# do not delete / or prompt if deleting more than 3 files at a time #
alias rm='rm -I --preserve-root'

## Human readable defaults ##
alias df='df -H'
alias du='du -ch'

Vim bundles

For Vim users, there's another script you might want to run, after you've run bin/install:

$ bin/vimbundles.sh

This will install the set of Vim bundles we use.

After you've done ./bin/install, you'll have a .vimbundle file and this is a manifest of sorts that the vimbundles.sh script will use to install various vim plugins. If you have other plugins that you like that aren't on this list, you can put them in a ~/.vimbundle.local and that will be installed secondarily.

The ~/.vimbundle.local file should include one plugin per line, each having the following format:

github-user/repo-name

You need not include a trailing .git.

Actively Maintained

At Hashrocket we use dotmatrix on all of our development machines, then for many of us we get so familiar with the setup that we use it on our personal machines too. That means there's a lot of picky nerds using dotmatrix every day to make their tools easy and fun to use.

Update

Keeping your dotmatrix up-to-date is easy. Just visit the dotmatrix directory and run bin/upgrade. This will fetch the latest changes from GitHub and symlink any new files.

dotmatrix's People

Contributors

adamlowe avatar atdt avatar bernerdschaefer avatar biscuitvile avatar briandunn avatar bthesorceror avatar chriserin avatar davelyon avatar hashrocketeer avatar jackc avatar jgdavey avatar jonallured avatar kalmanh avatar leshill avatar martinisoft avatar mattpolito avatar mattyoho avatar mrmemes-eth avatar nusco avatar outoftime avatar paulelliott avatar rbxbx avatar rhughes89 avatar rondale-sc avatar rwz avatar therubymug avatar tpope avatar veezus avatar

Watchers

 avatar  avatar

Forkers

bludot dmauk

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.