dotfiles/conf

26 lines
809 B
Bash
Executable File

#!/usr/bin/env bash
if ! [ -e deploy_key ] || ! [ -e secrets.nix ]
then
gpg --decrypt-files secrets.nix.asc deploy_key.asc keys/*.asc
sudo chgrp nixbld deploy_key
chmod 640 deploy_key
fi
case $1 in
local)
export NIX_PATH=/nix/var/nix/profiles/per-user/root/channels/nixos:nixos-config=`pwd`/ascanius/configuration.nix:secrets=`pwd`/secrets.nix
eval ${@:2}
;;
remote)
export NIX_PATH="nixpkgs=https://nixos.org/channels/nixos-16.09/nixexprs.tar.xz:nixos-config=`pwd`/$2/configuration.nix:ssh-id-file=`pwd`/deploy_key":secrets=`pwd`/secrets.nix
eval ${@:3}
;;
local-deploy)
sudo $0 local nixos-rebuild switch
;;
remote-deploy)
$0 remote $2 nixos-rebuild --build-host localhost --target-host root@$2 switch
;;
update-encrypt)
gpg -a -r yorick --encrypt-files secrets.nix deploy_key keys/*.key
esac