From mboxrd@z Thu Jan  1 00:00:00 1970
Return-Path: <gentoo-commits+bounces-1495510-garchives=archives.gentoo.org@lists.gentoo.org>
Received: from lists.gentoo.org (pigeon.gentoo.org [208.92.234.80])
	(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
	 key-exchange X25519 server-signature RSA-PSS (2048 bits))
	(No client certificate requested)
	by finch.gentoo.org (Postfix) with ESMTPS id 0ED2F15802F
	for <garchives@archives.gentoo.org>; Sat, 11 Mar 2023 21:23:27 +0000 (UTC)
Received: from pigeon.gentoo.org (localhost [127.0.0.1])
	by pigeon.gentoo.org (Postfix) with SMTP id 4B8FDE07EA;
	Sat, 11 Mar 2023 21:23:26 +0000 (UTC)
Received: from smtp.gentoo.org (woodpecker.gentoo.org [140.211.166.183])
	(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
	 key-exchange X25519 server-signature RSA-PSS (4096 bits))
	(No client certificate requested)
	by pigeon.gentoo.org (Postfix) with ESMTPS id 20EBEE07EA
	for <gentoo-commits@lists.gentoo.org>; Sat, 11 Mar 2023 21:23:26 +0000 (UTC)
Received: from oystercatcher.gentoo.org (oystercatcher.gentoo.org [148.251.78.52])
	(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
	 key-exchange X25519 server-signature RSA-PSS (4096 bits))
	(No client certificate requested)
	by smtp.gentoo.org (Postfix) with ESMTPS id 1D252340E31
	for <gentoo-commits@lists.gentoo.org>; Sat, 11 Mar 2023 21:23:25 +0000 (UTC)
Received: from localhost.localdomain (localhost [IPv6:::1])
	by oystercatcher.gentoo.org (Postfix) with ESMTP id 1712D8DD
	for <gentoo-commits@lists.gentoo.org>; Sat, 11 Mar 2023 21:23:22 +0000 (UTC)
From: "Sam James" <sam@gentoo.org>
To: gentoo-commits@lists.gentoo.org
Content-Transfer-Encoding: 8bit
Content-type: text/plain; charset=UTF-8
Reply-To: gentoo-dev@lists.gentoo.org, "Sam James" <sam@gentoo.org>
Message-ID: <1678569777.5032ba54751e1910ab0e1bbfb9c080b4f98dbacf.sam@gentoo>
Subject: [gentoo-commits] repo/gentoo:master commit in: app-emulation/firecracker-bin/
X-VCS-Repository: repo/gentoo
X-VCS-Files: app-emulation/firecracker-bin/Manifest app-emulation/firecracker-bin/firecracker-bin-1.3.1.ebuild
X-VCS-Directories: app-emulation/firecracker-bin/
X-VCS-Committer: sam
X-VCS-Committer-Name: Sam James
X-VCS-Revision: 5032ba54751e1910ab0e1bbfb9c080b4f98dbacf
X-VCS-Branch: master
Date: Sat, 11 Mar 2023 21:23:22 +0000 (UTC)
Precedence: bulk
List-Post: <mailto:gentoo-commits@lists.gentoo.org>
List-Help: <mailto:gentoo-commits+help@lists.gentoo.org>
List-Unsubscribe: <mailto:gentoo-commits+unsubscribe@lists.gentoo.org>
List-Subscribe: <mailto:gentoo-commits+subscribe@lists.gentoo.org>
List-Id: Gentoo Linux mail <gentoo-commits.gentoo.org>
X-BeenThere: gentoo-commits@lists.gentoo.org
X-Auto-Response-Suppress: DR, RN, NRN, OOF, AutoReply
X-Archives-Salt: da70b476-d811-4d76-8062-760fa7701c7c
X-Archives-Hash: 6f6b6370041a1c251654fabe6a13e2a5

commit:     5032ba54751e1910ab0e1bbfb9c080b4f98dbacf
Author:     Sebastian Hamann <code <AT> ares-macrotechnology <DOT> com>
AuthorDate: Sat Mar  4 13:23:57 2023 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Sat Mar 11 21:22:57 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=5032ba54

