This is a repository with my configuration files, those that in Linux/OS X normally are these files under the
$HOME directory that are hidden and preceded by a dot, AKA dotfiles.
The primary goal is to increase CLI productivity on OS X, though many scripts run just fine on any POSIX implementation and it is easy to build environment again by running just the installation command of one-liner.
My primary OS is OS X (10.10.x) and some of these configurations are tuned to work on that platform. The bash files are more generic and friendly toward other Unix-based operating systems.
- OS X Yosemite (MacBook, Retina 12-inch, Early 2015)
- Terminal.app (Full-screen)
- Solarized (base 16)
- Tmux 1.9a
- Zsh 5.0.5
- Vim (7.4 Huge +clipboard +lua)
Note: You can clone or fork them freely, but I don’t guarantee that they fit you.
The easiest way to install this dotfiles is to open up a terminal, type the installation command below: Run the following command to set up a new machine:
|cURL||bash -c "$(curl -fsSL dot.b4b4r07.com)"||:clipboard:|
|Wget||bash -c "$(wget -qO - dot.b4b4r07.com)"||:clipboard:|
It is almost the same as the command below except for executing through a Web site directly.
$ make install
It is not necessary to perform
make installat all if this repository was installed by the installation command.
General download method using the
$ git clone https://github.com/b4b4r07/dotfiles.git ~/.dotfiles $ cd ~/.dotfiles && make install
make installwill perform the following tasks.
make update; Updating dotfiles repository
make deploy; Deploying dot files
make init; Initializing some settings
- Download this repository
- Deploy (i.e. copy or create symlink) dot files to your home directory;
- Run all programs for setup in
make init(Optional: when running the installation command specify
-s initas an argument)
When the installation command format is not
curl -L URL | sh but
sh -c "$(curl -L URL)", shell will be restart automatically. If this is not the case, it is necessary to restart your shell manually.
To quickly install:
$ curl -sL dot.b4b4r07.com | sh
Difference of Installation and Quick Installation is that the latter one-liner is shorter than the former one (including typing the number of shift key). However, because when you install in the Quick installation shell is not re-boot, it is necessary to perform the
exec sh yourself.
Actually notation of the shell may be
sh instead of
bash. Regardless of the
sh realities, it is possible to do the same installation process because the script file that is used to the installation command is a shell script that conforms to POSIX.
Note: If you want to use the
curl, in order to follow the redirect
-L flag is essential. On the other hand, it is possible to omit
-s flag because it is meant that silent or quiet mode makes
To update later on, just run this command.
$ make update
In addition, there are several git submodules included in this configuration. On a new installation these submodules need to be initialized and updated.
All configuration files for setup is stored within the
etc/init/ directory. By running the command below, you can interactively setup all preferences.
$ make init
make init immediately after running the installation command:
$ bash -c "$(curl -L dot.b4b4r07.com)" -s init
- Build and install customized Vim (+clipboard, +lua)
- Globalize your home directory name
- Install antigen the zsh plugin manager
- Install pygments the generic syntax highlighter written in python
- Install Homebrew the missing package manager for OS X
- Install the CLI tool that comes with Xcode
- Run ‘brew install’ based on the Brewfile
- Sensible OS X defaults
- Setup Karabiner (formerly KeyRemap4MacBook)
For more information about initializing, see also ./etc/README.md.
To install the Vim plugins, run this command.
$ vim +NeoBundleInit +qall
Vim plugins are not installed from you just running the installation command. To install the plugins, you must specify the
-c 'NeoBundleInit' as an argument when starting Vim. By doing so, install immediately neobundle.vim and other plugins (requires:
$PATH, Vim 7.2+, a lot of time, Wi-Fi).
To use these plugins effectively, features of Vim needs normal or more.
Make the configuration file for personal use. Copy and paste the following to personal configuration file, e.g.
# Git credentials # Not under version control to prevent people from # accidentally committing with your details GIT_AUTHOR_NAME="b4b4r07" GIT_AUTHOR_EMAIL="[email protected]" GIT_COMMITTER_NAME="$GIT_AUTHOR_NAME" GIT_COMMITTER_EMAIL="$GIT_AUTHOR_EMAIL" # Set the credentials (modifies ~/.gitconfig) git config --global user.name "$GIT_AUTHOR_NAME" git config --global user.email "$GIT_AUTHOR_EMAIL"
The easiest way to change your shell is to use the
chsh command. You can also give
-s option; this will set your shell for you, without requiring you to enter an editor.
$ chsh -s /bin/zsh
Note: The shell that you wish to use must be present in the
When setting up a new Mac, you may want to perform the following tasks mainly.
Install the Xcode Command Line Tools
You need to have Xcode or, at the very minimum, the Xcode Command Line Tools, which are available as a much smaller download.
The easiest way to install the Xcode Command Line Tools in OS X 10.9+ is to open up a terminal, type
xcode-select --installand follow the prompts.
Install Homebrew and setup their formulae
Since OS X does not have a native package manager that you can use from the command line, Brew (also known as Homebrew), has filled in.
After installing Homebrew, you may want to install some common Homebrew formulae:
$ make init
It can set many hidden settings and preferences in Mac OS X, and in individual applications.
All of these are included in the
make init for OS X. For more detail, see also here of documentation of OS X operation.
$ vagrant init http://files.dryga.com/boxes/osx-yosemite-0.2.1.box $ vagrant up
If you want to try my dotfiles without polluting your development environment, it would be best to use a Vagrant. Have fun by setting and please remove it after finish.
$ vagrant destroy -f # when finished, destroy the VM
Acknowledgment; I established this dotfiles referring to the following user’s repositories. Thus, I would appreciate it if you used my repository for reference. Thanks.
- These dotfiles are heavily based on @cowboy’s dotfiles
- Inspired by @skwp’s dotfiles
- Installation section based on @larsyencken’s marelle
- Installation section based on @Cătălin’s dotfiles
- Git section based on @necolas’s dotfiles
- OS X section based on @cowboy’s dotfiles
- Structure section based on @holman’s dotfiles
- Author section and OS X defaults based on @Mathias’s dotfiles
README.mdlayout based on @zanshin’s README.md
Makefilebased on @Tetsuji’s dotfiles
bootstrap.shbased on @Rocha’s dotfiles
Copyright © 2014 “BABAROT” b4b4r07
Licensed under the MIT license.
Unless attributed otherwise, everything is under the MIT licence. Some stuff is not from me, and without attribution, and I no longer remember where I got it from. I apologize for that.