Issue with nerdfont after the last update

I am on Nixos-unstable and after the last update (sudo nix flake update) my config does not build. I get the following error:

building the system configuration...
error:
       … while calling the 'head' builtin
         at /nix/store/ab78nf3ad8ly49zfyd3igw3f2n5q7fz4-source/lib/attrsets.nix:1574:11:
         1573|         || pred here (elemAt values 1) (head values) then
         1574|           head values
             |           ^
         1575|         else

       … while evaluating the attribute 'value'
         at /nix/store/ab78nf3ad8ly49zfyd3igw3f2n5q7fz4-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/ab78nf3ad8ly49zfyd3igw3f2n5q7fz4-source/nixos/modules/system/activation/top-level.nix':

       … while evaluating the option `system.systemBuilderArgs':

       … while evaluating definitions from `/nix/store/ab78nf3ad8ly49zfyd3igw3f2n5q7fz4-source/nixos/modules/system/activation/activatable-system.nix':

       … while evaluating the option `system.activationScripts.etc.text':

       … while evaluating definitions from `/nix/store/ab78nf3ad8ly49zfyd3igw3f2n5q7fz4-source/nixos/modules/system/etc/etc-activation.nix':

       … while evaluating definitions from `/nix/store/ab78nf3ad8ly49zfyd3igw3f2n5q7fz4-source/nixos/modules/system/etc/etc.nix':

       … while evaluating the option `environment.etc.dbus-1.source':

       … while evaluating the option `programs.steam.extraPackages':

       … while evaluating definitions from `/nix/store/ab78nf3ad8ly49zfyd3igw3f2n5q7fz4-source/nixos/modules/programs/steam.nix':

       … while evaluating the option `programs.steam.fontPackages':

       … while evaluating the option `fonts.packages':

       … while evaluating definitions from `/nix/store/r4zr23cc5flbd0l588vk2vipj2kc7z49-source/configuration.nix':

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

       error: nerdfonts has been separated into individual font packages under the namespace nerd-fonts

I found this newly created GitHub issue without a clear answer on how to fix it (for me at least):

Here is my font config :

  fonts.packages = with pkgs; [nerdfonts];
  fonts.fontDir.enable = true;
  console = {
    enable = true;   
    packages = with pkgs; [nerdfonts];
  };

Does anyone know how to fix this?

1 Like

Nerdfonts are now available under the nerd-fonts namespace, which means you should not use the nerdfonts package anymore.

You can find the font packages by using: NixOS Search

How to get all the Nerd Fonts sub packages at once? I don’t see the entire package as one?

You want 5 gigabytes of fonts? You only need one font for nerd icon coverage, the rest would be essentially duplicates.

Also, do not run nix flake update as root in a folder not owned by root, file permissions can break.

I dont think you should include all, you only want to use one at a time, dont you?
Of course you could write a nix expression that includes all of the font packages, but i would not recommend it.

Thanks for the tips and yes, you are right I really don’t want to download 5 gb of fonts <3