#!/bin/bash


function first_stage(){
	set -e
	echo foo first_stage
	
	apt install -y debootstrap cryptsetup btrfs-progs lvm2
	
	
	echo -n luks_password: 
	read -s luks_password
	
	
	lsblk -ftpo NAME,FSTYPE,LABEL,UUID,FSAVAIL,MOUNTPOINT
	select DEVICE in $(lsblk -frpno NAME); do
	echo using $DEVICE
	break
	done
	
	if [ -b /dev/mapper/cryptlvm ]; then
		cryptsetup luksClose cryptlvm
	fi
	
	wipefs -a ${DEVICE}
	
	(
	echo o
	echo n
	echo p
	echo 1
	echo
	echo +2G
	echo n
	echo p
	echo 2
	echo
	echo 
	echo w
	) | fdisk ${DEVICE}
	
	lsblk
	
	echo mkfs.ext4 ${DEVICE}1
	yes | mkfs.ext4 ${DEVICE}1
	(
	echo $luks_password
	echo $luks_password	
	)| cryptsetup luksFormat ${DEVICE}2
	echo $luks_password | cryptsetup luksOpen ${DEVICE}2 cryptlvm
	pvcreate /dev/mapper/cryptlvm
	vgcreate vg0 /dev/mapper/cryptlvm
	echo lvcreate /dev/vg0 --name=root --size=100G
	lvcreate /dev/vg0 --name=root --size=100G
	yes | mkfs.ext4 /dev/vg0/root
	echo mount /dev/vg0/root $TARGET
	mount /dev/vg0/root $TARGET
	echo debootstrap sid $TARGET
	debootstrap sid $TARGET
	mount ${DEVICE}1 $TARGET/boot
	echo mount ${DEVICE}1 $TARGET/boot
}

function second_stage(){
	set -e
	echo bar second_stage
	passwd
	echo -n > /etc/motd
	apt install -y linux-image-amd64 grub2 cryptsetup btrfs-progs lvm2 locales tzdata keyboard-configuration console-common
}