default hyprland config after flake installation
Closed this issue · 7 comments
I have installed this flake with nixos-rebuild switch .#anthe
after I edited the config a bit to match my system. After installation of the flake, and rebooting, I was greeted with the default hyprland config. It seems like the dotfiles haven't applied. Do I have to do something with home-manager to symlink the dots or what?
you have to manually create /persist/home/ directory and give yourself permissions to access it, since home-manager can't do it on its own
you can also disable home impermanence
That’s probably because I did not install nixos with impermanence and btrfs. Could you provide the whole installation steps via nixos-minimal in accordance to the hardware-configuration.nix of the “anthe” host, it would extremely appreciated and supportive if you did so. I am talking about the specific installation steps you did to achieve that hardware-configuration.nix like the way you setup the partitions, enabled impermanence, etc
- Partition your disk
cfdisk /dev/sda
- 1G EFI boot partition
- 16G swap
- Linux filesystem
- Format partitions
mkfs.fat -F32 /dev/sda1 -n NIXBOOT
mkswap /dev/sda2 -L swap
cryptsetup luksFormat /dev/sda3 --label NIXCRYPT
cryptsetup luksOpen /dev/sda3 enc
mkfs.btrfs /dev/mapper/enc -L NIXROOT
- Create subvolumes and mount /boot
mount -t btrfs /dev/mapper/enc /mnt
btrfs subvolume create /mnt/@nix
btrfs subvolume create /mnt/@persist
unmount /mnt
mount -o subvol=@nix,compress=zstd,noatime /dev/mapper/enc /mnt/nix
mount -o subvol=@persist,compress=zstd,noatime /dev/mapper/enc /mnt/persist
mount /dev/disk/by-label/NIXBOOT /mnt/boot
there is no need to mount root, just /nix, /boot and /persist- Verify if everything is mounted correctly
You should have:
- boot partition labeled NIXBOOT mounted on /mnt/boot
- swap labeled swap
- luks partition labeled NIXCRYPT and after unlocking you should get btrfs partition called NIXROOT
- btrfs subvolumes mounted on /mnt/nix and /mnt/persist
- Install using
nixos-install
- Post install
# set user and root passwords
mkdir -p /mnt/persist/secrets
cd /mnt/persist/secrets
mkpasswd > username
mkpasswd > root
# setup home directory, because home-manager cant do it on its own due to impermanence
mkdir -p /mnt/home/username
chown username /mnt/home/username
In case there are still some issues, please submit logs from home-manager
journalctl -u home-manager-username
home impermanence is super buggy, so you can try disabling it and just add /home to persist list in core/system/impermanence.nix
Thanks alot for the installation guide, it surely will help. I’ll report when I have installed the flake from scratch. To disable home impermanence I will just have to delete the impermanence.nix in the home folder right?
https://github.com/sioodmy/dotfiles/blob/main/home/default.nix#L10
also remove the module
and add /home
directory to persist
https://github.com/sioodmy/dotfiles/blob/main/system/core/impermanence.nix#L16-L22