2026-08-15 16:45:48 +02:00
2026-08-15 16:03:45 +02:00
2026-05-03 03:15:01 +02:00
2026-05-22 22:13:04 +02:00
2026-08-15 16:45:48 +02:00
2026-05-22 22:13:04 +02:00
2026-05-03 03:15:01 +02:00
2026-05-22 22:13:04 +02:00
2026-05-03 03:15:01 +02:00
2026-05-03 03:15:01 +02:00
2026-06-04 13:49:32 +02:00

dotfiles

This repository contains dotfiles for two separate systems. Based on the hostname the appropriate configuration is applied. (When no hostname matches, nix is not buildable and yolk uses a minimal shared configurations).

Hostnames

  • nixMain (Hyprland, desktop optimised)
  • nixLap (KDE, 2-in-1 Notebook optimised)

Deployment: assuming a valid hostname is used

  1. Clone the Repository
  2. Build the system: bash use_nix.sh --first-run --rebuild
  3. Setup user config: yolk sync -v

Notes:

Used as kde config finder, in ~./config and ~./local/share:

  • find . -type f -regex '.*\(k\|rc\|pulse\|session\|gtk\|autostart\|xbel\).*'

Disc encryption steps

# Cryptoroot, fs and mount
cryptsetup luksFormat /dev/nvme0n1p2
cryptsetup luksOpen /dev/nvme0n1p2 cryptroot
mkfs.btrfs -L root /dev/mapper/cryptroot
mount /dev/disk/by-label/root /mnt/

# Mount boot
# change type of boot to uefi via fdisk
mkdir /mnt/boot
mount /dev/nvme0n1p1 /mnt/boot/

# Cryptoswap and makeswap
cryptsetup luksFormat /dev/nvme0n1p3 --label cryptoswap
cryptsetup luksOpen /dev/disk/by-label/cryptoswap swap
sudo mkswap /dev/mapper/swap -L swap

# get hw-config
nixos-generate-config --root /mnt/
cp /mnt/etc/nixos/hardware-configuration.nix /
vim /hardware-configuration.nix 
# Append:
# swapDevices = [{
#   device = "/dev/disk/by-label/swap";
#   encrypted = {
#     enable = true;
#     label = "swap";
#     blkDev = "/dev/disk/by-label/cryptoswap";
#   };
# }];

# Deploy config
rm -r /mnt/etc/nixos/
cp -r dotfiles-master/dotfiles/root-conf/nixos/ /mnt/etc
cp /hardware-configuration.nix /mnt/etc/nixos/DESTINATION

nixos-install --root /mnt --flake /mnt/etc/nixos#DESTINATION
Description
cross-device configuration files
Readme 4.1 GiB
Languages
CSS 78.6%
JavaScript 8.5%
QML 7%
Shell 2.8%
Nix 0.9%
Other 2.2%