summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorIlya Mochalov <chrootsu@gmail.com>2022-10-17 04:49:02 +0500
committerJoonas Niilola <juippis@gentoo.org>2022-11-02 16:24:25 +0200
commite6496a3f70106dc16773554ba151290e435b284b (patch)
tree0b38ab351d1328575ef71e0fd2e794069a7b02ba
parentmail-filter/milter-regex: drop 2.7-r1, 2.7-r2 (diff)
downloadgentoo-e6496a3f.tar.gz
gentoo-e6496a3f.tar.bz2
gentoo-e6496a3f.zip
app-emulation/firecracker-bin: add 1.1.2
Signed-off-by: Ilya Mochalov <chrootsu@gmail.com> Closes: https://github.com/gentoo/gentoo/pull/27815 Signed-off-by: Joonas Niilola <juippis@gentoo.org>
-rw-r--r--app-emulation/firecracker-bin/Manifest2
-rw-r--r--app-emulation/firecracker-bin/firecracker-bin-1.1.2.ebuild82
2 files changed, 84 insertions, 0 deletions
diff --git a/app-emulation/firecracker-bin/Manifest b/app-emulation/firecracker-bin/Manifest
index 18ea8eeb33e1..38a92587372e 100644
--- a/app-emulation/firecracker-bin/Manifest
+++ b/app-emulation/firecracker-bin/Manifest
@@ -4,3 +4,5 @@ DIST firecracker-v1.1.0-aarch64.tgz 1872949 BLAKE2B 41d898e3b22a7e53ce3581d1e74b
DIST firecracker-v1.1.0-x86_64.tgz 1896567 BLAKE2B 4f3cee9c144e152c15d64d80c708a1969bc57fdc951f8fe54f40a778b83a1ef7141cd0a6abe6014c20aa20958f0e02749712ebfb39896006e0291d94a12d743e SHA512 ca7efe3208560e4e7e50a4b57f875cea0677383f3867bf961747c44aa51ebe66abfc104e5c0e80783d286c95d38b97751c6cda1840942f463c0749c9340fee5a
DIST firecracker-v1.1.1-aarch64.tgz 1872407 BLAKE2B 16dd7c0f4fc46beacb3cd72f5c671dafd4fe738886754df7540b62b4243bbcd6fd9a25d34a0e295082e32ed250f504789a5af9bc0b22187d51f2165af13e3e53 SHA512 8d776daafcf13c5c971008b6e3e60538e17a96a245869526320a7f9a2a341cf9429c6dd2d22bf044c4192da613d7cca5b5814d71ab0d895009f60b9140aff1b9
DIST firecracker-v1.1.1-x86_64.tgz 1894446 BLAKE2B c2af407efb6a494b3e84a480164f0fa7b8537fe659e36531738a96b013f6bad016a7c44490e65cfcea1fc8c709be64f738134b88793889179c5e8e31ac84489f SHA512 ad5e52f690f18c2c9809b586fa9be35e06ac52b5ba672ad62acb872b7f9e8de91d2dfe200629ad392709e1363ea41169f8d816be482fd46dd6c38c1b9a8e28a9
+DIST firecracker-v1.1.2-aarch64.tgz 1873376 BLAKE2B e4498be965aa7706dd6eb3ff50eaf93815dafa1a3e931b449eb209deea0bafcd63bb3ff2b971026880b66d6486001f449ab4fc43ff446d18b8724c38e5663450 SHA512 cb67c35dfc8eddcec0bc707693442fd0f27ce56f73743ac40c0085854a1481ed2d914d0ca0e824eae79363eda87452be15b75ac88c3e93df7fe38b4887ebc3d4
+DIST firecracker-v1.1.2-x86_64.tgz 1894723 BLAKE2B 18044fa794826da62f026f61f779427e6ffb606b84e64e3b65bd1904acc06578dfe333130bcd2871371093c2d7d9e5756a744fb7181378bc71a0d80cca586daf SHA512 a2d5c36021c0f309f75182148b794beb3ca6369b63eb1ca9e963e0991df07cc6987d4653a7318b53c76cd82db5827dda059877c4d7f7bbd8d89e313a26c81b30
diff --git a/app-emulation/firecracker-bin/firecracker-bin-1.1.2.ebuild b/app-emulation/firecracker-bin/firecracker-bin-1.1.2.ebuild
new file mode 100644
index 000000000000..d91fe042b78a
--- /dev/null
+++ b/app-emulation/firecracker-bin/firecracker-bin-1.1.2.ebuild
@@ -0,0 +1,82 @@
+# Copyright 2021-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit linux-info
+
+DESCRIPTION="Secure and fast microVMs for serverless computing (static build)"
+HOMEPAGE="https://firecracker-microvm.github.io https://github.com/firecracker-microvm/firecracker"
+SRC_URI="
+ amd64? (
+ https://github.com/firecracker-microvm/firecracker/releases/download/v${PV}/firecracker-v${PV}-x86_64.tgz
+ )
+ arm64? (
+ https://github.com/firecracker-microvm/firecracker/releases/download/v${PV}/firecracker-v${PV}-aarch64.tgz
+ )"
+
+LICENSE="|| ( Apache-2.0 MIT Apache-2.0-with-LLVM-exceptions ) MPL-2.0"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64"
+
+RESTRICT="test strip"
+
+RDEPEND="acct-group/kvm"
+
+QA_PREBUILT="usr/bin/firecracker
+ usr/bin/jailer
+ usr/bin/rebase-snap
+ usr/bin/seccompiler-bin"
+
+S="${WORKDIR}"
+
+pkg_pretend() {
+ if use kernel_linux && kernel_is lt 4 14; then
+ eerror "Firecracker requires a host kernel of 4.14 or higher."
+ elif use kernel_linux; then
+ if ! linux_config_exists; then
+ eerror "Unable to check your kernel for KVM support"
+ else
+ CONFIG_CHECK="~KVM ~TUN ~BRIDGE"
+ ERROR_KVM="You must enable KVM in your kernel to continue"
+ ERROR_KVM_AMD="If you have an AMD CPU, you must enable KVM_AMD in"
+ ERROR_KVM_AMD+=" your kernel configuration."
+ ERROR_KVM_INTEL="If you have an Intel CPU, you must enable"
+ ERROR_KVM_INTEL+=" KVM_INTEL in your kernel configuration."
+ ERROR_TUN="You will need the Universal TUN/TAP driver compiled"
+ ERROR_TUN+=" into your kernel or loaded as a module to use"
+ ERROR_TUN+=" virtual network devices."
+ ERROR_BRIDGE="You will also need support for 802.1d"
+ ERROR_BRIDGE+=" Ethernet Bridging for some network configurations."
+
+ if use amd64 || use amd64-linux; then
+ if grep -q AuthenticAMD /proc/cpuinfo; then
+ CONFIG_CHECK+=" ~KVM_AMD"
+ elif grep -q GenuineIntel /proc/cpuinfo; then
+ CONFIG_CHECK+=" ~KVM_INTEL"
+ fi
+ fi
+
+ # Now do the actual checks setup above
+ check_extra_config
+ fi
+ fi
+}
+
+src_compile() { :; }
+
+src_install() {
+ if use amd64; then
+ my_arch=x86_64
+ elif use arm64; then
+ my_arch=aarch64
+ fi
+
+ dodoc "release-v${PV}-${my_arch}/firecracker_spec-v${PV}.yaml"
+ dodoc "release-v${PV}-${my_arch}/seccomp-filter-v${PV}-${my_arch}.json"
+
+ newbin "release-v${PV}-${my_arch}/firecracker-v${PV}-${my_arch}" firecracker
+ newbin "release-v${PV}-${my_arch}/jailer-v${PV}-${my_arch}" jailer
+ newbin "release-v${PV}-${my_arch}/rebase-snap-v${PV}-${my_arch}" rebase-snap
+ newbin "release-v${PV}-${my_arch}/seccompiler-bin-v${PV}-${my_arch}" seccompiler-bin
+}