summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLars Wendler <polynomial-c@gentoo.org>2019-05-10 11:59:27 +0200
committerLars Wendler <polynomial-c@gentoo.org>2019-05-10 12:01:14 +0200
commitbf12cbcf32c902e9825583425340be3cb404dc09 (patch)
treebafa5e19a7645b9353e69f2b61a7da7af32b7562
parentsys-devel/gettext: Fixed installation with USE="doc java" (diff)
downloadgentoo-bf12cbcf32c902e9825583425340be3cb404dc09.tar.gz
gentoo-bf12cbcf32c902e9825583425340be3cb404dc09.tar.bz2
gentoo-bf12cbcf32c902e9825583425340be3cb404dc09.zip
x11-apps/radeon-profile-daemon: Secured socket permissions.
Package-Manager: Portage-2.3.66, Repoman-2.3.12 Signed-off-by: Lars Wendler <polynomial-c@gentoo.org>
-rw-r--r--x11-apps/radeon-profile-daemon/files/radeon-profile-daemon-20190309-secure_socket.patch26
-rw-r--r--x11-apps/radeon-profile-daemon/files/radeon-profile-daemon.initd4
-rw-r--r--x11-apps/radeon-profile-daemon/radeon-profile-daemon-20190309-r2.ebuild60
-rw-r--r--x11-apps/radeon-profile-daemon/radeon-profile-daemon-99999999.ebuild13
4 files changed, 102 insertions, 1 deletions
diff --git a/x11-apps/radeon-profile-daemon/files/radeon-profile-daemon-20190309-secure_socket.patch b/x11-apps/radeon-profile-daemon/files/radeon-profile-daemon-20190309-secure_socket.patch
new file mode 100644
index 000000000000..5d7132b90b75
--- /dev/null
+++ b/x11-apps/radeon-profile-daemon/files/radeon-profile-daemon-20190309-secure_socket.patch
@@ -0,0 +1,26 @@
+From 8e75c8678b874c6813e590634943166daa98124b Mon Sep 17 00:00:00 2001
+From: Lars Wendler <polynomial-c@gentoo.org>
+Date: Fri, 10 May 2019 11:01:21 +0200
+Subject: [PATCH] Don't make the socket world writable
+
+Signed-off-by: Lars Wendler <polynomial-c@gentoo.org>
+---
+ radeon-profile-daemon/rpdthread.cpp | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/radeon-profile-daemon/rpdthread.cpp b/radeon-profile-daemon/rpdthread.cpp
+index 4cf0ac0..137d5b2 100644
+--- a/radeon-profile-daemon/rpdthread.cpp
++++ b/radeon-profile-daemon/rpdthread.cpp
+@@ -47,7 +47,7 @@ void rpdThread::createServer()
+
+ QLocalServer::removeServer(serverName);
+ daemonServer.listen(serverName);
+- QFile::setPermissions("/tmp/" + serverName, QFile("/tmp/" + serverName).permissions() | QFile::WriteOther | QFile::ReadOther);
++ QFile::setPermissions("/tmp/" + serverName, QFile("/tmp/" + serverName).permissions() | QFile::WriteGroup | QFile::ReadGroup);
+ }
+
+ void rpdThread::closeConnection()
+--
+2.21.0
+
diff --git a/x11-apps/radeon-profile-daemon/files/radeon-profile-daemon.initd b/x11-apps/radeon-profile-daemon/files/radeon-profile-daemon.initd
index e4e7afb04c5c..f8ec51796704 100644
--- a/x11-apps/radeon-profile-daemon/files/radeon-profile-daemon.initd
+++ b/x11-apps/radeon-profile-daemon/files/radeon-profile-daemon.initd
@@ -7,3 +7,7 @@ description="Daemon for radeon-profile GUI"
command="/usr/sbin/radeon-profile-daemon"
command_background="true"
pidfile="/run/${SVCNAME}.pid"
+
+start_post() {
+ chgrp video /tmp/radeon-profile-daemon-server
+}
diff --git a/x11-apps/radeon-profile-daemon/radeon-profile-daemon-20190309-r2.ebuild b/x11-apps/radeon-profile-daemon/radeon-profile-daemon-20190309-r2.ebuild
new file mode 100644
index 000000000000..924760fc9099
--- /dev/null
+++ b/x11-apps/radeon-profile-daemon/radeon-profile-daemon-20190309-r2.ebuild
@@ -0,0 +1,60 @@
+# Copyright 1999-2019 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit qmake-utils systemd
+
+DESCRIPTION="Daemon for radeon-profile GUI"
+HOMEPAGE="https://github.com/marazmista/radeon-profile-daemon"
+if [[ "${PV}" == 99999999 ]] ; then
+ inherit git-r3
+ EGIT_REPO_URI="https://github.com/marazmista/radeon-profile-daemon.git"
+else
+ SRC_URI="https://github.com/marazmista/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
+ KEYWORDS="~amd64 ~x86"
+fi
+LICENSE="GPL-2"
+SLOT="0"
+
+IUSE=""
+
+RDEPEND="
+ dev-qt/qtcore:5
+ dev-qt/qtnetwork:5
+"
+DEPEND="${RDEPEND}"
+
+S="${WORKDIR}/${P}/${PN}"
+
+PATCHES=(
+ "${FILESDIR}/${P}-secure_socket.patch"
+)
+
+src_prepare() {
+ eapply -p2 "${PATCHES[@]}"
+ eapply_user
+
+ sed \
+ -e '/^bin\.path/s@/bin@/sbin@' \
+ -e "/^service\.path/s@=.*\$@= $(systemd_get_systemunitdir)@" \
+ -i radeon-profile-daemon.pro || die
+ sed \
+ -e '/^ExecStart/s@/bin/@/sbin/@' \
+ -i extra/${PN}.service || die
+}
+
+src_configure() {
+ eqmake5
+}
+
+src_install() {
+ emake INSTALL_ROOT="${D}" install
+
+ newinitd "${FILESDIR}"/${PN}.initd ${PN}
+}
+
+pkg_postinst() {
+ elog "Users need to be in the \"video\" group if they want to change"
+ elog "video card settings via ${PN}"
+}
diff --git a/x11-apps/radeon-profile-daemon/radeon-profile-daemon-99999999.ebuild b/x11-apps/radeon-profile-daemon/radeon-profile-daemon-99999999.ebuild
index ca74330cfd3c..924760fc9099 100644
--- a/x11-apps/radeon-profile-daemon/radeon-profile-daemon-99999999.ebuild
+++ b/x11-apps/radeon-profile-daemon/radeon-profile-daemon-99999999.ebuild
@@ -27,8 +27,14 @@ DEPEND="${RDEPEND}"
S="${WORKDIR}/${P}/${PN}"
+PATCHES=(
+ "${FILESDIR}/${P}-secure_socket.patch"
+)
+
src_prepare() {
- default
+ eapply -p2 "${PATCHES[@]}"
+ eapply_user
+
sed \
-e '/^bin\.path/s@/bin@/sbin@' \
-e "/^service\.path/s@=.*\$@= $(systemd_get_systemunitdir)@" \
@@ -47,3 +53,8 @@ src_install() {
newinitd "${FILESDIR}"/${PN}.initd ${PN}
}
+
+pkg_postinst() {
+ elog "Users need to be in the \"video\" group if they want to change"
+ elog "video card settings via ${PN}"
+}