nixpkgs/pkgs/applications/misc/tuxclocker/default.nix
2024-02-11 03:55:54 +00:00

72 lines
1.4 KiB
Nix

{ lib
, stdenv
, boost
, fetchFromGitHub
, git
, makeWrapper
, meson
, ninja
, pkg-config
, python3
, qtbase
, qtcharts
, tuxclocker-plugins
, tuxclocker-without-unfree
, wrapQtAppsHook
}:
stdenv.mkDerivation (finalAttrs: {
pname = "tuxclocker";
version = "1.5.1";
src = fetchFromGitHub {
owner = "Lurkki14";
repo = "tuxclocker";
fetchSubmodules = true;
rev = finalAttrs.version;
hash = "sha256-QLKLqTCpVMWxlDINa8Bo1vgCDcjwovoaXUs/PdMnxv0=";
};
# Meson doesn't find boost without these
BOOST_INCLUDEDIR = "${lib.getDev boost}/include";
BOOST_LIBRARYDIR = "${lib.getLib boost}/lib";
nativeBuildInputs = [
git
makeWrapper
meson
ninja
pkg-config
wrapQtAppsHook
];
buildInputs = [
boost
qtbase
qtcharts
];
postInstall = ''
wrapProgram "$out/bin/tuxclockerd" \
--prefix "TEXTDOMAINDIR" : "${tuxclocker-plugins}/share/locale" \
--prefix "TUXCLOCKER_PLUGIN_PATH" : "${tuxclocker-plugins}/lib/tuxclocker/plugins" \
--prefix "PYTHONPATH" : "${python3.pkgs.hwdata}/${python3.sitePackages}"
'';
mesonFlags = [
"-Dplugins=false"
];
passthru.tests = {
inherit tuxclocker-without-unfree;
};
meta = with lib; {
description = "Qt overclocking tool for GNU/Linux";
homepage = "https://github.com/Lurkki14/tuxclocker";
license = licenses.gpl3Only;
maintainers = with maintainers; [ lurkki ];
platforms = platforms.linux;
};
})