diff options
Diffstat (limited to 'pkgs/applications/video')
29 files changed, 167 insertions, 88 deletions
diff --git a/pkgs/applications/video/anilibria-winmaclinux/default.nix b/pkgs/applications/video/anilibria-winmaclinux/default.nix index 32872e98bebf..d35947be850b 100644 --- a/pkgs/applications/video/anilibria-winmaclinux/default.nix +++ b/pkgs/applications/video/anilibria-winmaclinux/default.nix @@ -16,13 +16,13 @@ mkDerivation rec { pname = "anilibria-winmaclinux"; - version = "1.2.14"; + version = "1.2.15"; src = fetchFromGitHub { owner = "anilibria"; repo = "anilibria-winmaclinux"; - rev = "d941607f078c72fca104ee1e7916cc0ddcc0acf5"; - sha256 = "sha256-G4KlYAjOT1UV29vcX7Q8dMTj0BX0rsJcLtK2MQag5nU="; + rev = version; + sha256 = "sha256-pfM3o4H3XJ4ZE0FXVR1k8pc7lr7SOQjKEMWuG9YkvvI="; }; sourceRoot = "${src.name}/src"; diff --git a/pkgs/applications/video/cinelerra/default.nix b/pkgs/applications/video/cinelerra/default.nix index 972a68e04f03..6bad50d9e453 100644 --- a/pkgs/applications/video/cinelerra/default.nix +++ b/pkgs/applications/video/cinelerra/default.nix @@ -44,13 +44,13 @@ stdenv.mkDerivation { pname = "cinelerra-cv"; - version = "unstable-2023-01-29"; + version = "2.3-unstable-2024-03-20"; src = fetchFromGitHub { owner = "cinelerra-cv-team"; repo = "cinelerra-cv"; - rev = "bb00ac6b70fcf3cf419348b56f9b264bc01c1a89"; - sha256 = "11965kb3d7xcvlcf8p7jlzk9swk5i78x7wja4s3043wlzmqmwv0q"; + rev = "18a693425f78f7c4c68b5a342efce3e8db2a30dc"; + hash = "sha256-+47Xa63GoKiQzEXbxmKUwJLDIFUnzc/FfxRPXCCxzpE="; }; preConfigure = '' @@ -107,7 +107,10 @@ stdenv.mkDerivation { meta = with lib; { description = "Professional video editing and compositing environment (community version)"; homepage = "http://cinelerra-cv.wikidot.com/"; + mainProgram = "cinelerracv"; maintainers = with maintainers; [ marcweber ]; license = licenses.gpl2Only; + # https://github.com/cinelerra-cv-team/cinelerra-cv/issues/3 + platforms = [ "x86_64-linux" ]; }; } diff --git a/pkgs/applications/video/davinci-resolve/default.nix b/pkgs/applications/video/davinci-resolve/default.nix index e92065486918..7caf12ee76d8 100644 --- a/pkgs/applications/video/davinci-resolve/default.nix +++ b/pkgs/applications/video/davinci-resolve/default.nix @@ -31,7 +31,7 @@ let davinci = ( stdenv.mkDerivation rec { pname = "davinci-resolve${lib.optionalString studioVariant "-studio"}"; - version = "18.6.5"; + version = "18.6.6"; nativeBuildInputs = [ (appimage-run.override { buildFHSEnv = buildFHSEnvChroot; } ) @@ -52,8 +52,8 @@ let outputHashAlgo = "sha256"; outputHash = if studioVariant - then "sha256-Ua5R0G4okBpz9SyyA2zn6nVflY9AlWch7Kx6PrW/nMg=" - else "sha256-oCK7w5jB7h4PSKg2IJwriyAVi/kj4TurloBcfDAe6BQ="; + then "sha256-9iTdIjHH8uoXlVr6miyqmHuzbbpbqdJPEbPGycsccoI=" + else "sha256-WrIQ1FHm65MOGb5HfFl2WzXYJRlqktuZdrtzcjWp1gI="; impureEnvVars = lib.fetchers.proxyImpureEnvVars; @@ -258,7 +258,7 @@ buildFHSEnv { description = "Professional video editing, color, effects and audio post-processing"; homepage = "https://www.blackmagicdesign.com/products/davinciresolve"; license = licenses.unfree; - maintainers = with maintainers; [ jshcmpbll orivej ]; + maintainers = with maintainers; [ amarshall jshcmpbll orivej ]; platforms = [ "x86_64-linux" ]; sourceProvenance = with sourceTypes; [ binaryNativeCode ]; mainProgram = "davinci-resolve"; diff --git a/pkgs/applications/video/electronplayer/electronplayer.nix b/pkgs/applications/video/electronplayer/electronplayer.nix index 15f5b60a09a6..270d5543c993 100644 --- a/pkgs/applications/video/electronplayer/electronplayer.nix +++ b/pkgs/applications/video/electronplayer/electronplayer.nix @@ -25,6 +25,7 @@ in appimageTools.wrapType2 { meta = with lib; { description = "An electron based web video services player"; + mainProgram = "electronplayer"; homepage = "https://github.com/oscartbeaumont/ElectronPlayer"; license = licenses.mit; maintainers = with maintainers; [ extends ]; diff --git a/pkgs/applications/video/gnome-mplayer/default.nix b/pkgs/applications/video/gnome-mplayer/default.nix index bab41b11bee9..09ed7efaf0c0 100644 --- a/pkgs/applications/video/gnome-mplayer/default.nix +++ b/pkgs/applications/video/gnome-mplayer/default.nix @@ -30,6 +30,7 @@ stdenv.mkDerivation rec { meta = with lib; { description = "Gnome MPlayer, a simple GUI for MPlayer"; + mainProgram = "gnome-mplayer"; homepage = "https://sites.google.com/site/kdekorte2/gnomemplayer"; license = licenses.gpl2; maintainers = with maintainers; []; diff --git a/pkgs/applications/video/gpu-screen-recorder/gpu-screen-recorder-gtk.nix b/pkgs/applications/video/gpu-screen-recorder/gpu-screen-recorder-gtk.nix index cc3a5033bd11..86bfebad3860 100644 --- a/pkgs/applications/video/gpu-screen-recorder/gpu-screen-recorder-gtk.nix +++ b/pkgs/applications/video/gpu-screen-recorder/gpu-screen-recorder-gtk.nix @@ -48,6 +48,7 @@ stdenv.mkDerivation { meta = with lib; { description = "GTK frontend for gpu-screen-recorder."; + mainProgram = "gpu-screen-recorder-gtk"; homepage = "https://git.dec05eba.com/gpu-screen-recorder-gtk/about/"; license = licenses.gpl3Only; maintainers = with maintainers; [ babbaj ]; diff --git a/pkgs/applications/video/kodi/addons/inputstream-adaptive/default.nix b/pkgs/applications/video/kodi/addons/inputstream-adaptive/default.nix index 49afbf8507b1..cb85df276412 100644 --- a/pkgs/applications/video/kodi/addons/inputstream-adaptive/default.nix +++ b/pkgs/applications/video/kodi/addons/inputstream-adaptive/default.nix @@ -10,13 +10,13 @@ in buildKodiBinaryAddon rec { pname = "inputstream-adaptive"; namespace = "inputstream.adaptive"; - version = "20.3.16"; + version = "20.3.18"; src = fetchFromGitHub { owner = "xbmc"; repo = "inputstream.adaptive"; rev = "${version}-${rel}"; - sha256 = "sha256-1OY+3pvpVW8rkj7HL84IECyHpAmWsUQ9mTzuGesH+jI="; + sha256 = "sha256-cjlUKrus4Dv48dCk6AlOgY2iZYTwT39tj2u7aq1P104="; }; extraCMakeFlags = [ diff --git a/pkgs/applications/video/kodi/addons/jellycon/default.nix b/pkgs/applications/video/kodi/addons/jellycon/default.nix new file mode 100644 index 000000000000..88e9504f8d19 --- /dev/null +++ b/pkgs/applications/video/kodi/addons/jellycon/default.nix @@ -0,0 +1,55 @@ +{ lib, addonDir, buildKodiAddon, fetchFromGitHub, kodi, requests, dateutil, six, kodi-six, signals, websocket }: +let + python = kodi.pythonPackages.python.withPackages (p: with p; [ pyyaml ]); +in +buildKodiAddon rec { + pname = "jellycon"; + namespace = "plugin.video.jellycon"; + version = "0.8.0"; + + src = fetchFromGitHub { + owner = "jellyfin"; + repo = pname; + rev = "v${version}"; + sha256 = "sha256-60my7Y60KV5WWALQiamnmAJZJi82cV21rIGYPiV7T+A="; + }; + + nativeBuildInputs = [ + python + ]; + + prePatch = '' + # ZIP does not support timestamps before 1980 - https://bugs.python.org/issue34097 + substituteInPlace build.py \ + --replace "with zipfile.ZipFile(f'{target}/{archive_name}', 'w') as z:" "with zipfile.ZipFile(f'{target}/{archive_name}', 'w', strict_timestamps=False) as z:" + ''; + + buildPhase = '' + ${python}/bin/python3 build.py --version=py3 + ''; + + postInstall = '' + mv /build/source/addon.xml $out${addonDir}/${namespace}/ + ''; + + propagatedBuildInputs = [ + requests + dateutil + six + kodi-six + signals + websocket + ]; + + meta = with lib; { + homepage = "https://github.com/jellyfin/jellycon"; + description = "A lightweight Kodi add-on for Jellyfin"; + longDescription = '' + JellyCon is a lightweight Kodi add-on that lets you browse and play media + files directly from your Jellyfin server within the Kodi interface. It can + easily switch between multiple user accounts at will. + ''; + license = licenses.gpl2Only; + maintainers = teams.kodi.members; + }; +} diff --git a/pkgs/applications/video/kodi/addons/youtube/default.nix b/pkgs/applications/video/kodi/addons/youtube/default.nix index 83afc51053ba..eecfd54433dd 100644 --- a/pkgs/applications/video/kodi/addons/youtube/default.nix +++ b/pkgs/applications/video/kodi/addons/youtube/default.nix @@ -3,13 +3,13 @@ buildKodiAddon rec { pname = "youtube"; namespace = "plugin.video.youtube"; - version = "7.0.3.2"; + version = "7.0.4"; src = fetchFromGitHub { owner = "anxdpanic"; repo = "plugin.video.youtube"; rev = "v${version}"; - hash = "sha256-gJ7RGB0pSG/iLdpmXHpQOoQTisXnMl1Mgd0KYFgg2qI="; + hash = "sha256-vBDFxsbYemJKxWa7De++UB0E4t1Eo0PW6Glbw6+FK1w="; }; propagatedBuildInputs = [ diff --git a/pkgs/applications/video/media-downloader/default.nix b/pkgs/applications/video/media-downloader/default.nix index b0a40aaa8a34..8a9f287c0c21 100644 --- a/pkgs/applications/video/media-downloader/default.nix +++ b/pkgs/applications/video/media-downloader/default.nix @@ -12,13 +12,13 @@ stdenv.mkDerivation (finalAttrs: { pname = "media-downloader"; - version = "4.3.1"; + version = "4.4.0"; src = fetchFromGitHub { owner = "mhogomchungu"; repo = "media-downloader"; rev = finalAttrs.version; - hash = "sha256-+vPGfPncb8f5c9OiBmpMvvDh3X6ZMHPbyngcDfrP9qQ="; + hash = "sha256-/W0SkKe9rcwf8HBIEcdJCPdZEnx9eh+twBu9wa6Sq30="; }; nativeBuildInputs = [ diff --git a/pkgs/applications/video/mpv/scripts/mpvacious.nix b/pkgs/applications/video/mpv/scripts/mpvacious.nix index d6c5389b3277..ec4e25b88fb7 100644 --- a/pkgs/applications/video/mpv/scripts/mpvacious.nix +++ b/pkgs/applications/video/mpv/scripts/mpvacious.nix @@ -9,13 +9,13 @@ buildLua rec { pname = "mpvacious"; - version = "0.26"; + version = "0.27"; src = fetchFromGitHub { owner = "Ajatt-Tools"; repo = "mpvacious"; rev = "v${version}"; - sha256 = "sha256-QPLJC6SxocvOPeY6qI8q+EyXNGVef3J/Z38W0/rzFCg="; + sha256 = "sha256-pn6hNEhOzKiU+zQJKj/rF0GLXaEe+XBpHp0RlzsNIio="; }; passthru.updateScript = gitUpdater { rev-prefix = "v"; diff --git a/pkgs/applications/video/mythtv/default.nix b/pkgs/applications/video/mythtv/default.nix index deea5c1cb493..fba7eb16839e 100644 --- a/pkgs/applications/video/mythtv/default.nix +++ b/pkgs/applications/video/mythtv/default.nix @@ -8,34 +8,18 @@ mkDerivation rec { pname = "mythtv"; - version = "32.0"; + version = "34.0"; src = fetchFromGitHub { owner = "MythTV"; repo = "mythtv"; rev = "v${version}"; - sha256 = "0i4fs3rbk1jggh62wflpa2l03na9i1ihpz2vsdic9vfahqqjxff1"; + hash = "sha256-6/TEoyYIRq6pufYzGOmO5DB05JuDo9lqRAYT5N5M/L4="; }; patches = [ # Disable sourcing /etc/os-release ./dont-source-os-release.patch - - # Fix QMake variable substitution syntax - MythTV/mythtv#550 - (fetchpatch { - name = "fix-qmake-var-syntax.patch"; - url = "https://github.com/MythTV/mythtv/commit/a8da7f7e7ec069164adbef65a8104adc9bb52e36.patch"; - stripLen = 1; - hash = "sha256-JfRME00YNNjl6SKs1HBa0wBa/lR/Rt3zbQtWhsC36JM="; - }) - - # Bachport the build against binutils-2.41 - (fetchpatch { - name = "binutils-2.41.patch"; - url = "https://github.com/MythTV/mythtv/commit/f9f9bba62ee2743c816cb2b9634b6b4397e5e2e3.patch"; - stripLen = 1; - hash = "sha256-IcXgBtfqPZ42inYFe7l8mWvKUV13S/YEQAHcOFaDivI="; - }) ]; setSourceRoot = "sourceRoot=$(echo */mythtv)"; diff --git a/pkgs/applications/video/mythtv/dont-source-os-release.patch b/pkgs/applications/video/mythtv/dont-source-os-release.patch index fb4dc686af6a..0ef27450d634 100644 --- a/pkgs/applications/video/mythtv/dont-source-os-release.patch +++ b/pkgs/applications/video/mythtv/dont-source-os-release.patch @@ -1,6 +1,6 @@ --- a/configure +++ b/configure -@@ -5894,9 +5894,9 @@ else +@@ -5451,9 +5451,9 @@ else die "ERROR: cannot find soundtouch 1.8.0 or later." fi diff --git a/pkgs/applications/video/obs-studio/default.nix b/pkgs/applications/video/obs-studio/default.nix index 29bb90a9dd8d..fee1addf0e6d 100644 --- a/pkgs/applications/video/obs-studio/default.nix +++ b/pkgs/applications/video/obs-studio/default.nix @@ -53,6 +53,7 @@ , libdatachannel , libvpl , qrcodegencpp +, nix-update-script }: let @@ -61,13 +62,13 @@ in stdenv.mkDerivation (finalAttrs: { pname = "obs-studio"; - version = "30.0.2"; + version = "30.1.0"; src = fetchFromGitHub { owner = "obsproject"; repo = finalAttrs.pname; rev = finalAttrs.version; - sha256 = "sha256-8pX1kqibrtDIaE1+/Pey1A5bu6MwFTXLrBOah4rsF+4="; + sha256 = "sha256-9rf3UGazEL5Obd6tqDwM5LOC6D1X6HNzs5sn5z1tOCA="; fetchSubmodules = true; }; @@ -76,25 +77,6 @@ stdenv.mkDerivation (finalAttrs: { ./Enable-file-access-and-universal-access-for-file-URL.patch ./fix-nix-plugin-path.patch - # Backport ffmpeg 6.1 / GCC 13 build fixes - # FIXME: remove in next release - (fetchpatch { - url = "https://github.com/obsproject/obs-studio/commit/cd784644f5e82b9988043f229c19603289c6d32c.patch"; - hash = "sha256-S4JE5kgr4x3uMHY2GRh0GBJpb7o/wYZb/v0CDITFNnQ="; - }) - (fetchpatch { - url = "https://github.com/obsproject/obs-studio/commit/758b47d4ed9a25b8d64ad481d8d039990b9e57c9.patch"; - hash = "sha256-jYpjwhx6e+dhN3kzbd6FcdjQ+WhIX0/BOu9PSkt+2yI="; - }) - (fetchpatch { - url = "https://github.com/obsproject/obs-studio/commit/4b5be75c7e4b8cee908ed4a02fe0078285b4e8c9.patch"; - hash = "sha256-tuOevhyxchwG42ilrplbiWoiDAKaY4HgzShlvp4VSQI="; - }) - (fetchpatch { - url = "https://github.com/obsproject/obs-studio/commit/6e080a68067b27fe5463f0f4eee7df690451f3d7.patch"; - hash = "sha256-nbn/q3uszoHaDvaW8Et1MS1sgQzMsJRmjGSMHzUxV70="; - }) - # Fix libobs.pc for plugins on non-x86 systems (fetchpatch { name = "fix-arm64-cmake.patch"; @@ -175,6 +157,10 @@ stdenv.mkDerivation (finalAttrs: { (lib.cmakeBool "ENABLE_PIPEWIRE" pipewireSupport) ]; + env.NIX_CFLAGS_COMPILE = toString [ + "-Wno-error=sign-compare" # https://github.com/obsproject/obs-studio/issues/10200 + ]; + dontWrapGApps = true; preFixup = let wrapperLibraries = [ @@ -202,6 +188,8 @@ stdenv.mkDerivation (finalAttrs: { ln -s ${libcef}/lib/* $out/lib/obs-plugins/ ''; + passthru.updateScript = nix-update-script { }; + meta = with lib; { description = "Free and open source software for video recording and live streaming"; longDescription = '' diff --git a/pkgs/applications/video/obs-studio/plugins/advanced-scene-switcher/default.nix b/pkgs/applications/video/obs-studio/plugins/advanced-scene-switcher/default.nix index b776981522d0..ff4ba78ea950 100644 --- a/pkgs/applications/video/obs-studio/plugins/advanced-scene-switcher/default.nix +++ b/pkgs/applications/video/obs-studio/plugins/advanced-scene-switcher/default.nix @@ -23,13 +23,13 @@ stdenv.mkDerivation rec { pname = "advanced-scene-switcher"; - version = "1.24.2"; + version = "1.25.3"; src = fetchFromGitHub { owner = "WarmUpTill"; repo = "SceneSwitcher"; rev = version; - hash = "sha256-J5Qcs2eoKMeO1O/MCsR5wfmfbtndRaZmHrbleEZqqOo="; + hash = "sha256-cVMeFAliP0srvnhJQkOhZB2hrald8RHFhBXwdGIu2uo="; }; nativeBuildInputs = [ @@ -61,11 +61,7 @@ stdenv.mkDerivation rec { chmod -R +w $sourceRoot/deps/libremidi ''; - postInstall = '' - mkdir $out/lib $out/share - mv $out/obs-plugins/64bit $out/lib/obs-plugins - mv $out/data $out/share/obs - ''; + env.NIX_CFLAGS_COMPILE = "-Wno-error=stringop-overflow"; meta = with lib; { description = "An automated scene switcher for OBS Studio"; diff --git a/pkgs/applications/video/obs-studio/plugins/obs-gstreamer.nix b/pkgs/applications/video/obs-studio/plugins/obs-gstreamer.nix index e58220bce7e8..c34f821d7c6a 100644 --- a/pkgs/applications/video/obs-studio/plugins/obs-gstreamer.nix +++ b/pkgs/applications/video/obs-studio/plugins/obs-gstreamer.nix @@ -49,6 +49,6 @@ stdenv.mkDerivation rec { homepage = "https://github.com/fzwoch/obs-gstreamer"; maintainers = with maintainers; [ ahuzik pedrohlc ]; license = licenses.gpl2Plus; - platforms = [ "x86_64-linux" "i686-linux" ]; + platforms = platforms.linux; }; } diff --git a/pkgs/applications/video/obs-studio/plugins/obs-move-transition.nix b/pkgs/applications/video/obs-studio/plugins/obs-move-transition.nix index 98b597d72f54..a56c18479fd1 100644 --- a/pkgs/applications/video/obs-studio/plugins/obs-move-transition.nix +++ b/pkgs/applications/video/obs-studio/plugins/obs-move-transition.nix @@ -7,13 +7,13 @@ stdenv.mkDerivation rec { pname = "obs-move-transition"; - version = "2.10.2"; + version = "2.11.0"; src = fetchFromGitHub { owner = "exeldro"; repo = "obs-move-transition"; rev = version; - sha256 = "sha256-gQAeQ3PdnCtnLUgt6utWKfFBfQlJj5/mjAxtlmaGQFw="; + sha256 = "sha256-kQIDOjux+8d9V4VCxDtKuWpBKPjdB50WmOPYmzxOCTU="; }; nativeBuildInputs = [ cmake ]; diff --git a/pkgs/applications/video/obs-studio/plugins/obs-replay-source.nix b/pkgs/applications/video/obs-studio/plugins/obs-replay-source.nix index c3987ab33ff0..42682dd14614 100644 --- a/pkgs/applications/video/obs-studio/plugins/obs-replay-source.nix +++ b/pkgs/applications/video/obs-studio/plugins/obs-replay-source.nix @@ -9,13 +9,13 @@ stdenv.mkDerivation (finalAttrs: { pname = "obs-replay-source"; - version = "1.6.13"; + version = "1.6.13-unstable-2024-02-03"; src = fetchFromGitHub { owner = "exeldro"; repo = "obs-replay-source"; - rev = finalAttrs.version; - sha256 = "sha256-i64rpIVnUplA9AKZtR3xeByeawca7B00kGmEcKi7DWQ="; + rev = "6590fde1c8e4f8c733016646a8165d52e28d094b"; + hash = "sha256-foIzWNlU72FWXZVWR8TEiqJJMfl1vWYDTyhV6thYJbA="; }; nativeBuildInputs = [ cmake ]; diff --git a/pkgs/applications/video/pipe-viewer/default.nix b/pkgs/applications/video/pipe-viewer/default.nix index 536b904fd858..5d3256931f12 100644 --- a/pkgs/applications/video/pipe-viewer/default.nix +++ b/pkgs/applications/video/pipe-viewer/default.nix @@ -38,13 +38,13 @@ let in buildPerlModule rec { pname = "pipe-viewer"; - version = "0.4.9"; + version = "0.5.0"; src = fetchFromGitHub { owner = "trizen"; repo = "pipe-viewer"; rev = version; - hash = "sha256-7l8exCC9robe1hKnQAaIVfnn8L+FuwTOkxaxlwJmpe0="; + hash = "sha256-tNIAGvv3dCPd7MA27yd2AHMSgs+1D2uiJJTQgTsEVNU="; }; nativeBuildInputs = [ makeWrapper ] diff --git a/pkgs/applications/video/pyca/default.nix b/pkgs/applications/video/pyca/default.nix index 73b6e606118a..88ae19893653 100644 --- a/pkgs/applications/video/pyca/default.nix +++ b/pkgs/applications/video/pyca/default.nix @@ -74,6 +74,7 @@ python3.pkgs.buildPythonApplication rec { meta = with lib; { broken = stdenv.isDarwin; description = "A fully functional Opencast capture agent written in Python"; + mainProgram = "pyca"; homepage = "https://github.com/opencast/pyCA"; license = licenses.lgpl3; maintainers = with maintainers; [ pmiddend ]; diff --git a/pkgs/applications/video/qmplay2/default.nix b/pkgs/applications/video/qmplay2/default.nix index b6b577790cfb..4c31c97d5b1d 100644 --- a/pkgs/applications/video/qmplay2/default.nix +++ b/pkgs/applications/video/qmplay2/default.nix @@ -26,14 +26,14 @@ stdenv.mkDerivation (finalAttrs: { pname = "qmplay2"; - version = "23.10.22"; + version = "24.03.16"; src = fetchFromGitHub { owner = "zaps166"; repo = "QMPlay2"; rev = finalAttrs.version; fetchSubmodules = true; - hash = "sha256-yDymUXuILgT4AFTt302GniPi/WNwrTCOuOfdUiKOIyk="; + hash = "sha256-yIBQBRdmaY7qaBirANxMqfm5vn3T4usokJUxwSYUHjQ="; }; nativeBuildInputs = [ diff --git a/pkgs/applications/video/streamlink/default.nix b/pkgs/applications/video/streamlink/default.nix index 2eda19313e1c..c71e712625c2 100644 --- a/pkgs/applications/video/streamlink/default.nix +++ b/pkgs/applications/video/streamlink/default.nix @@ -1,19 +1,31 @@ { lib , python3Packages , fetchPypi +, substituteAll , ffmpeg }: python3Packages.buildPythonApplication rec { pname = "streamlink"; version = "6.7.0"; - format = "pyproject"; + pyproject = true; src = fetchPypi { inherit pname version; hash = "sha256-kjrDJ/QCccWxRLEQ0virAdm0TLxN5PmtO/Zs+4Nc1MM="; }; + patches = [ + (substituteAll { + src = ./ffmpeg-path.patch; + ffmpeg = lib.getExe ffmpeg; + }) + ]; + + nativeBuildInputs = with python3Packages; [ + setuptools + ]; + nativeCheckInputs = with python3Packages; [ pytestCheckHook mock @@ -23,7 +35,12 @@ python3Packages.buildPythonApplication rec { pytest-trio ]; - propagatedBuildInputs = (with python3Packages; [ + disabledTests = [ + # requires ffmpeg to be in PATH + "test_no_cache" + ]; + + propagatedBuildInputs = with python3Packages; [ certifi isodate lxml @@ -36,8 +53,6 @@ python3Packages.buildPythonApplication rec { typing-extensions urllib3 websocket-client - ]) ++ [ - ffmpeg ]; meta = with lib; { diff --git a/pkgs/applications/video/streamlink/ffmpeg-path.patch b/pkgs/applications/video/streamlink/ffmpeg-path.patch new file mode 100644 index 000000000000..6108c53dcf0b --- /dev/null +++ b/pkgs/applications/video/streamlink/ffmpeg-path.patch @@ -0,0 +1,13 @@ +diff --git a/src/streamlink/stream/ffmpegmux.py b/src/streamlink/stream/ffmpegmux.py +index 258b314a..c493e010 100644 +--- a/src/streamlink/stream/ffmpegmux.py ++++ b/src/streamlink/stream/ffmpegmux.py +@@ -80,7 +80,7 @@ class MuxedStream(Stream, Generic[TSubstreams]): + + + class FFMPEGMuxer(StreamIO): +- __commands__: ClassVar[List[str]] = ["ffmpeg"] ++ __commands__: ClassVar[List[str]] = ["@ffmpeg@"] + + DEFAULT_OUTPUT_FORMAT = "matroska" + DEFAULT_VIDEO_CODEC = "copy" diff --git a/pkgs/applications/video/stremio/default.nix b/pkgs/applications/video/stremio/default.nix index 03ccb4b9f066..a967a872cd99 100644 --- a/pkgs/applications/video/stremio/default.nix +++ b/pkgs/applications/video/stremio/default.nix @@ -1,5 +1,14 @@ -{ lib, stdenv, fetchurl, fetchFromGitHub, qmake, wrapQtAppsHook -, mpv, qtwebengine, qtwebchannel, nodejs +{ lib +, stdenv +, fetchFromGitHub +, fetchurl +, ffmpeg +, mpv +, nodejs +, qmake +, qtwebchannel +, qtwebengine +, wrapQtAppsHook }: stdenv.mkDerivation rec { @@ -30,6 +39,8 @@ stdenv.mkDerivation rec { install -Dm 644 images/stremio_window.png $out/share/pixmaps/smartcode-stremio.png ln -s ${nodejs}/bin/node $out/opt/stremio/node ln -s $server $out/opt/stremio/server.js + wrapProgram $out/bin/stremio \ + --suffix PATH ":" ${lib.makeBinPath [ ffmpeg ]} ''; meta = with lib; { diff --git a/pkgs/applications/video/vdr/markad/default.nix b/pkgs/applications/video/vdr/markad/default.nix index c0672821558b..28dad0200270 100644 --- a/pkgs/applications/video/vdr/markad/default.nix +++ b/pkgs/applications/video/vdr/markad/default.nix @@ -19,12 +19,12 @@ }: stdenv.mkDerivation rec { pname = "vdr-markad"; - version = "3.4.6"; + version = "3.4.13"; src = fetchFromGitHub { repo = "vdr-plugin-markad"; owner = "kfb77"; - sha256 = "sha256-fixkalZAPz0iO1SmshsO0vYc2sksH2lrStsSOEcdZ1g="; + sha256 = "sha256-pDnziIWX6deBXuVIN7w6F6TdYDCcEO6MSaUIMB63uAg="; rev = "V${version}"; }; @@ -51,6 +51,7 @@ stdenv.mkDerivation rec { meta = with lib; { inherit (src.meta) homepage; description = "Plugin for VDR that marks advertisements"; + mainProgram = "markad"; maintainers = [ maintainers.ck3d ]; license = licenses.gpl2; inherit (vdr.meta) platforms; diff --git a/pkgs/applications/video/vdr/nopacity/default.nix b/pkgs/applications/video/vdr/nopacity/default.nix index e0173ab6c8ae..c413206b8257 100644 --- a/pkgs/applications/video/vdr/nopacity/default.nix +++ b/pkgs/applications/video/vdr/nopacity/default.nix @@ -1,12 +1,12 @@ { stdenv, lib, fetchFromGitLab, vdr, graphicsmagick }: stdenv.mkDerivation rec { pname = "vdr-skin-nopacity"; - version = "1.1.16"; + version = "1.1.17"; src = fetchFromGitLab { repo = "SkinNopacity"; owner = "kamel5"; - sha256 = "sha256-5TTilBKlNsFBm5BaCoRV1LzZgpad2lOIQGyk94jGYls="; + hash = "sha256-QJKlh5my7e+H5R4E0fCWB/PtwIAXCXw4drQEQzhzfag="; rev = version; }; diff --git a/pkgs/applications/video/vdr/plugins.nix b/pkgs/applications/video/vdr/plugins.nix index 92d9128543f0..4063f4108fa0 100644 --- a/pkgs/applications/video/vdr/plugins.nix +++ b/pkgs/applications/video/vdr/plugins.nix @@ -99,6 +99,7 @@ in { meta = with lib; { inherit (src.meta) homepage; description = "Searchtimer and replacement of the VDR program menu"; + mainProgram = "createcats"; maintainers = [ maintainers.ck3d ]; license = licenses.gpl2; inherit (vdr.meta) platforms; diff --git a/pkgs/applications/video/vdr/softhddevice/default.nix b/pkgs/applications/video/vdr/softhddevice/default.nix index 4d2504f5e5e6..23c6433f9ebb 100644 --- a/pkgs/applications/video/vdr/softhddevice/default.nix +++ b/pkgs/applications/video/vdr/softhddevice/default.nix @@ -14,12 +14,12 @@ }: stdenv.mkDerivation rec { pname = "vdr-softhddevice"; - version = "2.1.1"; + version = "2.1.2"; src = fetchFromGitHub { owner = "ua0lnj"; repo = "vdr-plugin-softhddevice"; - sha256 = "sha256-d/Cl0sE4laDdjMhd3xTHcY4OT5tWWCFCvLsNF157+zw="; + sha256 = "sha256-y6b0nOf597uxS9zDh0NQOwLN81nk4U7lHK2CalyVi8s="; rev = "v${version}"; }; diff --git a/pkgs/applications/video/youtube-tui/default.nix b/pkgs/applications/video/youtube-tui/default.nix index bfa1039d5d33..63e9f51304ed 100644 --- a/pkgs/applications/video/youtube-tui/default.nix +++ b/pkgs/applications/video/youtube-tui/default.nix @@ -6,6 +6,7 @@ , xorg , stdenv , python3 +, makeBinaryWrapper , libsixel , mpv , CoreFoundation @@ -19,7 +20,7 @@ rustPlatform.buildRustPackage rec { src = fetchFromGitHub { owner = "Siriusmart"; - repo = pname; + repo = "youtube-tui"; rev = "v${version}"; hash = "sha256-FOiK3yQcQuwdCEjBtRPW4iBd+8uNsvZ6l5tclHVzL+M="; }; @@ -34,6 +35,7 @@ rustPlatform.buildRustPackage rec { nativeBuildInputs = [ pkg-config python3 + makeBinaryWrapper ]; buildInputs = [ @@ -47,6 +49,12 @@ rustPlatform.buildRustPackage rec { AppKit ]; + # sixel-sys is dynamically linked to libsixel + postInstall = lib.optionalString stdenv.isDarwin '' + wrapProgram $out/bin/youtube-tui \ + --prefix DYLD_LIBRARY_PATH : "${lib.makeLibraryPath [libsixel]}" + ''; + meta = with lib; { description = "An aesthetically pleasing YouTube TUI written in Rust"; homepage = "https://siriusmart.github.io/youtube-tui"; |