diff options
Diffstat (limited to 'infra/libkookie/nixpkgs/pkgs/os-specific/linux/lxcfs/default.nix')
-rw-r--r-- | infra/libkookie/nixpkgs/pkgs/os-specific/linux/lxcfs/default.nix | 51 |
1 files changed, 51 insertions, 0 deletions
diff --git a/infra/libkookie/nixpkgs/pkgs/os-specific/linux/lxcfs/default.nix b/infra/libkookie/nixpkgs/pkgs/os-specific/linux/lxcfs/default.nix new file mode 100644 index 000000000000..bcc8614bc6ab --- /dev/null +++ b/infra/libkookie/nixpkgs/pkgs/os-specific/linux/lxcfs/default.nix @@ -0,0 +1,51 @@ +{ config, stdenv, fetchFromGitHub, autoreconfHook, pkgconfig, help2man, fuse +, utillinux, makeWrapper +, enableDebugBuild ? config.lxcfs.enableDebugBuild or false }: + +with stdenv.lib; +stdenv.mkDerivation rec { + pname = "lxcfs"; + version = "4.0.5"; + + src = fetchFromGitHub { + owner = "lxc"; + repo = "lxcfs"; + rev = "lxcfs-${version}"; + sha256 = "12mk9hgqzzh1874389lrpvldlp87qxxa1sxzk5zr0d0n1857am5y"; + }; + + nativeBuildInputs = [ pkgconfig help2man autoreconfHook ]; + buildInputs = [ fuse makeWrapper ]; + + preConfigure = stdenv.lib.optionalString enableDebugBuild '' + sed -i 's,#AM_CFLAGS += -DDEBUG,AM_CFLAGS += -DDEBUG,' Makefile.am + ''; + + configureFlags = [ + "--with-init-script=systemd" + "--sysconfdir=/etc" + "--localstatedir=/var" + ]; + + installFlags = [ "SYSTEMD_UNIT_DIR=\${out}/lib/systemd" ]; + + postInstall = '' + # `mount` hook requires access to the `mount` command from `utillinux`: + wrapProgram "$out/share/lxcfs/lxc.mount.hook" \ + --prefix PATH : "${utillinux}/bin" + ''; + + postFixup = '' + # liblxcfs.so is reloaded with dlopen() + patchelf --set-rpath "$(patchelf --print-rpath "$out/bin/lxcfs"):$out/lib" "$out/bin/lxcfs" + ''; + + meta = { + description = "FUSE filesystem for LXC"; + homepage = "https://linuxcontainers.org/lxcfs"; + changelog = "https://linuxcontainers.org/lxcfs/news/"; + license = licenses.asl20; + platforms = platforms.linux; + maintainers = with maintainers; [ mic92 fpletz ]; + }; +} |