dotfiles
dotfilery, configuration, environment settings, automation, etc.
Installation
If you want to kick the tires, you can simply:
curl -fsSL https://raw.githubusercontent.com/megalithic/dotfiles/main/bin/_dotup | /usr/bin/env zsh
The install script will install things and symlink the appropriate files in
~/.dotfiles
to your home directory (~
). Everything is configured and tweaked
within ~/.dotfiles
, though. The majority of files and folders get stow
ed in
to your $HOME
, or to $XDG_CONFIG_HOME
.
I have tried to be platform agnostic, but the majority of scripts that run here
are for macOS (specifically Big Sur at the time of this edit), with a handful of
debian/ubuntu linux specific platform scripts and
provisions. This means that certain tools/binaries I rely on may or may not
install/configure on linux. Though, I have tested it decently well on an
Ubuntu-based Linode instance.
I highly recommend you dig into the scripts and configs to see what all
is going on (because it does a lot that I'm not describing here) before you
install a stranger's shell scripts all willy-nilly, throwing caution to the
wind. ?
Things
A few of the must-have tools I roll with:
- homebrew
- see
~/.dotfiles/Brewfile
for all that gets installed
- see
- hammerspoon
- karabiner-elements
- see
~/.dotfiles/keyboard
for macOS specific config things - see my Atreus62 config for my custom keyboard setup
- see
- tmux
- additional tmux statusbar binaries available (see
tmux-*
files in
~/.dotfiles/bin
). - see also my DND tmux plugin
- additional tmux statusbar binaries available (see
- jetbrains mono
- patched via nerd-fonts
- kitty
forest nighteverforest- neovim
- using lua with neovim? https://github.com/nanotee/nvim-lua-guide
- zsh
- weechat
Stuff
The file hierarchy:
- bin/: Anything in
bin/
will get added to your$PATH
and be made
available everywhere. - Everything else is handled by custom installers based upon the current
platform; otherwise,stow
handles the rest (clean and easy symlinking).
Privates
Use ~/.localrc
as your location for sensitive information. Optionally, you
can let bin/_dotup
handle the cloning of your private repo to
~/.dotfiles/private
, which will execute an install script, assuming it's
located at ~/.dotfiles/private/install.sh
.
NOTE: You'll want to be sure to setup an SSH key for github access to this repo and likely to your private repo too: https://docs.github.com/en/free-pro-team@latest/github/authenticating-to-github/generating-a-new-ssh-key-and-adding-it-to-the-ssh-agent
Also helpful: https://docs.github.com/en/free-pro-team@latest/github/using-git/caching-your-github-credentials-in-git
Props
-
So many esteemed individuals in the community have, in some way, left their
mark on my own dotfilery (they're all legends in my book):