summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSebastian Hamann <code@ares-macrotechnology.com>2024-09-03 19:26:09 +0200
committerJoonas Niilola <juippis@gentoo.org>2024-09-24 08:50:33 +0300
commit69497614ec20b61bdcd277a4dbb01502c7cb0a96 (patch)
tree71ef4eeab86e303c02bfffad535ce38e4d2eca5b /app-emulation/firecracker-bin
parentmedia-libs/cimg: add 3.4.1 (diff)
downloadgentoo-69497614ec20b61bdcd277a4dbb01502c7cb0a96.tar.gz
gentoo-69497614ec20b61bdcd277a4dbb01502c7cb0a96.tar.bz2
gentoo-69497614ec20b61bdcd277a4dbb01502c7cb0a96.zip
app-emulation/firecracker-bin: add 1.9.0
Signed-off-by: Sebastian Hamann <code@ares-macrotechnology.com> Closes: https://github.com/gentoo/gentoo/pull/38416 Signed-off-by: Joonas Niilola <juippis@gentoo.org>
Diffstat (limited to 'app-emulation/firecracker-bin')
-rw-r--r--app-emulation/firecracker-bin/Manifest2
-rw-r--r--app-emulation/firecracker-bin/firecracker-bin-1.9.0.ebuild87
2 files changed, 89 insertions, 0 deletions
diff --git a/app-emulation/firecracker-bin/Manifest b/app-emulation/firecracker-bin/Manifest
index 88173dafeb08..1fcbf3cc23cc 100644
--- a/app-emulation/firecracker-bin/Manifest
+++ b/app-emulation/firecracker-bin/Manifest
@@ -2,3 +2,5 @@ DIST firecracker-v1.7.0-aarch64.tgz 8951358 BLAKE2B 813be9e38e318233b3b574e21e3f
DIST firecracker-v1.7.0-x86_64.tgz 9038632 BLAKE2B 6473113f2cc8225fdf8fc6f8612874c46fda05c13ebda040b7998554fda3e9cc69fbfae9481dc9e5b3100f05b50a82525810deccebaf45665d67aca7ebc0dc23 SHA512 cca5390c81bb9b78865608729840f12a1e9b9ed072859853e1f2853312dc62a78f0206fa007174c5fc18a7bf7d6e4b905e954ecdf6c3b78782d65e9801a45a0b
DIST firecracker-v1.8.0-aarch64.tgz 7085662 BLAKE2B 5352912fc10e4e41bcfd34c4416f8df30cd055168031510adb7ec7a9f223c101fdde0182aa80702b261fa3c24048d5434102238ddb7322a35f72299dc58a009f SHA512 16ed860c20e269c94082916740a8d9422e8c6683aca5ff2f33b0809592d04a7c48ad38649eb1b29e23dad6ff276d3435550e6421172ef3bb5d5ec819180425d7
DIST firecracker-v1.8.0-x86_64.tgz 7029237 BLAKE2B 7eac72eaa6a6e87c6503ebafd34c87769034912c52acacc57c2239176418f6830c55682d1c15be2e8f4a3520012685cf54ec4bdf4edca3099cf0e4aa02051c00 SHA512 c78d801cd532aea97a363f9950a13b2b1b713f707a2f54c5d78bdab300654d947131f8f35dc6d21ee71e68632b32c3694a12583ab1a80d277ffc0162316ed2ee
+DIST firecracker-v1.9.0-aarch64.tgz 4309149 BLAKE2B ee222a2a9100d9f9a435a49bf8397324054ba0f007728717877f4c9ed3585c7287722f2d9c2678d2d6bde324bd09f2a6a7d6adcd1a4828a1923343043743928c SHA512 1d334e2fbd0c1cf43b06adbf452d66bbcbf903fdcd43dae5d2002d2ca289bff4af1d91022d92dbbcae5ac3f3d452c86218cca29fa29720bce45cc24f844ab930
+DIST firecracker-v1.9.0-x86_64.tgz 4314303 BLAKE2B 25b02f00c03d4825dbd510ca45fd996357251f92725923c44772ce3763d873b1718c9be7a6b5fabb63e7cad4b4798eb8ad3814bf17bab03c41045a79f204d838 SHA512 708f984e19ad4c6cad6aa5b185b30232510b1d316969e1c375d1b33e3e14fd287bd424b469de9750fa2a19507689351089ba4708eb777ca25a1e822820b113d8
diff --git a/app-emulation/firecracker-bin/firecracker-bin-1.9.0.ebuild b/app-emulation/firecracker-bin/firecracker-bin-1.9.0.ebuild
new file mode 100644
index 000000000000..37f3ffa69f76
--- /dev/null
+++ b/app-emulation/firecracker-bin/firecracker-bin-1.9.0.ebuild
@@ -0,0 +1,87 @@
+# Copyright 2021-2024 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
+}