Skip to content

jalexanderfox/dotfiles

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

39 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Fresh Brew Cask Dotfiles

Introduction

This dotfiles repository utilizes the following:

  • Freshshell (fresh) to maintain and generate dotfiles

    fresh is a tool to source shell configuration (aliases, functions, etc) from others into your own configuration files. It supports files such as ackrc and gitconfig. Think of it as Bundler for your dot files.

  • Homebrew (brew) for Mac command line tools automated installation

    Homebrew installs the stuff you need that Apple didn’t.

  • Homebrew Cask (brew cask) for Mac Native Apps automated installation

    Homebrew Cask extends Homebrew and brings its elegance, simplicity, and speed to OS X applications and large binaries alike. It only takes 1 line in your shell

Download or Clone

Freshshell instructions suggest, installing your dotfiles in '~/.dotfiles'. To download, choose one of the options below.

Download using curl (not git):

mkdir ~/.dotfiles; curl -#L https://github.com/jalexanderfox/dotfiles/tarball/master | tar -xzv --strip-components 1 -C ~/.dotfiles

OR

Download using git:

cd; git clone https://github.com/jalexanderfox/dotfiles.git && mv dotfiles ~/.dotfiles

Installation

There are several options for installing part or all of what comes with this dotfiles repo. If you want to setup a new Mac, you might consider running the Full Install & Setup script. If you just need the dotfiles for a vagrant box or a linux environment, then you might consider running just the Dotfiles (fresh) Install & Setup script.

Now you need to decide whether you want to Full Install & Setup or setup individually:

Use Caution

As this repository relies heavily on the dotfiles created by others, it attempts to bring the best of theirs into this one but keeps them up to date by using fresh. Make sure you know what will be installed, setup and configured before executing these scripts.

Setup & Install

Now that you have the repo, it's time to setup and install the parts that you want. Install & setup whatever and however you like. Want to install them individually? Go ahead. Want to install them all? You are braver than I am Full Install. Want to install some? Well you can do that too. Here is how:

Suggested Install & Setup

Installs Homebrew(brew), Dotfiles(fresh) and Homebrew Casks (cask)

cd ~/.dotfiles && ./setup.sh brew fresh cask

Homebrew (brew) Install & Setup

cd ~/.dotfiles && ./setup.sh brew

Dotfiles (fresh) Install & Setup

cd ~/.dotfiles && ./setup.sh fresh

Terminal Colors

cd ~/.dotfiles && ./setup.sh terminal

Brew Casks (native apps) Install & Setup

cd ~/.dotfiles && ./setup.sh cask

Full Install & Setup

This script will execute all of the Individual Install Scripts in the order in which they appear.

cd ~/.dotfiles && ./setup_all.sh

Extra commands and Private configurations

Add extra custom commands and private configuration without creating a new fork and without committing sensitive information to a public repo.

When running Dotfiles Fresh Setup, if ~/.dotfiles/.extra and ~/.dotfiles/.private do not exist, they will be created. You can use these files to add a few custom commands without the need to fork this entire repository and to add commands and configurations that you do not want to commit to a public repository. When fresh runs, it will source .extra and .private along with the other files. These files get sourced last so they override other configurations.

Example .extra or .private file:

# Git credentials
# Not in the repository,
# to prevent accidentally committing under the wrong name
GIT_AUTHOR_NAME="Jane Smith"
GIT_COMMITTER_NAME="$GIT_AUTHOR_NAME"
git config --global user.name "$GIT_AUTHOR_NAME"
GIT_AUTHOR_EMAIL="[email protected]"
GIT_COMMITTER_EMAIL="$GIT_AUTHOR_EMAIL"
git config --global user.email "$GIT_AUTHOR_EMAIL"

Additionally, fresh will touch ~/.gitconfig.local which is used by your .gitconfig. You can place custom configurations here ~/.gitconfig.local (which is preferred, otherwise any time you fresh your global configurations are wiped out.)

[user]
	name = jared.fox
	email = [email protected]
[credential]
	helper = osxkeychain

NOTE: These files are set to be ignored by git automatically for you.

If you find that your .extra file is getting large, you may want to fork this repository instead.

Known issues:

  • the setup_fresh.sh requires the gnu version of readlink and even if setup_brew.sh is run before setup_fresh.sh, it currently fails on mac because the $PATH does not yet have coreutils (with gnu readlink). The bash_profile can be sourced in the .freshrc as a temporary fix.

Feedback

Suggestions/improvements welcome!

Thanks to...

About

dotfiles + fresh + brew + cask + osx + docker

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published