python312Packages.types-aiobotocore: 2.15.2 -> 2.15.2.post3 (#361801)
[NixPkgs.git] / pkgs / by-name / eu / eudev / package.nix
blob089e811ad8a5034868dadaa706b2ba1cececc482
1 { lib
2 , stdenv
3 , fetchFromGitHub
4 , autoreconfHook
5 , gperf
6 , kmod
7 , pkg-config
8 , util-linux
9 , testers
12 stdenv.mkDerivation (finalAttrs: {
13   pname = "eudev";
14   version = "3.2.14";
16   src = fetchFromGitHub {
17     owner = "eudev-project";
18     repo = "eudev";
19     rev = "v${finalAttrs.version}";
20     hash = "sha256-v/szzqrBedQPRGYkZ0lV9rslCH//uqGp4PHEF0/51Lg=";
21   };
23   nativeBuildInputs = [
24     autoreconfHook
25     gperf
26     pkg-config
27   ];
29   buildInputs = [
30     kmod
31     util-linux
32   ];
34   configureFlags = [
35     "--localstatedir=/var"
36     "--sysconfdir=/etc"
37   ];
39   makeFlags = [
40     "hwdb_bin=/var/lib/udev/hwdb.bin"
41     "udevrulesdir=/etc/udev/rules.d"
42   ];
44   preInstall = ''
45     # Disable install-exec-hook target, as it conflicts with our move-sbin
46     # setup-hook
48     sed -i 's;$(MAKE) $(AM_MAKEFLAGS) install-exec-hook;$(MAKE) $(AM_MAKEFLAGS);g' src/udev/Makefile
49   '';
51   installFlags = [
52     "localstatedir=$(TMPDIR)/var"
53     "sysconfdir=$(out)/etc"
54     "udevconfdir=$(out)/etc/udev"
55     "udevhwdbbin=$(out)/var/lib/udev/hwdb.bin"
56     "udevhwdbdir=$(out)/var/lib/udev/hwdb.d"
57     "udevrulesdir=$(out)/var/lib/udev/rules.d"
58   ];
60   passthru.tests = {
61     pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
62   };
64   meta = {
65     homepage = "https://github.com/eudev-project/eudev";
66     description = "Fork of udev with the aim of isolating it from init";
67     longDescription = ''
68       eudev is a standalone dynamic and persistent device naming support (aka
69       userspace devfs) daemon that runs independently from the init
70       system. eudev strives to remain init system and linux distribution
71       neutral. It is currently used as the devfs manager for more than a dozen
72       different linux distributions.
74       This git repo is a fork of systemd repository with the aim of isolating
75       udev from any particular flavor of system initialization. In this case,
76       the isolation is from systemd.
78       This is a project started by Gentoo developers and testing was initially
79       being done mostly on OpenRC. We welcome contribution from others using a
80       variety of system initializations to ensure eudev remains system
81       initialization and distribution neutral. On 2021-08-20 Gentoo decided to
82       abandon eudev and a new project was established on 2021-09-14 by Alpine,
83       Devuan and Gentoo contributors.
84     '';
85     changelog = "https://github.com/eudev-project/eudev/releases/tag/${finalAttrs.src.rev}";
86     license = lib.licenses.gpl2Plus;
87     maintainers = with lib.maintainers; [ raskin AndersonTorres ];
88     pkgConfigModules = [ "libudev" "udev" ];
89     inherit (kmod.meta) platforms;
90   };