Unverified Commit c7cd9d20 authored by Sandro Jäckel's avatar Sandro Jäckel Committed by GitHub
Browse files

Merge pull request #173806 from SuperSandro2000/systeroid

parents c78acaec fc4dc5ef
Loading
Loading
Loading
Loading
+84 −0
Original line number Diff line number Diff line
{ lib
, stdenv
, graphviz
, imagemagick
, linux_latest
, makeFontsConf
, perl
, python3
, sphinx
, which
}:

let
  py = python3.override {
    packageOverrides = final: prev: rec {
      docutils_old = prev.docutils.overridePythonAttrs (oldAttrs: rec {
        version = "0.16";
        src = oldAttrs.src.override {
          inherit version;
          sha256 = "sha256-wt46YOnn0Hvia38rAMoDCcIH4GwQD5zCqUkx/HWkePw=";
        };
      });

      sphinx = (prev.sphinx.override rec {
        alabaster = prev.alabaster.override { inherit pygments; };
        docutils = docutils_old;
        pygments = prev.pygments.override { docutils = docutils_old; };
      }).overridePythonAttrs {
        # fails due to duplicated packages
        doCheck = false;
      };

      sphinx_rtd_theme = prev.sphinx_rtd_theme.override {
        inherit sphinx;
        docutils = docutils_old;
      };
    };
  };
in

stdenv.mkDerivation {
  pname = "linux-kernel-latest-htmldocs";

  inherit (linux_latest) version src;

  postPatch = ''
    patchShebangs \
      Documentation/sphinx/parse-headers.pl \
      scripts/{get_abi.pl,get_feat.pl,kernel-doc,sphinx-pre-install}
  '';

  FONTCONFIG_FILE = makeFontsConf {
    fontDirectories = [ ];
  };

  nativeBuildInputs = [
    graphviz
    imagemagick
    perl
    py.pkgs.sphinx
    py.pkgs.sphinx_rtd_theme
    which
  ];

  preBuild = ''
    export XDG_CACHE_HOME="$(mktemp -d)"
  '';

  makeFlags = [ "htmldocs" ];

  installPhase = ''
    mkdir -p $out/share/doc
    mv Documentation/output $out/share/doc/linux-doc
    cp -r Documentation/* $out/share/doc/linux-doc/
  '';

  meta = with lib; {
    description = "Linux kernel html documentation";
    homepage = "https://www.kernel.org/doc/htmldocs/";
    platforms = platforms.linux;
    inherit (linux_latest.meta) license;
    maintainers = with maintainers; [ SuperSandro2000 ];
  };
}
+39 −0
Original line number Diff line number Diff line
{ lib
, rustPlatform
, fetchFromGitHub
, linux-doc
, xorg
}:

rustPlatform.buildRustPackage rec {
  pname = "systeroid";
  version = "0.1.1";

  src = fetchFromGitHub {
    owner = "orhun";
    repo = pname;
    rev = "v${version}";
    sha256 = "0xf81wyp5qg67r0vyqg0209pcabx70vvxx4nrg2y7qa0mhvf6p94";
  };

  postPatch = ''
    substituteInPlace systeroid-core/src/parsers.rs \
      --replace '"/usr/share/doc/kernel-doc-*/Documentation/*",' '"${linux-doc}/share/doc/linux-doc/*",'
  '';

  cargoSha256 = "sha256-D/sSeMR1Zg3OH1fdSVKdxdIcoP4OLp3T8mwQ28O8rfk=";

  buildInputs = [
    xorg.libxcb
  ];

  # tries to access /sys/
  doCheck = false;

  meta = with lib; {
    description = "More powerful alternative to sysctl(8) with a terminal user interface";
    homepage = "https://github.com/orhun/systeroid";
    license = licenses.asl20;
    maintainers = with maintainers; [ SuperSandro2000 ];
  };
}
+4 −0
Original line number Diff line number Diff line
@@ -1176,6 +1176,8 @@ with pkgs;
  sx-go = callPackage ../tools/security/sx-go { };
  systeroid = callPackage ../tools/system/systeroid { };
  tauon = callPackage ../applications/audio/tauon { };
  termusic = callPackage ../applications/audio/termusic { };
@@ -23262,6 +23264,8 @@ with pkgs;
  linuxPackages_xanmod_latest = linuxKernel.packages.linux_xanmod_latest;
  linux_xanmod_latest = linuxKernel.kernels.linux_xanmod_latest;
  linux-doc = callPackage ../os-specific/linux/kernel/htmldocs.nix { };
  cryptodev = linuxKernel.packages.linux_4_9.cryptodev;
  dpdk = callPackage ../os-specific/linux/dpdk {