summary refs log tree commit diff
path: root/pkgs/misc/drivers
diff options
context:
space:
mode:
authorxeji <36407913+xeji@users.noreply.github.com>2018-09-02 20:58:13 +0200
committerGitHub <noreply@github.com>2018-09-02 20:58:13 +0200
commit87ba30b5c746652b4cf08f8aef39e713199b8821 (patch)
tree640497d6963fa2007d26b3162e959c00fadc6da4 /pkgs/misc/drivers
parent146f8bac7e9e7d614b23ecdc457f14c59622c8d1 (diff)
parent8670ee4689285dde42b0c84d94f91603ff65f8b6 (diff)
downloadnixlib-87ba30b5c746652b4cf08f8aef39e713199b8821.tar
nixlib-87ba30b5c746652b4cf08f8aef39e713199b8821.tar.gz
nixlib-87ba30b5c746652b4cf08f8aef39e713199b8821.tar.bz2
nixlib-87ba30b5c746652b4cf08f8aef39e713199b8821.tar.lz
nixlib-87ba30b5c746652b4cf08f8aef39e713199b8821.tar.xz
nixlib-87ba30b5c746652b4cf08f8aef39e713199b8821.tar.zst
nixlib-87ba30b5c746652b4cf08f8aef39e713199b8821.zip
Merge pull request #45939 from rnhmjoj/scc
sc-controller: 0.4.3 -> 0.4.4
Diffstat (limited to 'pkgs/misc/drivers')
-rw-r--r--pkgs/misc/drivers/sc-controller/default.nix15
-rw-r--r--pkgs/misc/drivers/sc-controller/fix-udev.patch22
2 files changed, 32 insertions, 5 deletions
diff --git a/pkgs/misc/drivers/sc-controller/default.nix b/pkgs/misc/drivers/sc-controller/default.nix
index 5583461d3754..f1c4ff091573 100644
--- a/pkgs/misc/drivers/sc-controller/default.nix
+++ b/pkgs/misc/drivers/sc-controller/default.nix
@@ -1,19 +1,19 @@
 { lib, buildPythonApplication, fetchFromGitHub, wrapGAppsHook
 , gtk3, gobjectIntrospection, libappindicator-gtk3, librsvg
-, evdev, pygobject3, pylibacl, pytest
+, evdev, pygobject3, pylibacl, pytest, bluez
 , linuxHeaders
-, libX11, libXext, libXfixes, libusb1
+, libX11, libXext, libXfixes, libusb1, libudev
 }:
 
 buildPythonApplication rec {
   pname = "sc-controller";
-  version = "0.4.3";
+  version = "0.4.4";
 
   src = fetchFromGitHub {
     owner  = "kozec";
     repo   = pname;
     rev    = "v${version}";
-    sha256 = "0w4ykl78vdppqr3d4d0h1f31wly6kis57a1gxhnrbpfrgpj0qhvj";
+    sha256 = "0ki9x28i5slpnygkpdglcvj8cssvvjyz732y1cnpzw1f0sj0kris";
   };
 
   nativeBuildInputs = [ wrapGAppsHook ];
@@ -24,12 +24,17 @@ buildPythonApplication rec {
 
   checkInputs = [ pytest ];
 
+  patches = [ 
+    ./fix-udev.patch  # fix upstream issue #401, remove with the next update
+  ];
+
   postPatch = ''
     substituteInPlace scc/paths.py --replace sys.prefix "'$out'"
     substituteInPlace scc/uinput.py --replace /usr/include ${linuxHeaders}/include
+    substituteInPlace scc/device_monitor.py --replace "find_library('bluetooth')" "'libbluetooth.so.3'"
   '';
 
-  LD_LIBRARY_PATH = lib.makeLibraryPath [ libX11 libXext libXfixes libusb1 ];
+  LD_LIBRARY_PATH = lib.makeLibraryPath [ libX11 libXext libXfixes libusb1 libudev bluez ];
 
   preFixup = ''
     gappsWrapperArgs+=(--prefix LD_LIBRARY_PATH : "$LD_LIBRARY_PATH")
diff --git a/pkgs/misc/drivers/sc-controller/fix-udev.patch b/pkgs/misc/drivers/sc-controller/fix-udev.patch
new file mode 100644
index 000000000000..2416ac216d76
--- /dev/null
+++ b/pkgs/misc/drivers/sc-controller/fix-udev.patch
@@ -0,0 +1,22 @@
+diff --git a/scc/lib/eudevmonitor.py b/scc/lib/eudevmonitor.py
+index 6c1bd18..182eff2 100644
+--- a/scc/lib/eudevmonitor.py
++++ b/scc/lib/eudevmonitor.py
+@@ -28,12 +28,11 @@ class Eudev:
+ 	
+ 	def __init__(self):
+ 		self._ctx = None
+-		self._lib = ctypes.CDLL(find_library(self.LIB_NAME))
+-		if self._lib is None:
+-			# Alternative approach for NixOS
+-			try:
+-				self._lib = ctypes.cdll.LoadLibrary("libudev.so")
+-			except OSError:
++		try:
++			self._lib = ctypes.cdll.LoadLibrary("libudev.so")
++		except OSError:
++			self._lib = ctypes.CDLL(find_library(self.LIB_NAME))
++			if self._lib is None:
+ 				raise ImportError("No library named udev")
+ 		Eudev._setup_lib(self._lib)
+ 		self._ctx = self._lib.udev_new()