nixpkgs/pkgs/tools/admin/chkservice/default.nix
Sergei Trofimovich 394521c780 chkservice: pull fix for gcc-11
Without the change build fails on gcc-11 as:

    src/chk-systemd.cpp: In member function 'const char* ChkBus::getState(const char*)':
    src/chk-systemd.cpp:120:15: error: ordered comparison of pointer with integer zero ('const char*' and 'int')
      120 |     if (state < 0) {
          |         ~~~~~~^~~
2022-09-25 16:29:49 +01:00

56 lines
1.2 KiB
Nix

{ lib
, stdenv
, fetchFromGitHub
, fetchpatch
, cmake
, ninja
, pkg-config
, systemd
, ncurses
}:
stdenv.mkDerivation rec {
pname = "chkservice";
version = "0.3";
src = fetchFromGitHub {
owner = "linuxenko";
repo = "chkservice";
rev = version;
hash = "sha256-ZllO6Ag+OgAkQp6jSv000NUEskXFuhMcCo83A4Wp2zU=";
};
patches = [
# Pull fix pending upstream inclusion for gcc-11 support:
# https://github.com/linuxenko/chkservice/pull/38
(fetchpatch {
name = "gcc-11.patch";
url = "https://github.com/linuxenko/chkservice/commit/26b12a7918c8a3bc449c92b458e6cd5c2d7b2e05.patch";
hash = "sha256-LaJLlqRyn1eoahbW2X+hDSt8iV4lhNRn0j0kLHB+RhM=";
})
];
# Tools needed during build time
nativeBuildInputs = [
cmake
# Makes the build faster, adds less than half a megabyte to the build
# dependencies
ninja
pkg-config
];
buildInputs = [
systemd
ncurses
];
hardeningDisable = [ "format" ];
meta = {
description = "chkservice is a tool for managing systemd units in terminal.";
platforms = lib.platforms.all;
maintainers = with lib.maintainers; [ infinisil ];
license = lib.licenses.gpl3Plus;
homepage = "https://github.com/linuxenko/chkservice";
};
}