summaryrefslogtreecommitdiff
path: root/nixos/nixos-generate/miguel-quick-install.sh
blob: 3c3e7cba885275de9efefdbeb69525e8758312b2 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
PATH="$coreutils/bin"
mkdir -p $out/bin
cat >> $out/bin/miguel-quick-install << EOL
#!$bash/bin/bash

set -e # stop on error
set -u # stop on undefined var

echo
echo =========================================================================
echo == Welcome to Miguels Custom NixOS Quick Install ... Please Standby ==
echo =========================================================================
echo

echo desired hosname = \$1
echo

echo 1. Create Target Partitions
parted /dev/sda -- mklabel msdos
parted /dev/sda -- mkpart primary 1MiB -8GiB
mkfs.ext4 -L nixos /dev/sda1

echo 2. Mount Target Partitions
mkdir -p /mnt
mount /dev/sda1 /mnt

echo 3. Update Nix Channel
nix-channel --update

echo 4. Generate Configs
nixos-generate-config --root /mnt
cp $configextra /mnt/etc/nixos/config-extra.nix
cp $configiso   /mnt/etc/nixos/config-iso.nix
cp $0           /mnt/etc/nixos/miguel-quick-install.sh
cat $configextra | head -n -1       > /mnt/etc/nixos/configuration.nix
echo "networking.hostName=\"\$1\";}" >> /mnt/etc/nixos/configuration.nix

echo 5. Start NixOS Installer!
nixos-install --no-root-passwd

echo 6. Finished
echo Please remove the installation media and reboot into your fresh NixOS!

#reboot

EOL
chmod +x  $out/bin/miguel-quick-install