Skip to content

iancleary/dotfiles_old

Repository files navigation

dotfiles

I manage my dotfiles wtih managed with the yadm dotfile manager.

My dotfiles are used and tested on MacOS, Ubuntu 20.04, ElementaryOS 6.
I primarily use MacOS at home, Ubuntu at work or for anything with servers, and am a fan of Elementary.

If you use a Mac, I recommend you checkout geerlingguy/mac-dev-playbook! If you use Ubuntu or Elementary OS, I recommend you checkout iancleary/ubuntu-dev-playbook!

Cheers!

yadm

Check out their Getting Started Documentation

Install

# MacOS
brew install yadm
# Ubuntu and Elementary
sudo apt install yadm
# Alternatively you can download the latest binary directly (say to avoid older ubuntu archive versions)

Clone and Bootstrap

yadm clone -b main https://github.com/iancleary/dotfiles --bootstrap

This clones my dotfiles repo via HTTPS using yadm's bootstrap standard command.

My Bootstrap script is iancleary/dotfiles/blob/main/.config/yadm/bootstrap. It's purpose is to:

  • loads my dotfiles (including SSH keys)
  • decrypt the private key (prompts for password),
  • add the key to ssh-agent,
  • tests the connection,
  • and exit.

Host Specific things

A few things are done selectively for MacOS and Ubuntu-based distributions.

  • ssh-add has an extra --use-apple-keychain parameter to persist key addition to the next terminal session
  • VS Code's settings.json file is in a different folder on Ubuntu and MacOS.

I use Scripts/code_spell_check_sync.py to sync spell check words. I manually edit the other settings. I avoid VS Code built in sync as I prefer to have a git history of extensions, and other settings for later reference.