diff options
-rw-r--r-- | .SRCINFO | 19 | ||||
-rw-r--r-- | PKGBUILD | 22 | ||||
-rw-r--r-- | nvclock | 12 | ||||
-rw-r--r-- | nvclock.service | 15 | ||||
-rw-r--r-- | systemd-nvclock-unit.install | 20 |
5 files changed, 88 insertions, 0 deletions
diff --git a/.SRCINFO b/.SRCINFO new file mode 100644 index 000000000000..6845623cf575 --- /dev/null +++ b/.SRCINFO @@ -0,0 +1,19 @@ +pkgbase = systemd-nvclock-unit + pkgdesc = Apply nvclock fanspeed, GPU and memory clock settings with systemd + pkgver = 1.0 + pkgrel = 1 + url = http://www.freedesktop.org/wiki/Software/systemd + install = systemd-nvclock-unit.install + arch = any + license = GPL + depends = nvclock + depends = systemd + source = nvclock.service + source = nvclock + source = systemd-nvclock-unit.install + md5sums = b275050a8d6bed8f60ce9a9558abaef5 + md5sums = 4f74d99af0b51abae018ffa6153d3ae1 + md5sums = fbb9b2c438e21527aea857dc9744b214 + +pkgname = systemd-nvclock-unit + diff --git a/PKGBUILD b/PKGBUILD new file mode 100644 index 000000000000..66c6d68ba927 --- /dev/null +++ b/PKGBUILD @@ -0,0 +1,22 @@ +# Maintainer: edio edio@archlinux.us +pkgname=systemd-nvclock-unit +pkgver=1.0 +pkgrel=1 +pkgdesc="Apply nvclock fanspeed, GPU and memory clock settings with systemd" +arch=('any') +url="http://www.freedesktop.org/wiki/Software/systemd" +license=('GPL') +depends=('nvclock' 'systemd') +install=$pkgname.install +source=('nvclock.service' + 'nvclock' + 'systemd-nvclock-unit.install') + +md5sums=('b275050a8d6bed8f60ce9a9558abaef5' + '4f74d99af0b51abae018ffa6153d3ae1' + 'fbb9b2c438e21527aea857dc9744b214') + +package() { + install -Dm644 "${srcdir}/nvclock.service" "${pkgdir}/usr/lib/systemd/system/nvclock.service" + install -Dm644 "${srcdir}/nvclock" "${pkgdir}/etc/conf.d/nvclock" +} diff --git a/nvclock b/nvclock new file mode 100644 index 000000000000..da3e9c2eef7f --- /dev/null +++ b/nvclock @@ -0,0 +1,12 @@ +# This unit requires 'Coolbits' option adjusted in X configuration +# Refer to wiki https://wiki.archlinux.org/index.php/NVIDIA + +# GPU clock in MHz +nvclk=360 +# Memory clock in MHz +memclk=640 +# Fanspeed. Value between 10 and 100 or 'auto' if supported by device +fanspeed=20 +# Fanspeed to apply when stopping service +fanspeed_default=70 + diff --git a/nvclock.service b/nvclock.service new file mode 100644 index 000000000000..b7b6a3eefe48 --- /dev/null +++ b/nvclock.service @@ -0,0 +1,15 @@ +[Unit] +Description=nvclock daemon +After=systemd-user-sessions.service + +[Service] +Type=oneshot +RemainAfterExit=yes +EnvironmentFile=/etc/conf.d/nvclock +ExecStart=/usr/bin/nvclock -n ${nvclk} -m ${memclk} -F ${fanspeed} -f +ExecReload=/usr/bin/nvclock -n ${nvclk} -m ${memclk} -F ${fanspeed} -f +ExecStop=/usr/bin/nvclock -r -F ${fanspeed_default} -f + +[Install] +WantedBy=multi-user.target + diff --git a/systemd-nvclock-unit.install b/systemd-nvclock-unit.install new file mode 100644 index 000000000000..ce63da492fbd --- /dev/null +++ b/systemd-nvclock-unit.install @@ -0,0 +1,20 @@ +post_install() { +cat << EOF + +==> Change nvclk, memclk and fanspeed in /etc/conf.d/nvclock + +==> To apply nvclock settings use this commands as root : + systemctl start nvclock.service + +==> To enable it on boot : + systemctl enable nvclock.service + +==> To reset settings to device defaults + systemctl stop nvclock.service + +EOF +} +post_upgrade() { + post_install +} + |