nixpkgs/pkgs/applications/virtualization/cri-o/default.nix

70 lines
1.4 KiB
Nix
Raw Normal View History

{ lib, stdenv
, btrfs-progs
, buildGoModule
, fetchFromGitHub
, glibc
, gpgme
2020-05-02 14:35:37 +02:00
, installShellFiles
, libapparmor
, libseccomp
, libselinux
, lvm2
2020-05-02 14:35:37 +02:00
, pkg-config
2020-08-24 00:42:49 +02:00
, nixosTests
}:
buildGoModule rec {
2020-05-02 14:35:37 +02:00
pname = "cri-o";
version = "1.20.0";
src = fetchFromGitHub {
owner = "cri-o";
repo = "cri-o";
rev = "v${version}";
sha256 = "sha256-3rougAl0vVH01ulbnfIO2x8OCyofWlvVsvlKjoAD2NE=";
};
vendorSha256 = null;
doCheck = false;
2020-05-02 14:35:37 +02:00
outputs = [ "out" "man" ];
nativeBuildInputs = [ installShellFiles pkg-config ];
buildInputs = [
btrfs-progs
gpgme
libapparmor
libseccomp
libselinux
lvm2
2021-01-15 06:42:41 +01:00
] ++ lib.optionals (glibc != null) [ glibc glibc.static ];
BUILDTAGS = "apparmor seccomp selinux containers_image_openpgp containers_image_ostree_stub";
buildPhase = ''
2020-05-02 14:35:37 +02:00
make binaries docs BUILDTAGS="$BUILDTAGS"
'';
2020-05-02 14:35:37 +02:00
installPhase = ''
2020-05-11 22:40:08 +02:00
install -Dm755 bin/* -t $out/bin
2020-05-02 14:35:37 +02:00
for shell in bash fish zsh; do
installShellCompletion --$shell completions/$shell/*
done
installManPage docs/*.[1-9]
'';
2020-08-24 00:42:49 +02:00
passthru.tests = { inherit (nixosTests) cri-o; };
meta = with lib; {
homepage = "https://cri-o.io";
2020-05-02 14:35:37 +02:00
description = ''
Open Container Initiative-based implementation of the
Kubernetes Container Runtime Interface
'';
license = licenses.asl20;
2020-04-24 00:07:39 +02:00
maintainers = with maintainers; [ ] ++ teams.podman.members;
platforms = platforms.linux;
};
}