Skip to content

Latest commit

 

History

History
60 lines (36 loc) · 3.34 KB

README.md

File metadata and controls

60 lines (36 loc) · 3.34 KB

dotfiles

This is my personal dotfiles repo. Feel free to explore it, copy bits and pieces for your own dotfiles, or fork the whole repo and use them.

! NOTE
It only targets macOS systems for now.

⚠ WARNING
These dotfiles are tailored to my liking to help me manage my macos laptops. If you want to use them, fork the repo, review the code, remove anything you don't want or need, and enjoy.

Installation

The installation process is idempotent, which means that running it once or multiple times produce the same end result.

To automatically install these dotfiles on a brand new system, simply run the following shell commands:

# install the command line dev tools
xcode-select --install 

# clone this dotfile repository
git clone https://github.com/Amheklerior/dotfiles $HOME/.dotfiles

# move into the .dotfiles directory
cd $HOME/.dotfiles

# run the install script and follow the instructions...
./bootstrap.sh

If you're interested in what the last two commands do, have a look at the makefile.

After that, you are all set. You might now import system and app related preferences

How it Works

The pillars are Homebrew, Ansible, GNU Stow, and GNU Make.

Homebrew is at the core of how I manage all the packages, apps, and vscode extensions. They are all listed in the Brewfile, and installed in bulk during the first steps of the installation process.

GNU Stow is used to to symlink all of my dotfiles from the /system dir into the $home dir.

Ansible Vault is used to protect sensitive information contained in this repo, such as apps and services recovery codes and ssh keys.

GNU Make is what I've used to define (1) the automated installation process and (2) the development utilities for managing the dotfiles repo. In the future, I might use Ansible Playbooks as an alternative to the makefile for automating the installation process, and a simple cli for managing the repo.

System and app related preferences are stored in the /prefs directory.

Feedback

If you have any suggestion/improvement be my guest!

Credits

Special thanks to: