From 33f8661402fa9a26bc4372aa519fc0848c1d55c8 Mon Sep 17 00:00:00 2001 From: Sebastian Pipping Date: Fri, 21 Feb 2025 14:50:59 +0100 Subject: [PATCH] app-misc/spacenavd: 1.3.1 Signed-off-by: Sebastian Pipping --- app-misc/spacenavd/Manifest | 1 + app-misc/spacenavd/spacenavd-1.3.1.ebuild | 90 +++++++++++++++++++++++ 2 files changed, 91 insertions(+) create mode 100644 app-misc/spacenavd/spacenavd-1.3.1.ebuild diff --git a/app-misc/spacenavd/Manifest b/app-misc/spacenavd/Manifest index 3b2a78583347..13e2eaa8a0e7 100644 --- a/app-misc/spacenavd/Manifest +++ b/app-misc/spacenavd/Manifest @@ -1,2 +1,3 @@ DIST spacenavd-1.2.tar.gz 62837 BLAKE2B 3532a2f481c6f5997e30d18939bc22c1287af6aa4ac2dacc8a6c683c497aacf648a8ddde4ca84b1e3340cf5deb922667e92eb3613ac9eaae1baed42281488508 SHA512 26c24afdfda4d8767fc3f94b3ab1da825622249b55666f516aa52251cd756c23f4104f1e22f951dae49d4779dd5b85383d8c0b50b09318eee923f2c707136834 +DIST spacenavd-1.3.1.tar.gz 63557 BLAKE2B d0e577df71ab4da0d6987a006d818fd18f5dc99f4d7bac75fb63ad23902d136a08101cfb4d5214802545824a4cbe22fbad11b9bc8e4e5026c3e844872c2ee076 SHA512 c1ce54a224e84621c2495001eb6c6315f9dd916f0138141072606ce41e187cec325a582252ddd7dd9c0397e4c368a3b632440444853cf9e0f7bc5dcc2b6639aa DIST spacenavd-1.3.tar.gz 63619 BLAKE2B c85c423a574d467e52abf1200a042de889bd03176e01721143d44d18bcffc3ae51e0142db99bc172acc6c38cac6f559b56f950ee21c718127335b73e1edd2d6e SHA512 d3294116d05da4eb2c244c577d1828c28af8827b001a0c323079326d7fab3802f8428224f289b457de9c5e2e18c4222bd1b2bf06045cbc94de159f6983084366 diff --git a/app-misc/spacenavd/spacenavd-1.3.1.ebuild b/app-misc/spacenavd/spacenavd-1.3.1.ebuild new file mode 100644 index 000000000000..3d4508f830e1 --- /dev/null +++ b/app-misc/spacenavd/spacenavd-1.3.1.ebuild @@ -0,0 +1,90 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit flag-o-matic linux-info systemd toolchain-funcs udev + +MY_PN='spacenav' +DESCRIPTION="The spacenavd daemon provides free alternative to the 3dxserv daemon" +HOMEPAGE="http://spacenav.sourceforge.net/" +SRC_URI="https://github.com/FreeSpacenav/spacenavd/releases/download/v${PV}/${P}.tar.gz" +LICENSE="GPL-3" +SLOT="0" +KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~riscv ~x86" +IUSE="X" + +RDEPEND="X? ( + x11-apps/xdpyinfo + x11-base/xorg-proto + x11-libs/libX11 + x11-libs/libXi + x11-libs/libXtst + )" +DEPEND="${RDEPEND}" + +pkg_setup() { + CONFIG_CHECK="~INPUT_EVDEV" + ERROR_CFG="Your kernel needs INPUT_EVDEV for the spacenavd to work properly" + check_extra_config +} + +src_configure() { + append-cflags -fcommon # bug 708648 + econf \ + --disable-debug \ + --enable-hotplug \ + --disable-opt \ + $(use_enable X x11) +} + +src_compile() { + emake CC="$(tc-getCC)" +} + +src_install() { + # Config file + insinto /etc + newins "${S}/doc/example-spnavrc" spnavrc.sample + newins "${S}/doc/spnavrc_smouse_ent" spnavrc-space-mouse-enterprise.sample + newins "${S}/doc/spnavrc_spilot" spnavrc-space-pilot.sample + + # Init script + newinitd "${FILESDIR}/spnavd" spacenavd + systemd_dounit "${FILESDIR}/spacenavd.service" + + # Install udev rule but leave activiation to the user + # since Xorg may be configured to grab the device already + udev_newrules "${FILESDIR}"/99-space-navigator.rules-r2 99-space-navigator.rules.ignored + + # Daemon + dobin "${S}/spacenavd" + use X && dobin "${S}/spnavd_ctl" +} + +pkg_postinst() { + udev_reload + + elog "To start the Spacenav daemon system-wide by default" + elog "you should add it to the default runlevel :" + elog "\`rc-update add spacenavd default\` (for openRC)" + elog "\`systemctl enable spacenavd\` (for systemd)" + elog + if use X; then + elog "To start generating Spacenav X events by default" + elog "you should add this command in your user startup" + elog "scripts such as .gnomerc or .xinitrc :" + elog "\`spnavd_ctl x11 start\`" + elog + fi + elog "If you want to auto-start the daemon when you plug in" + elog "a SpaceNavigator device, activate the related udev rule :" + elog "\`sudo ln -s $(get_udevdir)/rules.d/99-space-navigator.rules.ignored /etc/udev/rules.d\`" + ewarn "You must restart spnavd \`/etc/init.d/spacenavd restart\` to run" + ewarn "the new version of the daemon or \`systemctl restart spacenavd\`" + ewarn "if using systemd." +} + +pkg_postrm() { + udev_reload +}