Skip to content

Disabling home-manager

Hi! When I first discovered this repo I was very excited to be able to carry some Garuda defaults to my new NixOS installation, but I'm having a lot of trouble trying to disable the home-manager stuff that gets added (I don't want anything to touch my dotfiles but me).

I thought I found a way how with systemd.services.home-manager-cdfa.enable = false;, but packages from internal/modules/base/home-manager/dotfiles.nix are still being installed. I found out about this while trying to figure out why kinfocenter-5.27.11 was installed despite me being on plasma 6. I'm still not sure why, but in an attempt at debugging I did

  nixpkgs.overlays = [
    (final: prev: {
      libsForQt5 = throw "hit";
    })
  ];

which pointed me to home-manager through the following log

> Building NixOS configuration
error:
       … while calling the 'head' builtin
         at /nix/store/m68ikm8045fj7ys7qvgr608z9l70hh1k-source/lib/attrsets.nix:1575:11:
         1574|         || pred here (elemAt values 1) (head values) then
         1575|           head values
             |           ^
         1576|         else

       … while evaluating the attribute 'value'
         at /nix/store/m68ikm8045fj7ys7qvgr608z9l70hh1k-source/lib/modules.nix:816:9:
          815|     in warnDeprecation opt //
          816|       { value = addErrorContext "while evaluating the option `${showOption loc}':" value;
             |         ^
          817|         inherit (res.defsFinal') highestPrio;

       … while evaluating the option `system.build.toplevel':

       … while evaluating definitions from `/nix/store/m68ikm8045fj7ys7qvgr608z9l70hh1k-source/nixos/modules/system/activation/top-level.nix':

       … while evaluating the option `warnings':

       … while evaluating definitions from `/nix/store/m68ikm8045fj7ys7qvgr608z9l70hh1k-source/nixos/modules/system/boot/systemd.nix':

       … while evaluating the option `systemd.services.home-manager-cdfa.serviceConfig':

       … while evaluating definitions from `<unknown-file>':

       … while evaluating the option `home-manager.users.cdfa.home.activation.installPackages.data':

       … while evaluating definitions from `/nix/store/pij5lycb56qqa5r0ks43az07f2xfqr2n-source/modules/home-environment.nix':

       … while evaluating the default value of option `services.kdeconnect.package`

       (stack trace truncated; use '--show-trace' to show the full, detailed trace)

       error: hit

I hoped setting garuda.excludes.home-manager-modules.excludeAll = true; would fix it, but this option does not exist because gCreateExclusionOption is never called for home-manager-modules.

I would love to have an option like garuda.home-manager.enable to disable all the home-manager stuff.

For reference, my garuda module config:

  garuda = {
    performance-tweaks = {
      enable = true;
    };
    garuda-nix-manager = true;
  };