My personal configuration files for MacOS (Working on Linux support)
Includes files for configuring:
- Fish shell
- iTerm2
- Neovim
- Tmux
- Hyper.js Terminal
- Phoenix (window and app manager)
Contains plugins, dependencies and utilities to comfortably work with:
- Javascript
- Elixir
- Erlang
- Rust
- Go
- Crystal
- Ruby
- HTML/css/scss/stylus
But you can always customize it to add or remove stuff as you like.
If you like this configuration just clone this repo:
git clone https://github.com/pggalaviz/dotfiles.git ~/.dotfiles
then run:
cd ~/.dotfiles && ./install.sh
Running ./install.sh
will run different instructions for OSX and Linux.
On OSX, several utilities and dependencies will be installed via Homebrew, Git & Node (will ask to install them if not found).
Once Homebrew, Git & Node are detected, these will install by default:
- Python 3 (Programming language)
- tree (Helps to visualize directory tree on terminal)
- ripgrep (Line oriented search tool, better & faster than The Silver Searcher)
- reattach-to-user-namespace (Hack to comfortably work with MacOS clipboard)
- coreutils (GNU File, Shell, and Text utilities)
- gpg (Encrypt and sign your data and communications)
- minikube (For local kubernetes)
- kubernetes-cli (The kubernetes CLI tool)
- redis (Because it's redis...)
- direnv (For easily working with env vars)
- bat (like
cat
but better) - git-delta (command line for Git utilities)
Then you'll be prompted to install the following programs/tools:
- Fish shell
- Neovim
- Rust
- Golang
- Elixir
- Crystal
- Tmux
- Hyper.js terminal
- Rbenv (Including ruby-build)
- Universal ctags
- Some Node global packages (tern, standard, prettier, etc.)
These are not strictly required, however they are strongly recomended to have everything up and running easily, everything is configured to work with each other by default. By accepting when asked by the prompt, they'll be installed and configured, symlinks to the respective paths will also be created. Follow the instructions at the end and you'll be mostly set.
I'm working on Linux support. (Comming soon!)
$GOPATH
will be set to ~/go
For best UI use iTerm2, any 'True color' terminal emulator should work, including Hyper.js. Main color theme is called Oceanic Next but configuration for Nova is also included, they are configured to work on terminal, tmux and Neovim, there are iTerm2 color schemes on the colors folder that you can import.
In order to fully display UI symbols, you need a 'Powerline patched font', you can download them from https://github.com/powerline/fonts, I recomend using Source Code Pro Medium
You can install almost any version of Ruby via rbenv: rbenv install **Version**
, but if you installed asdf
better use it instead.
Important: a symlink to your global .gitconfig
will be created, make sure you update it with your personal credentials as by default it will contain mine. :)
Linux is not supported yet, working on it.
To update files, dependencies, tools and programs you can run the update.sh
comand: ~/.dotfiles/update.sh
, you'll then be prompted to choose what you want to
update. You should have run install.sh
command at some point before attempting
to run this command.
Important: Everytime you add a file to the nvim/plugin
folder, you'll need
to run this command so a symlink to the new file can be created.
I want to thank Mark Hartington for his contributions that helped as the base to this configuration.
If you have any questions or just want to chat you can find me on Twitter: @pggalaviz