commit: 42903403c97ef5660483d75c6281b0c167be712e Author: Sebastian Hamann <code <AT> ares-macrotechnology <DOT> com> AuthorDate: Sun Dec 21 07:12:08 2025 +0000 Commit: Sam James <sam <AT> gentoo <DOT> org> CommitDate: Sat Jan 10 12:46:16 2026 +0000 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=42903403
app-emulation/firecracker-bin: add 1.14.0 Signed-off-by: Sebastian Hamann <code <AT> ares-macrotechnology.com> Part-of: https://github.com/gentoo/gentoo/pull/45109 Signed-off-by: Sam James <sam <AT> gentoo.org> app-emulation/firecracker-bin/Manifest | 2 + .../firecracker-bin/firecracker-bin-1.14.0.ebuild | 87 ++++++++++++++++++++++ 2 files changed, 89 insertions(+) diff --git a/app-emulation/firecracker-bin/Manifest b/app-emulation/firecracker-bin/Manifest index a3b7106f9710..54bbe680e0d5 100644 --- a/app-emulation/firecracker-bin/Manifest +++ b/app-emulation/firecracker-bin/Manifest @@ -4,3 +4,5 @@ DIST firecracker-v1.12.0-aarch64.tgz 7032717 BLAKE2B 49e0df60594c4ea0889c362ecbc 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 +DIST firecracker-v1.14.0-aarch64.tgz 7381629 BLAKE2B a0d44b9520693db4f47622dcee8498af29cdc599e4cb5ac231bf2c2e5c159373caf94dfdb7dd9aceada9e53e0e47a977735d6609dc0564f2e9500430e01ce776 SHA512 578da460fa99015c455b15ef5df22316a36c037b7cdab9415b3be900d08bdd5bed3e0619ce218bd22057911c30b2d10da3d00352951f353f26d7170f4325bd12 +DIST firecracker-v1.14.0-x86_64.tgz 7667248 BLAKE2B 750c99e5369c23fe68adb06de6e06c21f8967761e3c08ed30a18f65121fc9ad737d521d38e97739d546185689c74f341d282eaf8be4c66f1951e93a8df6771e3 SHA512 7c7114ccc099e5d4b023cf4bb13fa52a1b624bf8a01feca1a20ca1a3a49faca891d7f3b848037cdca02486720f13a935cf778d7f3edf04002f1b54a6013df7b7 diff --git a/app-emulation/firecracker-bin/firecracker-bin-1.14.0.ebuild b/app-emulation/firecracker-bin/firecracker-bin-1.14.0.ebuild new file mode 100644 index 000000000000..daf8f4e6795e --- /dev/null +++ b/app-emulation/firecracker-bin/firecracker-bin-1.14.0.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; 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 +}
