7 , gobject-introspection
16 , elfutils # for libdw
22 stdenv.mkDerivation rec {
29 # "devdoc" # disabled until `hotdoc` is packaged in nixpkgs, see:
30 # - https://github.com/NixOS/nixpkgs/pull/98767
31 # - https://github.com/NixOS/nixpkgs/issues/98769#issuecomment-702296551
36 url = "https://gstreamer.freedesktop.org/src/${pname}/${pname}-${version}.tar.xz";
37 sha256 = "0ijlmvr660m8zn09xlmnq1ajrziqsivp2hig5a9mabhcjx7ypkb6";
41 ./fix_pkgconfig_includedir.patch
58 # TODO add hotdoc here
63 ] ++ lib.optionals stdenv.isLinux [
67 ] ++ lib.optionals stdenv.isDarwin [
71 propagatedBuildInputs = [
76 "-Ddbghelp=disabled" # not needed as we already provide libunwind and libdw, and dbghelp is a fallback to those
77 "-Dexamples=disabled" # requires many dependencies and probably not useful for our users
78 "-Ddoc=disabled" # `hotdoc` not packaged in nixpkgs as of writing
79 ] ++ lib.optionals stdenv.isDarwin [
80 # darwin.libunwind doesn't have pkg-config definitions so meson doesn't detect it.
81 "-Dlibunwind=disabled"
87 gst/parse/get_flex_version.py \
88 gst/parse/gen_grammar.py.in \
89 gst/parse/gen_lex.py.in \
90 libs/gst/helpers/ptp_helper_post_install.sh \
91 scripts/extract-release-date-from-doap-file.py
95 for prog in "$dev/bin/"*; do
96 # We can't use --suffix here due to quoting so we craft the export command by hand
97 wrapProgram "$prog" --run 'export GST_PLUGIN_SYSTEM_PATH_1_0=$GST_PLUGIN_SYSTEM_PATH_1_0''${GST_PLUGIN_SYSTEM_PATH_1_0:+:}$(unset _tmp; for profile in $NIX_PROFILES; do _tmp="$profile/lib/gstreamer-1.0''${_tmp:+:}$_tmp"; done; printf '%s' "$_tmp")'
102 moveToOutput "share/bash-completion" "$dev"
105 setupHook = ./setup-hook.sh;
108 description = "Open source multimedia framework";
109 homepage = "https://gstreamer.freedesktop.org";
110 license = licenses.lgpl2Plus;
111 platforms = platforms.unix;
112 maintainers = with maintainers; [ ttuegel matthewbauer ];