sioodmy/dotfiles

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

  1. Partition your disk cfdisk /dev/sda
  • 1G EFI boot partition
  • 16G swap
  • Linux filesystem
  1. 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
  2. Create subvolumes and mount /boot
  3. 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
  4. 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
  1. Install using nixos-install
  2. 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?