mirror of
https://gitlab.com/ahoneybun/nyxi-installer.git
synced 2025-05-12 11:04:02 -06:00
parent
0dfe4b5d6d
commit
30260a1e36
1 changed files with 30 additions and 29 deletions
59
install.sh
59
install.sh
|
@ -29,7 +29,7 @@ echo t # Change partition type.
|
|||
echo 1 # Pick first partition.
|
||||
echo 1 # Change first partition to EFI system.
|
||||
echo w # write changes.
|
||||
) | fdisk $driveName -w always -W always
|
||||
) | sudo fdisk $driveName -w always -W always
|
||||
|
||||
# List the new partitions.
|
||||
lsblk -f
|
||||
|
@ -45,63 +45,64 @@ echo "Which is the root partition?"
|
|||
read rootName
|
||||
|
||||
# Create EFI partition
|
||||
mkfs.fat -F32 -n EFI $efiName
|
||||
sudo mkfs.fat -F32 -n EFI $efiName
|
||||
|
||||
# Encrypt the root partition
|
||||
cryptsetup luksFormat -v -s 512 -h sha512 $rootName
|
||||
sudo cryptsetup luksFormat -v -s 512 -h sha512 $rootName
|
||||
|
||||
# Open the encrypted root partition
|
||||
cryptsetup luksOpen $rootName crypt-root
|
||||
sudo cryptsetup luksOpen $rootName crypt-root
|
||||
|
||||
pvcreate /dev/mapper/crypt-root
|
||||
vgcreate lvm /dev/mapper/crypt-root
|
||||
sudo pvcreate /dev/mapper/crypt-root
|
||||
sudo vgcreate lvm /dev/mapper/crypt-root
|
||||
|
||||
lvcreate --size "$ramTotal"G --name swap lvm
|
||||
lvcreate --extents 100%FREE --name root lvm
|
||||
sudo lvcreate --size "$ramTotal"G --name swap lvm
|
||||
sudo lvcreate --extents 100%FREE --name root lvm
|
||||
|
||||
cryptsetup config $rootName --label luks
|
||||
sudo cryptsetup config $rootName --label luks
|
||||
|
||||
mkswap /dev/lvm/swap # swap partition
|
||||
mkfs.btrfs -L root /dev/lvm/root # /root partition
|
||||
sudo mkswap /dev/lvm/swap # swap partition
|
||||
sudo mkfs.btrfs -L root /dev/lvm/root # /root partition
|
||||
|
||||
# Mount the filesystems.
|
||||
swapon /dev/lvm/swap
|
||||
mount /dev/lvm/root /mnt
|
||||
# 0. Mount the filesystems.
|
||||
sudo swapon /dev/lvm/swap
|
||||
sudo mount /dev/lvm/root /mnt
|
||||
|
||||
# Create Subvolumes
|
||||
btrfs subvolume create /mnt/@
|
||||
btrfs subvolume create /mnt/@home
|
||||
sudo btrfs subvolume create /mnt/@
|
||||
sudo btrfs subvolume create /mnt/@home
|
||||
|
||||
# Unmount root
|
||||
umount /mnt
|
||||
sudo umount /mnt
|
||||
|
||||
# Mount the subvolumes.
|
||||
mount -o noatime,commit=120,compress=zstd:10,space_cache,subvol=@ /dev/lvm/root /mnt
|
||||
sudo mount -o noatime,commit=120,compress=zstd:10,space_cache,subvol=@ /dev/lvm/root /mnt
|
||||
|
||||
mkdir /mnt/home/
|
||||
mount -o noatime,commit=120,compress=zstd:10,space_cache,subvol=@home /dev/lvm/root /mnt/home
|
||||
sudo mkdir /mnt/home/
|
||||
sudo mount -o noatime,commit=120,compress=zstd:10,space_cache,subvol=@home /dev/lvm/root /mnt/home
|
||||
|
||||
# Mount the EFI partition.
|
||||
mkdir /mnt/boot/
|
||||
mount $efiName /mnt/boot
|
||||
sudo mkdir /mnt/boot/
|
||||
sudo mount $efiName /mnt/boot
|
||||
|
||||
# Generate Nix configuration
|
||||
nixos-generate-config --root /mnt
|
||||
sudo nixos-generate-config --root /mnt
|
||||
|
||||
curl https://gitlab.com/ahoneybun/nixos-cli-installer/-/raw/nathaniel-btrfs/config-plasma.nix > configuration.nix; sudo mv -f configuration.nix /mnt/etc/nixos/
|
||||
|
||||
# Install
|
||||
nixos-install
|
||||
sudo nixos-install
|
||||
|
||||
# Start Setup section
|
||||
sudo -i
|
||||
curl https://gitlab.com/ahoneybun/nixos-cli-installer/-/raw/nathaniel-btrfs/setup.sh > /mnt/setup.sh
|
||||
|
||||
# Enter into installed OS
|
||||
mount -o bind /dev /mnt/dev
|
||||
mount -o bind /proc /mnt/proc
|
||||
mount -o bind /sys /mnt/sys
|
||||
chroot /mnt /nix/var/nix/profiles/system/activate
|
||||
chroot /mnt /run/current-system/sw/bin/sh setup.sh
|
||||
sudo mount -o bind /dev /mnt/dev
|
||||
sudo mount -o bind /proc /mnt/proc
|
||||
sudo mount -o bind /sys /mnt/sys
|
||||
sudo chroot /mnt /nix/var/nix/profiles/system/activate
|
||||
sudo chroot /mnt /run/current-system/sw/bin/sh setup.sh
|
||||
|
||||
# Removed install script.
|
||||
rm install.sh
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue