┌┬┐┌─┐┌─┐┌─┐┬ ┬┌┬┐┬ ┬┬┌─┐
│││├┤ │ ┬├─┤│ │ │ ├─┤││ :: bits & bobs, dots & things.
┴ ┴└─┘└─┘┴ ┴┴─┘┴ ┴ ┴ ┴┴└─┘
@megalithic
If you want to kick the tires, you can simply:
curl -fsSL https://raw.githubusercontent.com/megalithic/dotfiles/main/bin/_dotup | 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. 🤣
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
- fish
- weechat
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).
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
-
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):
- Zach Holman
- Wynn Netherland
- Evan Travers
- Dorian Karter
- Phil Ridlen
- .. and many, many others.
- A wealth of handy scripts/bins for future use: https://github.com/salman-abedin/alfred
- Neovim lua migration resource: https://github.com/nanotee/nvim-lua-guide