nixpkgs/pkgs/applications/virtualization/containerd/default.nix

55 lines
1.2 KiB
Nix

{ stdenv, lib, fetchFromGitHub, removeReferencesTo
, go, btrfs-progs }:
with lib;
stdenv.mkDerivation rec {
name = "containerd-${version}";
version = "1.1.1";
src = fetchFromGitHub {
owner = "containerd";
repo = "containerd";
rev = "v${version}";
sha256 = "0pk1kii8bmlvziblrqwb88w5cd486pmb7vw8p7kcyn9lqsw32ria";
};
hardeningDisable = [ "fortify" ];
buildInputs = [ removeReferencesTo go btrfs-progs ];
buildFlags = "VERSION=v${version}";
BUILDTAGS = []
++ optional (btrfs-progs == null) "no_btrfs";
preConfigure = ''
# Extract the source
cd "$NIX_BUILD_TOP"
mkdir -p "go/src/github.com/containerd"
mv "$sourceRoot" "go/src/github.com/containerd/containerd"
export GOPATH=$NIX_BUILD_TOP/go:$GOPATH
'';
preBuild = ''
cd go/src/github.com/containerd/containerd
patchShebangs .
'';
installPhase = ''
mkdir -p $out/bin
cp bin/* $out/bin
'';
preFixup = ''
find $out -type f -exec remove-references-to -t ${go} '{}' +
'';
meta = {
homepage = https://containerd.tools/;
description = "A daemon to control runC";
license = licenses.asl20;
maintainers = with maintainers; [ offline ];
platforms = platforms.linux;
};
}