diff options
Diffstat (limited to 'install')
-rwxr-xr-x | install | 38 |
1 files changed, 38 insertions, 0 deletions
diff --git a/install b/install new file mode 100755 index 000000000000..bad60db0202c --- /dev/null +++ b/install @@ -0,0 +1,38 @@ +#!/usr/bin/env bash + +set -eo pipefail + +if [[ -f /etc/nixos/.system-installed ]]; then + echo "=== System config already installed, skipping" +else + echo "==> Installing system config" + + [[ -d /etc/nixos ]] && sudo mv /etc/nixos{,.bak} + sudo mkdir -p /etc/nixos + sudo cp /etc/nixos.bak/hardware-configuration.nix /etc/nixos + + sudo cp ./configuration.nix /etc/nixos/ + sudo ln -s $(pwd)/{machines,modules,pkgs} /etc/nixos + sudo touch /etc/nixos/.system-installed + + nixos-rebuild switch + echo "==> System config installed, your old configuration is at /etc/nixos.bak" +fi +echo + +if [[ -f ~/.config/nixpkgs/system-installed ]]; then + echo "=== home-anager config already installed, skipping" +else + echo "==> Installing home-manager config" + nix-channel --add https://github.com/rycee/home-manager/archive/master.tar.gz home-manager + nix-channel --update + nix-shell '<home-manager>' -A install + + [[ -d ~/.config/nixpkgs ]] && mv ~/.config/{nixpkgs,nixpkgs.bak} + mkdir -p ~/.config/nixpkgs + ln -s home/* ~/.config/nixpkgs + + home-manager switch + + echo "==> home-manager config installed" +fi |