test 1 for auto deploy

This commit is contained in:
Ryan Schanzenbacher 2023-09-15 20:57:54 -04:00
parent a3a44f9054
commit e2cc3f5f34
Signed by: ryan77627
GPG key ID: 81B0E222A3E2308E
2 changed files with 30 additions and 20 deletions

View file

@ -39,10 +39,10 @@ copy_and_prepare() {
# Copy template to root of repo
if [ "$install_type" == "e" ]
then
cp ./modules/ryan-config/deploy-templates/HostTemplateEncrypted.scm ./$install_hostname.scm
cp ./modules/ryan-config/deploy-templates/HostTemplateEncrypted ./$install_hostname.scm
elif [ "$install_type" == "d" ]
then
cp ./modules/ryan-config/deploy-templates/HostTemplate.scm ./$install_hostname.scm
cp ./modules/ryan-config/deploy-templates/HostTemplate ./$install_hostname.scm
else
echo "Invalid install type (not d or e), bailing!"
exit 1
@ -72,28 +72,15 @@ install_system() {
install_user_env() {
# System should be installed now, we can chroot in and configure the user profile now
# NOTE: This assumes the user "ryan" for things, so change the USER var if you change your username
# Mount the special block devices to prepare for chroot
mount --rbind /proc /mnt/proc
mount --rbind /sys /mnt/sys
mount --rbind /dev /mnt/dev
# chroot into system and run commands
# First copy the file
cp ~/guix-dotfiles/$install_hostname /mnt/$install_hostname.scm
# Copy some files over to prepare for reboot
USER=ryan
chroot /mnt <<EOT
# Activate commands
source /var/guix/profiles/system/profile/etc/profile
/var/guix/profiles/system/activate
guix-daemon --build-users-group=guixbuild --disable-chroot &
guix shell git -- git clone https://git.stationery.faith/ryan77627/guix-dotfiles /mnt/home/$USER/.config/guix
guix shell git -- git clone https://git.stationery.faith/ryan77627/guix-dotfiles /home/$USER/.config/guix
cp ~/guix-dotfiles/$install_hostname.scm /mnt/home/$USER/.config/guix/$install_hostname.scm
cp ~/guix-dotfiles/modules/ryan-config/user_first_run.sh /mnt/home/$USER/.bashrc
mv /$install_hostname.scm /home/$USER/.config/guix/$install_hostname.scm
EOT
chown 1000:1000 -R /mnt/home/ryan
}
@ -101,3 +88,6 @@ gather_env
copy_and_prepare
install_system
install_user_env
# Reboot the machine at this point!
reboot

View file

@ -0,0 +1,20 @@
#!/run/current-system/profile/bin/bash
# This should run on user first logon, so let's a go!
# First, we should run a guix pull
guix pull
hash guix
guix home -L ~/.config/guix/modules reconfigure ~/.config/guix/home-config/home-configuration.scm
sudo herd restart nix-daemon
nix-channel --update
nix-shell '<home-manager>' -A install
source ~/.bashrc
home-manager switch