_ ___ __ __
| | / _ \/_ /_ |
___ __| |_ _ _ __ ___ __ _ _ _| (_) || || |
/ _ \/ _` | | | | '_ \ / __/ _` | '_ \__, || || |
| __/ (_| | |_| | | | | (_| (_| | | | |/ / | || |
\___|\__,_|\__,_|_| |_|\___\__,_|_| |_/_/ |_||_|
dotfiles
are the files used to customize your machine to your liking. They
are a set of highly opinionated configuration files, options and plugins.
These are mine.
These machine-agnostic dotfiles
are used to setup my various Linux,
Apple, Raspberry Pi, and QubesOS machines I have running around.
They are conditionally written to work across several platforms, maximizing their utility.
The concept was adopted from my previous Linux
dotfile repos, merged
into one, and carefully tweaked to Darwin's needs.
Why, sure you can. But like anything a stranger gives you, read through each file first before utilizing.
The goal is to be OS agnostic. I currently shoot for complete compatibility across:
- Linux (non-BSD, mostly ArchLinux, Debian and Ubuntu)
- Darwin (macOS)
- Raspberry Pi operating systems (Pixel, NOOB, debian/arch based)
Linux for Windows Subsystem version 2 is seems to have fixed most of the TTL issues. If I ever get a Windows machine at home, I'll install this repo and will start using it there. But until then, I don't guarantee any compatibility with Bash on Windows yet.
My machnies are mostly used for development purposes and maintenance
of various remote systems. Therefore, these dotfiles
center around
functionality that enables me to clone->link->use
quickly.
There's a lot and it is ever changing. But a short list:
- primarily for
docker
&golang
,ruby
,python
,node
, etc - conditional setup scripts (e.g. won't load
rbenv
unless it exists) - proper
bash
dotfiles ordering (bashrc, profile, bash_aliases, etc) bash
unlimited history and behavior to my liking- my own high-speed custom prompt (almost down to just 1 shell exec!)
- custom prompt with vim-like prefixed path names like
/a/b/c/d/eric
- custom prompt showing ruby (
rbenv
) and python (virtualenv
) info tmux
as a tiling replacement of my belovedi3wm
in linuxvim/nvim
and sensible defaults as primary editorvim/nvim/tmux
sessions auto-saved and auto-restoredvim/nvim/tmux/airline/iterm2
color sync w/256 colors (non-Windows)- same scripts work across non-BSD
Linux
andmacOS
operating systems
...and a lot more tweaks. It's far from perfect and is in constant flux; but, it's livable for now.
That's a topic requiring a larger blog post. But in short you clone the repo and create symlinks to the files:
$ cd ~/
$ git clone [email protected]:eduncan911/dotfiles.git .dotfiles
$ ln -s .dotfiles/.bash_profile
$ ln -s .dotfiles/.bashrc
$ ln -s .dotfiles/.profile
$ ln -s .dotfiles/bin
...and so on
Backups.
Always share with others.
See UNLICENSED file.