summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'app-emulation/firecracker-bin')
-rw-r--r--app-emulation/firecracker-bin/Manifest10
-rw-r--r--app-emulation/firecracker-bin/firecracker-bin-1.5.1.ebuild (renamed from app-emulation/firecracker-bin/firecracker-bin-0.24.1.ebuild)32
-rw-r--r--app-emulation/firecracker-bin/firecracker-bin-1.6.0.ebuild (renamed from app-emulation/firecracker-bin/firecracker-bin-0.24.2.ebuild)32
-rw-r--r--app-emulation/firecracker-bin/firecracker-bin-1.7.0.ebuild87
-rw-r--r--app-emulation/firecracker-bin/metadata.xml5
5 files changed, 137 insertions, 29 deletions
diff --git a/app-emulation/firecracker-bin/Manifest b/app-emulation/firecracker-bin/Manifest
index eda9019e0493..f1969674bc5a 100644
--- a/app-emulation/firecracker-bin/Manifest
+++ b/app-emulation/firecracker-bin/Manifest
@@ -1,4 +1,6 @@
-DIST firecracker-v0.24.1-aarch64.tgz 1427360 BLAKE2B 17d85c6843dfa90bf871d5ff7dc5f5286c7bd11559cb9a507f57fafaba7d5abbf1019239ea39529e29a8bb4fa32b9a8a44f096f1379dc2d3d801502890690024 SHA512 cbedc62e5b98cdfd6dfb565bc1b977d84fcd0fa28eb36e18922ec56c3c2dfa34c84c549c7a4e23aee9d16c53b212ef87128d42e68f1a6b9997cbec42e613a82d
-DIST firecracker-v0.24.1-x86_64.tgz 1434986 BLAKE2B a6b206042fe4dfa873cfa1da4f591242f0224d2c98b367635534497d2bf82e218c409e473be618bd2902594ea24a8c710c853f2f1a00ac96f917a100e80aec0b SHA512 b719520464e3d5c9ff072c73639af71895bfcca9ac4964f2a255ed2d8d3b264a92566f7b87078c163c0f1ce21b9d5bd11cb38eb7cb784c5e18581ee531a0bcaf
-DIST firecracker-v0.24.2-aarch64.tgz 1429004 BLAKE2B 8d5624f6f6f154678ffab945bbb293e3ab53c75fa324273d9cd99366d78230aef1ce0a23c0b8efdca9fd87edabc0e196dda0cacabf7ebb33ec86edf7c46dd92e SHA512 9bd83d278c3f4f294c4391aac1bd82712bde7190ad706e1b84a0ec9ad489c09f5fa77bd448a25a08b932230b38e44b3dbcdcc37b2ccacfd87d37c7ee65e6c1c6
-DIST firecracker-v0.24.2-x86_64.tgz 1434481 BLAKE2B d2b81e2b3341317f296c63f14b2699dbf207e2e3a83871e38ef1666c105112788308c773afad61a85f7c6f4009f2373c80f12a52549120d92a42bae54891bf59 SHA512 2a574276296685117acf4e1d425ca75ecb8ad06680ae81e183d73853ff57cbca2f4cf4f42cb013d8d88d18146c0d84d2b098829ca5f6e9402213fecdf539a283
+DIST firecracker-v1.5.1-aarch64.tgz 9086440 BLAKE2B 30777522bdb23e80bc3a025691d50a14411c0ac72fd87e5b9b460f18d0873d0a6423e19e7810afe0ed1324b2b32fc615b525ad9561c1bfea48fc53bdfbb610a5 SHA512 61f7fcf427817eebcd6cb6f046dad29e3a39d382c087418379f4502ef715605e2bb9e3b647233680f44b7e0047a6ca00135011bb929b44c5340bb8b8649fde1a
+DIST firecracker-v1.5.1-x86_64.tgz 9411106 BLAKE2B 538b531ce5c8319dee042229a7cc7c44cdd2fc07c58c3089b6c2d29d10ad8a5a78f697b7781ac81bcf8b4127e778895ab72eed9e1e6febd410b6c0509c01ae1e SHA512 63a44fb79e9fb29abfbaa6c96550c5f2f361c3be5e188bb4562b089b4d3f1f4ab3ef60ad3ab163e961857e95090401dc4df859d2dd2a5f1a1372ed663188cfa3
+DIST firecracker-v1.6.0-aarch64.tgz 9105124 BLAKE2B bcc77e6701a4b9c7d80d7e60b13d4945d5f76918cc1741035f26df5af05c4c579802444c90c8972a7985d4df8e10f2b9954b5889eca92f5d95b02751481084db SHA512 71608a46bdb5be5240d4a88e812c13e753d81e4f4813a818ebfd782934add2c3769bd71788f5e2bed1a6e1d9bcfc3a914e018f1682cc6806012c3e283e44f401
+DIST firecracker-v1.6.0-x86_64.tgz 9425451 BLAKE2B bae5eb960c6d575724915cfd4cb50cdc85d6be44b47271a5d68662b7ce86a7356aad215097214b7d32dad9051f385188d83592588be1addc15727c633f10e4d1 SHA512 a00b0d1b8da02b167627169d316b6a88bd44b1f42eb2cbebad5c355485f2456288d2062cb63b1ddc4d636ae8f4fad3a15dc9404b5347e746a7b416758d6507d5
+DIST firecracker-v1.7.0-aarch64.tgz 8951358 BLAKE2B 813be9e38e318233b3b574e21e3f07e3eab82eba1a22ca2082a7e2b9312b8022fd288ac4b72dbfa82f8a8ab561e4877553c249913d290b0701773d53a28296a7 SHA512 1b78353e204569acace417a95bfd2075f909205d59c32cbce18438751d5aeaae8ac3e3d3791d153a30337037c01fd6622793aa200a7e21d51f98a886123c545d
+DIST firecracker-v1.7.0-x86_64.tgz 9038632 BLAKE2B 6473113f2cc8225fdf8fc6f8612874c46fda05c13ebda040b7998554fda3e9cc69fbfae9481dc9e5b3100f05b50a82525810deccebaf45665d67aca7ebc0dc23 SHA512 cca5390c81bb9b78865608729840f12a1e9b9ed072859853e1f2853312dc62a78f0206fa007174c5fc18a7bf7d6e4b905e954ecdf6c3b78782d65e9801a45a0b
diff --git a/app-emulation/firecracker-bin/firecracker-bin-0.24.1.ebuild b/app-emulation/firecracker-bin/firecracker-bin-1.5.1.ebuild
index c957b4a10f3a..e280abe72c3d 100644
--- a/app-emulation/firecracker-bin/firecracker-bin-0.24.1.ebuild
+++ b/app-emulation/firecracker-bin/firecracker-bin-1.5.1.ebuild
@@ -1,7 +1,7 @@
-# Copyright 2021 Gentoo Authors
+# Copyright 2021-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=7
+EAPI=8
inherit linux-info
@@ -21,11 +21,14 @@ KEYWORDS="~amd64 ~arm64"
RESTRICT="test strip"
-RDEPEND="!app-emulation/firecracker
- acct-group/kvm"
+RDEPEND="acct-group/kvm"
-QA_PREBUILT="/usr/bin/firecracker
- /usr/bin/jailer"
+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"
S="${WORKDIR}"
@@ -36,7 +39,7 @@ pkg_pretend() {
if ! linux_config_exists; then
eerror "Unable to check your kernel for KVM support"
else
- CONFIG_CHECK="~KVM ~TUN ~BRIDGE ~VHOST_VSOCK"
+ 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."
@@ -47,9 +50,6 @@ pkg_pretend() {
ERROR_TUN+=" virtual network devices."
ERROR_BRIDGE="You will also need support for 802.1d"
ERROR_BRIDGE+=" Ethernet Bridging for some network configurations."
- ERROR_VHOST_VSOCK="To use AF_VSOCK sockets for communication"
- ERROR_VHOST_VSOCK+=" between host and guest, you will need to enable"
- ERROR_VHOST_VSOCK+=" the vhost virtio-vsock driver in your kernel."
if use amd64 || use amd64-linux; then
if grep -q AuthenticAMD /proc/cpuinfo; then
@@ -68,12 +68,20 @@ pkg_pretend() {
src_compile() { :; }
src_install() {
+ local my_arch
if use amd64; then
my_arch=x86_64
elif use arm64; then
my_arch=aarch64
fi
- newbin "release-v${PV}/firecracker-v${PV}-${my_arch}" firecracker
- newbin "release-v${PV}/jailer-v${PV}-${my_arch}" jailer
+ 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
}
diff --git a/app-emulation/firecracker-bin/firecracker-bin-0.24.2.ebuild b/app-emulation/firecracker-bin/firecracker-bin-1.6.0.ebuild
index a5c7b379e5d3..4e841c1ab26e 100644
--- a/app-emulation/firecracker-bin/firecracker-bin-0.24.2.ebuild
+++ b/app-emulation/firecracker-bin/firecracker-bin-1.6.0.ebuild
@@ -1,7 +1,7 @@
-# Copyright 2021 Gentoo Authors
+# Copyright 2021-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=7
+EAPI=8
inherit linux-info
@@ -21,11 +21,14 @@ KEYWORDS="~amd64 ~arm64"
RESTRICT="test strip"
-RDEPEND="!app-emulation/firecracker
- acct-group/kvm"
+RDEPEND="acct-group/kvm"
-QA_PREBUILT="/usr/bin/firecracker
- /usr/bin/jailer"
+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"
S="${WORKDIR}"
@@ -36,7 +39,7 @@ pkg_pretend() {
if ! linux_config_exists; then
eerror "Unable to check your kernel for KVM support"
else
- CONFIG_CHECK="~KVM ~TUN ~BRIDGE ~VHOST_VSOCK"
+ 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."
@@ -47,9 +50,6 @@ pkg_pretend() {
ERROR_TUN+=" virtual network devices."
ERROR_BRIDGE="You will also need support for 802.1d"
ERROR_BRIDGE+=" Ethernet Bridging for some network configurations."
- ERROR_VHOST_VSOCK="To use AF_VSOCK sockets for communication"
- ERROR_VHOST_VSOCK+=" between host and guest, you will need to enable"
- ERROR_VHOST_VSOCK+=" the vhost virtio-vsock driver in your kernel."
if use amd64 || use amd64-linux; then
if grep -q AuthenticAMD /proc/cpuinfo; then
@@ -68,12 +68,20 @@ pkg_pretend() {
src_compile() { :; }
src_install() {
+ local my_arch
if use amd64; then
my_arch=x86_64
elif use arm64; then
my_arch=aarch64
fi
- newbin "firecracker-v${PV}-${my_arch}" firecracker
- newbin "jailer-v${PV}-${my_arch}" jailer
+ 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
}
diff --git a/app-emulation/firecracker-bin/firecracker-bin-1.7.0.ebuild b/app-emulation/firecracker-bin/firecracker-bin-1.7.0.ebuild
new file mode 100644
index 000000000000..4e841c1ab26e
--- /dev/null
+++ b/app-emulation/firecracker-bin/firecracker-bin-1.7.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
+ )"
+
+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"
+
+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}/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
+}
diff --git a/app-emulation/firecracker-bin/metadata.xml b/app-emulation/firecracker-bin/metadata.xml
index 866b948059f9..60d11bb309b0 100644
--- a/app-emulation/firecracker-bin/metadata.xml
+++ b/app-emulation/firecracker-bin/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person" proxied="yes">
<email>gentoo-bugs@ares-macrotechnology.com</email>
@@ -9,4 +9,7 @@
<email>proxy-maint@gentoo.org</email>
<name>Proxy Maintainers</name>
</maintainer>
+ <upstream>
+ <remote-id type="github">firecracker-microvm/firecracker</remote-id>
+ </upstream>
</pkgmetadata>