diff options
author | V3n3RiX <venerix@koprulu.sector> | 2023-11-03 03:56:37 +0000 |
---|---|---|
committer | V3n3RiX <venerix@koprulu.sector> | 2023-11-03 03:56:37 +0000 |
commit | 54e9f9704b37e05c561eadb37d89d30ee7dda9ee (patch) | |
tree | bb03a8b10fc448608096c5e872d62b366fc2c93c /sys-apps/openrazer/openrazer-3.7.0.ebuild | |
parent | 1615d14d4de4360b2241ce5cd8a84157cc86cde0 (diff) |
gentoo auto-resync : 03:11:2023 - 03:56:37
Diffstat (limited to 'sys-apps/openrazer/openrazer-3.7.0.ebuild')
-rw-r--r-- | sys-apps/openrazer/openrazer-3.7.0.ebuild | 175 |
1 files changed, 175 insertions, 0 deletions
diff --git a/sys-apps/openrazer/openrazer-3.7.0.ebuild b/sys-apps/openrazer/openrazer-3.7.0.ebuild new file mode 100644 index 000000000000..2ef77708a548 --- /dev/null +++ b/sys-apps/openrazer/openrazer-3.7.0.ebuild @@ -0,0 +1,175 @@ +# Copyright 1999-2023 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_USE_PEP517=setuptools +PYTHON_COMPAT=( python3_{10..11} ) + +inherit readme.gentoo-r1 systemd udev xdg-utils distutils-r1 linux-mod-r1 + +DESCRIPTION="Drivers and user-space daemon to control Razer devices on GNU/Linux" +HOMEPAGE="https://openrazer.github.io/ + https://github.com/openrazer/openrazer/" + +if [[ "${PV}" == *9999* ]] ; then + inherit git-r3 + + EGIT_REPO_URI="https://github.com/${PN}/${PN}.git" +else + SRC_URI="https://github.com/${PN}/${PN}/archive/v${PV}.tar.gz + -> ${P}.tar.gz" + + KEYWORDS="~amd64 ~x86" +fi + +LICENSE="GPL-2+" +SLOT="0" + +IUSE="+client +daemon" +REQUIRED_USE=" + client? ( daemon ) + daemon? ( ${PYTHON_REQUIRED_USE} ) + test? ( daemon ) +" + +RDEPEND=" + client? ( dev-python/numpy[${PYTHON_USEDEP}] ) + daemon? ( + acct-group/plugdev + dev-python/daemonize[${PYTHON_USEDEP}] + dev-python/dbus-python[${PYTHON_USEDEP}] + dev-python/notify2[${PYTHON_USEDEP}] + dev-python/pygobject:3[${PYTHON_USEDEP}] + dev-python/pyudev[${PYTHON_USEDEP}] + dev-python/setproctitle[${PYTHON_USEDEP}] + x11-libs/gtk+:3[introspection] + x11-misc/xautomation + x11-misc/xdotool + ) +" +BDEPEND=" + ${RDEPEND} + virtual/linux-sources +" + +DOCS=( README.md ) + +DOC_CONTENTS="To successfully use OpenRazer: load desired kernel module +(razeraccessory, razerkbd, razerkraken and/or razermouse), +add your user to the \"plugdev\" group and start the OpenRazer daemon. +To automatically start up the OpenRazer daemon on session login copy +/usr/share/openrazer/openrazer-daemon.desktop file into Your user's +~/.config/autostart/ directory." + +distutils_enable_tests unittest + +python_compile() { + cd "${S}/daemon" || die + + distutils_pep517_install "${BUILD_DIR}/install" + + if use client ; then + cd "${S}/pylib" || die + + distutils_pep517_install "${BUILD_DIR}/install" + fi +} + +python_install() { + distutils-r1_python_install + + python_scriptinto /usr/bin + python_newscript daemon/run_openrazer_daemon.py "${PN}-daemon" +} + +src_prepare() { + xdg_environment_reset + + if use daemon ; then + distutils-r1_src_prepare + else + default + fi + + # Remove bad tests. + rm daemon/tests/test_effect_sync.py || die +} + +src_compile() { + local -a modargs=( + SUBDIRS="${S}/driver" + KERNELDIR="${KERNEL_DIR}" + ) + local -a modlist=( + {razeraccessory,razerkbd,razerkraken,razermouse}="hid:${S}:driver" + ) + linux-mod-r1_src_compile + + if use daemon ; then + distutils-r1_src_compile + + emake -C "${S}/daemon" PREFIX=/usr service + fi + + readme.gentoo_create_doc +} + +src_test() { + cd daemon/tests || die + + distutils-r1_src_test +} + +src_install() { + linux-mod-r1_src_install + + udev_dorules install_files/udev/99-razer.rules + exeinto "$(get_udevdir)" + doexe install_files/udev/razer_mount + + # Install configuration example so that the daemon does not complain. + insinto /usr/share/${PN} + newins daemon/resources/razer.conf razer.conf.example + + if use daemon ; then + # Python libraries/scripts, "client" also requires USE="daemon" + distutils-r1_src_install + + # dbus service + insinto /usr/share/dbus-1/services + doins daemon/org.razer.service + + # systemd unit + systemd_douserunit "daemon/${PN}-daemon.service" + + # xdg autostart example file + insinto /usr/share/${PN} + doins install_files/desktop/openrazer-daemon.desktop + + # Manpages + doman daemon/resources/man/${PN}-daemon.8 + doman daemon/resources/man/razer.conf.5 + fi +} + +pkg_postinst() { + linux-mod-r1_pkg_postinst + udev_reload + + if use daemon ; then + xdg_icon_cache_update + xdg_desktop_database_update + fi + + readme.gentoo_print_elog +} + +pkg_postrm() { + udev_reload + + if use daemon ; then + xdg_icon_cache_update + xdg_desktop_database_update + fi +} |