lol
0
fork

Configure Feed

Select the types of activity you want to include in your feed.

Merge gst_all_1: 1.24.10 → 1.26.0 (#390268)

authored by

Jan Tojnar and committed by
GitHub
420b54f7 1da8df70

+532 -388
+19 -20
pkgs/by-name/or/orc/package.nix
··· 5 5 meson, 6 6 ninja, 7 7 file, 8 - docbook_xsl, 8 + docbook-xsl-nons, 9 9 gtk-doc ? null, 10 10 buildDevDoc ? gtk-doc != null, 11 11 ··· 14 14 gst_all_1, 15 15 qt6, 16 16 vips, 17 - 18 17 }: 19 - let 20 - inherit (lib) optional optionals; 21 - in 22 - stdenv.mkDerivation rec { 18 + 19 + stdenv.mkDerivation (finalAttrs: { 23 20 pname = "orc"; 24 - version = "0.4.40"; 21 + version = "0.4.41"; 22 + 23 + outputs = [ 24 + "out" 25 + "dev" 26 + ] ++ lib.optional buildDevDoc "devdoc"; 27 + outputBin = "dev"; # compilation tools 25 28 26 29 src = fetchurl { 27 - url = "https://gstreamer.freedesktop.org/src/orc/${pname}-${version}.tar.xz"; 28 - hash = "sha256-P8K+5437fEH9lgUGH8aRONt98Afq4vZpofVui6zvdKs="; 30 + url = "https://gstreamer.freedesktop.org/src/orc/orc-${finalAttrs.version}.tar.xz"; 31 + hash = "sha256-yxv9T2VSic05vARkLVl76d5UJ2I/CGHB/BnAjZhGf6I="; 29 32 }; 30 33 31 34 postPatch = lib.optionalString (stdenv.hostPlatform.isDarwin && stdenv.hostPlatform.isx86_64) '' ··· 33 36 sed -i '/memcpy_speed/d' testsuite/meson.build 34 37 ''; 35 38 36 - outputs = [ 37 - "out" 38 - "dev" 39 - ] ++ optional buildDevDoc "devdoc"; 40 - outputBin = "dev"; # compilation tools 41 - 42 - mesonFlags = optionals (!buildDevDoc) [ "-Dgtk_doc=disabled" ]; 39 + mesonFlags = [ 40 + (lib.mesonEnable "gtk_doc" buildDevDoc) 41 + ]; 43 42 44 43 nativeBuildInputs = 45 44 [ 46 45 meson 47 46 ninja 48 47 ] 49 - ++ optionals buildDevDoc [ 48 + ++ lib.optionals buildDevDoc [ 50 49 gtk-doc 51 50 file 52 - docbook_xsl 51 + docbook-xsl-nons 53 52 ]; 54 53 55 54 # https://gitlab.freedesktop.org/gstreamer/orc/-/issues/41 ··· 70 69 meta = with lib; { 71 70 description = "Oil Runtime Compiler"; 72 71 homepage = "https://gstreamer.freedesktop.org/projects/orc.html"; 73 - changelog = "https://cgit.freedesktop.org/gstreamer/orc/plain/RELEASE?h=${version}"; 72 + changelog = "https://gitlab.freedesktop.org/gstreamer/orc/-/blob/${finalAttrs.version}/RELEASE"; 74 73 # The source code implementing the Marsenne Twister algorithm is licensed 75 74 # under the 3-clause BSD license. The rest is 2-clause BSD license. 76 75 license = with licenses; [ ··· 80 79 platforms = platforms.unix; 81 80 maintainers = [ ]; 82 81 }; 83 - } 82 + })
+29 -11
pkgs/development/libraries/gstreamer/bad/default.nix
··· 19 19 , opencvSupport ? false 20 20 , opencv4 21 21 , faad2 22 + , lcevcdec 22 23 , ldacbt 23 24 , liblc3 24 25 , libass ··· 105 106 , CoreVideo 106 107 , Foundation 107 108 , MediaToolbox 109 + , directoryListingUpdater 108 110 , enableGplPlugins ? true 109 111 , bluezSupport ? stdenv.hostPlatform.isLinux 110 112 # Causes every application using GstDeviceMonitor to send mDNS queries every 2 seconds ··· 114 116 , guiSupport ? true 115 117 }: 116 118 117 - stdenv.mkDerivation rec { 119 + stdenv.mkDerivation (finalAttrs: { 118 120 pname = "gst-plugins-bad"; 119 - version = "1.24.10"; 121 + version = "1.26.0"; 120 122 121 - outputs = [ "out" "dev" ]; 123 + outputs = [ 124 + "out" 125 + "dev" 126 + ]; 122 127 123 128 src = fetchurl { 124 - url = "https://gstreamer.freedesktop.org/src/${pname}/${pname}-${version}.tar.xz"; 125 - hash = "sha256-FwfjEDlQybrtNkqK8roEldaxE/zTbhBi3aX1grj4kE0="; 129 + url = "https://gstreamer.freedesktop.org/src/gst-plugins-bad/gst-plugins-bad-${finalAttrs.version}.tar.xz"; 130 + hash = "sha256-+Ch6hMX2Y2ilpQ2l+WmZSgLEfyAiD/4coxVBk+Za8hY="; 126 131 }; 127 132 128 133 patches = [ ··· 130 135 (replaceVars ./fix-paths.patch { 131 136 inherit (addDriverRunpath) driverLink; 132 137 }) 133 - # Add support for newer AJA SDK from next GStreamer release 138 + 139 + # Fix Requires in gstreamer-analytics-1.0.pc 140 + # https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8661 134 141 (fetchpatch { 135 - url = "https://github.com/GStreamer/gstreamer/commit/d68ac0db571f44cae42b57c876436b3b09df616b.patch"; 136 - hash = "sha256-ZXwlHzuPT8kUKt5+HkqFH5tzL9l5NusDXImabj4fBbI="; 137 - relative = "subprojects/${pname}"; 142 + url = "https://gitlab.freedesktop.org/gstreamer/gstreamer/-/commit/bc93bbf5c87ec994ea136bb40accc09dfa35ae98.patch"; 143 + stripLen = 2; 144 + hash = "sha256-QQDpHe363iPxTuthITRbLUKaAXS2F9s5zfCn/ps14WE="; 138 145 }) 139 146 ]; 140 147 ··· 172 179 curl.dev 173 180 fdk_aac 174 181 gsm 182 + lcevcdec 175 183 libaom 176 184 libdc1394 177 185 libde265 ··· 269 277 270 278 mesonFlags = [ 271 279 "-Dexamples=disabled" # requires many dependencies and probably not useful for our users 272 - "-Dglib-asserts=disabled" # asserts should be disabled on stable releases 280 + "-Dglib_debug=disabled" # cast checks should be disabled on stable releases 273 281 274 282 "-Damfcodec=disabled" # Windows-only 283 + "-Dandroidmedia=disabled" # Requires Android system. 275 284 "-Davtp=disabled" 285 + "-Dcuda-nvmm=disabled" 276 286 "-Ddirectshow=disabled" # Windows-only 277 287 "-Dqt6d3d11=disabled" # Windows-only 278 288 "-Ddts=disabled" # required `libdca` library not packaged in nixpkgs as of writing, and marked as "BIG FAT WARNING: libdca is still in early development" 279 289 "-Dzbar=${if enableZbar then "enabled" else "disabled"}" 280 290 "-Dfaac=${if faacSupport then "enabled" else "disabled"}" 281 291 "-Diqa=disabled" # required `dssim` library not packaging in nixpkgs as of writing, also this is AGPL so update license when adding support 292 + "-Dlcevcencoder=disabled" # not packaged in nixpkgs as of writing 282 293 "-Dmagicleap=disabled" # required `ml_audio` library not packaged in nixpkgs as of writing 283 294 "-Dmsdk=disabled" # not packaged in nixpkgs as of writing / no Windows support 284 295 # As of writing, with `libmpcdec` in `buildInputs` we get ··· 292 303 # is needed, and then patching upstream to find it (though it probably 293 304 # already works on Arch?). 294 305 "-Dmusepack=disabled" 306 + "-Dnvcomp=disabled" 307 + "-Dnvdswrapper=disabled" 295 308 "-Dopenni2=disabled" # not packaged in nixpkgs as of writing 296 309 "-Dopensles=disabled" # not packaged in nixpkgs as of writing 297 310 "-Dsvthevcenc=disabled" # required `SvtHevcEnc` library not packaged in nixpkgs as of writing 311 + "-Dsvtjpegxs=disabled" # not packaged in nixpkgs as of writing 298 312 "-Dteletext=disabled" # required `zvbi` library not packaged in nixpkgs as of writing 299 313 "-Dtinyalsa=disabled" # not packaged in nixpkgs as of writing 300 314 "-Dvoamrwbenc=disabled" # required `vo-amrwbenc` library not packaged in nixpkgs as of writing ··· 369 383 370 384 doCheck = false; # fails 20 out of 58 tests, expensive 371 385 386 + passthru = { 387 + updateScript = directoryListingUpdater { }; 388 + }; 389 + 372 390 meta = with lib; { 373 391 description = "GStreamer Bad Plugins"; 374 392 mainProgram = "gst-transcoder-1.0"; ··· 383 401 platforms = platforms.linux ++ platforms.darwin; 384 402 maintainers = with maintainers; [ matthewbauer ]; 385 403 }; 386 - } 404 + })
+12 -7
pkgs/development/libraries/gstreamer/base/default.nix
··· 44 44 # Checks meson.is_cross_build(), so even canExecute isn't enough. 45 45 , enableDocumentation ? stdenv.hostPlatform == stdenv.buildPlatform 46 46 , hotdoc 47 + , directoryListingUpdater 47 48 }: 48 49 49 50 stdenv.mkDerivation (finalAttrs: { 50 51 pname = "gst-plugins-base"; 51 - version = "1.24.10"; 52 + version = "1.26.0"; 52 53 53 - outputs = [ "out" "dev" ]; 54 + outputs = [ 55 + "out" 56 + "dev" 57 + ]; 54 58 55 59 separateDebugInfo = true; 56 60 57 - src = let 58 - inherit (finalAttrs) pname version; 59 - in fetchurl { 60 - url = "https://gstreamer.freedesktop.org/src/${pname}/${pname}-${version}.tar.xz"; 61 - hash = "sha256-69V7G+kkxuJPMn3VW6udj7quvl4dyPynhBgqsrEtI+s="; 61 + src = fetchurl { 62 + url = "https://gstreamer.freedesktop.org/src/gst-plugins-base/gst-plugins-base-${finalAttrs.version}.tar.xz"; 63 + hash = "sha256-4jGJ++0uxIZpA4LRBVwZ7q9arj6V4ldvxMiE2WqQ5p4="; 62 64 }; 63 65 64 66 strictDeps = true; ··· 117 119 ]; 118 120 119 121 mesonFlags = [ 122 + "-Dglib_debug=disabled" # cast checks should be disabled on stable releases 120 123 "-Dexamples=disabled" # requires many dependencies and probably not useful for our users 121 124 # See https://github.com/GStreamer/gst-plugins-base/blob/d64a4b7a69c3462851ff4dcfa97cc6f94cd64aef/meson_options.txt#L15 for a list of choices 122 125 "-Dgl_winsys=${lib.concatStringsSep "," (lib.optional enableX11 "x11" ++ lib.optional enableWayland "wayland" ++ lib.optional enableCocoa "cocoa")}" ··· 160 163 # vs what was built) and to make them easier to search for. 161 164 glEnabled = enableGl; 162 165 waylandEnabled = enableWayland; 166 + 167 + updateScript = directoryListingUpdater { }; 163 168 }; 164 169 165 170 passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
+48 -39
pkgs/development/libraries/gstreamer/core/default.nix
··· 1 - { stdenv 2 - , fetchurl 3 - , meson 4 - , ninja 5 - , pkg-config 6 - , gettext 7 - , bison 8 - , flex 9 - , python3 10 - , glib 11 - , makeWrapper 12 - , libcap 13 - , elfutils # for libdw 14 - , bash-completion 15 - , lib 16 - , Cocoa 17 - , CoreServices 18 - , xpc 19 - , testers 20 - , rustc 21 - , withRust ? 22 - lib.any (lib.meta.platformMatch stdenv.hostPlatform) rustc.targetPlatforms && 23 - lib.all (p: !lib.meta.platformMatch stdenv.hostPlatform p) rustc.badTargetPlatforms 24 - , gobject-introspection 25 - , buildPackages 26 - , withIntrospection ? lib.meta.availableOn stdenv.hostPlatform gobject-introspection && stdenv.hostPlatform.emulatorAvailable buildPackages 27 - , libunwind 28 - , withLibunwind ? 29 - lib.meta.availableOn stdenv.hostPlatform libunwind && 30 - lib.elem "libunwind" libunwind.meta.pkgConfigModules or [] 31 - # Checks meson.is_cross_build(), so even canExecute isn't enough. 32 - , enableDocumentation ? stdenv.hostPlatform == stdenv.buildPlatform, hotdoc 1 + { 2 + stdenv, 3 + fetchurl, 4 + meson, 5 + ninja, 6 + pkg-config, 7 + gettext, 8 + bison, 9 + flex, 10 + python3, 11 + glib, 12 + makeWrapper, 13 + libcap, 14 + elfutils, # for libdw 15 + bash-completion, 16 + lib, 17 + Cocoa, 18 + CoreServices, 19 + xpc, 20 + testers, 21 + rustc, 22 + withRust ? 23 + lib.any (lib.meta.platformMatch stdenv.hostPlatform) rustc.targetPlatforms 24 + && lib.all (p: !lib.meta.platformMatch stdenv.hostPlatform p) rustc.badTargetPlatforms, 25 + gobject-introspection, 26 + buildPackages, 27 + withIntrospection ? 28 + lib.meta.availableOn stdenv.hostPlatform gobject-introspection 29 + && stdenv.hostPlatform.emulatorAvailable buildPackages, 30 + libunwind, 31 + withLibunwind ? 32 + lib.meta.availableOn stdenv.hostPlatform libunwind 33 + && lib.elem "libunwind" libunwind.meta.pkgConfigModules or [ ], 34 + # Checks meson.is_cross_build(), so even canExecute isn't enough. 35 + enableDocumentation ? stdenv.hostPlatform == stdenv.buildPlatform, 36 + hotdoc, 37 + directoryListingUpdater, 33 38 }: 34 39 35 40 let ··· 37 42 in 38 43 stdenv.mkDerivation (finalAttrs: { 39 44 pname = "gstreamer"; 40 - version = "1.24.10"; 45 + version = "1.26.0"; 41 46 42 47 outputs = [ 43 48 "bin" ··· 47 52 48 53 separateDebugInfo = true; 49 54 50 - src = let 51 - inherit (finalAttrs) pname version; 52 - in fetchurl { 53 - url = "https://gstreamer.freedesktop.org/src/${pname}/${pname}-${version}.tar.xz"; 54 - hash = "sha256-n8RbGjMuj4EvCelcKBzXWWn20WgtBiqBXbDnvAR1GP0="; 55 + src = fetchurl { 56 + url = "https://gstreamer.freedesktop.org/src/gstreamer/gstreamer-${finalAttrs.version}.tar.xz"; 57 + hash = "sha256-Gy7kAoAQwlt3bv+nw5bH4+GGG2C5QX5Bb0kUq83/J58="; 55 58 }; 56 59 57 60 depsBuildBuild = [ ··· 99 102 ]; 100 103 101 104 mesonFlags = [ 105 + "-Dglib_debug=disabled" # cast checks should be disabled on stable releases 102 106 "-Ddbghelp=disabled" # not needed as we already provide libunwind and libdw, and dbghelp is a fallback to those 103 107 "-Dexamples=disabled" # requires many dependencies and probably not useful for our users 104 108 (lib.mesonEnable "ptp-helper" withRust) ··· 131 135 132 136 setupHook = ./setup-hook.sh; 133 137 134 - passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage; 138 + passthru = { 139 + tests = { 140 + pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage; 141 + }; 142 + updateScript = directoryListingUpdater { }; 143 + }; 135 144 136 145 meta = with lib; { 137 146 description = "Open source multimedia framework";
+82 -23
pkgs/development/libraries/gstreamer/devtools/default.nix
··· 1 - { lib, stdenv 2 - , fetchurl 3 - , cairo 4 - , meson 5 - , ninja 6 - , pkg-config 7 - , gstreamer 8 - , gst-plugins-base 9 - , gst-plugins-bad 10 - , gst-rtsp-server 11 - , python3 12 - , gobject-introspection 13 - , json-glib 14 - # Checks meson.is_cross_build(), so even canExecute isn't enough. 15 - , enableDocumentation ? stdenv.hostPlatform == stdenv.buildPlatform, hotdoc 1 + { 2 + lib, 3 + stdenv, 4 + fetchurl, 5 + fetchpatch, 6 + cairo, 7 + meson, 8 + ninja, 9 + pkg-config, 10 + gstreamer, 11 + gst-plugins-base, 12 + gst-plugins-bad, 13 + gst-rtsp-server, 14 + python3, 15 + gobject-introspection, 16 + rustPlatform, 17 + rustc, 18 + cargo, 19 + json-glib, 20 + # Checks meson.is_cross_build(), so even canExecute isn't enough. 21 + enableDocumentation ? stdenv.hostPlatform == stdenv.buildPlatform, 22 + hotdoc, 23 + directoryListingUpdater, 24 + _experimental-update-script-combinators, 25 + common-updater-scripts, 16 26 }: 17 27 18 - stdenv.mkDerivation rec { 28 + stdenv.mkDerivation (finalAttrs: { 19 29 pname = "gst-devtools"; 20 - version = "1.24.10"; 30 + version = "1.26.0"; 31 + 32 + outputs = [ 33 + "out" 34 + "dev" 35 + ]; 21 36 22 37 src = fetchurl { 23 - url = "https://gstreamer.freedesktop.org/src/${pname}/${pname}-${version}.tar.xz"; 24 - hash = "sha256-KYNTcUiwqNUrrSo/TJ3MqAj9WqEvzO4lrMSkJ38HgOw="; 38 + url = "https://gstreamer.freedesktop.org/src/gst-devtools/gst-devtools-${finalAttrs.version}.tar.xz"; 39 + hash = "sha256-7/M9fcKSuwdKJ4jqiHtigzmP/e+vpJ+30I7+ZlimVkg="; 40 + }; 41 + 42 + cargoDeps = rustPlatform.fetchCargoVendor { 43 + inherit (finalAttrs) src cargoRoot; 44 + name = "gst-devtools-${finalAttrs.version}"; 45 + hash = "sha256-p26jeKRDSPTgQzf4ckhLPSFa8RKsgkjUEXJG8IlPPZo="; 25 46 }; 26 47 27 - outputs = [ 28 - "out" 29 - "dev" 48 + patches = [ 49 + # Fix Requires in gstreamer-validate-1.0.pc 50 + # https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8661 51 + (fetchpatch { 52 + url = "https://gitlab.freedesktop.org/gstreamer/gstreamer/-/commit/13c0f44dd546cd058c39f32101a361b3a7746f73.patch"; 53 + stripLen = 2; 54 + hash = "sha256-CpBFTmdn+VO6ZeNe6NZR6ELvakZqQdaF3o3G5TSDuUU="; 55 + }) 30 56 ]; 31 57 32 58 depsBuildBuild = [ ··· 38 64 ninja 39 65 pkg-config 40 66 gobject-introspection 67 + rustPlatform.cargoSetupHook 68 + rustc 69 + cargo 41 70 ] ++ lib.optionals enableDocumentation [ 42 71 hotdoc 43 72 ]; ··· 59 88 (lib.mesonEnable "doc" enableDocumentation) 60 89 ]; 61 90 91 + cargoRoot = "dots-viewer"; 92 + 93 + passthru = { 94 + updateScript = 95 + let 96 + updateSource = directoryListingUpdater { }; 97 + 98 + updateLockfile = { 99 + command = [ 100 + "sh" 101 + "-c" 102 + '' 103 + PATH=${ 104 + lib.makeBinPath [ 105 + common-updater-scripts 106 + ] 107 + } 108 + update-source-version gst_all_1.gst-devtools --ignore-same-version --source-key=cargoDeps.vendorStaging > /dev/null 109 + '' 110 + ]; 111 + # Experimental feature: do not copy! 112 + supportedFeatures = [ "silent" ]; 113 + }; 114 + in 115 + _experimental-update-script-combinators.sequence [ 116 + updateSource 117 + updateLockfile 118 + ]; 119 + }; 120 + 62 121 meta = with lib; { 63 122 description = "Integration testing infrastructure for the GStreamer framework"; 64 123 homepage = "https://gstreamer.freedesktop.org"; ··· 66 125 platforms = platforms.unix; 67 126 maintainers = [ ]; 68 127 }; 69 - } 128 + })
+29 -21
pkgs/development/libraries/gstreamer/ges/default.nix
··· 1 - { lib, stdenv 2 - , fetchurl 3 - , meson 4 - , ninja 5 - , pkg-config 6 - , python3 7 - , bash-completion 8 - , gst-plugins-base 9 - , gst-plugins-bad 10 - , gst-devtools 11 - , libxml2 12 - , flex 13 - , gettext 14 - , gobject-introspection 15 - # Checks meson.is_cross_build(), so even canExecute isn't enough. 16 - , enableDocumentation ? stdenv.hostPlatform == stdenv.buildPlatform, hotdoc 1 + { 2 + lib, 3 + stdenv, 4 + fetchurl, 5 + meson, 6 + ninja, 7 + pkg-config, 8 + python3, 9 + bash-completion, 10 + gst-plugins-base, 11 + gst-plugins-bad, 12 + gst-devtools, 13 + libxml2, 14 + flex, 15 + gettext, 16 + gobject-introspection, 17 + # Checks meson.is_cross_build(), so even canExecute isn't enough. 18 + enableDocumentation ? stdenv.hostPlatform == stdenv.buildPlatform, 19 + hotdoc, 20 + directoryListingUpdater, 17 21 }: 18 22 19 - stdenv.mkDerivation rec { 23 + stdenv.mkDerivation (finalAttrs: { 20 24 pname = "gst-editing-services"; 21 - version = "1.24.10"; 25 + version = "1.26.0"; 22 26 23 27 outputs = [ 24 28 "out" ··· 26 30 ]; 27 31 28 32 src = fetchurl { 29 - url = "https://gstreamer.freedesktop.org/src/${pname}/${pname}-${version}.tar.xz"; 30 - hash = "sha256-bwCxG05eNMKjLWTfUh3Kd1GdYm/MXjhjwCGL0SNn4XQ="; 33 + url = "https://gstreamer.freedesktop.org/src/gst-editing-services/gst-editing-services-${finalAttrs.version}.tar.xz"; 34 + hash = "sha256-r1sn9ck2MCc3IQDKwLrxkFUoBynfHMWN1ORU72mOsf8="; 31 35 }; 32 36 33 37 nativeBuildInputs = [ ··· 63 67 scripts/extract-release-date-from-doap-file.py 64 68 ''; 65 69 70 + passthru = { 71 + updateScript = directoryListingUpdater { }; 72 + }; 73 + 66 74 meta = with lib; { 67 75 description = "Library for creation of audio/video non-linear editors"; 68 76 mainProgram = "ges-launch-1.0"; ··· 71 79 platforms = platforms.unix; 72 80 maintainers = [ ]; 73 81 }; 74 - } 82 + })
+21 -14
pkgs/development/libraries/gstreamer/good/default.nix
··· 50 50 , openssl 51 51 # Checks meson.is_cross_build(), so even canExecute isn't enough. 52 52 , enableDocumentation ? stdenv.hostPlatform == stdenv.buildPlatform, hotdoc 53 + , directoryListingUpdater 53 54 }: 54 55 55 56 # MMAL is not supported on aarch64, see: 56 57 # https://github.com/raspberrypi/userland/issues/688 57 58 assert raspiCameraSupport -> (stdenv.hostPlatform.isLinux && stdenv.hostPlatform.isAarch32); 58 59 59 - stdenv.mkDerivation rec { 60 + stdenv.mkDerivation (finalAttrs: { 60 61 pname = "gst-plugins-good"; 61 - version = "1.24.10"; 62 + version = "1.26.0"; 62 63 63 - outputs = [ "out" "dev" ]; 64 + outputs = [ 65 + "out" 66 + "dev" 67 + ]; 64 68 65 69 src = fetchurl { 66 - url = "https://gstreamer.freedesktop.org/src/${pname}/${pname}-${version}.tar.xz"; 67 - hash = "sha256-/OdI+mbXqO4fsmFInlnQHj+nh2I9bVw1BoQW/nzQrLM="; 70 + url = "https://gstreamer.freedesktop.org/src/gst-plugins-good/gst-plugins-good-${finalAttrs.version}.tar.xz"; 71 + hash = "sha256-nhjxOe9prQhnwt+7j+HRc2123xGqyD9g6NOtseLq8Ds="; 68 72 }; 69 73 70 74 patches = [ 71 - # Reenable dynamic loading of libsoup on Darwin and use a different approach to do it. 72 - ./souploader-darwin.diff 73 75 # dlopen libsoup_3 with an absolute path 74 76 (replaceVars ./souploader.diff { 75 77 nixLibSoup3Path = "${lib.getLib libsoup_3}/lib"; ··· 164 166 165 167 mesonFlags = [ 166 168 "-Dexamples=disabled" # requires many dependencies and probably not useful for our users 167 - "-Dglib-asserts=disabled" # asserts should be disabled on stable releases 169 + "-Dglib_debug=disabled" # cast checks should be disabled on stable releases 168 170 (lib.mesonEnable "doc" enableDocumentation) 169 171 ] ++ lib.optionals (!qt5Support) [ 170 172 "-Dqt5=disabled" ··· 194 196 scripts/extract-release-date-from-doap-file.py 195 197 ''; 196 198 197 - NIX_LDFLAGS = [ 198 - # linking error on Darwin 199 - # https://github.com/NixOS/nixpkgs/pull/70690#issuecomment-553694896 200 - "-lncurses" 201 - ]; 199 + env = { 200 + NIX_LDFLAGS = 201 + # linking error on Darwin 202 + # https://github.com/NixOS/nixpkgs/pull/70690#issuecomment-553694896 203 + "-lncurses"; 204 + }; 202 205 203 206 # fails 1 tests with "Unexpected critical/warning: g_object_set_is_valid_property: object class 'GstRtpStorage' has no property named ''" 204 207 doCheck = false; 205 208 206 209 # must be explicitly set since 5590e365 207 210 dontWrapQtApps = true; 211 + 212 + passthru = { 213 + updateScript = directoryListingUpdater { }; 214 + }; 208 215 209 216 meta = with lib; { 210 217 description = "GStreamer Good Plugins"; ··· 218 225 platforms = platforms.linux ++ platforms.darwin; 219 226 maintainers = with maintainers; [ matthewbauer ]; 220 227 }; 221 - } 228 + })
-128
pkgs/development/libraries/gstreamer/good/souploader-darwin.diff
··· 1 - diff --git a/ext/adaptivedemux2/meson.build b/ext/adaptivedemux2/meson.build 2 - index 711b38a2a9..67a789f664 100644 3 - --- a/ext/adaptivedemux2/meson.build 4 - +++ b/ext/adaptivedemux2/meson.build 5 - @@ -82,7 +82,7 @@ soup_link_args = [] 6 - soup_link_deps = [] 7 - 8 - default_library = get_option('default_library') 9 - -if host_system != 'linux' or default_library in ['static', 'both'] 10 - +if default_library in ['static', 'both'] 11 - if soup_ver_opt in ['auto', '3'] 12 - libsoup3_dep = dependency('libsoup-3.0', allow_fallback: true, 13 - required: soup_ver_opt == '3' and soup_opt.enabled()) 14 - @@ -120,7 +120,7 @@ adaptive_deps = [gmodule_dep, gst_dep, gsttag_dep, gstnet_dep, gstbase_dep, gstp 15 - adaptive_args = [gst_plugins_good_args, soup_loader_args, hls_cargs, 16 - '-DGST_ISOFF_API=G_GNUC_INTERNAL'] 17 - 18 - -if host_system != 'linux' 19 - +if false 20 - adaptivedemux2 = library('gstadaptivedemux2', 21 - c_args: [adaptive_args, soup_link_args], 22 - dependencies: [adaptive_deps, soup_link_deps], 23 - diff --git a/ext/soup/gstsouploader.c b/ext/soup/gstsouploader.c 24 - index 9192e4dac5..8082b2614d 100644 25 - --- a/ext/soup/gstsouploader.c 26 - +++ b/ext/soup/gstsouploader.c 27 - @@ -34,12 +34,18 @@ GST_DEBUG_CATEGORY (gst_soup_debug); 28 - 29 - #ifndef LINK_SOUP 30 - 31 - -#if defined(__APPLE__) || defined(G_OS_WIN32) 32 - -#error "dlopen of libsoup is only supported on Linux" 33 - +#if defined(G_OS_WIN32) 34 - +#error "dlopen of libsoup is only supported on Darwin and Linux" 35 - #endif 36 - 37 - +#if defined(__APPLE__) 38 - +#define LIBSOUP_3_SONAME "libsoup-3.0.0.dylib" 39 - +#define LIBSOUP_2_SONAME "libsoup-2.4.1.dylib" 40 - +#define LIBSOUP_COMMON_SYMBOL "soup_get_major_version" 41 - +#else 42 - #define LIBSOUP_3_SONAME "libsoup-3.0.so.0" 43 - #define LIBSOUP_2_SONAME "libsoup-2.4.so.1" 44 - +#endif 45 - 46 - #define LOAD_SYMBOL(name) G_STMT_START { \ 47 - if (!g_module_symbol (module, G_STRINGIFY (name), (gpointer *) &G_PASTE (vtable->_, name))) { \ 48 - @@ -156,7 +162,46 @@ gst_soup_load_library (void) 49 - GST_DEBUG_CATEGORY_INIT (gst_soup_debug, "soup", 0, "soup"); 50 - #endif 51 - 52 - -#ifdef HAVE_RTLD_NOLOAD 53 - +#if defined(__APPLE__) 54 - + g_autofree gchar* libsoup_path = NULL; 55 - + { 56 - + /* In order to avoid causing conflicts we detect if libsoup 2 or 3 is loaded already. 57 - + * Darwin has to probe by checking for symbols because `dlopen` called with a dylib 58 - + * basename will try to locate it via the process’s rpath stack (and not find it). */ 59 - + 60 - + gpointer func = NULL; 61 - + Dl_info info = { 0 }; 62 - + 63 - + GModule* module = g_module_open (NULL, 0); 64 - + if (g_module_symbol (module, LIBSOUP_COMMON_SYMBOL, &func) 65 - + && dladdr (func, &info) && info.dli_sname) { 66 - + libsoup_path = g_strndup(info.dli_fname, PATH_MAX - 1); 67 - + g_autofree gchar* image_name = g_path_get_basename (libsoup_path); 68 - + 69 - + /* Make sure `libsoup_path` points to a dylib that actually exists and 70 - + * contains the libsoup symbol that was queried. */ 71 - + gpointer handle = dlopen (libsoup_path, RTLD_NOW | RTLD_NOLOAD); 72 - + gboolean has_symbol = dlsym (handle, LIBSOUP_COMMON_SYMBOL) != NULL; 73 - + if (handle && has_symbol && g_str_equal (image_name, LIBSOUP_3_SONAME)) { 74 - + libsoup_sonames[0] = libsoup_path; 75 - + GST_DEBUG ("LibSoup 3 found"); 76 - + } else if (handle && has_symbol && g_str_equal (image_name, LIBSOUP_2_SONAME)) { 77 - + libsoup_sonames[0] = libsoup_path; 78 - + GST_DEBUG ("LibSoup 2 found"); 79 - + } else { 80 - + g_clear_pointer (&libsoup_path, g_free); 81 - + } 82 - + g_clear_pointer (&handle, dlclose); 83 - + } 84 - + g_module_close (module); 85 - + 86 - + if (!libsoup_sonames[0]) { 87 - + GST_DEBUG ("Trying all libsoups"); 88 - + libsoup_sonames[0] = LIBSOUP_3_SONAME; 89 - + libsoup_sonames[1] = LIBSOUP_2_SONAME; 90 - + } 91 - + } 92 - +#elif defined(HAVE_RTLD_NOLOAD) 93 - { 94 - gpointer handle = NULL; 95 - 96 - diff --git a/ext/soup/meson.build b/ext/soup/meson.build 97 - index aaa01dbcf6..83b7cf3fbf 100644 98 - --- a/ext/soup/meson.build 99 - +++ b/ext/soup/meson.build 100 - @@ -20,8 +20,8 @@ soup_link_deps = [] 101 - libsoup2_dep = disabler() 102 - libsoup3_dep = disabler() 103 - default_library = get_option('default_library') 104 - -soup_lookup_dep = get_option('soup-lookup-dep') and host_system == 'linux' 105 - -if host_system != 'linux' or default_library in ['static', 'both'] or soup_lookup_dep 106 - +soup_lookup_dep = get_option('soup-lookup-dep') 107 - +if default_library in ['static', 'both'] or soup_lookup_dep 108 - if soup_ver_opt in ['auto', '3'] 109 - libsoup3_dep = dependency('libsoup-3.0', allow_fallback: true, 110 - required: soup_ver_opt == '3' and soup_opt.enabled()) 111 - @@ -33,7 +33,7 @@ if host_system != 'linux' or default_library in ['static', 'both'] or soup_looku 112 - endif 113 - endif 114 - 115 - -if host_system != 'linux' or default_library in ['static', 'both'] 116 - +if default_library in ['static', 'both'] 117 - if libsoup3_dep.found() 118 - soup_link_deps += libsoup3_dep 119 - soup_link_args += '-DLINK_SOUP=3' 120 - @@ -60,7 +60,7 @@ soup_library_kwargs = { 121 - soup_library_deps = [gst_dep, gstbase_dep, gsttag_dep, gmodule_dep, gio_dep, libdl_dep] 122 - soup_library_c_args = gst_plugins_good_args 123 - 124 - -if host_system != 'linux' 125 - +if false 126 - gstsouphttpsrc = library('gstsoup', 127 - c_args : soup_library_c_args + soup_link_args, 128 - dependencies : soup_library_deps + soup_link_deps,
+2 -11
pkgs/development/libraries/gstreamer/good/souploader.diff
··· 1 1 diff --git a/ext/soup/gstsouploader.c b/ext/soup/gstsouploader.c 2 - index 85a033668e..8082b2614d 100644 2 + index 41f3aa3783..451e15b40d 100644 3 3 --- a/ext/soup/gstsouploader.c 4 4 +++ b/ext/soup/gstsouploader.c 5 - @@ -197,7 +197,7 @@ gst_soup_load_library (void) 6 - 7 - if (!libsoup_sonames[0]) { 8 - GST_DEBUG ("Trying all libsoups"); 9 - - libsoup_sonames[0] = LIBSOUP_3_SONAME; 10 - + libsoup_sonames[0] = "@nixLibSoup3Path@/" LIBSOUP_3_SONAME; 11 - libsoup_sonames[1] = LIBSOUP_2_SONAME; 12 - } 13 - } 14 - @@ -216,7 +216,7 @@ gst_soup_load_library (void) 5 + @@ -178,7 +178,7 @@ gst_soup_load_library (void) 15 6 GST_DEBUG ("LibSoup 2 found"); 16 7 } else { 17 8 GST_DEBUG ("Trying all libsoups");
+30 -20
pkgs/development/libraries/gstreamer/libav/default.nix
··· 1 - { stdenv 2 - , lib 3 - , fetchurl 4 - , meson 5 - , ninja 6 - , pkg-config 7 - , python3 8 - , gstreamer 9 - , gst-plugins-base 10 - , gettext 11 - , ffmpeg-headless 12 - # Checks meson.is_cross_build(), so even canExecute isn't enough. 13 - , enableDocumentation ? stdenv.hostPlatform == stdenv.buildPlatform, hotdoc 1 + { 2 + stdenv, 3 + lib, 4 + fetchurl, 5 + meson, 6 + ninja, 7 + pkg-config, 8 + python3, 9 + gstreamer, 10 + gst-plugins-base, 11 + gettext, 12 + ffmpeg-headless, 13 + # Checks meson.is_cross_build(), so even canExecute isn't enough. 14 + enableDocumentation ? stdenv.hostPlatform == stdenv.buildPlatform, 15 + hotdoc, 16 + directoryListingUpdater, 14 17 }: 15 18 16 - stdenv.mkDerivation rec { 19 + stdenv.mkDerivation (finalAttrs: { 17 20 pname = "gst-libav"; 18 - version = "1.24.10"; 21 + version = "1.26.0"; 22 + 23 + outputs = [ 24 + "out" 25 + "dev" 26 + ]; 19 27 20 28 src = fetchurl { 21 - url = "https://gstreamer.freedesktop.org/src/${pname}/${pname}-${version}.tar.xz"; 22 - hash = "sha256-TPLi2CBOVLqK+VGai5t/+m6VGnCHr6Df6DwSXUm7tfs="; 29 + url = "https://gstreamer.freedesktop.org/src/gst-libav/gst-libav-${finalAttrs.version}.tar.xz"; 30 + hash = "sha256-cHqLaH/1/dzuWwJBXi7JtxtKxE0Leuw7R3Nkzuy/Hs8="; 23 31 }; 24 - 25 - outputs = [ "out" "dev" ]; 26 32 27 33 nativeBuildInputs = [ 28 34 meson ··· 49 55 scripts/extract-release-date-from-doap-file.py 50 56 ''; 51 57 58 + passthru = { 59 + updateScript = directoryListingUpdater { }; 60 + }; 61 + 52 62 meta = with lib; { 53 63 description = "FFmpeg plugin for GStreamer"; 54 64 homepage = "https://gstreamer.freedesktop.org"; ··· 56 66 platforms = platforms.unix; 57 67 maintainers = [ ]; 58 68 }; 59 - } 69 + })
+26 -9
pkgs/development/libraries/gstreamer/rs/default.nix
··· 157 157 158 158 stdenv.mkDerivation (finalAttrs: { 159 159 pname = "gst-plugins-rs"; 160 - version = "0.13.3"; 160 + version = "0.13.5"; 161 161 162 162 outputs = [ 163 163 "out" ··· 169 169 owner = "gstreamer"; 170 170 repo = "gst-plugins-rs"; 171 171 rev = finalAttrs.version; 172 - hash = "sha256-G6JdZXBNiZfbu6EBTOsJ4Id+BvPhIToZmHHi7zuapnE="; 172 + hash = "sha256-5jR/YLCBeFnB0+O2OOCLBEKwikiQ5e+SbOeQCijnd8Q="; 173 173 # TODO: temporary workaround for case-insensitivity problems with color-name crate - https://github.com/annymosse/color-name/pull/2 174 174 postFetch = '' 175 175 sedSearch="$(cat <<\EOF | sed -ze 's/\n/\\n/g' ··· 191 191 ''; 192 192 }; 193 193 194 - cargoDeps = 195 - with finalAttrs; 196 - rustPlatform.fetchCargoVendor { 197 - inherit src; 198 - name = "${pname}-${version}"; 199 - hash = "sha256-NFB9kNmCF3SnOgpSd7SSihma+Ooqwxtrym9Il4A+uQY="; 200 - }; 194 + cargoDeps = rustPlatform.fetchCargoVendor { 195 + inherit (finalAttrs) src patches; 196 + name = "gst-plugins-rs-${finalAttrs.version}"; 197 + hash = "sha256-ErQ5Um0e7bWhzDErEN9vmSsKTpTAm4MA5PZ7lworVKU="; 198 + }; 199 + 200 + patches = [ 201 + # Disable uriplaylistbin test that requires network access. 202 + # https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/issues/676 203 + # TODO: Remove in 0.14, it has been replaced by a different fix: 204 + # https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/2140 205 + ./ignore-network-tests.patch 206 + 207 + # Fix reqwest tests failing due to broken TLS lookup in native-tls dependency. 208 + # https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/issues/675 209 + # Cannot be upstreamed due to MSRV bump in native-tls: 210 + # https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/2142 211 + ./reqwest-init-tls.patch 212 + ]; 201 213 202 214 strictDeps = true; 203 215 ··· 256 268 ''; 257 269 258 270 mesonCheckFlags = [ "--verbose" ]; 271 + 272 + preCheck = '' 273 + # Fontconfig error: No writable cache directories 274 + export XDG_CACHE_HOME=$(mktemp -d) 275 + ''; 259 276 260 277 doInstallCheck = 261 278 (lib.elem "webp" selectedPlugins) && !stdenv.hostPlatform.isStatic && stdenv.hostPlatform.isElf;
+12
pkgs/development/libraries/gstreamer/rs/ignore-network-tests.patch
··· 1 + diff --git a/utils/uriplaylistbin/tests/uriplaylistbin.rs b/utils/uriplaylistbin/tests/uriplaylistbin.rs 2 + index dfd1c9ce..8ed24949 100644 3 + --- a/utils/uriplaylistbin/tests/uriplaylistbin.rs 4 + +++ b/utils/uriplaylistbin/tests/uriplaylistbin.rs 5 + @@ -534,6 +534,7 @@ fn infinite_to_finite() { 6 + assert_eq!(current_uri_index, 0); 7 + } 8 + 9 + +#[ignore = "Requires network access"] 10 + #[test] 11 + /// cache HTTP playlist items 12 + fn cache() {
+85
pkgs/development/libraries/gstreamer/rs/reqwest-init-tls.patch
··· 1 + The reqwest tests fail due to reqwest Client initialization. 2 + Bisected the issue to https://github.com/sfackler/rust-native-tls/compare/v0.2.12...v0.2.13 bump 3 + in https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/commit/6d5d9753f4a28be350dc657c08a9ecc7f13b922a 4 + the upcoming version of native-tls fixes that so let’s bump to that. 5 + https://github.com/sfackler/rust-native-tls/compare/v0.2.13...v0.2.14 6 + 7 + diff --git a/Cargo.lock b/Cargo.lock 8 + index 244256cd..24f0c607 100644 9 + --- a/Cargo.lock 10 + +++ b/Cargo.lock 11 + @@ -1700,7 +1700,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" 12 + checksum = "33d852cb9b869c2a9b3df2f71a3074817f01e1844f839a144f5fcef059a4eb5d" 13 + dependencies = [ 14 + "libc", 15 + - "windows-sys 0.59.0", 16 + + "windows-sys 0.52.0", 17 + ] 18 + 19 + [[package]] 20 + @@ -2149,7 +2149,7 @@ dependencies = [ 21 + "gobject-sys", 22 + "libc", 23 + "system-deps 7.0.3", 24 + - "windows-sys 0.59.0", 25 + + "windows-sys 0.52.0", 26 + ] 27 + 28 + [[package]] 29 + @@ -4407,7 +4407,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" 30 + checksum = "fc2f4eb4bc735547cfed7c0a4922cbd04a4655978c09b54f1f7b228750664c34" 31 + dependencies = [ 32 + "cfg-if", 33 + - "windows-targets 0.52.6", 34 + + "windows-targets 0.48.5", 35 + ] 36 + 37 + [[package]] 38 + @@ -4791,9 +4791,9 @@ dependencies = [ 39 + 40 + [[package]] 41 + name = "native-tls" 42 + -version = "0.2.13" 43 + +version = "0.2.14" 44 + source = "registry+https://github.com/rust-lang/crates.io-index" 45 + -checksum = "0dab59f8e050d5df8e4dd87d9206fb6f65a483e20ac9fda365ade4fab353196c" 46 + +checksum = "87de3442987e9dbec73158d5c715e7ad9072fda936bb03d19d7fa10e00520f0e" 47 + dependencies = [ 48 + "libc", 49 + "log", 50 + @@ -5572,7 +5572,7 @@ dependencies = [ 51 + "once_cell", 52 + "socket2", 53 + "tracing", 54 + - "windows-sys 0.59.0", 55 + + "windows-sys 0.52.0", 56 + ] 57 + 58 + [[package]] 59 + @@ -6017,7 +6017,7 @@ dependencies = [ 60 + "errno", 61 + "libc", 62 + "linux-raw-sys", 63 + - "windows-sys 0.59.0", 64 + + "windows-sys 0.52.0", 65 + ] 66 + 67 + [[package]] 68 + @@ -6702,7 +6702,7 @@ dependencies = [ 69 + "getrandom 0.3.1", 70 + "once_cell", 71 + "rustix", 72 + - "windows-sys 0.59.0", 73 + + "windows-sys 0.52.0", 74 + ] 75 + 76 + [[package]] 77 + @@ -7523,7 +7523,7 @@ version = "0.1.9" 78 + source = "registry+https://github.com/rust-lang/crates.io-index" 79 + checksum = "cf221c93e13a30d793f7645a0e7762c55d169dbb0a49671918a2319d289b10bb" 80 + dependencies = [ 81 + - "windows-sys 0.59.0", 82 + + "windows-sys 0.48.0", 83 + ] 84 + 85 + [[package]]
+29 -21
pkgs/development/libraries/gstreamer/rtsp-server/default.nix
··· 1 - { stdenv 2 - , lib 3 - , fetchurl 4 - , meson 5 - , ninja 6 - , pkg-config 7 - , python3 8 - , gettext 9 - , gobject-introspection 10 - , gst-plugins-base 11 - , gst-plugins-bad 12 - # Checks meson.is_cross_build(), so even canExecute isn't enough. 13 - , enableDocumentation ? stdenv.hostPlatform == stdenv.buildPlatform, hotdoc 1 + { 2 + stdenv, 3 + lib, 4 + fetchurl, 5 + meson, 6 + ninja, 7 + pkg-config, 8 + python3, 9 + gettext, 10 + gobject-introspection, 11 + gst-plugins-base, 12 + gst-plugins-bad, 13 + # Checks meson.is_cross_build(), so even canExecute isn't enough. 14 + enableDocumentation ? stdenv.hostPlatform == stdenv.buildPlatform, 15 + hotdoc, 16 + directoryListingUpdater, 14 17 }: 15 18 16 - stdenv.mkDerivation rec { 19 + stdenv.mkDerivation (finalAttrs: { 17 20 pname = "gst-rtsp-server"; 18 - version = "1.24.10"; 19 - 20 - src = fetchurl { 21 - url = "https://gstreamer.freedesktop.org/src/${pname}/${pname}-${version}.tar.xz"; 22 - hash = "sha256-2yHf3Xvy5xhWTVVzeK2lNYtBHv4qPonp8Ph6dFN+Ktw="; 23 - }; 21 + version = "1.26.0"; 24 22 25 23 outputs = [ 26 24 "out" 27 25 "dev" 28 26 ]; 29 27 28 + src = fetchurl { 29 + url = "https://gstreamer.freedesktop.org/src/gst-rtsp-server/gst-rtsp-server-${finalAttrs.version}.tar.xz"; 30 + hash = "sha256-6YPAOUluP3XjlpZVTOdNtBIOJGXeF6ocw3FgVo6bQLw="; 31 + }; 32 + 30 33 nativeBuildInputs = [ 31 34 meson 32 35 ninja ··· 44 47 ]; 45 48 46 49 mesonFlags = [ 50 + "-Dglib_debug=disabled" # cast checks should be disabled on stable releases 47 51 "-Dexamples=disabled" # requires many dependencies and probably not useful for our users 48 52 (lib.mesonEnable "doc" enableDocumentation) 49 53 ]; ··· 53 57 scripts/extract-release-date-from-doap-file.py 54 58 ''; 55 59 60 + passthru = { 61 + updateScript = directoryListingUpdater { }; 62 + }; 63 + 56 64 meta = with lib; { 57 65 description = "GStreamer RTSP server"; 58 66 homepage = "https://gstreamer.freedesktop.org"; ··· 63 71 platforms = platforms.unix; 64 72 maintainers = with maintainers; [ bkchr ]; 65 73 }; 66 - } 74 + })
+40 -29
pkgs/development/libraries/gstreamer/ugly/default.nix
··· 1 - { stdenv 2 - , fetchurl 3 - , meson 4 - , ninja 5 - , pkg-config 6 - , python3 7 - , gst-plugins-base 8 - , orc 9 - , gettext 10 - , a52dec 11 - , libcdio 12 - , libdvdread 13 - , libmad 14 - , libmpeg2 15 - , x264 16 - , libintl 17 - , lib 18 - , IOKit 19 - , CoreFoundation 20 - , DiskArbitration 21 - , enableGplPlugins ? true 22 - # Checks meson.is_cross_build(), so even canExecute isn't enough. 23 - , enableDocumentation ? stdenv.hostPlatform == stdenv.buildPlatform, hotdoc 1 + { 2 + stdenv, 3 + fetchurl, 4 + meson, 5 + ninja, 6 + pkg-config, 7 + python3, 8 + gst-plugins-base, 9 + orc, 10 + gettext, 11 + a52dec, 12 + libcdio, 13 + libdvdread, 14 + libmad, 15 + libmpeg2, 16 + x264, 17 + libintl, 18 + lib, 19 + IOKit, 20 + CoreFoundation, 21 + DiskArbitration, 22 + enableGplPlugins ? true, 23 + # Checks meson.is_cross_build(), so even canExecute isn't enough. 24 + enableDocumentation ? stdenv.hostPlatform == stdenv.buildPlatform, 25 + hotdoc, 26 + directoryListingUpdater, 24 27 }: 25 28 26 - stdenv.mkDerivation rec { 29 + stdenv.mkDerivation (finalAttrs: { 27 30 pname = "gst-plugins-ugly"; 28 - version = "1.24.10"; 31 + version = "1.26.0"; 29 32 30 - outputs = [ "out" "dev" ]; 33 + outputs = [ 34 + "out" 35 + "dev" 36 + ]; 31 37 32 38 src = fetchurl { 33 - url = "https://gstreamer.freedesktop.org/src/${pname}/${pname}-${version}.tar.xz"; 34 - hash = "sha256-nfb9haclYkHvuyX4SzN1deOzRSZvXas4STceRpR3nxg="; 39 + url = "https://gstreamer.freedesktop.org/src/gst-plugins-ugly/gst-plugins-ugly-${finalAttrs.version}.tar.xz"; 40 + hash = "sha256-qGtRyEVKgTEghIyANCHzJ9jAeqvK5GHgWXzEk5jA/N4="; 35 41 }; 36 42 37 43 nativeBuildInputs = [ ··· 62 68 ]; 63 69 64 70 mesonFlags = [ 71 + "-Dglib_debug=disabled" # cast checks should be disabled on stable releases 65 72 "-Dsidplay=disabled" # sidplay / sidplay/player.h isn't packaged in nixpkgs as of writing 66 73 (lib.mesonEnable "doc" enableDocumentation) 67 74 ] ++ (if enableGplPlugins then [ ··· 80 87 scripts/extract-release-date-from-doap-file.py 81 88 ''; 82 89 90 + passthru = { 91 + updateScript = directoryListingUpdater { }; 92 + }; 93 + 83 94 meta = with lib; { 84 95 description = "Gstreamer Ugly Plugins"; 85 96 homepage = "https://gstreamer.freedesktop.org"; ··· 93 104 platforms = platforms.unix; 94 105 maintainers = with maintainers; [ matthewbauer ]; 95 106 }; 96 - } 107 + })
+39 -31
pkgs/development/libraries/gstreamer/vaapi/default.nix
··· 1 - { lib, stdenv 2 - , fetchurl 3 - , meson 4 - , ninja 5 - , pkg-config 6 - , gst-plugins-base 7 - , bzip2 8 - , libva 9 - , wayland 10 - , wayland-protocols 11 - , wayland-scanner 12 - , libdrm 13 - , udev 14 - , xorg 15 - , libGLU 16 - , libGL 17 - , gstreamer 18 - , gst-plugins-bad 19 - , nasm 20 - , libvpx 21 - , python3 22 - # Checks meson.is_cross_build(), so even canExecute isn't enough. 23 - , enableDocumentation ? stdenv.hostPlatform == stdenv.buildPlatform, hotdoc 1 + { 2 + lib, 3 + stdenv, 4 + fetchurl, 5 + meson, 6 + ninja, 7 + pkg-config, 8 + gst-plugins-base, 9 + bzip2, 10 + libva, 11 + wayland, 12 + wayland-protocols, 13 + wayland-scanner, 14 + libdrm, 15 + udev, 16 + xorg, 17 + libGLU, 18 + libGL, 19 + gstreamer, 20 + gst-plugins-bad, 21 + nasm, 22 + libvpx, 23 + python3, 24 + # Checks meson.is_cross_build(), so even canExecute isn't enough. 25 + enableDocumentation ? stdenv.hostPlatform == stdenv.buildPlatform, 26 + hotdoc, 27 + directoryListingUpdater, 24 28 }: 25 29 26 - stdenv.mkDerivation rec { 30 + stdenv.mkDerivation (finalAttrs: { 27 31 pname = "gstreamer-vaapi"; 28 - version = "1.24.10"; 29 - 30 - src = fetchurl { 31 - url = "https://gstreamer.freedesktop.org/src/${pname}/${pname}-${version}.tar.xz"; 32 - hash = "sha256-IVk9veXGvNz+mRld7748P02gHLhfjsEKrpQ4h9Odikw="; 33 - }; 32 + version = "1.26.0"; 34 33 35 34 outputs = [ 36 35 "out" 37 36 "dev" 38 37 ]; 38 + 39 + src = fetchurl { 40 + url = "https://gstreamer.freedesktop.org/src/gstreamer-vaapi/gstreamer-vaapi-${finalAttrs.version}.tar.xz"; 41 + hash = "sha256-Vzkx1FX1qW9j23yNNdUTIrjSh4FujGp32Ez7ufoTUfE="; 42 + }; 39 43 40 44 nativeBuildInputs = [ 41 45 meson ··· 82 86 scripts/extract-release-date-from-doap-file.py 83 87 ''; 84 88 89 + passthru = { 90 + updateScript = directoryListingUpdater { }; 91 + }; 92 + 85 93 meta = with lib; { 86 94 description = "Set of VAAPI GStreamer Plug-ins"; 87 95 homepage = "https://gstreamer.freedesktop.org"; ··· 89 97 platforms = platforms.linux; 90 98 maintainers = [ ]; 91 99 }; 92 - } 100 + })
+29 -4
pkgs/development/python-modules/gst-python/default.nix
··· 2 2 lib, 3 3 buildPythonPackage, 4 4 fetchurl, 5 + fetchpatch, 5 6 meson, 6 7 ninja, 7 8 ··· 11 12 gobject-introspection, 12 13 gst_all_1, 13 14 isPy3k, 15 + directoryListingUpdater, 14 16 }: 15 17 16 18 buildPythonPackage rec { 17 19 pname = "gst-python"; 18 - version = "1.24.10"; 20 + version = "1.26.0"; 19 21 20 22 format = "other"; 21 23 ··· 25 27 ]; 26 28 27 29 src = fetchurl { 28 - url = "https://gstreamer.freedesktop.org/src/gst-python/${pname}-${version}.tar.xz"; 29 - hash = "sha256-E1vPi28UaLwx5WYECf6O04EJ8B3sRHQ1FKovprOGMwk"; 30 + url = "https://gstreamer.freedesktop.org/src/gst-python/gst-python-${version}.tar.xz"; 31 + hash = "sha256-5QRqBdd6uxVnGtAc0ZCNF9YuWgb114Qb5DQq3io/uNs="; 30 32 }; 31 33 34 + patches = [ 35 + # Fix segfault with PyGObject>=3.52.0 36 + # https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8653 37 + (fetchpatch { 38 + url = "https://gitlab.freedesktop.org/gstreamer/gstreamer/-/commit/69bba61e548c7a63bc18137e63e41489a7de9d36.patch"; 39 + stripLen = 2; 40 + hash = "sha256-BfWPc8dsB09KiEm9bNT8e+jH76jiDefQlEhhLJoq7tI="; 41 + }) 42 + ]; 43 + 32 44 # Python 2.x is not supported. 33 45 disabled = !isPy3k; 34 46 ··· 42 54 gst_all_1.gst-plugins-base 43 55 ]; 44 56 57 + buildInputs = [ 58 + # for gstreamer-analytics-1.0 59 + gst_all_1.gst-plugins-bad 60 + ]; 61 + 45 62 propagatedBuildInputs = [ 46 63 gst_all_1.gst-plugins-base 47 64 pygobject3 48 65 ]; 49 66 67 + checkInputs = [ 68 + gst_all_1.gst-rtsp-server 69 + ]; 70 + 50 71 mesonFlags = [ 51 72 "-Dpygi-overrides-dir=${placeholder "out"}/${python.sitePackages}/gi/overrides" 52 73 # Exec format error during configure 53 - "-Dpython=${python.pythonOnBuildForHost.interpreter}" 74 + "-Dpython-exe=${python.pythonOnBuildForHost.interpreter}" 54 75 ]; 55 76 56 77 # TODO: Meson setup hook does not like buildPythonPackage 57 78 # https://github.com/NixOS/nixpkgs/issues/47390 58 79 installCheckPhase = "meson test --print-errorlogs"; 80 + 81 + passthru = { 82 + updateScript = directoryListingUpdater { }; 83 + }; 59 84 60 85 meta = with lib; { 61 86 homepage = "https://gstreamer.freedesktop.org";