about summary refs log tree commit diff
path: root/pkgs/applications/plasma-mobile
diff options
context:
space:
mode:
authorSamuel Dionne-Riel <samuel@dionne-riel.com>2022-11-30 22:06:52 -0500
committerSamuel Dionne-Riel <samuel@dionne-riel.com>2022-11-30 22:28:29 -0500
commit491064f1e5f1791521d6b6d06b4167ae6ca88003 (patch)
tree90467e81500b17ccac1b96f6d0718da074123eb2 /pkgs/applications/plasma-mobile
parent873f33ef250618369c265d3c006e473975923472 (diff)
plasmatube: Fix runtime use of yt-dlp
This would end-up relying on an ambiant yt-dlp, which is bad.
Diffstat (limited to 'pkgs/applications/plasma-mobile')
-rw-r--r--pkgs/applications/plasma-mobile/default.nix2
-rw-r--r--pkgs/applications/plasma-mobile/plasmatube/0001-Add-placeholders-for-runtime-dependencies.patch25
-rw-r--r--pkgs/applications/plasma-mobile/plasmatube/default.nix (renamed from pkgs/applications/plasma-mobile/plasmatube.nix)10
3 files changed, 36 insertions, 1 deletions
diff --git a/pkgs/applications/plasma-mobile/default.nix b/pkgs/applications/plasma-mobile/default.nix
index 5c3caf42eb762..48a3f1281fcbf 100644
--- a/pkgs/applications/plasma-mobile/default.nix
+++ b/pkgs/applications/plasma-mobile/default.nix
@@ -77,7 +77,7 @@ let
       plasma-dialer = callPackage ./plasma-dialer.nix {};
       plasma-phonebook = callPackage ./plasma-phonebook.nix {};
       plasma-settings = callPackage ./plasma-settings.nix {};
-      plasmatube = callPackage ./plasmatube.nix {};
+      plasmatube = callPackage ./plasmatube {};
       spacebar = callPackage ./spacebar.nix { inherit srcs; };
     };
 
diff --git a/pkgs/applications/plasma-mobile/plasmatube/0001-Add-placeholders-for-runtime-dependencies.patch b/pkgs/applications/plasma-mobile/plasmatube/0001-Add-placeholders-for-runtime-dependencies.patch
new file mode 100644
index 0000000000000..704b92b2b01a7
--- /dev/null
+++ b/pkgs/applications/plasma-mobile/plasmatube/0001-Add-placeholders-for-runtime-dependencies.patch
@@ -0,0 +1,25 @@
+From 7a9405ed02b0d86839644a2c237ca7ca8b891b76 Mon Sep 17 00:00:00 2001
+From: Samuel Dionne-Riel <samuel@dionne-riel.com>
+Date: Wed, 30 Nov 2022 21:07:56 -0500
+Subject: [PATCH] Add placeholders for runtime dependencies
+
+---
+ src/videomodel.cpp | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/src/videomodel.cpp b/src/videomodel.cpp
+index 4bb3451..b558f31 100644
+--- a/src/videomodel.cpp
++++ b/src/videomodel.cpp
+@@ -121,7 +121,7 @@ QString VideoModel::remoteUrl()
+         return {};
+     }
+ 
+-    QString youtubeDl = QStringLiteral("yt-dlp");
++    QString youtubeDl = QStringLiteral("@yt-dlp@");
+     QStringList arguments;
+     arguments << QLatin1String("--dump-json")
+               << m_videoId;
+-- 
+2.38.0
+
diff --git a/pkgs/applications/plasma-mobile/plasmatube.nix b/pkgs/applications/plasma-mobile/plasmatube/default.nix
index 894af98b6d187..6e3377911f348 100644
--- a/pkgs/applications/plasma-mobile/plasmatube.nix
+++ b/pkgs/applications/plasma-mobile/plasmatube/default.nix
@@ -9,6 +9,7 @@
 , kirigami2
 , qtmultimedia
 , qtquickcontrols2
+, yt-dlp
 }:
 
 mkDerivation {
@@ -32,6 +33,15 @@ mkDerivation {
     gstreamer
   ]);
 
+  patches = [
+    ./0001-Add-placeholders-for-runtime-dependencies.patch
+  ];
+
+  postPatch = ''
+    substituteInPlace src/videomodel.cpp \
+      --replace "@yt-dlp@" "${yt-dlp}/bin/yt-dlp"
+  '';
+
   meta = {
     description = "Youtube player powered by an invidious server";
     homepage = "https://invent.kde.org/plasma-mobile/plasmatube";