app-emulation/firecracker-bin: add 1.3.1

Signed-off-by: Sebastian Hamann <code <AT> ares-macrotechnology.com>
Signed-off-by: Sam James <sam <AT> gentoo.org>

 app-emulation/firecracker-bin/Manifest             |  2 +
 .../firecracker-bin/firecracker-bin-1.3.1.ebuild   | 82 ++++++++++++++++++++++
 2 files changed, 84 insertions(+)

diff --git a/app-emulation/firecracker-bin/Manifest b/app-emulation/firecracker-bin/Manifest
index 16bac94a56f3..bf72a14254fd 100644
--- a/app-emulation/firecracker-bin/Manifest
+++ b/app-emulation/firecracker-bin/Manifest
@@ -10,3 +10,5 @@ DIST firecracker-v1.1.3-aarch64.tgz 2066398 BLAKE2B 0ac0027f6c96e1d8dc72ccb87a1b
 DIST firecracker-v1.1.3-x86_64.tgz 2034217 BLAKE2B 7d2f7dc4e4189305db872222d27802f03af8ddc0b5dc1a13e891b662aa50138b5cf5e31935d271a4abcf0052593443634bc9a7e93f5609a03ad16618db9e12ed SHA512 ce0b2723c26cee301de5a47579a578824f583fbf057be6b05737e6474d5591da36816224171d8136de0deb16101ecfd57d4a885cfcf46aa2043ef41e54d79eab
 DIST firecracker-v1.2.0-aarch64.tgz 4060245 BLAKE2B 28434aa623eb473b1886e5a6da2a2b97a7bb1f6d6692724dccbeaef49cbd2204f3d0f409c59a1ca54b293f15b83ced5eb545d9c93c450048cb9f652e99c97a3c SHA512 c0ce21fb54fd16e0b649da65a05cbd43af470b5b8660a1b86cbcd7220c88ca535e5e107114c6ff30cd1d8818d046c741af0365ce6c2f25b7b2cac5b13f77634e
 DIST firecracker-v1.2.0-x86_64.tgz 3932475 BLAKE2B 3db4b5f0746db48e8cd6e00735ba859e16b1bec94a23854cdc3af65d032773c596e8b52cf0a0cd40e363de1a5c67817176a5287af9c692167e8f4681a6b07e9a SHA512 67fcd8b898ebc3207de8f93a466430261c923d27bce97bb32636bd243957cb757da1fc72ebec2751c14205e111d2ffb80c94cfa033aecf715962e59b813fbe5f
+DIST firecracker-v1.3.1-aarch64.tgz 4178577 BLAKE2B 80636ee5878acce741f12647c7107b111430ee4a6f1da9e09af44d30bce16ac8e69d11ebc59b6220cbf145882876b38f4ee0e0a7c0050830ee93b6c925c0bd7e SHA512 f82ab276bac1d8187d33b4b0b07e871122170199025ca693d2eaf3a02d93e03dcbfe50af87584a69ac2c00868e0c02a8a7350f5e1b1e9cb196dc52d7c677f539
+DIST firecracker-v1.3.1-x86_64.tgz 4105205 BLAKE2B ab40e91c641c34b621542a991c642be61404aaa77d861341827d0555e5128773f7407277355a342fdc7c4c26d6a604e357901672175ef0a6578b25c9207c2e45 SHA512 272f3579f2943ee32663590e99658ee52cf7b8693b402d2f342e1de8a55fa4c05db5fb4b6a0495c88dfb51f0830640c3e6ef9e1569264f6c2eb9ab99c84bc2b5

diff --git a/app-emulation/firecracker-bin/firecracker-bin-1.3.1.ebuild b/app-emulation/firecracker-bin/firecracker-bin-1.3.1.ebuild
new file mode 100644
index 000000000000..ec091124b7ad
--- /dev/null
+++ b/app-emulation/firecracker-bin/firecracker-bin-1.3.1.ebuild
@@ -0,0 +1,82 @@
+# 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() {
+	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
+}