Skip to content

ambirdsall/dots

Repository files navigation

dotfiles

These are my linux/macOS configuration files. They’re tracked in a git repository separate from the working tree, which is just my home directory; this replaces an ongoing symlink song and dance for a little upfront setup effort. Given that the upfront work can be copy-pasted, it’s a pretty great tradeoff.

to install on a new computer

To get up and running:

  1. clone the dotfiles repo
  2. copy the files over to their proper locations, and
  3. configure the dotfile git repo to ignore all untracked files

The last step is so neither I nor you ever accidentally push our whole home directory to github, lol. So:

git clone --separate-git-dir=$HOME/.dots [email protected]:ambirdsall/dots.git tmpdotfiles
rsync --recursive \
      --verbose \
      --exclude '.git' \
      --backup --suffix=.dots.orig \
      tmpdotfiles/ $HOME/
rm -r tmpdotfiles

git --git-dir=$HOME/.dots/ --work-tree=$HOME config --local status.showUntrackedFiles no

If you’ve already installed emacs, you can now run

make install

followed by whichever of the following is appropriate

make linux
make macos

Now, aspirationally:

dots doctor

Once you have a clean bill of health, tangle all literate configs with

dots build

managing this git directory

The ~/bin/dots file provides a dots command to handle all interaction with the git repo. It wraps git, passing the correct directories to --git-dir and --work-tree and paving a few common paths:

dots
defaults to git status -s when called with no arguments
dots c some commit message
expands to dots commit -m "some commit message"

todo list

install roboto mono in all OSes (for experimenting with NANO emacs)

persistently tangle literate configs in dots repo on save

define a new after-save hook in emacs to tangle dots literate configs based on file-local variables

org-mode-specific

usually a noop

relies on buffer-local variables being defined

set those values for all literate configs with magic comments

…profit?

cli script to tangle all literate configs in dots repo

cf.

doom help +org tangle

dots tangle? dots tangle <file>?

make tangle maybe should exist too but only by shelling out to dots.

About

linux/macOS dotfiles

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published