about summary refs log tree commit diff
path: root/pkgs/tools/misc/g203-led/default.nix
blob: f2db4f58d59182924122bc094df0aa3b6ba0368e (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
{ lib, stdenv
, fetchFromGitHub
, python3
}:
stdenv.mkDerivation rec {
  pname = "g203-led";
  version = "unstable-2021-05-08";
  src = fetchFromGitHub {
    owner = "smasty";
    repo = pname;
    rev = "f9d10ba3aa8f9359f928bbab0a2ea00cefc69f4b";
    sha256 = "1fhaimci80xmihg84bgrml61zr56pi9rkxfbs13vvw9dwjf031k0";
  };

  buildInputs = [
    (python3.withPackages (ps: with ps; [
      pyusb
    ]))
  ];

  postPatch = ''
    patchShebangs g203-led.py
  '';

  installPhase = ''
    runHook preInstall
    install -D g203-led.py $out/bin/g203-led
    runHook postInstall
  '';

  meta = with lib; {
    description = "Logitech G203 Prodigy / G203 LightSync Mouse LED control for Linux";
    longDescription = ''
      Allows you to control the LED lighting of your G203 Prodigy
      or G203 LightSync Mouse programmatically.
      Inspired by and based on g810-led.
    '';
    license = licenses.mit;
    maintainers = with maintainers; [ r-burns ];
    homepage = "https://github.com/smasty/g203-led";
    platforms = platforms.linux;
    mainProgram = "g203-led";
  };
}