dotskel

My personal configuration files built using home-manager.

Stars
15

This repository holds my dotfiles setup. It is based on [[https://github.com/nix-community/home-manager][home-manager]], a [[https://nixos.org/][Nix]] based approach to handling all dependencies and setup. This means that all dotfiles are actually symlinked to the nix store, and are immutable. This in turn means I'll have to deploy changes every time I want to change something, but I can live with it.

[[https://github.com/knl/dotskel/actions/workflows/build.yml][https://github.com/knl/dotskel/actions/workflows/build.yml/badge.svg]]

  • Installation ** Command Line Tools

    Command Line Tools are needed to build various things, and bring in git.

    #+begin_src bash xcode-select --install #+end_src

** =nix=

The new installer from Determinate Systems is really good, and the option to use single user mode disappeared from all installers, so: #+begin_src bash curl --proto '=https' --tlsv1.2 -sSf -L https://install.determinate.systems/nix | sh -s -- install source "$HOME/.nix-profile/etc/profile.d/nix.sh" #+end_src

** Applications

These tools can't be installed by home-manager, because they are macOS applications. So, install them manually.

  • [[https://github.com/Hammerspoon/hammerspoon/releases/latest][Hammerspoon]]
  • [[https://d3jdrrl94b667u.cloudfront.net/Raycast_v1.62.1_fa62964c11720495b5c98ad1b30f32ebe5913c65_universal.dmg?response-content-disposition=attachment%3B%20filename%3DRaycast.dmg&Expires=1700563439&Signature=c87Tv1XxzDGRgIRt8zgrm0eiFO9QWxQrcYJV4qy7lyhiTtTG8J2JhTfUOsaRmJBtcE2KhtIFPnH0gG8twx2cqB2LGX5T535-UOeAVwLE7wiP-Ef9OrepvSgkZt5I6kQjWpO7tEcZXQ4j-BKJ4iV2Zph1rumTQIewTvh9ZwlgopJr6DwK93j48dYEy5WfvKmRJbv1Jvas8Ia2shfg8NOTJhBul6huZfvY5CPJ7d7TfcXgP8kSAyuP7jidePgcJ5VuajblyOObjkP6teR7hMSk~SNwCqxZC8rjntUd0eROM0sKs2rKiVdvh4CH8zFF3ZMq7kHOaAxfqMP7an-Vj7Xw__&Key-Pair-Id=K69CUC23G592W][Raycast]]
  • [[https://karabiner-elements.pqrs.org/][Karabiner-Elements]]
  • [[https://app-updates.agilebits.com/download/OPM7][1Password 7]]
  • [[https://www.mozilla.org/en-US/firefox/new/][Firefox]]
  • [[https://download.bjango.com/istatmenus/][iStat Menus]]
  • [[https://frankfurt.kapeli.com/downloads/v6/Dash.zip][Dash]]

** Misc

One can't live without good fonts. I prefer Iosevka:
[[https://github.com/be5invis/Iosevka/releases][Iosevka Term SS08]]. This font
will be installed by home-manager.

** dotfiles

Finally, just run the following command:

#+begin_src bash nix-shell home-manager switch #+end_src

Afterwards, it's just riding on the good wave of direnv and aliases: #+begin_src bash z skel stash; gl --rebase; unstash d reload hm switch #+end_src

  • References