Gentoo Archives: gentoo-commits

From: Ionen Wolkens <ionen@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/gentoo:master commit in: app-emulation/firecracker-bin/
Date: Sun, 28 Nov 2021 22:18:36
Message-Id: 1638137628.1476b7d998c3db65f172af7225d6035e139a0958.ionen@gentoo
1 commit: 1476b7d998c3db65f172af7225d6035e139a0958
2 Author: Sebastian Hamann <code <AT> ares-macrotechnology <DOT> com>
3 AuthorDate: Sun Nov 28 10:54:30 2021 +0000
4 Commit: Ionen Wolkens <ionen <AT> gentoo <DOT> org>
5 CommitDate: Sun Nov 28 22:13:48 2021 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=1476b7d9
7
8 app-emulation/firecracker-bin: Bump to 0.25.2
9
10 Package-Manager: Portage-3.0.28, Repoman-3.0.3
11 Signed-off-by: Sebastian Hamann <code <AT> ares-macrotechnology.com>
12 Closes: https://github.com/gentoo/gentoo/pull/23098
13 Signed-off-by: Ionen Wolkens <ionen <AT> gentoo.org>
14
15 app-emulation/firecracker-bin/Manifest | 2 +
16 .../firecracker-bin/firecracker-bin-0.25.2.ebuild | 81 ++++++++++++++++++++++
17 2 files changed, 83 insertions(+)
18
19 diff --git a/app-emulation/firecracker-bin/Manifest b/app-emulation/firecracker-bin/Manifest
20 index 76006a81ddcd..945f291ecb5c 100644
21 --- a/app-emulation/firecracker-bin/Manifest
22 +++ b/app-emulation/firecracker-bin/Manifest
23 @@ -4,3 +4,5 @@ DIST firecracker-v0.25.0-aarch64.tgz 1747986 BLAKE2B cbfbe04326f78491fccbde69ae2
24 DIST firecracker-v0.25.0-x86_64.tgz 1773525 BLAKE2B e870c7d021f6c5b960c52883ab659fc33fec3b39314ec1ca5448f02b9596e88192831639c6817048b97954d28866eaa7b94b50821a6c991def345bce3b47b9bb SHA512 ffd3e9dfe7e2b29ce6c9ef61504056844d7081850dfe484ddb207d7339242819adf6d7a43e9c812c032fcf606daca8d10c125071d11dd5cfe431de41eb557c0f
25 DIST firecracker-v0.25.1-aarch64.tgz 1746829 BLAKE2B 613e575d06cd9e482cec705a1775099b4587311a579e3146f7b35bf2d26293384d5092106c7e666e1858c7d898cccb3a5173afcba57f8cce1b8a81547505c0e5 SHA512 1e3217a94f1a43b2ef84a5a07d2f1f2690ae1129787cb286ac4f1b8c82dbd15d7489149222f22cb58a9628e8cd1704cf387c17e71053367218425881f73610e5
26 DIST firecracker-v0.25.1-x86_64.tgz 1773703 BLAKE2B d577dfad765b8135471a673e9699c75bb7905e73496b7e9940a7634182267a1b3bfd8111088db4e1103da47e64159c585d46f8a9fb913ba3dcb1d4d1fe5f9920 SHA512 8108b7576655ae31c97f6349f5dd530aca2828acbb0d4589d6d0c113d44c4e14b28c4d76f73fe16c5538ce4940bd86e913e97ad35d7f915f8199bceaf4f74fe3
27 +DIST firecracker-v0.25.2-aarch64.tgz 1750770 BLAKE2B 8b34e8be4965e048e51ef60c8938f1a346d2cbf852166d7fb6156781626a2201b8fe56a8f82fcd96e2ed637f32f3f2ed83cbdd3e56a27026f6fc9ac3b1ee1fc2 SHA512 d8a8a2c4bcd347dda63fdbbaed58bd9b8626b1d23be9fc1151d8fb5ebd4b65feea9eff304bf951d82817cf5af0a7a7ca1be37f2bd62d1cd72bf6f4119499f950
28 +DIST firecracker-v0.25.2-x86_64.tgz 1773163 BLAKE2B dd1287cbbc2955368011417b56d24d7ab4d44b5d102a38541b5038d7a400dad71393ba25ab831cacf0aca8c1e6e344f56fb668af88ebb4c379941bed152a5e71 SHA512 24d7a466019e786ded7eb6747108123c1f177e86d3197738ffc646a2f27f642576e052a8b52a0b75fa3b53de6e0a2828defa5dbba62b208e8c262248240c5059
29
30 diff --git a/app-emulation/firecracker-bin/firecracker-bin-0.25.2.ebuild b/app-emulation/firecracker-bin/firecracker-bin-0.25.2.ebuild
31 new file mode 100644
32 index 000000000000..8c6db43589ab
33 --- /dev/null
34 +++ b/app-emulation/firecracker-bin/firecracker-bin-0.25.2.ebuild
35 @@ -0,0 +1,81 @@
36 +# Copyright 2021 Gentoo Authors
37 +# Distributed under the terms of the GNU General Public License v2
38 +
39 +EAPI=8
40 +
41 +inherit linux-info
42 +
43 +DESCRIPTION="Secure and fast microVMs for serverless computing (static build)"
44 +HOMEPAGE="https://firecracker-microvm.github.io https://github.com/firecracker-microvm/firecracker"
45 +SRC_URI="
46 + amd64? (
47 + https://github.com/firecracker-microvm/firecracker/releases/download/v${PV}/firecracker-v${PV}-x86_64.tgz
48 + )
49 + arm64? (
50 + https://github.com/firecracker-microvm/firecracker/releases/download/v${PV}/firecracker-v${PV}-aarch64.tgz
51 + )"
52 +
53 +LICENSE="|| ( Apache-2.0 MIT Apache-2.0-with-LLVM-exceptions ) MPL-2.0"
54 +SLOT="0"
55 +KEYWORDS="~amd64 ~arm64"
56 +
57 +RESTRICT="test strip"
58 +
59 +RDEPEND="!app-emulation/firecracker
60 + acct-group/kvm"
61 +
62 +QA_PREBUILT="usr/bin/firecracker
63 + usr/bin/jailer
64 + usr/bin/seccompiler-bin"
65 +
66 +S="${WORKDIR}"
67 +
68 +pkg_pretend() {
69 + if use kernel_linux && kernel_is lt 4 14; then
70 + eerror "Firecracker requires a host kernel of 4.14 or higher."
71 + elif use kernel_linux; then
72 + if ! linux_config_exists; then
73 + eerror "Unable to check your kernel for KVM support"
74 + else
75 + CONFIG_CHECK="~KVM ~TUN ~BRIDGE"
76 + ERROR_KVM="You must enable KVM in your kernel to continue"
77 + ERROR_KVM_AMD="If you have an AMD CPU, you must enable KVM_AMD in"
78 + ERROR_KVM_AMD+=" your kernel configuration."
79 + ERROR_KVM_INTEL="If you have an Intel CPU, you must enable"
80 + ERROR_KVM_INTEL+=" KVM_INTEL in your kernel configuration."
81 + ERROR_TUN="You will need the Universal TUN/TAP driver compiled"
82 + ERROR_TUN+=" into your kernel or loaded as a module to use"
83 + ERROR_TUN+=" virtual network devices."
84 + ERROR_BRIDGE="You will also need support for 802.1d"
85 + ERROR_BRIDGE+=" Ethernet Bridging for some network configurations."
86 +
87 + if use amd64 || use amd64-linux; then
88 + if grep -q AuthenticAMD /proc/cpuinfo; then
89 + CONFIG_CHECK+=" ~KVM_AMD"
90 + elif grep -q GenuineIntel /proc/cpuinfo; then
91 + CONFIG_CHECK+=" ~KVM_INTEL"
92 + fi
93 + fi
94 +
95 + # Now do the actual checks setup above
96 + check_extra_config
97 + fi
98 + fi
99 +}
100 +
101 +src_compile() { :; }
102 +
103 +src_install() {
104 + if use amd64; then
105 + my_arch=x86_64
106 + elif use arm64; then
107 + my_arch=aarch64
108 + fi
109 +
110 + dodoc "release-v${PV}-${my_arch}/firecracker_spec-v${PV}.yaml"
111 + dodoc "release-v${PV}-${my_arch}/seccomp-filter-v${PV}-${my_arch}.json"
112 +
113 + newbin "release-v${PV}-${my_arch}/firecracker-v${PV}-${my_arch}" firecracker
114 + newbin "release-v${PV}-${my_arch}/jailer-v${PV}-${my_arch}" jailer
115 + newbin "release-v${PV}-${my_arch}/seccompiler-bin-v${PV}-${my_arch}" seccompiler-bin
116 +}