nixpkgs/pkgs/os-specific/linux/rtkit/default.nix
stuebinm ff1a94e523 treewide: add meta.mainProgram to packages with a single binary
The nixpkgs-unstable channel's programs.sqlite was used to identify
packages producing exactly one binary, and these automatically added
to their package definitions wherever possible.
2024-03-19 03:14:51 +01:00

58 lines
2.0 KiB
Nix

{ lib, stdenv, fetchFromGitHub, fetchpatch
, meson, ninja, pkg-config, unixtools
, dbus, libcap, polkit, systemd
}:
stdenv.mkDerivation rec {
pname = "rtkit";
version = "0.13";
src = fetchFromGitHub {
owner = "heftig";
repo = "rtkit";
rev = "c295fa849f52b487be6433e69e08b46251950399";
sha256 = "0yfsgi3pvg6dkizrww1jxpkvcbhzyw9110n1dypmzq0c5hlzjxcd";
};
patches = [
(fetchpatch {
name = "meson-actual-use-systemd_systemunitdir.patch";
url = "https://github.com/heftig/rtkit/pull/19/commits/7d62095b94f8df3891c984a1535026d2658bb177.patch";
sha256 = "17acv549zqcgh7sgprfagbf6drqsr0zdwvf1dsqda7wlqc2h9zn7";
})
(fetchpatch {
name = "meson-fix-librt-find_library-check.patch";
url = "https://github.com/heftig/rtkit/pull/18/commits/98f70edd8f534c371cb4308b9720739c5178918d.patch";
sha256 = "18mnjjsdjfr184nkzi01xyphpdngi31ry4bmkv9ysjxf9wilv4nl";
})
(fetchpatch {
name = "rtkit-daemon-dont-log-debug-messages-by-default.patch";
url = "https://github.com/heftig/rtkit/pull/33/commits/ad649ee491ed1a41537774ad11564a208e598a09.patch";
sha256 = "sha256-p+MdJVMv58rFd1uc1UFKtq83RquDSFZ3M6YfaBU12UU=";
})
];
nativeBuildInputs = [ meson ninja pkg-config unixtools.xxd ];
buildInputs = [ dbus libcap polkit systemd ];
mesonFlags = [
"-Dinstalled_tests=false"
"-Ddbus_systemservicedir=${placeholder "out"}/share/dbus-1/system-services"
"-Ddbus_interfacedir=${placeholder "out"}/share/dbus-1/interfaces"
"-Ddbus_rulesdir=${placeholder "out"}/etc/dbus-1/system.d"
"-Dpolkit_actiondir=${placeholder "out"}/share/polkit-1/actions"
"-Dsystemd_systemunitdir=${placeholder "out"}/etc/systemd/system"
];
meta = with lib; {
homepage = "https://github.com/heftig/rtkit";
description = "A daemon that hands out real-time priority to processes";
mainProgram = "rtkitctl";
license = with licenses; [ gpl3 bsd0 ]; # lib is bsd license
platforms = platforms.linux;
};
}