I just upgraded my NixOS machine after switching to nixos-unstable-small because I think unstable will take some time to update as getting 24.11 out has the highest priority.

Anyhow, two of my packages stopped me from applying a new configuration, as some packages have been changed when reorganizing into pkgs/by-name. I fixed it and wanted to share as this will hit others running unstable with these packages as soon as hydra catches up.

nerdfonts (now nerd-fonts)

Package was renamed, which it will state on evaluation; individual fonts are now part of the nerd-fonts attribute. I had Source Code Pro in there, there was some kind of mapping, which looked kind of like in https://wiki.nixos.org/wiki/Fonts#Installing_specific_fonts_from_nerdfonts – the new way is now to just use nerd-fonts.sauce-code-pro directly, you can probably do something like ++ with nerd-fonts; [ sauce-code-pro other-fonts ] to add multiple nerd-fonts to your fonts list, but I haven’t tested this.

RetroArch

Until now, cores were specified as in https://wiki.nixos.org/wiki/RetroArch, however override doesn’t seem to work anymore. There’s now the withCores attribute / function that expects a function that returns a list. The easiest way I found to just specify a fixed list of cores was (retroarch.withCores (_: with libretro; [ snes9x mupen64plus fbneo flycast ])). Maybe other options are easier / cleaner.

Word of warning on compiling nixos-unstable-small

There are currently a lot of packages to be built if you change into that channel (I’m using flakes, but you get my point). Due to the default value of auto for nix.settings.max-jobs, this meant nix tried to build 24 derivations at the same time. This is fine if these are just downloaded from hydra, but if you try to build 24 big derivations at the same time, each trying to use 24 threads because nix.settings.cores is also 0 by default, which means all threads, build processes quickly ate all of my 32GB of RAM so that the OOM killer had to intervene, however often too late with my system dying. I recommend to set nix.settings.max-jobs to something more reasonable before attempting this (I used 1).

  • Corngood@lemmy.ml
    link
    fedilink
    English
    arrow-up
    4
    ·
    edit-2
    1 month ago

    I’m surprised that they renamed a package without adding an alias. Unless it was already an alias that had been around for a while, or maybe you have aliases disabled?

    • mvirts@lemmy.world
      link
      fedilink
      English
      arrow-up
      2
      ·
      30 days ago

      Aliasing seems to already be out of hand, maybe it’s for the best we feel the pain.

      • flashgnash@lemm.ee
        link
        fedilink
        English
        arrow-up
        1
        ·
        30 days ago

        If I understand correctly there’s not much pain, just adding one character

        Better than the alias causing an issue or getting g removed later down the line

        • Laser@feddit.orgOP
          link
          fedilink
          English
          arrow-up
          3
          ·
          edit-2
          29 days ago

          It’s not only adding one character, which is also probably why this doesn’t have a proper alias. Before, it was a single package providing multiple fonts; now, it’s an attribute set providing multiple packages, providing one font each, with the name changed from before (in my case “SourceCodePro” became “sauce-code-pro”)