final: prev: { libpisp = final.stdenv.mkDerivation { name = "libpisp"; version = "1.0.5"; src = final.fetchFromGitHub { owner = "raspberrypi"; repo = "libpisp"; rev = "v1.0.5"; hash = "sha256-CHd44CH5dBcZuK+5fZtONZ8HE/lwGKwK5U0BYUK8gG4="; }; nativeBuildInputs = with final; [ pkg-config meson ninja ]; buildInputs = with final; [ nlohmann_json boost ]; BOOST_INCLUDEDIR = "${prev.lib.getDev final.boost}/include"; BOOST_LIBRARYDIR = "${prev.lib.getLib final.boost}/lib"; }; libcamera = prev.libcamera.overrideAttrs (old: { src = final.fetchFromGitHub { owner = "raspberrypi"; repo = "libcamera"; rev = "eb00c13d7c9f937732305d47af5b8ccf895e700f"; hash = "sha256-p0/inkHPRUkxSIsTmj7VI7sIaX7OXdqjMGZ31W7cnt4="; }; postPatch = '' patchShebangs utils/ src/py/ ''; patches = [ ./0001-Remove-relative-config-lookups.patch ./0001-Ignore-IPA-signing.patch ]; buildInputs = old.buildInputs ++ (with final; [ libpisp libglibutil ]); mesonFlags = old.mesonFlags ++ [ "--buildtype=release" "-Dpipelines=rpi/vc4,rpi/pisp" "-Dipas=rpi/vc4,rpi/pisp" "-Dgstreamer=enabled" "-Dtest=false" "-Dcam=enabled" "-Dpycamera=disabled" ]; }); camera-streamer = prev.callPackage ../pkgs/camera-streamer/package.nix { libcamera = final.libcamera; }; }