Configuration for my NixOS based systems and Home Manager
1#!/usr/bin/env rc
2
3nix_dir=()
4system_type=()
5if (test -d $HOME/repos/nixos) {
6 nix_dir=$HOME/repos/nixos
7 system_type=nixos
8 echo On a NixOS based system
9}
10if (test -d $HOME/.config/home-manager) {
11 nix_dir=$HOME/.config/home-manager
12 system_type=homemanager
13 echo On a Home Manager based system
14}
15if (~ $nix_dir ()) {
16 echo Could not find correct Nix directory
17 exit 1
18}
19echo Using $nix_dir
20
21nix flake update --flake $nix_dir
22
23switch($system_type) {
24 case nixos
25 sudo nixos-rebuild --refresh --show-trace --flake $nix_dir
26 case homemanager
27 sudo home-manager switch --refresh --flake $nix_dir
28 case *
29 echo Huh? Unexpected system type: $system_type
30 exit 1
31}