commit:     596553bb81c5a84230fe2014ee59f6e8e78f6136
Author:     Sebastian Hamann <code <AT> ares-macrotechnology <DOT> com>
AuthorDate: Mon Jun 30 06:14:37 2025 +0000
Commit:     Joonas Niilola <juippis <AT> gentoo <DOT> org>
CommitDate: Tue Sep  2 13:10:08 2025 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=596553bb

app-emulation/firecracker-bin: add 1.13.1

Signed-off-by: Sebastian Hamann <code <AT> ares-macrotechnology.com>
Part-of: https://github.com/gentoo/gentoo/pull/42807
Closes: https://github.com/gentoo/gentoo/pull/42807
Signed-off-by: Joonas Niilola <juippis <AT> gentoo.org>

 app-emulation/firecracker-bin/Manifest             |  2 +
 .../firecracker-bin/firecracker-bin-1.13.1.ebuild  | 87 ++++++++++++++++++++++
 2 files changed, 89 insertions(+)

diff --git a/app-emulation/firecracker-bin/Manifest 
b/app-emulation/firecracker-bin/Manifest
index 2b6b56fe528d..a3b7106f9710 100644
--- a/app-emulation/firecracker-bin/Manifest
+++ b/app-emulation/firecracker-bin/Manifest
@@ -2,3 +2,5 @@ DIST firecracker-v1.10.1-aarch64.tgz 6733589 BLAKE2B 
872dbec320c7b4bfda71014e182
 DIST firecracker-v1.10.1-x86_64.tgz 6638577 BLAKE2B 
fb8528f0b0375ae7ab990ceb814165a4a82e6deb3193e2d95de1c8665d841a212a00358dbd9fd041755e31c9aa5bc38c1fe050e83e3df57fd66ba1fd03f1651b
 SHA512 
31c43889205fba47a1507ee5992e3602030d7b7b8d2abe054dead97bc8c31c42243c0f7003f1037b810f63c268cb4fd19e91c51225ad0810b1019c441845be0f
 DIST firecracker-v1.12.0-aarch64.tgz 7032717 BLAKE2B 
49e0df60594c4ea0889c362ecbc2dba03cd6c9d8974c8936c8d0b1144afee4081c0a492755452248f67c0900c0943d19b377aa85386ad9823c3a6b4b1d70c04a
 SHA512 
14cd452dadbecf719f09b2644ba585aedbae6157bad4de1c51e511e6e8aee88549984ba8b1fdfcc6267574194934620abd55ecc2e1d4fab2dbe64dc81026f80a
 DIST firecracker-v1.12.0-x86_64.tgz 7305842 BLAKE2B 
f47dbd1eeeaf3f99dec715e0ad248d0d42bc5461e415e1a6dd02e2543324a98735b8da8784518c01e4a899d094f6eba0dfa7ae1e22e147b20eaac4c0ce551e75
 SHA512 
00ec36ddbae8fbdafa3a24314427227e7f95b96d2dfaeae0390e9472e4ee439f2a7e86b56b09401c33fd32b5c9b8928b354f08f42734eb48046215542ad8d69c
+DIST firecracker-v1.13.1-aarch64.tgz 7239827 BLAKE2B 
1d0f6fc803ab460cc429da49bc4c6ae4311f20c8c89804d113d2ea7fcff150470de2aa323fbcaa00f633c44f4620c04169da6cb42d54917b2c4b871f895901f5
 SHA512 
84e8e256c66aeec57d72a973f911b3c4333c4d995591e014b3d4088e2852460c5efe6a8c8c76638bf67f4335bf6611ed2186a9046b344d5c2deed39ddcbeaacd
+DIST firecracker-v1.13.1-x86_64.tgz 7546949 BLAKE2B 
3301312899b88119f13188fe9fc2a52261a38feaa6d396b247359bb12bad8d00c733e801c587f83f21d9ee3faed8985b2e832481cdebdc30986c90fb8bb16742
 SHA512 
a2ca304d881b1b99fefa60a1bf4582b8c5e66f3153e896be0f7ee58ebc8fe0410f08adf0770903252edc64f1d65830d38af2b610fbc637c99529e90eb4e880dc

diff --git a/app-emulation/firecracker-bin/firecracker-bin-1.13.1.ebuild 
b/app-emulation/firecracker-bin/firecracker-bin-1.13.1.ebuild
new file mode 100644
index 000000000000..1692428937bf
--- /dev/null
+++ b/app-emulation/firecracker-bin/firecracker-bin-1.13.1.ebuild
@@ -0,0 +1,87 @@
+# Copyright 2021-2025 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
+       )"
+
+S="${WORKDIR}"
+
+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/cpu-template-helper
+       usr/bin/firecracker
+       usr/bin/jailer
+       usr/bin/rebase-snap
+       usr/bin/seccompiler-bin
+       usr/bin/snapshot-editor"
+
+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}/cpu-template-helper-v${PV}-${my_arch}" 
cpu-template-helper
+       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
+       newbin "release-v${PV}-${my_arch}/snapshot-editor-v${PV}-${my_arch}" 
snapshot-editor
+}

Reply via email to