diff options
Diffstat (limited to 'sys-apps/razercfg/razercfg-0.39-r2.ebuild')
-rw-r--r-- | sys-apps/razercfg/razercfg-0.39-r2.ebuild | 90 |
1 files changed, 90 insertions, 0 deletions
diff --git a/sys-apps/razercfg/razercfg-0.39-r2.ebuild b/sys-apps/razercfg/razercfg-0.39-r2.ebuild new file mode 100644 index 000000000000..2d13385579e2 --- /dev/null +++ b/sys-apps/razercfg/razercfg-0.39-r2.ebuild @@ -0,0 +1,90 @@ +# Copyright 1999-2020 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=6 + +PYTHON_COMPAT=( python3_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" + +REQUIRED_USE="${PYTHON_REQUIRED_USE}" + +RDEPEND="${PYTHON_DEPS} + virtual/libusb:1 + pm-utils? ( sys-power/pm-utils ) + udev? ( virtual/udev ) +" +DEPEND="${PYTHON_DEPS} + $(python_gen_cond_dep ' + dev-python/setuptools[${PYTHON_MULTI_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 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 + + 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 + + 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 +} |