From b463abf3f8db62fc8b50b71a286a357574c08a31 Mon Sep 17 00:00:00 2001 From: Enno Richter Date: Mon, 21 Jun 2021 13:21:24 +0200 Subject: [PATCH] tuna: init at 0.15 --- pkgs/os-specific/linux/tuna/default.nix | 62 +++++++++++++++++++++++++ pkgs/top-level/all-packages.nix | 2 + 2 files changed, 64 insertions(+) create mode 100644 pkgs/os-specific/linux/tuna/default.nix diff --git a/pkgs/os-specific/linux/tuna/default.nix b/pkgs/os-specific/linux/tuna/default.nix new file mode 100644 index 00000000000..0e621a24f08 --- /dev/null +++ b/pkgs/os-specific/linux/tuna/default.nix @@ -0,0 +1,62 @@ +{ lib +, buildPythonApplication +, fetchgit +, pygobject3 +, pytestCheckHook +, gdk-pixbuf +, glib +, gobject-introspection +, gtk3 +, python-linux-procfs +, python-ethtool +, wrapGAppsHook +}: + +buildPythonApplication rec { + pname = "tuna"; + version = "0.15"; + + src = fetchgit { + url = "https://git.kernel.org/pub/scm/utils/${pname}/${pname}.git"; + rev = "v${version}"; + sha256 = "sha256-lRHlbdCQ0NcjcWgLvCze67kN8NsK0f5RmKfPbkHhk78="; + }; + + patchPhase = '' + mv tuna-cmd.py tuna/cmd.py + + substituteInPlace setup.py \ + --replace 'packages = ["tuna", "tuna/gui"],' \ + 'packages = ["tuna", "tuna/gui"], entry_points={"console_scripts":["tuna=tuna.cmd:main"]},' + + substituteInPlace tuna/tuna_gui.py \ + --replace "self.binpath + 'pkexec'" "'/run/wrappers/bin/pkexec'" \ + --replace 'tuna_glade_dirs = [".", "tuna", "/usr/share/tuna"]' "tuna_glade_dirs = [ \"$out/share/tuna\" ]" + ''; + + nativeBuildInputs = [ + glib.dev + gobject-introspection + gtk3 + wrapGAppsHook + ]; + + propagatedBuildInputs = [ pygobject3 python-linux-procfs python-ethtool ]; + + postInstall = '' + mkdir -p $out/share/tuna + cp tuna/tuna_gui.glade $out/share/tuna/ + ''; + + # contains no tests + doCheck = false; + pythonImportsCheck = [ "tuna" ]; + + meta = with lib; { + description = "Thread and IRQ affinity setting GUI and cmd line tool"; + homepage = "https://git.kernel.org/pub/scm/utils/tuna/tuna.git"; + license = licenses.gpl2Plus; + platforms = platforms.linux; + maintainers = with maintainers; [ elohmeier ]; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index f4a0603faf1..b53b5535a77 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -27177,6 +27177,8 @@ in tudu = callPackage ../applications/office/tudu { }; + tuna = python3Packages.callPackage ../os-specific/linux/tuna { }; + tunefish = callPackage ../applications/audio/tunefish { stdenv = clangStdenv; # https://github.com/jpcima/tunefish/issues/4 };