summarylogtreecommitdiffstats
diff options
context:
space:
mode:
authorShayne Hartford2022-06-25 17:10:46 -0400
committerShayne Hartford2022-06-25 17:10:46 -0400
commitbc2118528ffeee2fb117953ddf3d4b16a02defaa (patch)
treeea2d59314713ee8c9a12a0dfa7726d987a71593e
downloadaur-bc2118528ffeee2fb117953ddf3d4b16a02defaa.tar.gz
4.4.6
-rw-r--r--.SRCINFO23
-rw-r--r--.gitignore7
-rw-r--r--PKGBUILD56
-rw-r--r--wooting-xinput.rules11
-rw-r--r--wooting-xinput@.service8
-rw-r--r--wooting.install13
-rw-r--r--wooting.rules76
7 files changed, 194 insertions, 0 deletions
diff --git a/.SRCINFO b/.SRCINFO
new file mode 100644
index 000000000000..023fae77d559
--- /dev/null
+++ b/.SRCINFO
@@ -0,0 +1,23 @@
+pkgbase = wootility-lekker-appimage
+ pkgdesc = Utility for configuring Wooting keyboards (binary AppImage version)
+ pkgver = 4.4.6
+ pkgrel = 1
+ url = https://wooting.io/wootility
+ install = wooting.install
+ arch = x86_64
+ license = unknown
+ depends = fuse2
+ optdepends = xboxdrv: Analog gamepad support (input group required)
+ provides = wootility
+ conflicts = wootility
+ options = !strip
+ source = https://s3.eu-west-2.amazonaws.com/wooting-update/wootility-lekker-linux-latest/wootility-lekker-4.4.6.AppImage
+ source = wooting.rules
+ source = wooting-xinput.rules
+ source = wooting-xinput@.service
+ sha512sums = 65e88af5b7aea23fa925a5b31545f5b2dcfb044ca63d75e4500d1d480599b6ac1ec57a42f15b7f53ce42e1f52a75cf3f4bcaa98ab3b5850de611cf795e7e918f
+ sha512sums = c8463344da908f2e984c7b6f72a36402a47766641516fc8ca7de51fefd4c9ceed826d1f10f946fa518f0a9ab039dc1c97c6c5d0bc08688f61293fd78d325edb2
+ sha512sums = 2f679f24d4ddd0fb67fbe363120e8378b172209e36009d0fa4de625a1b5a4c51c7e1d8f54dcbbe0bf1b6044780750ad6ee955883b54670063530fb9490113d32
+ sha512sums = 5612170539f68985d133989645601ef1950033b1883bf416368a40274892aca2b8a606bfb30a1482bada20dc7d3695e64bca3b6dba420c65c7c8fa4c7b1e8045
+
+pkgname = wootility-lekker-appimage
diff --git a/.gitignore b/.gitignore
new file mode 100644
index 000000000000..2d46cdc04617
--- /dev/null
+++ b/.gitignore
@@ -0,0 +1,7 @@
+*
+!.gitignore
+!.SRCINFO
+!PKGBUILD
+!*.rules
+!*.install
+!*.service
diff --git a/PKGBUILD b/PKGBUILD
new file mode 100644
index 000000000000..07a5028d71a7
--- /dev/null
+++ b/PKGBUILD
@@ -0,0 +1,56 @@
+# Maintainer: Shayne Hartford <shayneehartford@gmail.com>
+
+_pkgname=wootility-lekker
+pkgname=${_pkgname}-appimage
+pkgver=4.4.6
+pkgrel=1
+pkgdesc="Utility for configuring Wooting keyboards (binary AppImage version)"
+arch=('x86_64')
+url="https://wooting.io/wootility"
+license=('unknown')
+depends=('fuse2')
+optdepends=('xboxdrv: Analog gamepad support (input group required)')
+provides=('wootility')
+conflicts=('wootility')
+options=(!strip)
+install=wooting.install
+_appimage="${_pkgname}-${pkgver}.AppImage"
+source=(
+ "https://s3.eu-west-2.amazonaws.com/wooting-update/wootility-lekker-linux-latest/${_appimage}"
+ "wooting.rules"
+ "wooting-xinput.rules"
+ "wooting-xinput@.service"
+)
+sha512sums=(
+ "65e88af5b7aea23fa925a5b31545f5b2dcfb044ca63d75e4500d1d480599b6ac1ec57a42f15b7f53ce42e1f52a75cf3f4bcaa98ab3b5850de611cf795e7e918f"
+ "c8463344da908f2e984c7b6f72a36402a47766641516fc8ca7de51fefd4c9ceed826d1f10f946fa518f0a9ab039dc1c97c6c5d0bc08688f61293fd78d325edb2"
+ "2f679f24d4ddd0fb67fbe363120e8378b172209e36009d0fa4de625a1b5a4c51c7e1d8f54dcbbe0bf1b6044780750ad6ee955883b54670063530fb9490113d32"
+ "5612170539f68985d133989645601ef1950033b1883bf416368a40274892aca2b8a606bfb30a1482bada20dc7d3695e64bca3b6dba420c65c7c8fa4c7b1e8045"
+)
+
+prepare() {
+ chmod +x ${_appimage}
+ ./${_appimage} --appimage-extract ${_pkgname}.desktop
+ ./${_appimage} --appimage-extract ${_pkgname}.png
+ ./${_appimage} --appimage-extract usr/share/icons
+}
+
+build() {
+ sed -i -E "s|Exec=AppRun|Exec=${_pkgname}|" squashfs-root/${_pkgname}.desktop # Modify Exec to $_pkgname
+ sed -i -E "s|Name=${_pkgname}|Name=Wootility|" squashfs-root/${_pkgname}.desktop # Modify Name to Wootility
+}
+
+package() {
+ install -Dpm755 "${_appimage}" "${pkgdir}/opt/${_pkgname}/${_appimage}" # Install $_appimage to /opt/$_pkgname/$_appimage
+ install -d "${pkgdir}/usr/bin" # Install /usr/bin
+ ln -s "/opt/${_pkgname}/${_appimage}" "${pkgdir}/usr/bin/${_pkgname}" # Link /opt/$_pkgname/$_appimage to /usr/bin/$_pkgname
+
+ # Install desktop entry and icon
+ install -Dpm644 "squashfs-root/${_pkgname}.desktop" "${pkgdir}/usr/share/applications/${_pkgname}.desktop"
+ install -Dpm644 "squashfs-root/${_pkgname}.png" "${pkgdir}/usr/share/icons/hicolor/512x512/apps/${_pkgname}.png"
+
+ # Install udev rules and systemd services
+ install -Dpm644 "wooting.rules" "${pkgdir}/usr/lib/udev/rules.d/wooting.rules"
+ install -Dpm644 "wooting-xinput.rules" "${pkgdir}/usr/lib/udev/rules.d/wooting-xinput.rules"
+ install -Dpm644 "wooting-xinput@.service" "${pkgdir}/etc/systemd/system/wooting-xinput@.service"
+}
diff --git a/wooting-xinput.rules b/wooting-xinput.rules
new file mode 100644
index 000000000000..a631ddb35351
--- /dev/null
+++ b/wooting-xinput.rules
@@ -0,0 +1,11 @@
+# Wooting One
+SUBSYSTEM=="usb", ENV{PRODUCT}=="3eb/ff01/*", ENV{INTERFACE}=="255/93/1", TAG+="systemd", ENV{SYSTEMD_WANTS}="wooting-xinput@03eb:ff01"
+
+# Wooting Two
+SUBSYSTEM=="usb", ENV{PRODUCT}=="3eb/ff02/*", ENV{INTERFACE}=="255/93/1", TAG+="systemd", ENV{SYSTEMD_WANTS}="wooting-xinput@03eb:ff02"
+
+# Wooting Two Lekker Edition
+SUBSYSTEM=="usb", ENV{PRODUCT}=="31e3/1210/*", ENV{INTERFACE}=="255/93/1", TAG+="systemd", ENV{SYSTEMD_WANTS}="wooting-xinput@31e3:1210"
+
+# Wooting Two HE
+SUBSYSTEM=="usb", ENV{PRODUCT}=="31e3/1220/*", ENV{INTERFACE}=="255/93/1", TAG+="systemd", ENV{SYSTEMD_WANTS}="wooting-xinput@31e3:1220"
diff --git a/wooting-xinput@.service b/wooting-xinput@.service
new file mode 100644
index 000000000000..0fcc40b79880
--- /dev/null
+++ b/wooting-xinput@.service
@@ -0,0 +1,8 @@
+[Unit]
+Description=Loads the xboxdrv user-space-driver for the native Xbox 360 interface of the Wootings
+StopWhenUnneeded=true
+
+[Service]
+Type=simple
+ExecStart=/usr/bin/xboxdrv --type xbox360 --device-by-id %I --silent --quiet --detach-kernel-driver --mimic-xpad
+Restart=always
diff --git a/wooting.install b/wooting.install
new file mode 100644
index 000000000000..d659dc930f3f
--- /dev/null
+++ b/wooting.install
@@ -0,0 +1,13 @@
+post() {
+ echo "You must add yourself to the 'input' group for wootility to work correctly, 'sudo usermod -aG input <username>'"
+ echo "You must restart your login session to apply group changes (logout or reboot)"
+ echo "You can optionally install 'xboxdrv' for gamepad support"
+}
+
+post_install() {
+ post
+}
+
+post_upgrade() {
+ post
+}
diff --git a/wooting.rules b/wooting.rules
new file mode 100644
index 000000000000..0e978db11bc6
--- /dev/null
+++ b/wooting.rules
@@ -0,0 +1,76 @@
+# Wooting One Legacy
+SUBSYSTEM=="hidraw", ATTRS{idVendor}=="03eb", ATTRS{idProduct}=="ff01", MODE:="0660", GROUP="input"
+SUBSYSTEM=="usb", ATTRS{idVendor}=="03eb", ATTRS{idProduct}=="ff01", MODE:="0660", GROUP="input"
+# Wooting One update mode
+SUBSYSTEM=="hidraw", ATTRS{idVendor}=="03eb", ATTRS{idProduct}=="2402", MODE:="0660", GROUP="input"
+
+
+# Wooting Two Legacy
+SUBSYSTEM=="hidraw", ATTRS{idVendor}=="03eb", ATTRS{idProduct}=="ff02", MODE:="0660", GROUP="input"
+SUBSYSTEM=="usb", ATTRS{idVendor}=="03eb", ATTRS{idProduct}=="ff02", MODE:="0660", GROUP="input"
+# Wooting Two update mode
+SUBSYSTEM=="hidraw", ATTRS{idVendor}=="03eb", ATTRS{idProduct}=="2403", MODE:="0660", GROUP="input"
+
+
+# Wooting One
+SUBSYSTEM=="hidraw", ATTRS{idVendor}=="31e3", ATTRS{idProduct}=="1100", MODE:="0660", GROUP="input"
+SUBSYSTEM=="usb", ATTRS{idVendor}=="31e3", ATTRS{idProduct}=="1100", MODE:="0660", GROUP="input"
+# Wooting One Alt-gamepad mode
+SUBSYSTEM=="hidraw", ATTRS{idVendor}=="31e3", ATTRS{idProduct}=="1101", MODE:="0660", GROUP="input"
+SUBSYSTEM=="usb", ATTRS{idVendor}=="31e3", ATTRS{idProduct}=="1101", MODE:="0660", GROUP="input"
+# Wooting One 2nd Alt-gamepad mode
+SUBSYSTEM=="hidraw", ATTRS{idVendor}=="31e3", ATTRS{idProduct}=="1102", MODE:="0660", GROUP="input"
+SUBSYSTEM=="usb", ATTRS{idVendor}=="31e3", ATTRS{idProduct}=="1102", MODE:="0660", GROUP="input"
+
+
+# Wooting Two
+SUBSYSTEM=="hidraw", ATTRS{idVendor}=="31e3", ATTRS{idProduct}=="1200", MODE:="0660", GROUP="input"
+SUBSYSTEM=="usb", ATTRS{idVendor}=="31e3", ATTRS{idProduct}=="1200", MODE:="0660", GROUP="input"
+# Wooting Two Alt-gamepad mode
+SUBSYSTEM=="hidraw", ATTRS{idVendor}=="31e3", ATTRS{idProduct}=="1201", MODE:="0660", GROUP="input"
+SUBSYSTEM=="usb", ATTRS{idVendor}=="31e3", ATTRS{idProduct}=="1201", MODE:="0660", GROUP="input"
+# Wooting Two 2nd Alt-gamepad mode
+SUBSYSTEM=="hidraw", ATTRS{idVendor}=="31e3", ATTRS{idProduct}=="1202", MODE:="0660", GROUP="input"
+SUBSYSTEM=="usb", ATTRS{idVendor}=="31e3", ATTRS{idProduct}=="1202", MODE:="0660", GROUP="input"
+
+
+# Wooting Lekker
+SUBSYSTEM=="hidraw", ATTRS{idVendor}=="31e3", ATTRS{idProduct}=="1210", MODE:="0660", GROUP="input"
+SUBSYSTEM=="usb", ATTRS{idVendor}=="31e3", ATTRS{idProduct}=="1210", MODE:="0660", GROUP="input"
+# Wooting Lekker Alt-gamepad mode
+SUBSYSTEM=="hidraw", ATTRS{idVendor}=="31e3", ATTRS{idProduct}=="1211", MODE:="0660", GROUP="input"
+SUBSYSTEM=="usb", ATTRS{idVendor}=="31e3", ATTRS{idProduct}=="1211", MODE:="0660", GROUP="input"
+# Wooting Lekker 2nd Alt-gamepad mode
+SUBSYSTEM=="hidraw", ATTRS{idVendor}=="31e3", ATTRS{idProduct}=="1212", MODE:="0660", GROUP="input"
+SUBSYSTEM=="usb", ATTRS{idVendor}=="31e3", ATTRS{idProduct}=="1212", MODE:="0660", GROUP="input"
+
+# Wooting Lekker update mode
+SUBSYSTEM=="hidraw", ATTRS{idVendor}=="31e3", ATTRS{idProduct}=="121f", MODE:="0660", GROUP="input"
+
+
+# Wooting Two HE
+SUBSYSTEM=="hidraw", ATTRS{idVendor}=="31e3", ATTRS{idProduct}=="1220", MODE:="0660", GROUP="input"
+SUBSYSTEM=="usb", ATTRS{idVendor}=="31e3", ATTRS{idProduct}=="1220", MODE:="0660", GROUP="input"
+# Wooting Two HE Alt-gamepad mode
+SUBSYSTEM=="hidraw", ATTRS{idVendor}=="31e3", ATTRS{idProduct}=="1221", MODE:="0660", GROUP="input"
+SUBSYSTEM=="usb", ATTRS{idVendor}=="31e3", ATTRS{idProduct}=="1221", MODE:="0660", GROUP="input"
+# Wooting Two HE 2nd Alt-gamepad mode
+SUBSYSTEM=="hidraw", ATTRS{idVendor}=="31e3", ATTRS{idProduct}=="1222", MODE:="0660", GROUP="input"
+SUBSYSTEM=="usb", ATTRS{idVendor}=="31e3", ATTRS{idProduct}=="1222", MODE:="0660", GROUP="input"
+
+# Wooting Two HE update mode
+SUBSYSTEM=="hidraw", ATTRS{idVendor}=="31e3", ATTRS{idProduct}=="122f", MODE:="0660", GROUP="input"
+
+
+# Wooting 60HE
+SUBSYSTEM=="hidraw", ATTRS{idVendor}=="31e3", ATTRS{idProduct}=="1300", MODE:="0660", GROUP="input"
+SUBSYSTEM=="usb", ATTRS{idVendor}=="31e3", ATTRS{idProduct}=="1300", MODE:="0660", GROUP="input"
+# Wooting 60HE Alt-gamepad mode
+SUBSYSTEM=="hidraw", ATTRS{idVendor}=="31e3", ATTRS{idProduct}=="1301", MODE:="0660", GROUP="input"
+SUBSYSTEM=="usb", ATTRS{idVendor}=="31e3", ATTRS{idProduct}=="1301", MODE:="0660", GROUP="input"
+# Wooting 60HE 2nd Alt-gamepad mode
+SUBSYSTEM=="hidraw", ATTRS{idVendor}=="31e3", ATTRS{idProduct}=="1302", MODE:="0660", GROUP="input"
+SUBSYSTEM=="usb", ATTRS{idVendor}=="31e3", ATTRS{idProduct}=="1302", MODE:="0660", GROUP="input"
+
+# Wooting 60HE update mode
+SUBSYSTEM=="hidraw", ATTRS{idVendor}=="31e3", ATTRS{idProduct}=="130f", MODE:="0660", GROUP="input"