blob: 21dab6b21ab96228396e703be50609e47289542a (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
|
# Copyright 1999-2017 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
EAPI="5"
inherit eutils 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="mirror://sourceforge/project/${MY_PN}/${MY_PN}%20daemon/${PN}%20${PV}/${P}.tar.gz"
LICENSE="GPL-3"
SLOT="0"
KEYWORDS="~amd64 ~ppc64 ~x86"
IUSE="X"
RDEPEND="X? ( x11-apps/xdpyinfo )"
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_prepare() {
epatch "${FILESDIR}"/${P}-destdir.patch
epatch "${FILESDIR}"/${P}-custom-flags.patch
epatch "${FILESDIR}"/${P}-no-x11.patch
}
src_configure() {
econf \
--enable-opt --enable-ldopt \
$(use_enable X x11)
}
src_compile() {
emake CC="$(tc-getCC)"
}
src_install() {
# Config file
insinto /etc
newins "${S}/doc/example-spnavrc" spnavrc.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-r1 99-space-navigator.rules.ignored
# Daemon
dobin "${S}/spacenavd"
use X && dobin "${S}/spnavd_ctl"
}
pkg_postinst() {
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
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."
}
|