diff options
author | Jan Tojnar <jtojnar@gmail.com> | 2018-12-24 15:02:29 +0100 |
---|---|---|
committer | Jan Tojnar <jtojnar@gmail.com> | 2018-12-24 15:02:29 +0100 |
commit | ef935fa1016ba6209a8882f4ccd776c5272a4359 (patch) | |
tree | 8d4c66fda8f30dc3bb2a1c5ce5da5b7fca999dd8 /pkgs/applications/virtualization | |
parent | d5d15828b51a7d4fd7eee82c6e9a1b261aa49115 (diff) | |
parent | dd3eea4b476552cbdf95388179bfdd668d04b8b7 (diff) | |
download | nixlib-ef935fa1016ba6209a8882f4ccd776c5272a4359.tar nixlib-ef935fa1016ba6209a8882f4ccd776c5272a4359.tar.gz nixlib-ef935fa1016ba6209a8882f4ccd776c5272a4359.tar.bz2 nixlib-ef935fa1016ba6209a8882f4ccd776c5272a4359.tar.lz nixlib-ef935fa1016ba6209a8882f4ccd776c5272a4359.tar.xz nixlib-ef935fa1016ba6209a8882f4ccd776c5272a4359.tar.zst nixlib-ef935fa1016ba6209a8882f4ccd776c5272a4359.zip |
Merge branch 'master' into staging
Diffstat (limited to 'pkgs/applications/virtualization')
-rw-r--r-- | pkgs/applications/virtualization/firecracker/default.nix | 35 | ||||
-rw-r--r-- | pkgs/applications/virtualization/runc/default.nix | 30 |
2 files changed, 45 insertions, 20 deletions
diff --git a/pkgs/applications/virtualization/firecracker/default.nix b/pkgs/applications/virtualization/firecracker/default.nix new file mode 100644 index 000000000000..7d8772da73d7 --- /dev/null +++ b/pkgs/applications/virtualization/firecracker/default.nix @@ -0,0 +1,35 @@ +{ fetchurl, stdenv }: + +let + version = "0.12.0"; + baseurl = "https://github.com/firecracker-microvm/firecracker/releases/download"; + + fetchbin = name: sha256: fetchurl { + url = "${baseurl}/v${version}/${name}-v${version}"; + inherit sha256; + }; + + firecracker-bin = fetchbin "firecracker" "0jk9w5kagqp3w668c1x0g4yyahmy7696pm0bkhv066rrdpcqpw66"; + jailer-bin = fetchbin "jailer" "1fcxzpnapnccklgbi4bis3f6c9fki2daxvzg9l7433vfqz2zbyjl"; +in +stdenv.mkDerivation { + name = "firecracker-${version}"; + inherit version; + + srcs = [ firecracker-bin jailer-bin ]; + phases = [ "installPhase" ]; + + installPhase = '' + mkdir -p $out/bin + install -D ${firecracker-bin} $out/bin/firecracker + install -D ${jailer-bin} $out/bin/jailer + ''; + + meta = with stdenv.lib; { + description = "Secure, fast, minimal micro-container virtualization"; + homepage = http://firecracker-microvm.io; + license = licenses.asl20; + platforms = [ "x86_64-linux" ]; + maintainers = with maintainers; [ thoughtpolice ]; + }; +} diff --git a/pkgs/applications/virtualization/runc/default.nix b/pkgs/applications/virtualization/runc/default.nix index be5b8f621089..b89ef1dd7bff 100644 --- a/pkgs/applications/virtualization/runc/default.nix +++ b/pkgs/applications/virtualization/runc/default.nix @@ -1,9 +1,9 @@ -{ stdenv, lib, fetchFromGitHub, removeReferencesTo, go-md2man -, go, pkgconfig, libapparmor, apparmor-parser, libseccomp }: +{ stdenv, lib, fetchFromGitHub, buildGoPackage, go-md2man +, pkgconfig, libapparmor, apparmor-parser, libseccomp, which }: with lib; -stdenv.mkDerivation rec { +buildGoPackage rec { name = "runc-${version}"; version = "1.0.0-rc6"; @@ -14,32 +14,26 @@ stdenv.mkDerivation rec { sha256 = "1jwacb8xnmx5fr86gximhbl9dlbdwj3rpf27hav9q1si86w5pb1j"; }; - outputs = [ "out" "man" ]; + goPackagePath = "github.com/opencontainers/runc"; + outputs = [ "bin" "out" "man" ]; hardeningDisable = ["fortify"]; nativeBuildInputs = [ pkgconfig ]; - buildInputs = [ removeReferencesTo go-md2man go libseccomp libapparmor apparmor-parser ]; + buildInputs = [ go-md2man libseccomp libapparmor apparmor-parser which ]; makeFlags = ''BUILDTAGS+=seccomp BUILDTAGS+=apparmor''; - preConfigure = '' - # Extract the source - cd "$NIX_BUILD_TOP" - mkdir -p "go/src/github.com/opencontainers" - mv "$sourceRoot" "go/src/github.com/opencontainers/runc" - export GOPATH=$NIX_BUILD_TOP/go:$GOPATH - ''; - - preBuild = '' - cd go/src/github.com/opencontainers/runc + buildPhase = '' + cd go/src/${goPackagePath} patchShebangs . substituteInPlace libcontainer/apparmor/apparmor.go \ --replace /sbin/apparmor_parser ${apparmor-parser}/bin/apparmor_parser + make ${makeFlags} runc ''; installPhase = '' - install -Dm755 runc $out/bin/runc + install -Dm755 runc $bin/bin/runc # Include contributed man pages man/md2man-all.sh -q @@ -55,10 +49,6 @@ stdenv.mkDerivation rec { done ''; - preFixup = '' - find $out/bin -type f -exec remove-references-to -t ${go} '{}' + - ''; - meta = { homepage = https://runc.io/; description = "A CLI tool for spawning and running containers according to the OCI specification"; |