Go to file
2023-09-30 18:42:46 +02:00
systems Added GLSL Lint VSCode Extension 2023-09-30 18:42:46 +02:00
.envrc restructured 2023-09-25 20:02:11 +02:00
.gitignore updated .gitignore 2023-09-25 20:15:18 +02:00
flake.lock removed zig and formatted 2023-09-30 16:16:07 +02:00
flake.nix removed zig and formatted 2023-09-30 16:16:07 +02:00
README.md updated README 2023-09-25 20:15:08 +02:00

Home Manager Config

Systems

Current available systems are:

  • pc
    My workstation PC running NixOS.
  • laptop
    My laptop, a Thinkpad X1 Carbon Gen 7, also running NixOS.

After

dconf

It is possible to observe live changes to dconf via dconf watch /. If you want to convert the current dconf to a nix expression enter the dev shell with nix develop and do

dconf dump / | dconf2nix > dconf.nix

Build with

home-manager switch --flake .#[configuration]

After first deployment it suffices to do hms for home-manager switch .... This relies on the flake being saved to $HOME/.config/home-manager.

Laptop

Specific instructions for the Lenovo Thinkpad Yoga C13 (Morphius)

Install Mr.Chromebox's Firmware Utility Script.

Download Fedora Workstation. Boot the Live USB in minimal graphics mode. Install like usual but before restarting do edit the machine's kernel boot params like so:

sudo nano /mnt/sysroot/etc/default/grub

Add iommu=pt to GRUB_CMDLINE_LINUX. Example:

GRUB_CMDLINE_LINUX="rd.luks.uuid=luks-6ee676a5-8f57-4400-bde6-2f5ff7c1260d nomodeset rhgb iommu=pt quiet"

Disable SELinux, as Nix does not work with it enabled

sudo nano /etc/selinux/config

and change SELINUX=enforcing to SELINUX=permissive

Resize the /tmp directory to allow for building large packages like nerdfonts

mount -o remount,size=25G /tmp
systemctl daemon-reload

Download the current home-manager config from https://git.krsnik.at/Kristian/home-manager.

cd home-manager
nix shell nixpkgs#home-manager --extra-experimental-features "nix-command flakes"
home-manager switch --flake .#laptop --extra-experimental-features "nix-command flakes"

Configure the following:

  • syncthing
  • gpg

In case ssh does not work work do

gpgconf --kill gpg-agent