From 23845d7084583a87ca30bb937d4c44b3c203b3af Mon Sep 17 00:00:00 2001 From: Nikolay Amiantov Date: Mon, 9 Nov 2015 17:24:08 +0300 Subject: tlp: add x86_energy_perf_policy, refactor --- pkgs/tools/misc/tlp/default.nix | 33 +++++++++++++++------------------ 1 file changed, 15 insertions(+), 18 deletions(-) (limited to 'pkgs/tools') diff --git a/pkgs/tools/misc/tlp/default.nix b/pkgs/tools/misc/tlp/default.nix index 5210a07d7ffa..52d79a9bd5d2 100644 --- a/pkgs/tools/misc/tlp/default.nix +++ b/pkgs/tools/misc/tlp/default.nix @@ -1,11 +1,10 @@ -{ stdenv, fetchFromGitHub, makeWrapper, perl, systemd, iw, rfkill, hdparm, ethtool, inetutils, kmod -, pciutils, smartmontools -, enableRDW ? true, networkmanager }: +{ stdenv, lib, fetchFromGitHub, makeWrapper, perl, systemd, iw, rfkill, hdparm, ethtool, inetutils +, kmod, pciutils, smartmontools, x86_energy_perf_policy +, enableRDW ? false, networkmanager +}: let version = "0.8"; in stdenv.mkDerivation { - inherit enableRDW; - name = "tlp-${version}"; src = fetchFromGitHub { @@ -27,10 +26,11 @@ in stdenv.mkDerivation { buildInputs = [ perl ]; - paths = with stdenv.lib; - concatMapStringsSep ":" (x: "${x}/bin") - ([ iw rfkill hdparm ethtool inetutils systemd kmod pciutils smartmontools ] - ++ optional enableRDW networkmanager + paths = lib.makeSearchPath "bin" + ([ iw rfkill hdparm ethtool inetutils systemd kmod pciutils smartmontools + x86_energy_perf_policy + ] + ++ lib.optional enableRDW networkmanager ); installTargets = [ "install-tlp" ] ++ stdenv.lib.optional enableRDW "install-rdw"; @@ -41,13 +41,6 @@ in stdenv.mkDerivation { wrapProgram "$i" \ --prefix PATH : "$paths" done - if [ "$enableRDW" = "1" ]; then - for i in $out/etc/NetworkManager/dispatcher.d/*; do - sed -i "s,/usr/lib/,$out/lib/,g" "$i" - wrapProgram "$i" \ - --prefix PATH : "$paths" - done - fi for i in $out/lib/udev/rules.d/*; do sed -i "s,RUN+=\",\\0$out,g; s,/usr/sbin,/bin,g" "$i" @@ -56,10 +49,14 @@ in stdenv.mkDerivation { for i in man/*; do install -D $i $out/share/man/man''${i##*.}/$(basename $i) done + '' + lib.optionalString enableRDW '' + for i in $out/etc/NetworkManager/dispatcher.d/*; do + sed -i "s,/usr/lib/,$out/lib/,g" "$i" + wrapProgram "$i" \ + --prefix PATH : "$paths" + done ''; - passthru = { inherit enableRDW; }; - meta = with stdenv.lib; { description = "Advanced Power Management for Linux"; homepage = "http://linrunner.de/en/tlp/docs/tlp-linux-advanced-power-management.html"; -- cgit 1.4.1