Feel free to pick whatever you want from this repo, but note it has been mostly created for my personal use and its updated very frequently. Use at your own risks and please create back-ups of your current set-up if you intend to use the Makefile. Dotfiles are managed by GNU Stow.
Those dotfiles are maintained for different platforms because I’m using multiple machines with different OSes.
- Macbook 13
- Arch Linux with i3
- GPD Pocket 3, running Arch with i3 (need some specific additional patches and configs)
Hence why the stow targets are divided into multiple different directories.
- Cross platform configurations can be found under
cross-platform/
, it includes things like zsh, emacs, ssh, bash scripts. Those “should be” platform agnostic. - Macbook specific configurations can be found under
macos/
andmacos-root/
. - Arch Linux specific configurations can be found under
arch/
andarch-root/
. - GPD Pocket 3 (running on Arch) specific configurations can be found in
gpd-arch/
andgpd-arch-root/
. It includes stowing the genericarch/
andarch-root/
configs, but adds various tweaks to ensure the GPD behaves nicely on Arch Linux (screen rotation and resolution, touchscreen support, X11 configs etc).
Clone this repo into your home directory.
(cd $HOME && git clone https://github.com/smallwat3r/dotfiles.git)
Makefile usage:
To symlink all dotfiles (will automatically detect the OS and system for which directories to stow)
make symlink
To discover other commands
make help
Install Emacs, I’m using Emacs 29 with native compilation (gccEmacs
)
For macOS:
brew tap d12frosted/emacs-plus && brew install emacs-plus@29 --with-native-comp
For Arch Linux:
sudo pacman -S emacs-nativecomp
Then,
Install Doom in a custom ~/.emacs.doom
directory which allows me to use Chemacs2
git clone --depth 1 https://github.com/hlissner/doom-emacs ~/.emacs.doom
~/.emacs.doom/bin/doom install
Install Chemacs2 and move aside any existing config
[ -f ~/.emacs ] && mv ~/.emacs ~/.emacs.bak
[ -d ~/.emacs.d ] && mv ~/.emacs.d ~/.emacs.legacy
git clone https://github.com/plexus/chemacs2.git ~/.emacs.d