mirror of
https://github.com/pentoo/pentoo-overlay
synced 2025-12-06 08:25:01 +01:00
razercfg: testing https://github.com/mbuesch/razer/issues/115
This commit is contained in:
parent
509f704187
commit
f67c1e7c40
6 changed files with 177 additions and 0 deletions
1
sys-apps/razercfg/Manifest
Normal file
1
sys-apps/razercfg/Manifest
Normal file
|
|
@ -0,0 +1 @@
|
|||
DIST razercfg-0.40.tar.bz2 105706 BLAKE2B e9f931e4adf74834979d955cf5181f60577a9fc6a5274a537a3c46926259d6e324b089c03282093d4da03871dd15647e11f52fe200a9884db31915ac1856dff1 SHA512 42c3e7a34a348982fb2c1022c85dd3ec6d875dec387492eb4f6aece82423a1fd5984c4efb79926084aac880944a9e139a424487ab277d8c1a56c4f9c0a7c9d6e
|
||||
21
sys-apps/razercfg/files/razercfg-0.39-unit-variables.patch
Normal file
21
sys-apps/razercfg/files/razercfg-0.39-unit-variables.patch
Normal file
|
|
@ -0,0 +1,21 @@
|
|||
We set these variables in the ebuild, so don't override them.
|
||||
|
||||
--- a/scripts/cmake.global
|
||||
+++ b/scripts/cmake.global
|
||||
@@ -27,16 +27,6 @@
|
||||
include_directories(AFTER ${LIBUSB_INCLUDE_PATH})
|
||||
set(CMAKE_REQUIRED_INCLUDES "${LIBUSB_INCLUDE_PATH};${CMAKE_REQUIRED_INCLUDES}")
|
||||
|
||||
-execute_process(COMMAND pkg-config --variable=systemdsystemunitdir systemd
|
||||
- OUTPUT_VARIABLE SYSTEMD_UNIT_DIR
|
||||
- ERROR_QUIET
|
||||
- OUTPUT_STRIP_TRAILING_WHITESPACE)
|
||||
-
|
||||
-execute_process(COMMAND pkg-config --variable=udevdir udev
|
||||
- OUTPUT_VARIABLE UDEV_DIR
|
||||
- ERROR_QUIET
|
||||
- OUTPUT_STRIP_TRAILING_WHITESPACE)
|
||||
-
|
||||
macro(INSTALL_EXEC_CMD _COMMAND _FAILMSG)
|
||||
install(CODE "
|
||||
execute_process(COMMAND ${_COMMAND} RESULT_VARIABLE install_exec_res)
|
||||
21
sys-apps/razercfg/files/razercfg-0.40-unit-variables.patch
Normal file
21
sys-apps/razercfg/files/razercfg-0.40-unit-variables.patch
Normal file
|
|
@ -0,0 +1,21 @@
|
|||
We set these variables in the ebuild, so don't override them.
|
||||
|
||||
--- a/scripts/cmake.global
|
||||
+++ b/scripts/cmake.global
|
||||
@@ -27,16 +27,6 @@
|
||||
include_directories(AFTER ${LIBUSB_INCLUDE_PATH})
|
||||
set(CMAKE_REQUIRED_INCLUDES "${LIBUSB_INCLUDE_PATH};${CMAKE_REQUIRED_INCLUDES}")
|
||||
|
||||
-execute_process(COMMAND pkg-config --variable=systemdsystemunitdir systemd
|
||||
- OUTPUT_VARIABLE SYSTEMD_UNIT_DIR
|
||||
- ERROR_QUIET
|
||||
- OUTPUT_STRIP_TRAILING_WHITESPACE)
|
||||
-
|
||||
-execute_process(COMMAND pkg-config --variable=udevdir udev
|
||||
- OUTPUT_VARIABLE UDEV_DIR
|
||||
- ERROR_QUIET
|
||||
- OUTPUT_STRIP_TRAILING_WHITESPACE)
|
||||
-
|
||||
macro(INSTALL_EXEC_CMD _COMMAND _FAILMSG)
|
||||
install(CODE "
|
||||
execute_process(COMMAND ${_COMMAND} RESULT_VARIABLE install_exec_res)
|
||||
25
sys-apps/razercfg/files/razerd.init.d-r2
Normal file
25
sys-apps/razercfg/files/razerd.init.d-r2
Normal file
|
|
@ -0,0 +1,25 @@
|
|||
#!/sbin/openrc-run
|
||||
# Copyright 1999-2014 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
depend() {
|
||||
use logger
|
||||
}
|
||||
|
||||
PIDFILE=/run/razerd/razerd.pid
|
||||
|
||||
start() {
|
||||
ebegin "Starting razerd"
|
||||
start-stop-daemon --start \
|
||||
--pidfile ${PIDFILE} \
|
||||
--exec /usr/bin/razerd \
|
||||
-- --background --pidfile ${PIDFILE}
|
||||
eend $?
|
||||
}
|
||||
|
||||
stop() {
|
||||
ebegin "Stopping razerd"
|
||||
start-stop-daemon --stop --pidfile ${PIDFILE}
|
||||
eend $?
|
||||
}
|
||||
|
||||
18
sys-apps/razercfg/metadata.xml
Normal file
18
sys-apps/razercfg/metadata.xml
Normal file
|
|
@ -0,0 +1,18 @@
|
|||
<?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>
|
||||
</pkgmetadata>
|
||||
91
sys-apps/razercfg/razercfg-0.40.ebuild
Normal file
91
sys-apps/razercfg/razercfg-0.40.ebuild
Normal file
|
|
@ -0,0 +1,91 @@
|
|||
# Copyright 1999-2018 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=6
|
||||
|
||||
PYTHON_COMPAT=( python{3_4,3_5,3_6} )
|
||||
|
||||
inherit cmake-utils python-single-r1 systemd udev
|
||||
|
||||
DESCRIPTION="Utility for advanced configuration of Razer mice"
|
||||
HOMEPAGE="https://bues.ch/cms/hacking/razercfg.html"
|
||||
SRC_URI="https://bues.ch/${PN}/${P}.tar.bz2"
|
||||
|
||||
LICENSE="GPL-2+"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64 ~x86"
|
||||
IUSE="+pm-utils +udev qt5"
|
||||
|
||||
REQUIRED_USE="${PYTHON_REQUIRED_USE}"
|
||||
|
||||
RDEPEND="${PYTHON_DEPS}
|
||||
virtual/libusb:1
|
||||
pm-utils? ( sys-power/pm-utils )
|
||||
udev? ( virtual/udev )
|
||||
qt5? ( dev-python/PyQt5 )
|
||||
"
|
||||
DEPEND="${PYTHON_DEPS}
|
||||
dev-python/setuptools[${PYTHON_USEDEP}]
|
||||
virtual/libusb:1
|
||||
virtual/pkgconfig
|
||||
"
|
||||
|
||||
PATCHES=( "${FILESDIR}/${P}-unit-variables.patch" )
|
||||
|
||||
src_prepare() {
|
||||
cmake-utils_src_prepare
|
||||
|
||||
sed -i CMakeLists.txt \
|
||||
-e '/udevadm control/{N;d}' \
|
||||
-e '/systemctl/{N;d}' \
|
||||
-e "s:/etc/pm/sleep.d:/usr/$(get_libdir)/pm-utils/sleep.d/:" \
|
||||
-e 's:50-razer:80razer:' \
|
||||
|| die
|
||||
|
||||
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-utils_src_configure
|
||||
}
|
||||
|
||||
src_install() {
|
||||
RAZERCFG_PKG_BUILD=1 cmake-utils_src_install
|
||||
|
||||
newinitd "${FILESDIR}"/razerd.init.d-r2 razerd
|
||||
dodoc README.* HACKING.* razer.conf
|
||||
|
||||
if ! use qt5; then
|
||||
rm "${D%/}"/usr/bin/qrazercfg{,-applet} || die
|
||||
rm "${D%/}"/usr/share/icons/hicolor/scalable/apps/razercfg* || die
|
||||
rm "${D%/}"/usr/share/applications/razercfg.desktop || die
|
||||
fi
|
||||
|
||||
if ! use pm-utils; then
|
||||
rm "${D%/}/usr/$(get_libdir)/pm-utils/sleep.d/80razer" || die
|
||||
fi
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
if use udev ; then
|
||||
udevadm control --reload-rules
|
||||
udevadm trigger --subsystem-match=usb
|
||||
fi
|
||||
|
||||
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
|
||||
}
|
||||
Loading…
Reference in a new issue