Git Product home page Git Product logo

derricks-dynamite-dotfiles's Introduction

Derrick's Dynamite (.)Dotfiles

Repo for what dotfiles I use (those files you can't see in your home directory unless you do ls -a). No fancy install scripts, just copy the file (and make sure to add a . before the file name) to your home directory for anything you want to use. If you're a bit new to the command line interface, the /base files should get you started (see setup).

Setup

There used to be a fancy install script, but I realized that might be a bit overkill. To use any of these files, just cp them into your home directory. Remember to add a . prior to the filename, which I removed from the files in this repo so nothing is hidden by default.

The /base directory is the common stuff. Let's say you want to copy the basic stuff, that would look something like this (just make sure you make a copy of your current .bash_profile and .bashrc files before running these commands).

# Make sure you're in this repo's directory
cp base/bash_profile ~/.bash_profile
cp base/bashrc ~/.bashrc

Other directories in this repo are application specific. See "Applications" section below.

Assumptions

I have tried to make this as generic as possible, so that anyone who uses it doesn't have to go through the code and make a whole bunch of changes so that it works for his/her local environment. However, that comes with a few assumptions about directory structure and what not. Below are a list of items that must be the same in order for all aliases/function/settings to work correctly. If you don't set your environment up the same, nothing will break, you just may have a few things that crap out on you.

  • Development Directory: I keep all of my projects in a 'Development' directory, within my home folder. There are a few aliases that refer to this directory (mkdir ~/Development).

Applications

Some application specific dotfiles, and what they're being used for.

Coding Standards

Not really an application, but preference files to improve code quality and make everything consistent. If a project wants to do things different, the config file in the root of the project normally takes priority. These are settings that should be followed when a project does not dictate coding standards.

There are plugins for common text editors (so these files are picked-up by the editor):

GIT

Do you use GIT? Hopefully!

gitconfig is my preferred config, including some helpful aliases like git code-review that compares all committed and working changes on your current branch with what's on master.

gitignore_global is a file configured by gitconfig to be a place for everything which should be ignored by all of your repos. Maybe that pesky .DS_Store file that MacOS puts everywhere. Aye? Aye? ๐Ÿ˜ฑ

VIM

To use my VIM config, do the following:

# Make sure you're in this repo's directory
cp vim/vimrc ~/.vimrc
vim +PluginInstall +qall

Zsh

Zsh (or Z Shell) allows more configuration. The default on MacOS is Bash. Learn more about the differences between Bash and Z Shell here. Oh My Zsh is a layer on top that gives you helpful functions and what not to make your command line life more enjoyable. To install, read the docs, or just follow these steps:

sh -c "$(curl -fsSL https://raw.github.com/robbyrussell/oh-my-zsh/master/tools/install.sh)"

# Make sure you're in this repo's directory
cp zsh/zshrc ~/.zshrc
cp zsh/custom/themes/* ~/.oh-my-zsh/custom/themes/

Make sure to read the prereqs here (if you are currently using a bash shell, which you probably are, you need to install and change your default shell using this instructions)

Extras

Do you have aliases that are specific to certain machines? For instance, maybe some aliases that you only use on your work machine. Create a new file, call it .extras, place it in your home directory, and it will automatically be included.

derricks-dynamite-dotfiles's People

Watchers

James Cloos avatar

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.