20 , systemd # for libudev
23 stdenv.mkDerivation rec {
28 url = "https://git.libcamera.org/libcamera/libcamera.git";
30 hash = "sha256-rd1YIEosg4+H/FJBYCoxdQlV9F0evU5fckHJrSdVPOE=";
33 outputs = [ "out" "dev" "doc" ];
37 # https://git.libcamera.org/libcamera/libcamera.git/commit/?id=6cb92b523bd60bd7718df134cc5b1eff51cf42e5
38 name = "libcamera-sphinx7.0-compat.patch";
39 url = "https://git.libcamera.org/libcamera/libcamera.git/patch/?id=6cb92b523bd60bd7718df134cc5b1eff51cf42e5";
40 hash = "sha256-gs0EiT3gWlmRjDim+o2C0VmnoWqEouP5pNTD4XbNSdE=";
54 # gstreamer integration
56 gst_all_1.gst-plugins-base
79 python3Packages.jinja2
80 python3Packages.pyyaml
82 python3Packages.sphinx
91 "-Dlc-compliance=disabled" # tries unconditionally to download gtest when enabled
92 # Avoid blanket -Werror to evade build failures on less
97 # Fixes error on a deprecated declaration
98 env.NIX_CFLAGS_COMPILE = "-Wno-error=deprecated-declarations";
100 # Silence fontconfig warnings about missing config
101 FONTCONFIG_FILE = makeFontsConf { fontDirectories = []; };
103 # libcamera signs the IPA module libraries at install time, but they are then
104 # modified by stripping and RPATH fixup. Therefore, we need to generate the
105 # signatures again ourselves.
107 # If this is not done, libcamera will still try to load them, but it will
108 # isolate them in separate processes, which can cause crashes for IPA modules
109 # that are not designed for this (notably ipa_rpi.so).
111 ../src/ipa/ipa-sign-install.sh src/ipa-priv-key.pem $out/lib/libcamera/ipa_*.so
115 description = "An open source camera stack and framework for Linux, Android, and ChromeOS";
116 homepage = "https://libcamera.org";
117 license = licenses.lgpl2Plus;
118 maintainers = with maintainers; [ citadelcore ];