biome: 1.9.2 -> 1.9.3 (#349335)
[NixPkgs.git] / pkgs / applications / system / supergfxctl / default.nix
blob2318a4c96725fb9ae6b1e42c28523447774980b1
1 { lib
2 , rustPlatform
3 , fetchFromGitLab
4 , pkg-config
5 , systemd
6 }:
8 rustPlatform.buildRustPackage rec {
9   pname = "supergfxctl";
10   version = "5.2.4";
12   src = fetchFromGitLab {
13     owner = "asus-linux";
14     repo = "supergfxctl";
15     rev = version;
16     hash = "sha256-ie5JPHBvypUtPStwA/aO4GeQ/qbHTzUJF3T4QuW6JNc=";
17   };
19   cargoHash = "sha256-qZC4axeRnKgUNGDFzmdvN/mwkcqsh8KwLlM6oGT19e8=";
21   postPatch = ''
22     substituteInPlace data/supergfxd.service --replace /usr/bin/supergfxd $out/bin/supergfxd
23     substituteInPlace data/99-nvidia-ac.rules --replace /usr/bin/systemctl ${systemd}/bin/systemctl
24   '';
26   nativeBuildInputs = [ pkg-config ];
27   buildInputs = [ systemd ];
29   # upstream doesn't have tests, don't build twice just to find that out
30   doCheck = false;
32   postInstall = ''
33     install -Dm444 -t $out/lib/udev/rules.d/ data/*.rules
34     install -Dm444 -t $out/share/dbus-1/system.d/ data/org.supergfxctl.Daemon.conf
35     install -Dm444 -t $out/lib/systemd/system/ data/supergfxd.service
36   '';
38   meta = with lib; {
39     description = "GPU switching utility, mostly for ASUS laptops";
40     homepage = "https://gitlab.com/asus-linux/supergfxctl";
41     license = licenses.mpl20;
42     platforms = [ "x86_64-linux" ];
43     maintainers = [ maintainers.k900 ];
44   };