tuxclocker: init at 1.4.0

This commit is contained in:
Jussi Kuokkanen 2023-12-14 10:19:27 +02:00
parent 90dfce2859
commit 46e9f8243e
6 changed files with 178 additions and 0 deletions

View File

@ -0,0 +1,66 @@
{ lib
, stdenv
, boost
, fetchFromGitHub
, git
, makeWrapper
, meson
, ninja
, pkg-config
, python3
, qtbase
, qtcharts
, tuxclocker-plugins
, wrapQtAppsHook
}:
stdenv.mkDerivation (finalAttrs: {
pname = "tuxclocker";
version = "1.4.0";
src = fetchFromGitHub {
owner = "Lurkki14";
repo = "tuxclocker";
fetchSubmodules = true;
rev = "${finalAttrs.version}";
hash = "sha256-8dtuZXBWftXNQpqYgNQOayPGfvEIu9QfbqDShfkt1qA=";
};
# 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"
];
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;
};
})

View File

@ -0,0 +1,14 @@
diff --git a/src/plugins/meson.build b/src/plugins/meson.build
index cdd3b5b..a5a2174 100644
--- a/src/plugins/meson.build
+++ b/src/plugins/meson.build
@@ -63,9 +63,3 @@ if all_nvidia_linux_libs
install : true,
link_with : libtuxclocker)
endif
-
-shared_library('cpu', 'CPU.cpp', 'Utils.cpp',
- include_directories : [incdir, fplus_inc],
- install_dir : get_option('libdir') / 'tuxclocker' / 'plugins',
- install : true,
- link_with : libtuxclocker)

View File

@ -0,0 +1,34 @@
{ lib
, stdenv
, boost
, libX11
, libXext
, linuxPackages
, openssl
, tuxclocker-plugins
}:
stdenv.mkDerivation {
pname = "tuxclocker-nvidia-plugin";
inherit (tuxclocker-plugins) src version meta BOOST_INCLUDEDIR BOOST_LIBRARYDIR nativeBuildInputs;
buildInputs = [
boost
libX11
libXext
linuxPackages.nvidia_x11
linuxPackages.nvidia_x11.settings.libXNVCtrl
openssl
];
# Build doesn't have a way to disable building the CPU plugin, which is already
# provided by 'tuxclocker-plugins'
patches = [ ./no-cpu-plugin.patch ];
mesonFlags = [
"-Ddaemon=false"
"-Dgui=false"
"-Drequire-nvidia=true"
];
}

View File

@ -0,0 +1,16 @@
{ symlinkJoin
, tuxclocker-nvidia-plugin
, tuxclocker-plugins
}:
symlinkJoin rec {
inherit (tuxclocker-plugins) version meta;
pname = "tuxclocker-plugins-with-unfree";
name = "${pname}-${version}";
paths = [
tuxclocker-nvidia-plugin
tuxclocker-plugins
];
}

View File

@ -0,0 +1,42 @@
{ lib
, stdenv
, boost
, cmake
, gettext
, git
, libdrm
, meson
, ninja
, openssl
, pkg-config
, python3
, tuxclocker
}:
stdenv.mkDerivation {
inherit (tuxclocker) src version meta BOOST_INCLUDEDIR BOOST_LIBRARYDIR;
pname = "tuxclocker-plugins";
nativeBuildInputs = [
gettext
git
meson
ninja
pkg-config
(python3.withPackages(p: [ p.hwdata ]))
];
buildInputs = [
boost
libdrm
openssl
];
mesonFlags = [
"-Ddaemon=false"
"-Dgui=false"
"-Drequire-amd=true"
"-Drequire-python-hwdata=true"
];
}

View File

@ -36016,6 +36016,12 @@ with pkgs;
tut = callPackage ../applications/misc/tut { };
tuxclocker = libsForQt5.callPackage ../applications/misc/tuxclocker {
tuxclocker-plugins = tuxclocker-plugins-with-unfree;
};
tuxclocker-without-unfree = libsForQt5.callPackage ../applications/misc/tuxclocker { };
tuxedo-rs = callPackage ../os-specific/linux/tuxedo-rs { };
tuxguitar = callPackage ../applications/editors/music/tuxguitar {