commit:     ff8c83de47e39ca8cdf68d0a5a11334a6cc34425
Author:     Pavel Balaev <balaev <AT> tarantool <DOT> org>
AuthorDate: Tue Nov 14 08:28:20 2023 +0000
Commit:     Joonas Niilola <juippis <AT> gentoo <DOT> org>
CommitDate: Fri Jan 12 07:52:00 2024 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=ff8c83de

app-emulation/nemu: add 3.3.0

Closes: https://bugs.gentoo.org/917284
Signed-off-by: Pavel Balaev <mail <AT> void.so>
Closes: https://github.com/gentoo/gentoo/pull/33817
Signed-off-by: Joonas Niilola <juippis <AT> gentoo.org>

 app-emulation/nemu/Manifest          |  1 +
 app-emulation/nemu/nemu-3.3.0.ebuild | 80 ++++++++++++++++++++++++++++++++++++
 2 files changed, 81 insertions(+)

diff --git a/app-emulation/nemu/Manifest b/app-emulation/nemu/Manifest
index c4823aa0bac7..4f629d031470 100644
--- a/app-emulation/nemu/Manifest
+++ b/app-emulation/nemu/Manifest
@@ -1,2 +1,3 @@
 DIST nemu-3.0.0.tar.gz 151223 BLAKE2B 
a71875eb727eed13bc252cee072e1c5b25bf7ea106f51ddddfb8e8bfacf21e030b1c4045de2353d40121b78756b131de1a376891197f6d553430b4b30f53bf3e
 SHA512 
59dae5364659dda5d7c05ba6378b6e20c5d2c5b619cb919c49036918a887574b75f5d568cbfa8f21ecf790778c9de55266f5c5e3e90cc991f613a6408b10a1df
 DIST nemu-3.1.0.tar.gz 164222 BLAKE2B 
32600bcdcf2a4f963612a13d89375df2cb4a49a376aec694ada01a86f6c27d6c4198250834cc924bb20e7b60b11ff8643e3bbd30aa883b437cf7828ab00509f2
 SHA512 
b764e94133e4ab4f052fca77d3dbc64dbbd6a52349828e8ccfe9892f1a9bb290b6578cd8afec7bac84ac339daf9ae11520fce28e842bfa649178fe471014fad1
+DIST nemu-3.3.0.tar.gz 174431 BLAKE2B 
62f69bb4789d8b1ce369bca5f82f11e4fc41813ae2732d61f6ae1819bc8e3e052420e6f1a2582c5460dfccd9dd3b98c350968c5a732aad654493f7b03bcacec2
 SHA512 
3b497d3edccb41ca9b34d6c51079caadc893effd2c026d9b199538574fad173d1c3fe5e5db36b60f07debc774473082b338553e269d1d462203470dee292e107

diff --git a/app-emulation/nemu/nemu-3.3.0.ebuild 
b/app-emulation/nemu/nemu-3.3.0.ebuild
new file mode 100644
index 000000000000..e42882861528
--- /dev/null
+++ b/app-emulation/nemu/nemu-3.3.0.ebuild
@@ -0,0 +1,80 @@
+# Copyright 2019-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit cmake linux-info
+
+MY_PV="${PV/_rc/-RC}"
+
+DESCRIPTION="Ncurses interface for QEMU"
+HOMEPAGE="https://github.com/nemuTUI/nemu";
+SRC_URI="https://github.com/nemuTUI/${PN}/archive/v${MY_PV}.tar.gz -> 
${P}.tar.gz"
+S="${WORKDIR}/${PN}-${MY_PV}/"
+
+LICENSE="BSD-2"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE="dbus network-map +ovf remote-api +usb"
+
+RDEPEND="
+       >=app-emulation/qemu-6.0.0-r3[vnc,virtfs,spice]
+       dev-db/sqlite:3=
+       dev-libs/json-c
+       sys-libs/ncurses:=[unicode(+)]
+       usb? (
+               virtual/libusb:1
+               virtual/libudev:=
+       )
+       dbus? ( sys-apps/dbus )
+       network-map? ( media-gfx/graphviz[svg] )
+       ovf? (
+               dev-libs/libxml2:2
+               app-arch/libarchive:=
+       )
+       remote-api? ( dev-libs/openssl )
+"
+DEPEND="${RDEPEND}"
+BDEPEND="sys-devel/gettext"
+
+pkg_pretend() {
+       if use kernel_linux; then
+               if ! linux_config_exists; then
+                       eerror "Unable to check your kernel"
+               else
+                       CONFIG_CHECK="~VETH ~MACVTAP"
+                       ERROR_VETH="You will need the Virtual ethernet pair 
device driver compiled"
+                       ERROR_VETH+=" into your kernel or loaded as a module to 
use the"
+                       ERROR_VETH+=" local network settings feature."
+                       ERROR_MACVTAP="You will also need support for MAC-VLAN 
based tap driver."
+                       check_extra_config
+               fi
+       fi
+}
+
+src_configure() {
+       # -DNM_WITH_QEMU: Do not embbed qemu.
+       local mycmakeargs=(
+               -DNM_WITH_DBUS=$(usex dbus)
+               -DNM_WITH_NETWORK_MAP=$(usex network-map)
+               -DNM_WITH_REMOTE=$(usex remote-api)
+               -DNM_WITH_OVF_SUPPORT=$(usex ovf)
+               -DNM_WITH_QEMU=off
+               -DNM_WITH_USB=$(usex usb)
+       )
+       cmake_src_configure
+}
+
+src_install() {
+       cmake_src_install
+       docompress -x /usr/share/man/man1/nemu.1.gz
+}
+
+pkg_postinst() {
+       elog "For non-root usage execute script:"
+       elog "/usr/share/nemu/scripts/setup_nemu_nonroot.sh linux <username>"
+       elog "and add udev rule:"
+       elog "cp /usr/share/nemu/scripts/42-net-macvtap-perm.rules 
/etc/udev/rules.d"
+       elog "Afterwards reboot or reload udev with"
+       elog "udevadm control --reload-rules && udevadm trigger"
+}

Reply via email to