nixpkgs/pkgs/tools/system/auto-cpufreq/default.nix

48 lines
1.3 KiB
Nix
Raw Normal View History

2021-09-23 19:54:42 +00:00
{ lib, python3Packages, fetchFromGitHub, substituteAll }:
2020-12-15 21:47:51 +00:00
python3Packages.buildPythonPackage rec {
pname = "auto-cpufreq";
2021-10-17 12:16:54 +00:00
version = "1.7.0";
2020-12-15 21:47:51 +00:00
src = fetchFromGitHub {
owner = "AdnanHodzic";
repo = pname;
rev = "v${version}";
2021-10-17 12:16:54 +00:00
sha256 = "0b6j26glg1ffihdr2h7dlr1lrbhkclgp17dxmkjgg5gk4mhz799r";
2020-12-15 21:47:51 +00:00
};
propagatedBuildInputs = with python3Packages; [ click distro psutil ];
doCheck = false;
pythonImportsCheck = [ "auto_cpufreq" ];
2020-12-15 21:47:51 +00:00
2021-09-23 19:54:42 +00:00
patches = [
# hardcodes version output
(substituteAll {
src = ./fix-version-output.patch;
inherit version;
})
# patch to prevent script copying and to disable install
./prevent-install-and-copy.patch
];
2020-12-15 21:47:51 +00:00
postInstall = ''
# copy script manually
cp ${src}/scripts/cpufreqctl.sh $out/bin/cpufreqctl.auto-cpufreq
# systemd service
mkdir -p $out/lib/systemd/system
cp ${src}/scripts/auto-cpufreq.service $out/lib/systemd/system
substituteInPlace $out/lib/systemd/system/auto-cpufreq.service --replace "/usr/local" $out
2020-12-15 21:47:51 +00:00
'';
meta = with lib; {
2020-12-15 21:47:51 +00:00
homepage = "https://github.com/AdnanHodzic/auto-cpufreq";
description = "Automatic CPU speed & power optimizer for Linux";
license = licenses.lgpl3Plus;
platforms = platforms.linux;
maintainers = [ maintainers.Technical27 ];
};
}