{
  stdenv,
  pkgs,
}:

stdenv.mkDerivation {
  pname = pkgs.linux-firmware.name;
  version = pkgs.linux-firmware.version;
  src = pkgs.linux-firmware.src;

  buildInputs = with pkgs; [
    erofs-utils
    cryptsetup
  ];

  nativeBuildInputs = with pkgs; [
    python3
    rdfind
    which
    zstd
  ];

  noBrokenSymlinks = true;

  installTargets = [
    "install-zst"
    "dedup"
  ];

  # inspo: https://gitlab.archlinux.org/archlinux/packaging/packages/linux-firmware/-/blob/main/PKGBUILD?ref_type=heads#L93
  makeFlags = [
    "DESTDIR=$(out)"
    "ZSTD_CLEVEL=19"
    "FIRMWAREDIR=/usr/lib/firmware"
  ];

  postInstall = ./post-install.sh;
}