nix/docs/setup.sh

68 lines
2 KiB
Bash
Raw Normal View History

2023-09-22 14:23:12 +02:00
#!/usr/bin/env bash
2023-09-23 15:32:23 +02:00
pushd /etc/nixos/git
2023-09-23 15:13:49 +02:00
2023-11-19 09:27:41 +01:00
# Home-Manager Setup
echo ">>> Setting up Home Manager..... "
sudo mkdir /nix/var/nix/profiles/per-user/albert
2023-12-13 07:44:57 +01:00
sudo chown -R albert:root /nix/var/nix/profiles/per-user/albert
2023-11-19 09:27:41 +01:00
home-manager switch -b backup --flake /etc/nixos/git
source ~/.bashrc
# Import and trust the GPG key
echo ">>> Setting up user GPG key..... "
2023-11-26 10:20:37 +01:00
drive=$(lsblk -o serial,name | grep NGN130R000980P2202 | awk {'print $2'})
2023-12-15 12:43:39 +01:00
sudo mkdir -p /tmp/drive
2023-11-19 09:27:41 +01:00
sudo cryptsetup luksOpen /dev/${drive}3 usb-luks
sudo mount /dev/mapper/usb-luks /tmp/drive
gpg --import /tmp/drive/gpg/albert@sysctl.io/privkey.asc
sudo umount /tmp/drive
sudo rmdir /tmp/drive
sudo cryptsetup luksClose /dev/mapper/usb-luks
echo -e "5\ny\n" | gpg --command-fd 0 --expert --edit-key albert@sysctl.io trust
2023-09-18 09:16:55 +02:00
# Setup SOPS
2023-09-23 15:13:49 +02:00
echo "Setting up SOPS keys..... "
2023-10-07 10:37:10 +02:00
echo ">>> !!!!!"
echo ">>> !!!!!"
echo ">>> !!!!!"
echo ">>> !!!!! Copy this signature to .sops.yaml: "
echo ">>> !!!!!"
echo ">>> !!!!!"
echo ">>> !!!!!"
2023-12-26 03:31:01 +01:00
# Currently only RSA keys are allowed
2023-09-23 02:05:32 +02:00
sudo ssh-to-pgp \
2023-09-23 15:05:27 +02:00
-comment "Generated `date +%Y.%m.%d`" \
2023-09-23 02:05:32 +02:00
-email "root@`hostname`" \
-i /etc/ssh/ssh_host_rsa_key \
-o /etc/nixos/git/keys/hosts/$(hostname).asc
2023-09-18 09:16:55 +02:00
# Set up ssh keys
2023-10-07 10:37:10 +02:00
echo ">>> Setting up SSH Keys..... "
ssh-keygen -t ed25519 -f ~/.ssh/id_ed25519 -N ""
2023-09-22 14:09:37 +02:00
echo "" >> ./keys/ssh/keys.txt
2023-12-13 05:08:29 +01:00
echo "# (`date`) `whoami`@`hostname`" >> ./keys/ssh/keys.txt
cat /home/albert/.ssh/id_ed25519.pub >> ./keys/ssh/keys.txt
2023-09-18 09:16:55 +02:00
2023-12-26 01:39:46 +01:00
# echo ">>> Setting up Distributed Build SSH Keys..... "
# sudo ssh-keygen -t ed25519 -f /root/.ssh/id_ed25519 -N ""
# echo "" >> ./keys/ssh/builder-keys.txt
# echo "# (`date`) root@`hostname`" >> ./keys/ssh/builder-keys.txt
# sudo cat /root/.ssh/id_ed25519.pub >> ./keys/ssh/builder-keys.txt
2023-10-07 10:37:10 +02:00
2023-09-18 09:16:55 +02:00
# Add all changes to git and and push
2023-10-07 10:37:10 +02:00
echo ">>> Pushing to git..... "
2023-09-19 10:01:58 +02:00
git add keys/hosts/`hostname`.asc
2023-10-07 10:37:10 +02:00
git commit -am "Setup: `hostname`"
2023-09-18 09:16:55 +02:00
git push
2023-09-22 14:09:37 +02:00
echo
echo
2023-10-07 10:37:10 +02:00
echo ">>> Complete. Once '.sops.yaml' is updated, "
echo ">>> run 'update-secrets' and reboot."
2023-09-28 13:23:04 +02:00
echo
2023-09-23 15:13:49 +02:00
echo
2023-10-07 10:37:10 +02:00
echo ">>> Reminder: Upload these changes to git"
2023-09-23 02:05:32 +02:00
2023-10-10 14:59:58 +02:00
popd