chromium,chromedriver: 129.0.6668.91 -> 129.0.6668.100
[NixPkgs.git] / pkgs / by-name / lx / lxcfs / package.nix
blob7b7516ba72c67ce06de35d74138e0497275e11d4
2   lib,
3   stdenv,
4   fetchFromGitHub,
5   fuse3,
6   help2man,
7   makeWrapper,
8   meson,
9   ninja,
10   nix-update-script,
11   nixosTests,
12   pkg-config,
13   python3,
14   util-linux,
15   coreutils,
18 stdenv.mkDerivation rec {
19   pname = "lxcfs";
20   version = "6.0.2";
22   src = fetchFromGitHub {
23     owner = "lxc";
24     repo = "lxcfs";
25     rev = "v${version}";
26     hash = "sha256-5r1X/yUXTMC/2dNhpI+BVYeClIydefg2lurCGt7iA8Y=";
27   };
29   patches = [
30     # skip RPM spec generation
31     ./no-spec.patch
33     # skip installing systemd files
34     ./skip-init.patch
36     # fix pidfd checks and include
37     ./pidfd.patch
38   ];
40   nativeBuildInputs = [
41     meson
42     help2man
43     makeWrapper
44     ninja
45     (python3.withPackages (p: [ p.jinja2 ]))
46     pkg-config
47   ];
48   buildInputs = [ fuse3 ];
50   preConfigure = ''
51     patchShebangs tools/
52   '';
54   postInstall = ''
55     # `mount` hook requires access to the `mount` command from `util-linux` and `readlink` from `coreutils`:
56     wrapProgram "$out/share/lxcfs/lxc.mount.hook" --prefix PATH : ${lib.makeBinPath [ coreutils util-linux ]}
57   '';
59   postFixup = ''
60     # liblxcfs.so is reloaded with dlopen()
61     patchelf --set-rpath "$(patchelf --print-rpath "$out/bin/lxcfs"):$out/lib" "$out/bin/lxcfs"
62   '';
64   passthru = {
65     tests = {
66       incus-container-legacy-init = nixosTests.incus.container-legacy-init;
67       incus-container-systemd-init = nixosTests.incus.container-systemd-init;
68     };
70     updateScript = nix-update-script { };
71   };
73   meta = {
74     description = "FUSE filesystem for LXC";
75     mainProgram = "lxcfs";
76     homepage = "https://linuxcontainers.org/lxcfs";
77     changelog = "https://linuxcontainers.org/lxcfs/news/";
78     license = lib.licenses.asl20;
79     platforms = lib.platforms.linux;
80     maintainers = lib.teams.lxc.members;
81   };