about summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--pkgs/applications/video/jellyfin-mpv-shim/default.nix13
-rw-r--r--pkgs/applications/video/plex-mpv-shim/default.nix14
-rw-r--r--pkgs/development/python-modules/pystray/default.nix18
3 files changed, 40 insertions, 5 deletions
diff --git a/pkgs/applications/video/jellyfin-mpv-shim/default.nix b/pkgs/applications/video/jellyfin-mpv-shim/default.nix
index da75adab7b51c..69248dc75301c 100644
--- a/pkgs/applications/video/jellyfin-mpv-shim/default.nix
+++ b/pkgs/applications/video/jellyfin-mpv-shim/default.nix
@@ -1,6 +1,7 @@
 { lib
 , buildPythonApplication
 , fetchPypi
+, gobject-introspection
 , jellyfin-apiclient-python
 , jinja2
 , mpv
@@ -9,6 +10,7 @@
 , python-mpv-jsonipc
 , pywebview
 , tkinter
+, wrapGAppsHook
 }:
 
 buildPythonApplication rec {
@@ -20,6 +22,11 @@ buildPythonApplication rec {
     sha256 = "sha256-JiSC6WjrLsWk3/m/EHq7KNXaJ6rqT2fG9TT1jPvYlK0=";
   };
 
+  nativeBuildInputs = [
+    wrapGAppsHook
+    gobject-introspection
+  ];
+
   propagatedBuildInputs = [
     jellyfin-apiclient-python
     mpv
@@ -52,6 +59,12 @@ buildPythonApplication rec {
       --replace "notify_updates: bool = True" "notify_updates: bool = False"
   '';
 
+  # needed for pystray to access appindicator using GI
+  preFixup = ''
+    makeWrapperArgs+=("''${gappsWrapperArgs[@]}")
+  '';
+  dontWrapGApps = true;
+
   # no tests
   doCheck = false;
   pythonImportsCheck = [ "jellyfin_mpv_shim" ];
diff --git a/pkgs/applications/video/plex-mpv-shim/default.nix b/pkgs/applications/video/plex-mpv-shim/default.nix
index 2d0643c4ddb92..b7a5f2ce38c17 100644
--- a/pkgs/applications/video/plex-mpv-shim/default.nix
+++ b/pkgs/applications/video/plex-mpv-shim/default.nix
@@ -1,4 +1,5 @@
-{ lib, buildPythonApplication, fetchFromGitHub, mpv, requests, python-mpv-jsonipc, pystray, tkinter }:
+{ lib, buildPythonApplication, fetchFromGitHub, mpv, requests, python-mpv-jsonipc, pystray, tkinter
+, wrapGAppsHook, gobject-introspection }:
 
 buildPythonApplication rec {
   pname = "plex-mpv-shim";
@@ -11,8 +12,19 @@ buildPythonApplication rec {
     sha256 = "0hgv9g17dkrh3zbsx27n80yvkgix9j2x0rgg6d3qsf7hp5j3xw4r";
   };
 
+  nativeBuildInputs = [
+    wrapGAppsHook
+    gobject-introspection
+  ];
+
   propagatedBuildInputs = [ mpv requests python-mpv-jsonipc pystray tkinter ];
 
+  # needed for pystray to access appindicator using GI
+  preFixup = ''
+    makeWrapperArgs+=("''${gappsWrapperArgs[@]}")
+  '';
+  dontWrapGApps = true;
+
   # does not contain tests
   doCheck = false;
 
diff --git a/pkgs/development/python-modules/pystray/default.nix b/pkgs/development/python-modules/pystray/default.nix
index c3cf0a9841fa0..975f940da68d9 100644
--- a/pkgs/development/python-modules/pystray/default.nix
+++ b/pkgs/development/python-modules/pystray/default.nix
@@ -1,5 +1,15 @@
-{ lib, buildPythonPackage, fetchFromGitHub
-, pillow, xlib, six, xvfb-run, sphinx }:
+{ lib
+, buildPythonPackage
+, fetchFromGitHub
+, pillow
+, xlib
+, six
+, xvfb-run
+, sphinx
+, gobject-introspection
+, pygobject3
+, gtk3
+, libayatana-appindicator }:
 
 buildPythonPackage rec {
   pname = "pystray";
@@ -12,8 +22,8 @@ buildPythonPackage rec {
     sha256 = "sha256-8B178MSe4ujlnGBmQhIu+BoAh1doP9V5cL0ermLQTvs=";
   };
 
-  nativeBuildInputs = [ sphinx ];
-  propagatedBuildInputs = [ pillow xlib six ];
+  nativeBuildInputs = [ gobject-introspection sphinx ];
+  propagatedBuildInputs = [ pillow xlib six pygobject3 gtk3 libayatana-appindicator ];
   checkInputs = [ xvfb-run ];
 
   checkPhase = ''