about summary refs log tree commit diff
path: root/pkgs/os-specific
diff options
context:
space:
mode:
Diffstat (limited to 'pkgs/os-specific')
-rw-r--r--pkgs/os-specific/linux/bpftool/default.nix4
-rw-r--r--pkgs/os-specific/linux/kernel/linux-5.5.nix18
-rw-r--r--pkgs/os-specific/linux/kernel/perf.nix6
-rw-r--r--pkgs/os-specific/linux/zenmonitor/default.nix26
4 files changed, 53 insertions, 1 deletions
diff --git a/pkgs/os-specific/linux/bpftool/default.nix b/pkgs/os-specific/linux/bpftool/default.nix
index 8b288fc046a6..34ddcc3a213f 100644
--- a/pkgs/os-specific/linux/bpftool/default.nix
+++ b/pkgs/os-specific/linux/bpftool/default.nix
@@ -1,15 +1,19 @@
 { stdenv
 , libopcodes, libbfd, libelf
 , linuxPackages_latest, zlib
+, python3
 }:
 
 stdenv.mkDerivation {
   pname = "bpftool";
   inherit (linuxPackages_latest.kernel) version src;
 
+  nativeBuildInputs = [ python3 ];
   buildInputs = [ libopcodes libbfd libelf zlib ];
 
   preConfigure = ''
+    patchShebangs scripts/bpf_helpers_doc.py
+
     cd tools/bpf/bpftool
     substituteInPlace ./Makefile \
       --replace '/usr/local' "$out" \
diff --git a/pkgs/os-specific/linux/kernel/linux-5.5.nix b/pkgs/os-specific/linux/kernel/linux-5.5.nix
new file mode 100644
index 000000000000..7347cf1fa668
--- /dev/null
+++ b/pkgs/os-specific/linux/kernel/linux-5.5.nix
@@ -0,0 +1,18 @@
+{ stdenv, buildPackages, fetchurl, perl, buildLinux, modDirVersionArg ? null, ... } @ args:
+
+with stdenv.lib;
+
+buildLinux (args // rec {
+  version = "5.5";
+
+  # modDirVersion needs to be x.y.z, will automatically add .0 if needed
+  modDirVersion = if (modDirVersionArg == null) then concatStringsSep "." (take 3 (splitVersion "${version}.0")) else modDirVersionArg;
+
+  # branchVersion needs to be x.y
+  extraMeta.branch = versions.majorMinor version;
+
+  src = fetchurl {
+    url = "mirror://kernel/linux/kernel/v5.x/linux-${version}.tar.xz";
+    sha256 = "0c131fi6s7vgvka1c0597vnvcmwn1pp968rci5kq64iwj3pd9yx6";
+  };
+} // (args.argsOverride or {}))
diff --git a/pkgs/os-specific/linux/kernel/perf.nix b/pkgs/os-specific/linux/kernel/perf.nix
index 9f32e3e37ddb..07dd8c78f426 100644
--- a/pkgs/os-specific/linux/kernel/perf.nix
+++ b/pkgs/os-specific/linux/kernel/perf.nix
@@ -36,7 +36,7 @@ stdenv.mkDerivation {
   # perf refers both to newt and slang
   nativeBuildInputs = [
     asciidoc xmlto docbook_xsl docbook_xml_dtd_45 libxslt
-    flex bison libiberty audit makeWrapper pkgconfig
+    flex bison libiberty audit makeWrapper pkgconfig python3
   ];
   buildInputs = [
     elfutils newt slang libunwind libbfd zlib openssl systemtap.stapBuild numactl
@@ -54,6 +54,10 @@ stdenv.mkDerivation {
     "-Wno-error=stringop-truncation"
   ];
 
+  postPatch = ''
+    patchShebangs scripts/bpf_helpers_doc.py
+  '';
+
   doCheck = false; # requires "sparse"
   doInstallCheck = false; # same
 
diff --git a/pkgs/os-specific/linux/zenmonitor/default.nix b/pkgs/os-specific/linux/zenmonitor/default.nix
new file mode 100644
index 000000000000..c333b94f40e2
--- /dev/null
+++ b/pkgs/os-specific/linux/zenmonitor/default.nix
@@ -0,0 +1,26 @@
+{ stdenv, fetchFromGitHub, pkgconfig, gtk3, wrapGAppsHook }:
+
+stdenv.mkDerivation rec {
+  pname = "zenmonitor";
+  version = "1.3";
+
+  src = fetchFromGitHub {
+    owner = "ocerman";
+    repo = "zenmonitor";
+    rev = "v${version}";
+    sha256 = "16p2njrgik8zfkidm64v4qy53qlsqqxxgr9m3n84pr9l3pk25dwk";
+  };
+
+  buildInputs = [ gtk3 ];
+  nativeBuildInputs = [ pkgconfig wrapGAppsHook ];
+
+  makeFlags = [ "PREFIX=${placeholder "out"}" ];
+
+  meta = with stdenv.lib; {
+    description = "Monitoring software for AMD Zen-based CPUs";
+    homepage = https://github.com/ocerman/zenmonitor;
+    license = licenses.mit;
+    platforms = [ "i686-linux" "x86_64-linux" ];
+    maintainers = with maintainers; [ alexbakker ];
+  };
+}