summaryrefslogtreecommitdiff
path: root/sys-apps/razercfg
diff options
context:
space:
mode:
Diffstat (limited to 'sys-apps/razercfg')
-rw-r--r--sys-apps/razercfg/Manifest4
-rw-r--r--sys-apps/razercfg/metadata.xml36
-rw-r--r--sys-apps/razercfg/razercfg-0.42.ebuild96
3 files changed, 121 insertions, 15 deletions
diff --git a/sys-apps/razercfg/Manifest b/sys-apps/razercfg/Manifest
index eb3f2ade643d..8bed512d7edf 100644
--- a/sys-apps/razercfg/Manifest
+++ b/sys-apps/razercfg/Manifest
@@ -1,5 +1,7 @@
AUX razercfg-0.39-unit-variables.patch 712 BLAKE2B 2aeea04ea744bb6ed708d6d1128026ffc5112f9a0611d6eff9fbf2aacb9660bd3698727da5812da5b8937205246d70a20a5f876156b6ebe46638289c0e6cabd9 SHA512 c34c7f314420a1597b0c5aa44f6ae3b55e212d1bb9c00498f5e1525390bb2e62d68ebbe5dabc48468e79f0fe8f2f30b81459a5e9cc0b3e837239d39230fd7238
AUX razerd.init.d-r2 447 BLAKE2B ea72b6e9fa2f32ecede29e910f76f75a0de538c84271245eb8cf4f0715aa36c954e05cedb31c8af8a39b222c001bcdbd738ec5163c18eb58730b8868ae8da592 SHA512 8c9e307bd2a76086f9fa462f04019c9c840681232f1833292d4f64ed030ce83392cf039919f9f830abb4b61e0be65e2637c6bfdb7551291f68626c876ec92af1
DIST razercfg-0.39.tar.bz2 178142 BLAKE2B cf2d92d24a0dbfdae4045c2dab30a64bc4de64d730c075a4d852790ff62bcbadd714953fac925e69b671355cbdfdec7ce9db5693fbfa8e2aab69de6247c95c1a SHA512 165fee898a01b7f0086eb6705ef9f24fd8b8836025c071f7851a493181b8d193d0db70fc1731a8586de1f1c795aab4d20bb4ee8526b612c66ba3c434c6e10137
+DIST razercfg-0.42.tar.xz 103300 BLAKE2B 83f9432edf4deda78514dd1e2a65e04981d3646c543ebf3b74060f5d6ee5f9c3ddec5b0c544c11c9968c790172ae2bd4d4503adaf1428ca31337fdcd33d8545c SHA512 3856f4133b620fb639a46a5bb02fe8e6c47ae3928a04fe9d1bbef2792a44fdd4f5dff2efa43a1e43d75312025d3c65c626e331e723092e4e0b8d6622657fb197
EBUILD razercfg-0.39-r2.ebuild 2137 BLAKE2B deb76d7fe520261d6eeec1d702720300f4b273b1be7aa19ebfcd4a80594b643ecf8c833e5a775fe82d0e9aeb44f11239d4f9943335a183ec770da3e92fda59e3 SHA512 e2bfdfb681cacb1a6db032803125c9e24329958de2e1a50dfa769a158a5329fb12875a6d55c28c1040376ba05645079fd130932bb80b504280a1d233c2e9a3e1
-MISC metadata.xml 805 BLAKE2B 6be95bde1f31d215ead8de0546bcae9860c5ea24109803d44dcb889e7b39aa21972813893da53ea0817a77f9158d18be4fccd166cb2fe8d82627411f25b1d975 SHA512 bf8d583f50967b6a2a77e3db46595286a717eef57e61bb3f8aa230c0b0fbc5fce265fc95bdb57c25b44564b22e8ac2940986a04f9c0f8a6d378e027612ab478d
+EBUILD razercfg-0.42.ebuild 2104 BLAKE2B 8df76bfa80b77d7eebb18259a276d9d3288f413968f6ffc68233fc42c28bf27618d0022522ca32786dc63b39ee94b48a7cd7c530391e606a45dc213b2afde0db SHA512 dea989d25ca21c475d5c6a27f2e200e6aa3c62768087c2a2be63c4e71a4781b91bd34f48bb28994034acf69055a2c277b2f4995319647171c917ff6ee8b0e995
+MISC metadata.xml 1090 BLAKE2B 0c79721466fc628fb2f9da2e1806c4cac06b80cb135e15131e4a28e61f5a611a93ee715c399ac5def942cd5fdf847e272e93dc9aceb3d511093d0e885966d282 SHA512 5c5f26fe807250d22a5390ecdc12fd79d1c9eb39ebc35d1a31f4034faac5b2add3321287ece338d201b6eaa2bb585e636b9b26f37ef8a4f9a21e3f56c2933489
diff --git a/sys-apps/razercfg/metadata.xml b/sys-apps/razercfg/metadata.xml
index 77b7acea528e..e10f5181e6fe 100644
--- a/sys-apps/razercfg/metadata.xml
+++ b/sys-apps/razercfg/metadata.xml
@@ -1,18 +1,26 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
-<longdescription>
-Utility to for advanced configuration of the following Razer mice: Copperhead
-Lachesis (Classic), DeathAdder (Classic, 3500 DPI, Black Edition, 2013), Taipan
-Naga (Classic, 2012, 2014, Hex), Krait, Boomslang CE. The tool architecture is
-based on "razerd", which is a background daemon doing all of the lowlevel
-privilege hardware accesses. The user interface tools are "razercfg", a
-commandline tool; and "qrazercfg", a QT4 based graphical device configuration
-tool.
-</longdescription>
-<!-- maintainer-needed -->
-<use>
- <flag name="pm-utils">Installs the pm-utils hooks for suspend/resume and
- requires <pkg>sys-power/pm-utils</pkg></flag>
-</use>
+ <maintainer type="person">
+ <email>kaikaikai@yandex.ru</email>
+ <name>Alexey Korepanov</name>
+ </maintainer>
+ <maintainer type="project">
+ <email>proxy-maint@gentoo.org</email>
+ <name>Proxy Maintainers</name>
+ </maintainer>
+ <use>
+ <flag name="pm-utils">Installs the pm-utils hooks for suspend/resume and
+ requires <pkg>sys-power/pm-utils</pkg></flag>
+ <flag name="gui">Installs GUI configuration utility and status bar applet.
+ Requires <pkg>dev-python/PyQt5</pkg></flag>
+ </use>
+ <longdescription>
+ The next generation Razer device configuration tool bringing the Razer gaming
+ experience to the free OpenSource world.
+ The tool architecture is based on "razerd", which is a background daemon doing
+ all of the lowlevel privileged hardware accesses. The user interface tools are
+ "razercfg", a commandline tool; and "qrazercfg", a Qt based graphical device
+ configuration tool.
+ </longdescription>
</pkgmetadata>
diff --git a/sys-apps/razercfg/razercfg-0.42.ebuild b/sys-apps/razercfg/razercfg-0.42.ebuild
new file mode 100644
index 000000000000..1236531897a3
--- /dev/null
+++ b/sys-apps/razercfg/razercfg-0.42.ebuild
@@ -0,0 +1,96 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python3_{6,7,8} )
+
+inherit cmake python-single-r1 systemd tmpfiles udev
+
+DESCRIPTION="Utility for advanced configuration of Razer mice"
+HOMEPAGE="https://bues.ch/cms/hacking/razercfg.html https://github.com/mbuesch/razer"
+SRC_URI="https://bues.ch/${PN}/${P}.tar.xz"
+
+LICENSE="GPL-2+"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="gui +udev"
+
+REQUIRED_USE="${PYTHON_REQUIRED_USE}"
+
+DEPEND="${PYTHON_DEPS}
+ virtual/libusb:1
+"
+BDEPEND="virtual/pkgconfig"
+RDEPEND="${DEPEND}
+ gui? (
+ $(python_gen_cond_dep '
+ dev-python/PyQt5[${PYTHON_USEDEP}]
+ ')
+ )
+ udev? ( virtual/udev )
+"
+
+PATCHES=( "${FILESDIR}/${PN}-0.39-unit-variables.patch" )
+
+src_prepare() {
+ cmake_src_prepare
+
+ sed -i librazer/CMakeLists.txt \
+ -e '/ldconfig/{N;d}' \
+ -e "s:DESTINATION lib:DESTINATION $(get_libdir):" \
+ || die
+
+ sed -i ui/razercfg.desktop.template \
+ -e '/^Categories=/s/=.*$/=Qt;Settings/' \
+ || die
+}
+
+src_configure() {
+ local mycmakeargs=(
+ -DPYTHON="${PYTHON}"
+ -DSYSTEMD_UNIT_DIR="$(systemd_get_systemunitdir)"
+ -DUDEV_DIR="$(get_udevdir)"
+ )
+ RAZERCFG_PKG_BUILD=1 cmake_src_configure
+}
+
+src_install() {
+ RAZERCFG_PKG_BUILD=1 cmake_src_install
+
+ python_optimize
+
+ newinitd "${FILESDIR}"/razerd.init.d-r2 razerd
+ dodoc README.* HACKING.* razer.conf
+
+ if ! use gui; then
+ rm "${D}"/usr/bin/qrazercfg{,-applet} || die
+ rm -r "${D}"/usr/share/icons || die
+ rm -r "${D}"/usr/share/applications || die
+ fi
+
+ # sys-power/pm-utils is deprecated, so we delete related files
+ # (they contain a hook for resume from suspend)
+ # TODO: test resume from suspend
+ rm -r "${D}/etc/pm" || die
+}
+
+pkg_postinst() {
+ if use udev ; then
+ udevadm control --reload-rules
+ udevadm trigger --subsystem-match=usb
+ fi
+
+ xdg_icon_cache_update
+
+ tmpfiles_process razerd.conf
+
+ if [[ -e "${ROOT}/usr/bin/pyrazer.pyc" ]]; then
+ eerror "A stale ${ROOT}/usr/bin/pyrazer.pyc exists and will prevent"
+ eerror "the Python frontends from working until removed manually."
+ fi
+}
+
+pkg_postrm() {
+ xdg_icon_cache_update
+}