darrinhenein / dotfiles

.dotfiles

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

darrinhenein's dotfiles

My personalized system configuration. (Inspiration)

Forked from mjrusso.

Installation

git clone git://github.com/darrinhenein/dotfiles ~/.dotfiles
cd ~/.dotfiles
rake install

Usage

To set a global node version, use:

asdf direnv shell nodejs 19.6.0

(for example, to use npm create or rails new)

Notes

  • bin/: Anything in bin/ will be added to your $PATH and be made available everywhere.

  • topic/*.symlink: Any files ending in *.symlink get symlinked into your $HOME. (These files get symlinked when you run rake install.)

    • symlinks can be generated in cases where these standard topic/*.symlink symlink rules do not apply; see the :install task of the Rakefile for details.
  • Create a file called ~/.localrc.fish to store any environment variables that you do not want committed to this git repository (secrets, etc.). Note that this file should be in your home directory, not this repository.

System

OS X, with the Homebrew package manager.

Dependencies

Assumes that fish is the default shell.

Requires direnv, asdf, asdf-direnv, and gnupg brew install gpg.

To install direnv: brew install direnv

(direnv is already hooked into the shell; see config.fish.)

To install asdf: brew install asdf

To install asdf-direnv: asdf plugin-add direnv

After installing asdf, ignore the advice to source asdf.fish (i.e., do not run: source (brew --prefix asdf)/libexec/asdf.fish).

Next, set up asdf with direnv: asdf direnv setup --shell fish --version system

Review the files generated and/or modified by asdf direnv setup, and delete .config/fish/conf.d/asdf_direnv.fish.

(All of the required sourcing is already configured in config.fish.)

Install the relevant asdf plugins; for example, for Elixir:

asdf plugin-add elixir https://github.com/asdf-vm/asdf-elixir.git
asdf plugin add erlang https://github.com/asdf-vm/asdf-erlang.git

To use asdf, add a .tool-versions file in the root of your project folder. Continuing the Elixir example:

$ cat .tool-versions
elixir 1.14.3
erlang 25.2.2

And, in the root of the project folder, add a .envrc file with the following contents:

$ cat .envrc
use asdf

The first time cding into the project directory, run direnv allow.

Also see: .asdfrc

Thanks

These dotfiles are heavily based on Zach Holman's dotfiles.

About

.dotfiles


Languages

Language:Ruby 41.0%Language:Shell 28.5%Language:Python 25.8%Language:AppleScript 4.7%