forked from mirrors/nixpkgs
Merge pull request #33364 from orivej/sc-controller
sc-controller: init at 0.4.0.1
This commit is contained in:
commit
a2ca2b535c
62
pkgs/misc/drivers/sc-controller/default.nix
Normal file
62
pkgs/misc/drivers/sc-controller/default.nix
Normal file
|
@ -0,0 +1,62 @@
|
|||
{ lib, buildPythonApplication, fetchFromGitHub, wrapGAppsHook
|
||||
, gtk3, gobjectIntrospection, libappindicator-gtk3, librsvg
|
||||
, evdev, pygobject3, pylibacl, pytest
|
||||
, linuxHeaders
|
||||
, libX11, libXext, libXfixes, libusb1
|
||||
}:
|
||||
|
||||
buildPythonApplication rec {
|
||||
pname = "sc-controller";
|
||||
version = "0.4.0.1";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "kozec";
|
||||
repo = "sc-controller";
|
||||
rev = "v${version}";
|
||||
sha256 = "0vhgiqg4r4bnn004ql80rvi23y05wlax80sj8qsr91pvqsxwv3yl";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ wrapGAppsHook ];
|
||||
|
||||
buildInputs = [ gtk3 gobjectIntrospection libappindicator-gtk3 librsvg ];
|
||||
|
||||
propagatedBuildInputs = [ evdev pygobject3 pylibacl ];
|
||||
|
||||
checkInputs = [ pytest ];
|
||||
|
||||
postPatch = ''
|
||||
substituteInPlace scc/paths.py --replace sys.prefix "'$out'"
|
||||
substituteInPlace scc/uinput.py --replace /usr/include ${linuxHeaders}/include
|
||||
'';
|
||||
|
||||
LD_LIBRARY_PATH = lib.makeLibraryPath [ libX11 libXext libXfixes libusb1 ];
|
||||
|
||||
preFixup = ''
|
||||
gappsWrapperArgs+=(--prefix LD_LIBRARY_PATH : "$LD_LIBRARY_PATH")
|
||||
# gdk-pixbuf setup hook can not choose between propagated librsvg
|
||||
# and our librsvg with GObject introspection.
|
||||
GDK_PIXBUF_MODULE_FILE=$(echo ${librsvg}/lib/gdk-pixbuf-2.0/*/loaders.cache)
|
||||
'';
|
||||
|
||||
postFixup = ''
|
||||
(
|
||||
# scc runs these scripts as programs. (See find_binary() in scc/tools.py.)
|
||||
cd $out/lib/python*/site-packages/scc/x11
|
||||
patchPythonScript scc-autoswitch-daemon.py
|
||||
patchPythonScript scc-osd-daemon.py
|
||||
)
|
||||
'';
|
||||
|
||||
checkPhase = ''
|
||||
PYTHONPATH=. py.test
|
||||
'';
|
||||
|
||||
meta = with lib; {
|
||||
homepage = https://github.com/kozec/sc-controller;
|
||||
# donations: https://www.patreon.com/kozec
|
||||
description = "User-mode driver and GUI for Steam Controller and other controllers";
|
||||
license = licenses.gpl2;
|
||||
platforms = platforms.linux;
|
||||
maintainers = [ maintainers.orivej ];
|
||||
};
|
||||
}
|
|
@ -19754,6 +19754,11 @@ with pkgs;
|
|||
|
||||
sane-frontends = callPackage ../applications/graphics/sane/frontends.nix { };
|
||||
|
||||
sc-controller = pythonPackages.callPackage ../misc/drivers/sc-controller {
|
||||
inherit libusb1; # Shadow python.pkgs.libusb1.
|
||||
librsvg = librsvg.override { enableIntrospection = true; };
|
||||
};
|
||||
|
||||
sct = callPackage ../tools/X11/sct {};
|
||||
|
||||
seafile-shared = callPackage ../misc/seafile-shared { };
|
||||
|
|
Loading…
Reference in a new issue