commit:     af483c10abcb7283a93b0b414e2554fb2b5f8f4d
Author:     Sebastian Hamann <code <AT> ares-macrotechnology <DOT> com>
AuthorDate: Thu Aug 10 06:16:41 2023 +0000
Commit:     Yixun Lan <dlan <AT> gentoo <DOT> org>
CommitDate: Thu Aug 10 10:07:24 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=af483c10

app-emulation/firecracker-bin: add 1.4.1

Signed-off-by: Sebastian Hamann <code <AT> ares-macrotechnology.com>
Signed-off-by: Yixun Lan <dlan <AT> gentoo.org>

 app-emulation/firecracker-bin/Manifest             |  2 +
 .../firecracker-bin/firecracker-bin-1.4.1.ebuild   | 83 ++++++++++++++++++++++
 2 files changed, 85 insertions(+)

diff --git a/app-emulation/firecracker-bin/Manifest 
b/app-emulation/firecracker-bin/Manifest
index 1ec394d7d9fa..64d3520a57a9 100644
--- a/app-emulation/firecracker-bin/Manifest
+++ b/app-emulation/firecracker-bin/Manifest
@@ -8,3 +8,5 @@ DIST firecracker-v1.3.3-aarch64.tgz 4203758 BLAKE2B 
0ce55d98420fe23281c54ad43b83
 DIST firecracker-v1.3.3-x86_64.tgz 4170049 BLAKE2B 
691135ef0d269667cde73bded237b2b6b59c6d74bd92dc0938b6b6b31babc6c28de841eef3ecb6769a6c5f4fe7d85e1ebf25f133608746676a02af4ae0e5028e
 SHA512 
12697db9ce0cd2724dbb7a56643fc660c1b0faf7910090fbd227300099f54bf4f69678fa328f84827c18031db3827104262a7365db53fffdede7759e7562f1bc
 DIST firecracker-v1.4.0-aarch64.tgz 8415004 BLAKE2B 
8311a8ec4a98be63ca6398559bab173e083eeecbd359dfcee972d84f978b465d80d35c36e557b56b3aaa9a3c4bfaec3f8562077101c215bf2835bd941b5ee31e
 SHA512 
c22074c50b9d4ca94f10dcdbe81bffa03f9a9bd5fe43a1e7a545469feee51234217664a422c70e8c111690c69ff93e72003eaa4df84a484db4d45215b6fe40ce
 DIST firecracker-v1.4.0-x86_64.tgz 8818170 BLAKE2B 
0f5ed139ad6426f45e31b1c29238199a67af2140a8c8992779472563cd4dc75d0311161f0bf95dd708a9660b2f3d55e5f89f4c0e8e5767958f98cf57a4b2157f
 SHA512 
e72aafcc667a78ac691000e81d67aaf0cc69adbbefaed19e647d294988a084612b0c3b6f73738200e8b5769cc128b07e0bf8bc1a079402f11317c70e17147594
+DIST firecracker-v1.4.1-aarch64.tgz 8517732 BLAKE2B 
4c12716654a48aaf82c1b8888ad26449f2d9f8ffb9d002707dc921de9ec72a25b6afb5dd6f3d65cd7857de3ca5f65e9eede9f352a4aab55d4fe7cccbf939c201
 SHA512 
c8b83515d8e84c6bb42c5e9a7a8f08bd7eb5a91d7e255551849ff703f1867ab30e7e69dc139215f138035e253e853367697ff431e67dc868ec5cacce2b5762b2
+DIST firecracker-v1.4.1-x86_64.tgz 8957780 BLAKE2B 
ba6f9a4a01157e3e5e93a3e8676ec7b32cd40a9f9dac101c441e359e965db02adaa2f1c439f98732ac66c4b65b384db0d1fa8032d605a2db7377ab3691a09a06
 SHA512 
a56db43bf725c547ad5fae15c72ebb669fc66e037f63bc30048a1287d4f0b49a2841949693da23af0359ba2d2e43e82ef8c016a88f3fa2ced311580e3bd98fee

diff --git a/app-emulation/firecracker-bin/firecracker-bin-1.4.1.ebuild 
b/app-emulation/firecracker-bin/firecracker-bin-1.4.1.ebuild
new file mode 100644
index 000000000000..42c1d8f40fe2
--- /dev/null
+++ b/app-emulation/firecracker-bin/firecracker-bin-1.4.1.ebuild
@@ -0,0 +1,83 @@
+# Copyright 2021-2023 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() {
+       local my_arch
+       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
+}

Reply via email to