summarylogtreecommitdiffstats
diff options
context:
space:
mode:
authorÓscar García Amor2019-12-30 15:44:01 +0100
committerÓscar García Amor2019-12-30 15:44:01 +0100
commit74abdc150a01cf4974686390aeb5a270a48c39d3 (patch)
tree6db4bdd0de379d43329a37753d2b465023e53b75
downloadaur-74abdc150a01cf4974686390aeb5a270a48c39d3.tar.gz
Initial upload: lg4l 2017.08.09-1
-rw-r--r--.SRCINFO22
-rw-r--r--.gitignore7
-rw-r--r--90-lg4l.rules30
-rw-r--r--PKGBUILD48
-rw-r--r--hid-g19.patch17
-rw-r--r--lg4l.install6
6 files changed, 130 insertions, 0 deletions
diff --git a/.SRCINFO b/.SRCINFO
new file mode 100644
index 000000000000..5b33d783cb35
--- /dev/null
+++ b/.SRCINFO
@@ -0,0 +1,22 @@
+pkgbase = lg4l
+ pkgdesc = Logitech for Linux
+ pkgver = 2017.08.09
+ pkgrel = 1
+ url = https://github.com/CMoH/lg4l
+ install = lg4l.install
+ arch = i686
+ arch = x86_64
+ license = GPL
+ makedepends = linux
+ makedepends = linux-headers
+ source = https://github.com/CMoH/lg4l/archive/3b92a1b641824e649d1847aa650a0808574db0b0.tar.gz
+ source = 90-lg4l.rules
+ source = hid-g19.patch
+ source = lg4l.install
+ sha256sums = 020013b2ea8cb09f0e8ec40f2f6cfdb37e12cc56c018f2a4c5a8a0bef083232f
+ sha256sums = c0c6e63bd52f800476747089954f9216bff674e0085445bdf28fb6ff5e304b07
+ sha256sums = b69d2b2a6af51557df15cffcac01d39ddf287a79c945dc7182a8cc41f8059e21
+ sha256sums = 7594f658e584f4f2069277b27ea22fad2d4fba032917b8b46de1b5738b5d2f63
+
+pkgname = lg4l
+
diff --git a/.gitignore b/.gitignore
new file mode 100644
index 000000000000..9c4e2faf31d7
--- /dev/null
+++ b/.gitignore
@@ -0,0 +1,7 @@
+*
+!90-lg4l.rules
+!.gitignore
+!hid-g19.patch
+!lg4l.install
+!PKGBUILD
+!.SRCINFO
diff --git a/90-lg4l.rules b/90-lg4l.rules
new file mode 100644
index 000000000000..2c5049c37f17
--- /dev/null
+++ b/90-lg4l.rules
@@ -0,0 +1,30 @@
+# This file binds Logitech G keyboard devices to the lg4l modules
+# See udev(7) for syntax.
+#
+
+# Logitech G19 Gaming Keyboard
+SUBSYSTEM=="hid", DRIVER=="generic-usb", ATTRS{idVendor}=="046d", ATTRS{idProduct}=="c229", ACTION=="add", RUN+="/bin/sh -c '/sbin/modprobe hid-g19; if test -d /sys/bus/hid/drivers/hid-g19; then /bin/echo -n %k >/sys/bus/hid/drivers/generic-usb/unbind && /bin/echo -n %k >/sys/bus/hid/drivers/hid-g19/bind; fi'"
+SUBSYSTEM=="hid", DRIVER=="hid-generic", ATTRS{idVendor}=="046d", ATTRS{idProduct}=="c229", ACTION=="add", RUN+="/bin/sh -c '/sbin/modprobe hid-g19; if test -d /sys/bus/hid/drivers/hid-g19; then /bin/echo -n %k >/sys/bus/hid/drivers/hid-generic/unbind && /bin/echo -n %k >/sys/bus/hid/drivers/hid-g19/bind; fi'"
+
+# Logitech G15 Gaming Keyboard (version 1 - Blue)
+SUBSYSTEM=="hid", DRIVER=="generic-usb", ATTRS{idVendor}=="046d", ATTRS{idProduct}=="c222", ACTION=="add", RUN+="/bin/sh -c '/sbin/modprobe hid-g15; if test -d /sys/bus/hid/drivers/hid-g15; then /bin/echo -n %k >/sys/bus/hid/drivers/generic-usb/unbind && /bin/echo -n %k >/sys/bus/hid/drivers/hid-g15/bind; fi'"
+SUBSYSTEM=="hid", DRIVER=="hid-generic", ATTRS{idVendor}=="046d", ATTRS{idProduct}=="c222", ACTION=="add", RUN+="/bin/sh -c '/sbin/modprobe hid-g15; if test -d /sys/bus/hid/drivers/hid-g15; then /bin/echo -n %k >/sys/bus/hid/drivers/hid-generic/unbind && /bin/echo -n %k >/sys/bus/hid/drivers/hid-g15/bind; fi'"
+
+# Logitech G15 Gaming Keyboard (version 2 - Orange)
+SUBSYSTEM=="hid", DRIVER=="generic-usb", ATTRS{idVendor}=="046d", ATTRS{idProduct}=="c227", ACTION=="add", RUN+="/bin/sh -c '/sbin/modprobe hid-g15v2; if test -d /sys/bus/hid/drivers/hid-g15v2; then /bin/echo -n %k >/sys/bus/hid/drivers/generic-usb/unbind && /bin/echo -n %k >/sys/bus/hid/drivers/hid-g15v2/bind; fi'"
+SUBSYSTEM=="hid", DRIVER=="hid-generic", ATTRS{idVendor}=="046d", ATTRS{idProduct}=="c227", ACTION=="add", RUN+="/bin/sh -c '/sbin/modprobe hid-g15v2; if test -d /sys/bus/hid/drivers/hid-g15v2; then /bin/echo -n %k >/sys/bus/hid/drivers/hid-generic/unbind && /bin/echo -n %k >/sys/bus/hid/drivers/hid-g15v2/bind; fi'"
+
+# Logitech G13 Advanced Gameboard
+SUBSYSTEM=="hid", DRIVER=="generic-usb", ATTRS{idVendor}=="046d", ATTRS{idProduct}=="c21c", ACTION=="add", RUN+="/bin/sh -c '/sbin/modprobe hid-g13; if test -d /sys/bus/hid/drivers/hid-g13; then /bin/echo -n %k >/sys/bus/hid/drivers/generic-usb/unbind && /bin/echo -n %k >/sys/bus/hid/drivers/hid-g13/bind; fi'"
+SUBSYSTEM=="hid", DRIVER=="hid-generic", ATTRS{idVendor}=="046d", ATTRS{idProduct}=="c21c", ACTION=="add", RUN+="/bin/sh -c '/sbin/modprobe hid-g13; if test -d /sys/bus/hid/drivers/hid-g13; then /bin/echo -n %k >/sys/bus/hid/drivers/hid-generic/unbind && /bin/echo -n %k >/sys/bus/hid/drivers/hid-g13/bind; fi'"
+
+# Logitech G510 Keyboard
+SUBSYSTEM=="hid", DRIVER=="generic-usb", ATTRS{idVendor}=="046d", ATTRS{idProduct}=="c22d", ACTION=="add", RUN+="/bin/sh -c '/sbin/modprobe hid-g510; if test -d /sys/bus/hid/drivers/hid-g510; then /bin/echo -n %k >/sys/bus/hid/drivers/generic-usb/unbind && /bin/echo -n %k >/sys/bus/hid/drivers/hid-g510/bind; fi'"
+SUBSYSTEM=="hid", DRIVER=="hid-generic", ATTRS{idVendor}=="046d", ATTRS{idProduct}=="c22d", ACTION=="add", RUN+="/bin/sh -c '/sbin/modprobe hid-g510; if test -d /sys/bus/hid/drivers/hid-g510; then /bin/echo -n %k >/sys/bus/hid/drivers/hid-generic/unbind && /bin/echo -n %k >/sys/bus/hid/drivers/hid-g510/bind; fi'"
+SUBSYSTEM=="hid", DRIVER=="generic-usb", ATTRS{idVendor}=="046d", ATTRS{idProduct}=="c22e", ACTION=="add", RUN+="/bin/sh -c '/sbin/modprobe hid-g510; if test -d /sys/bus/hid/drivers/hid-g510; then /bin/echo -n %k >/sys/bus/hid/drivers/generic-usb/unbind && /bin/echo -n %k >/sys/bus/hid/drivers/hid-g510/bind; fi'"
+SUBSYSTEM=="hid", DRIVER=="hid-generic", ATTRS{idVendor}=="046d", ATTRS{idProduct}=="c22e", ACTION=="add", RUN+="/bin/sh -c '/sbin/modprobe hid-g510; if test -d /sys/bus/hid/drivers/hid-g510; then /bin/echo -n %k >/sys/bus/hid/drivers/hid-generic/unbind && /bin/echo -n %k >/sys/bus/hid/drivers/hid-g510/bind; fi'"
+
+# Logitech G110 Keyboard (no LCD)
+SUBSYSTEM=="hid", DRIVER=="generic-usb", ATTRS{idVendor}=="046d", ATTRS{idProduct}=="c22b", ACTION=="add", RUN+="/bin/sh -c '/sbin/modprobe hid-g110; if test -d /sys/bus/hid/drivers/hid-g110; then /bin/echo -n %k >/sys/bus/hid/drivers/generic-usb/unbind && /bin/echo -n %k >/sys/bus/hid/drivers/hid-g110/bind; fi'"
+SUBSYSTEM=="hid", DRIVER=="hid-generic", ATTRS{idVendor}=="046d", ATTRS{idProduct}=="c22b", ACTION=="add", RUN+="/bin/sh -c '/sbin/modprobe hid-g110; if test -d /sys/bus/hid/drivers/hid-g110; then /bin/echo -n %k >/sys/bus/hid/drivers/hid-generic/unbind && /bin/echo -n %k >/sys/bus/hid/drivers/hid-g110/bind; fi'"
+
diff --git a/PKGBUILD b/PKGBUILD
new file mode 100644
index 000000000000..f8ef001989fc
--- /dev/null
+++ b/PKGBUILD
@@ -0,0 +1,48 @@
+# Maintainer: "Amhairghin" Oscar Garcia Amor (https://ogarcia.me)
+
+_commit='3b92a1b641824e649d1847aa650a0808574db0b0'
+_kernver="$(</usr/src/linux/version)"
+pkgname='lg4l'
+pkgver='2017.08.09'
+pkgrel='1'
+pkgdesc="Logitech for Linux"
+arch=('i686' 'x86_64')
+url="https://github.com/CMoH/lg4l"
+license=('GPL')
+makedepends=('linux' 'linux-headers')
+source=("https://github.com/CMoH/${pkgname}/archive/${_commit}.tar.gz"
+ "90-lg4l.rules" "hid-g19.patch" "${pkgname}.install")
+sha256sums=('020013b2ea8cb09f0e8ec40f2f6cfdb37e12cc56c018f2a4c5a8a0bef083232f'
+ 'c0c6e63bd52f800476747089954f9216bff674e0085445bdf28fb6ff5e304b07'
+ 'b69d2b2a6af51557df15cffcac01d39ddf287a79c945dc7182a8cc41f8059e21'
+ '7594f658e584f4f2069277b27ea22fad2d4fba032917b8b46de1b5738b5d2f63')
+install="${pkgname}.install"
+
+prepare() {
+ cd "${pkgname}-${_commit}"
+ patch -Np1 -i ../hid-g19.patch
+}
+
+build() {
+ cd "${pkgname}-${_commit}"
+ make
+}
+
+package() {
+ cd "${pkgname}-${_commit}"
+
+ # install modules
+ install -Dt "${pkgdir}/usr/lib/modules/${_kernver}/extramodules" \
+ -m0644 *.ko
+
+ # compress each module individually
+ find "${pkgdir}" -name '*.ko' -exec xz -T1 {} +
+
+ # install rebind
+ install -dm755 "${pkgdir}/usr/bin/"
+ install -m0755 rebind "${pkgdir}/usr/bin/lg4l-rebind"
+
+ # install rules
+ install -dm755 "${pkgdir}/usr/lib/udev/rules.d/"
+ install -m0644 ../90-lg4l.rules "${pkgdir}/usr/lib/udev/rules.d/"
+}
diff --git a/hid-g19.patch b/hid-g19.patch
new file mode 100644
index 000000000000..0941f179c4d6
--- /dev/null
+++ b/hid-g19.patch
@@ -0,0 +1,17 @@
+--- a/hid-g19.c
++++ b/hid-g19.c
+@@ -40,10 +40,10 @@
+ #define G19_KEYS 32
+
+ /* Backlight defaults */
+-#define G19_DEFAULT_RED (0)
+-#define G19_DEFAULT_GREEN (255)
+-#define G19_DEFAULT_BLUE (0)
+-#define G19_DEFAULT_BRIGHTNESS (80)
++#define G19_DEFAULT_RED (40)
++#define G19_DEFAULT_GREEN (100)
++#define G19_DEFAULT_BLUE (80)
++#define G19_DEFAULT_BRIGHTNESS (0)
+
+ /* LED array indices */
+ #define G19_LED_M1 0
diff --git a/lg4l.install b/lg4l.install
new file mode 100644
index 000000000000..3b27b59cab63
--- /dev/null
+++ b/lg4l.install
@@ -0,0 +1,6 @@
+post_install() {
+ cat << EOF
+===> You may want to load hid-g* module and run lg4l-rebind as root
+===> If you don't want to load module by hand, simply reboot your machine
+EOF
+}