Something went wrong. Try again.
Nix Packages collection & NixOS github.com/NixOS/nixpkgs
Something went wrong. Try again.
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108{ lib, stdenv, buildPythonPackage, fetchurl, fetchpatch, meson, ninja, # TODO: We can get rid of this once `buildPythonPackage` accepts `finalAttrs`. # See: https://github.com/NixOS/nixpkgs/pull/271387 gst-python,
pkg-config, python, pygobject3, gobject-introspection, gst_all_1, isPy3k, directoryListingUpdater,}:
buildPythonPackage rec { pname = "gst-python"; version = "1.28.6";
pyproject = false;
outputs = [ "out" "dev" ];
src = fetchurl { url = "https://gstreamer.freedesktop.org/src/gst-python/gst-python-${version}.tar.xz"; hash = "sha256-NNWEQMU7VJWhI9Ckt7ervG6XkqWyGVTbhqB5Gxb24BI="; };
patches = [ # https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/9918#note_3530752 ./fix-test-plugin-imports.patch ];
# Python 2.x is not supported. disabled = !isPy3k;
depsBuildBuild = [ pkg-config ];
nativeBuildInputs = [ meson ninja pkg-config gobject-introspection gst_all_1.gst-plugins-base ];
buildInputs = [ # for gstreamer-analytics-1.0 gst_all_1.gst-plugins-bad ];
propagatedBuildInputs = [ gst_all_1.gst-plugins-base pygobject3 ];
checkInputs = [ gst_all_1.gst-rtsp-server ];
mesonFlags = [ "-Dpygi-overrides-dir=${placeholder "out"}/${python.sitePackages}/gi/overrides" # Exec format error during configure "-Dpython-exe=${python.pythonOnBuildForHost.interpreter}" # This is needed to prevent the project from looking for `gst-rtsp-server` # from `checkInputs`. # # TODO: This should probably be moved at least partially into the Meson hook. # # NB: We need to use `doInstallCheck` here because `buildPythonPackage` # renames `doCheck` to `doInstallCheck`. (lib.mesonEnable "tests" gst-python.doInstallCheck) ];
# `buildPythonPackage` uses `installCheckPhase` and leaves `checkPhase` # empty. It renames `doCheck` from its arguments, but not `checkPhase`. # See: https://github.com/NixOS/nixpkgs/issues/47390 installCheckPhase = '' runHook preCheck mesonCheckPhase runHook postCheck '';
preCheck = lib.optionalString stdenv.hostPlatform.isDarwin '' export DYLD_LIBRARY_PATH="${gst_all_1.gst-plugins-base}/lib" '';
passthru = { updateScript = directoryListingUpdater { odd-unstable = true; }; };
meta = { homepage = "https://gstreamer.freedesktop.org"; description = "Python bindings for GStreamer"; license = lib.licenses.lgpl2Plus; maintainers = with lib.maintainers; [ tmarkus ]; };}