I recently installed Debian with ZFSBootMenu. However, it is pretty bare bones in the install and installs Debian with debootstrap. This leaves you without a graphical interface, only the root user, and no easy way to connect to a network to install a graphical interface. I’ve seen a couple of folks ask how to go from that install to a full desktop. Below is what I did. Am I missing anything? Is there a better way to do this?
During the ZFSBootMenu install, after the steps for “ZFS Configuration” (while in chroot), insert these steps:
-
Install tasksel:
apt install tasksel -
Install the KDE desktop (or gnome-desktop, etc):
tasksel install desktop kde-desktop laptop -
Set your username for the subsequent commands:
USERNAME=username-you-want-to-create -
Add your user and set a password:
adduser ${USERNAME} -
Add your new user to the sudo group:
usermod -aG sudo ${USERNAME}Steps 6-10 are optional to put the user directory in it’s own zfs dataset
-
Move the home directory temporarily:
mv /home/${USERNAME} /home/${USERNAME}_temp -
Create a new zfs dataset for the new user:
zfs create zroot/home/${USERNAME}You can create other datasets here too (zroot/home/${USERNAME}/Documents, etc.)
-
Change the ownership on the mountpoint of the dataset to the new user:
chown -R ${USERNAME}:${USERNAME} /mnt/home/${USERNAME} chmod -R 750 /mnt/home/${USERNAME} -
Copy the home directory contents into the new dataset:
rsync -ahP /home/${USERNAME}_temp /mnt/home/${USERNAME} -
Remove the temporary home directory:
rm -r /home/${USERNAME}_tempYou can repeat steps 3-10 for more users.
-
Install the firmware-linux package and any other for your hardware (this is for my laptop’s Qualcomm Wifi chip):
apt install firmware-linux firmware-atheros -
Update the initramfs:
update-initramfs -u -k all
Then continue one with the rest of the steps from ZFSBootMenu.
I’d love to hear any suggestions folks have