From 63712843c3541afcf25bcc8f24b46de7bbc8b400 Mon Sep 17 00:00:00 2001 From: Robert Alessi Date: Mon, 10 Sep 2018 10:41:38 +0200 Subject: initial commit --- .gitignore | 2 ++ PKGBUILD | 28 ++++++++++++++++++++++++++++ x200-my-lid.sh | 2 ++ x200-my-sleep.sh | 2 ++ x200-my.initd | 18 ++++++++++++++++++ x200-my.install | 9 +++++++++ x200-my.sh | 31 +++++++++++++++++++++++++++++++ 7 files changed, 92 insertions(+) create mode 100644 .gitignore create mode 100644 PKGBUILD create mode 100644 x200-my-lid.sh create mode 100644 x200-my-sleep.sh create mode 100644 x200-my.initd create mode 100644 x200-my.install create mode 100644 x200-my.sh diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..80e3807 --- /dev/null +++ b/.gitignore @@ -0,0 +1,2 @@ +# emacs backups +*~ diff --git a/PKGBUILD b/PKGBUILD new file mode 100644 index 0000000..d411376 --- /dev/null +++ b/PKGBUILD @@ -0,0 +1,28 @@ +# Maintainer: Robert Alessi + +pkgname=x200-my +pkgver=0.1 +pkgrel=2 +pkgdesc="Service which removes whining noise from Thinkpads X200. Also powers off the wifi on shutdown." +arch=(any) +license=(GPL2) +url="http://git.robertalessi.net/x200-my" +depends=('sysvinit' 'networkmanager' 'acpid') +install=x200-my.install +source=('x200-my.initd' + 'x200-my-lid.sh' + 'x200-my-sleep.sh' + 'x200-my.sh') +sha512sums=('af5ade50214a9ffe0a24d0a0c8ad93d9802a6bfab64c53a832f0d21ef4abf9c465aec88e8be6b1af90c5bb02f9718aa3a495bcb8ed496f8de2c1ad130afdf70f' + '0dc141f1a26f2cd570d49a05bcc9496ba4c49fde39afad46f5a0783e83c07ec810ca81454a28c3241bcffc62ac31274e2a8d726bbd3c1e91d8cf5315b783c3f8' + '610564aa853c5dbc4e370ec2a4d3b5590e53ed235a1960927c0986a31f6c77d135086b1f5752b56fd511ea4a0294082fc7e98ee2fa7b69b37776a59f45c2ec34' + 'cb765075f02b5cd16bcfc31571cf7c31ddcd74ff3aa832df1acd96bd8feb62855c0cf90c31c3e0028180765a51eafc5c74fb1f0406dd9172bdc0f5ec02b39f8c') + +package() { + install -Dm755 x200-my.initd "$pkgdir"/etc/init.d/x200-my + sed -e 's|#!/sbin/openrc-run|#!/usr/bin/openrc-run|g' \ + -i $pkgdir/etc/init.d/x200-my + install -Dm644 "x200-my-lid.sh" "$pkgdir/etc/acpi/events/x200-my-lid" + install -Dm644 "x200-my-sleep.sh" "$pkgdir/etc/acpi/events/x200-my-sleep" + install -Dm755 "x200-my.sh" "$pkgdir/etc/acpi/x200-my.sh" +} diff --git a/x200-my-lid.sh b/x200-my-lid.sh new file mode 100644 index 0000000..2390706 --- /dev/null +++ b/x200-my-lid.sh @@ -0,0 +1,2 @@ +event=button/lid.* +action=/etc/acpi/x200-my.sh %e diff --git a/x200-my-sleep.sh b/x200-my-sleep.sh new file mode 100644 index 0000000..ecbf2f6 --- /dev/null +++ b/x200-my-sleep.sh @@ -0,0 +1,2 @@ +event=button/sleep.* +action=/etc/acpi/x200-my.sh %e diff --git a/x200-my.initd b/x200-my.initd new file mode 100644 index 0000000..9d8442d --- /dev/null +++ b/x200-my.initd @@ -0,0 +1,18 @@ +#!/sbin/openrc-run +# Copyright 2018 Robert Alessi +# Distributed under the terms of the GNU General Public License v2 + +description="Removes whining noise from Thinkpads X200 and powers off the wifi on shutdown." + +start() { +if [ "${RC_CMD}" = "restart" ]; + then + /usr/bin/nmcli radio all off + fi + +/usr/bin/intel_reg write 0x00061254 0x8bb7b16dc5b6a 2>/dev/null +} + +stop() { +/usr/bin/nmcli radio all off +} diff --git a/x200-my.install b/x200-my.install new file mode 100644 index 0000000..f26d50b --- /dev/null +++ b/x200-my.install @@ -0,0 +1,9 @@ +post_install() { + echo "Enabling x200-my service..." + rc-update add x200-my default +} + +pre_remove() { + echo "Disabling x200-my service..." + rc-update del x200-my default +} diff --git a/x200-my.sh b/x200-my.sh new file mode 100644 index 0000000..1b72c62 --- /dev/null +++ b/x200-my.sh @@ -0,0 +1,31 @@ +#!/bin/bash +# Default acpi script that takes an entry for all actions + +case "$1" in + button/sleep) + case "$2" in + SLPB|SBTN) + logger 'SleepButton pressed' + rc-service x200-my restart + ;; + *) + logger "ACPI action undefined: $2" + ;; + esac + ;; + button/lid) + case "$3" in + close) + logger 'LID closed' + ;; + open) + logger 'LID opened' + rc-service x200-my restart + ;; + *) + logger "ACPI action undefined: $3" + ;; + esac + ;; +esac + -- cgit v1.2.3