Skip to content

seanfarley/dotfiles

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Sean’s Dotfiles

An always evolving repo of my settings. My ultimate goal is to minimize the code in this repo as much as possible by upstreaming my settings.

OS targets are MacOS and Linux. Ideally, I’d just be running Emacs as my OS :-)

Main laptop setup

A majority of my workflow assumes one main laptop with everything else being remote. For instance, this means that only one machine has my password manager, ssh-keys, emacs (since we’re using TRAMP), etc.

For this reason, there are some bootstrapping steps that are only needed for this main laptop setup: graphical desktop, UI settings, and cloud syncing.

Initialize MacOS

  • Log into App Store
  • Syncing
    • Remove Apple’s default contact card
    • Uncheck syncing with contacts, calendars, and mail
    • Re-enable our self-hosted syncing
    • Select personal card to make user default
  • Install any OS updates

Optionally, remove Terminal’s preference file so yadm can do a clean checkout

rm ~/Library/Preferences/com.apple.Terminal.plist

Bootstrap password manager

Ensure permissions are granted to terminal,

/usr/bin/security find-internet-password -w -a sean@farley.io -s bitwarden.farley.io

Due to a catch-22 with using bitwarden and two-factor authentication, we need to login first, which means installing the bitwarden cli (and homebrew),

/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
brew install bitwarden-cli
bw config server "https://bitwarden.farley.io"
bw login sean@farley.io "$(/usr/bin/security find-internet-password -w -a sean@farley.io -s bitwarden.farley.io)"

Bootstrap yadm, if needed

Sometimes, we’re not root or on a distro that has an old version of yadm. If that’s the case, then we’ll need to install yadm ourselves.

git clone https://github.com/TheLocehiliosan/yadm.git ~/.local/share/yadm-project
mkdir -p ~/.local/bin
ln -s ~/.local/share/yadm-project/yadm ~/.local/bin/yadm

Initialize yadm

yadm clone --bootstrap https://github.com/seanfarley/dotfiles

Emacs

For our main laptop, we need to make sure Emacs has full-disk access so that it can access homebrew libraries, download folder, etc.

After rebooting / making sure environment is setup, we can install doom,

doom sync
emacsclient --eval '(nerd-icons-install-fonts)'

About

Sean Farley's personal dotfiles

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published