NixOS / nixos-hardware

A collection of NixOS modules covering hardware quirks.
Creative Commons Zero v1.0 Universal
2.04k stars 631 forks source link

Flake for Raspberry Pi 4 `sdImage` fails to build for 21.11 #360

Open epigramengineer opened 2 years ago

epigramengineer commented 2 years ago

The following trivial example fails to build for 21.11, but succeeds for 21.05.

Minimal flake.nix:

{
  description = "System Configuration";

  inputs = {
    nixos.url = "github:nixos/nixpkgs/nixos-21.11";
    nixos-hardware.url = "github:nixos/nixos-hardware";
  };

  outputs = { self, ... }@inputs: with inputs; {
    nixosConfigurations.pi = nixos.lib.nixosSystem {
      system = "aarch64-linux";
      modules = [
        ({modulesPath, ...}: {
          imports = ["${modulesPath}/installer/sd-card/sd-image-aarch64.nix"];
        })
        nixos-hardware.nixosModules.raspberry-pi-4
      ];
    };
  };
}

flake.lock:

{
  "nodes": {
    "nixos": {
      "locked": {
        "lastModified": 1641783572,
        "narHash": "sha256-gkrIuUtbRKGEb+SrBVl6hEG4PY9rg+zhDyX0n3mRFMY=",
        "owner": "nixos",
        "repo": "nixpkgs",
        "rev": "79c7b6a353e22f0eec342dead0bc69fb7ce846db",
        "type": "github"
      },
      "original": {
        "owner": "nixos",
        "ref": "nixos-21.11",
        "repo": "nixpkgs",
        "type": "github"
      }
    },
    "nixos-hardware": {
      "locked": {
        "lastModified": 1641826906,
        "narHash": "sha256-bYlz8xXXiEP/LSBzSsUesJ0fv7kj2yhbOIsbpioUHU4=",
        "owner": "nixos",
        "repo": "nixos-hardware",
        "rev": "c9ede9e7312d63e6f2c92bdb27138369f989cdfd",
        "type": "github"
      },
      "original": {
        "owner": "nixos",
        "repo": "nixos-hardware",
        "type": "github"
      }
    },
    "root": {
      "inputs": {
        "nixos": "nixos",
        "nixos-hardware": "nixos-hardware"
      }
    }
  },
  "root": "root",
  "version": 7
}

Failure:

❯ nix build .#nixosConfigurations.pi.config.system.build.sdImage
error: builder for '/nix/store/4k0nv1vf2krwa4da7k68rk7mlimarh3c-linux-5.10.52-1.20210805-modules-shrunk.drv' failed with exit code 1;
       last 10 log lines:
       >   copying dependency: /nix/store/shal981270qq7aywqivlkb9q1hyjggh1-linux-5.10.52-1.20210805-modules/lib/modules/5.10.52/kernel/drivers/message/fusion/mptscsih
.ko.xz
       >   copying dependency: /nix/store/shal981270qq7aywqivlkb9q1hyjggh1-linux-5.10.52-1.20210805-modules/lib/modules/5.10.52/kernel/drivers/message/fusion/mptspi.k
o.xz
       > root module: vmxnet3
       >   copying dependency: /nix/store/shal981270qq7aywqivlkb9q1hyjggh1-linux-5.10.52-1.20210805-modules/lib/modules/5.10.52/kernel/drivers/net/vmxnet3/vmxnet3.ko.
xz
       > root module: vsock
       >   copying dependency: /nix/store/shal981270qq7aywqivlkb9q1hyjggh1-linux-5.10.52-1.20210805-modules/lib/modules/5.10.52/kernel/net/vmw_vsock/vsock.ko.xz
       > root module: simplefb
       >   builtin dependency: simplefb
       > root module: sun4i-drm
       > modprobe: FATAL: Module sun4i-drm not found in directory /nix/store/shal981270qq7aywqivlkb9q1hyjggh1-linux-5.10.52-1.20210805-modules/lib/modules/5.10.52
       For full logs, run 'nix log /nix/store/4k0nv1vf2krwa4da7k68rk7mlimarh3c-linux-5.10.52-1.20210805-modules-shrunk.drv'.
error: 1 dependencies of derivation '/nix/store/54319k3mhw75xsksq95d6hw5avrs3k31-stage-1-init.sh.drv' failed to build
error: 1 dependencies of derivation '/nix/store/309z1fh9d0ccsiqvxpar9xnafv5gp8q0-initrd-linux-5.10.52-1.20210805.drv' failed to build
error: 1 dependencies of derivation '/nix/store/isxzkv21s74rb48n1qckkgrnyqxrncic-nixos-system-nixos-21.11.20220110.79c7b6a.drv' failed to build
error: 1 dependencies of derivation '/nix/store/3r1nfvrrb337lb1646hg4yaaf72gis29-ext4-fs.img.zst.drv' failed to build
error: 1 dependencies of derivation '/nix/store/m442s6vq27n0snnx04r8xjhzsncg6fiv-nixos-sd-image-21.11.20220110.79c7b6a-aarch64-linux.img.drv' failed to build
samueldr commented 2 years ago

See https://github.com/NixOS/nixpkgs/issues/154163. It should be the same underlying issue, with the same workaround.