diff options
-rw-r--r-- | .SRCINFO | 8 | ||||
-rw-r--r-- | .gitignore | 7 | ||||
-rw-r--r-- | 70-wooting.rules | 15 | ||||
-rw-r--r-- | PKGBUILD | 40 | ||||
-rw-r--r-- | wootility-appimage.install | 3 | ||||
-rw-r--r-- | wooting.rules | 83 |
6 files changed, 49 insertions, 107 deletions
@@ -1,21 +1,19 @@ pkgbase = wootility-appimage pkgdesc = Utility for configuring Wooting keyboards (binary AppImage version) pkgver = 3.6.16 - pkgrel = 4 + pkgrel = 5 url = https://wooting.io/wootility install = wootility-appimage.install arch = x86_64 arch = x86_64_v3 license = unknown - makedepends = p7zip depends = fuse2 provides = wootility conflicts = wootility - noextract = wootility-3.6.16.AppImage options = !strip source = https://s3.eu-west-2.amazonaws.com/wooting-update/wootility-linux-latest/wootility-3.6.16.AppImage - source = wooting.rules + source = 70-wooting.rules b2sums = 79a32462cb3f375344ace2a4785c950854b8a7dd027d9c1e7c24696135f641d1d88f56ccbc2dfadc53d278e291bf11735d81d860e57b83cb981366d4930bf641 - b2sums = 32611a6c0eafc122862b97693d402d8b6111ccccb1b920119c9bbd550833dccb14201cff8121487d2de1114f1a3de45163b22f4e6fb77b342562a3c441c72efc + b2sums = 80b4a516f8aafb6eada36cdde59295f2358b22e6cc28b1a21b0b5f22a59bcfabc63bba956d23544faca5fd76a1c4b4c1ff98ada41e7c9ad015d48c7c436dbac1 pkgname = wootility-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/70-wooting.rules b/70-wooting.rules new file mode 100644 index 000000000000..2ea36da2b730 --- /dev/null +++ b/70-wooting.rules @@ -0,0 +1,15 @@ +# Wooting One Legacy +SUBSYSTEM=="hidraw", ATTRS{idVendor}=="03eb", ATTRS{idProduct}=="ff01", TAG+="uaccess" +SUBSYSTEM=="usb", ATTRS{idVendor}=="03eb", ATTRS{idProduct}=="ff01", TAG+="uaccess" +# Wooting One update mode +SUBSYSTEM=="hidraw", ATTRS{idVendor}=="03eb", ATTRS{idProduct}=="2402", TAG+="uaccess" + +# Wooting Two Legacy +SUBSYSTEM=="hidraw", ATTRS{idVendor}=="03eb", ATTRS{idProduct}=="ff02", TAG+="uaccess" +SUBSYSTEM=="usb", ATTRS{idVendor}=="03eb", ATTRS{idProduct}=="ff02", TAG+="uaccess" +# Wooting Two update mode +SUBSYSTEM=="hidraw", ATTRS{idVendor}=="03eb", ATTRS{idProduct}=="2403", TAG+="uaccess" + +# Generic Wootings +SUBSYSTEM=="hidraw", ATTRS{idVendor}=="31e3", TAG+="uaccess" +SUBSYSTEM=="usb", ATTRS{idVendor}=="31e3", TAG+="uaccess" @@ -1,41 +1,49 @@ # Maintainer: Frederik “Freso” S. Olesen <archlinux@freso.dk> +# Contributor: Shayne Hartford <shayneehartford@gmail.com> + _pkgname=wootility pkgname=${_pkgname}-appimage pkgver=3.6.16 -pkgrel=4 +pkgrel=5 pkgdesc='Utility for configuring Wooting keyboards (binary AppImage version)' arch=('x86_64' 'x86_64_v3') url='https://wooting.io/wootility' license=('unknown') depends=('fuse2') -makedepends=('p7zip') provides=("${_pkgname}") conflicts=("${_pkgname}") options=(!strip) _appimage="${_pkgname}-${pkgver}.AppImage" install=$pkgname.install source=("https://s3.eu-west-2.amazonaws.com/wooting-update/wootility-linux-latest/${_appimage}" - 'wooting.rules') -noextract=("${_appimage}") + '70-wooting.rules') b2sums=('79a32462cb3f375344ace2a4785c950854b8a7dd027d9c1e7c24696135f641d1d88f56ccbc2dfadc53d278e291bf11735d81d860e57b83cb981366d4930bf641' - '32611a6c0eafc122862b97693d402d8b6111ccccb1b920119c9bbd550833dccb14201cff8121487d2de1114f1a3de45163b22f4e6fb77b342562a3c441c72efc') + '80b4a516f8aafb6eada36cdde59295f2358b22e6cc28b1a21b0b5f22a59bcfabc63bba956d23544faca5fd76a1c4b4c1ff98ada41e7c9ad015d48c7c436dbac1') prepare() { - 7z x "${_appimage}" 'wootility.desktop' 'usr/share/icons' > /dev/null + # Copying AppImage in case $SRCDEST is mounted with noexec + cp ${_appimage} ${_appimage}.copy + chmod +x ${_appimage}.copy + ./${_appimage}.copy --appimage-extract ${_pkgname}.desktop + ./${_appimage}.copy --appimage-extract ${_pkgname}.png + ./${_appimage}.copy --appimage-extract usr/share/icons + rm ${_appimage}.copy } build() { - sed -i -E "s|Exec=AppRun|Exec=${_pkgname}|" wootility.desktop - # Fix permissions; .AppImage permissions are 700 for all directories - chmod -R a-x+rX usr + sed -i -E "s|Exec=AppRun|Exec=${_pkgname}|" squashfs-root/${_pkgname}.desktop + sed -i -E "s|Name=.*$|Name=Wootility|" squashfs-root/${_pkgname}.desktop } package() { - install -Dpm755 "${_appimage}" "${pkgdir}/opt/${_pkgname}/${_appimage}" - install -d "${pkgdir}/usr/bin" - ln -s "../../opt/${_pkgname}/${_appimage}" "${pkgdir}/usr/bin/${_pkgname}" - install -Dpm644 'wootility.desktop' "${pkgdir}/usr/share/applications/${_pkgname}.desktop" - install -d "${pkgdir}/usr/share/icons" - cp -a usr/share/icons/hicolor "${pkgdir}/usr/share/icons/hicolor" - install -Dpm644 'wooting.rules' "${pkgdir}/usr/lib/udev/rules.d/wooting.rules" + install -Dpm755 "${_appimage}" "${pkgdir}/opt/${_pkgname}/${_appimage}" + install -d "${pkgdir}/usr/bin" + ln -s "../../opt/${_pkgname}/${_appimage}" "${pkgdir}/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 + install -Dpm644 "70-wooting.rules" "${pkgdir}/usr/lib/udev/rules.d/70-wooting.rules" } diff --git a/wootility-appimage.install b/wootility-appimage.install index aee2f49ecf3a..baffe52bc48a 100644 --- a/wootility-appimage.install +++ b/wootility-appimage.install @@ -1,7 +1,4 @@ post_install() { - echo 'Your user needs to be a member of the "input" group.' - echo 'https://wiki.archlinux.org/title/Users_and_groups#Group_management' - echo echo 'To turn off the “Would you like to integrate ….AppImage with your system?”' echo 'notifications on every launch of Wootility, see:' echo 'https://github.com/AppImage/AppImageSpec/blob/master/draft.md#desktop-integration' diff --git a/wooting.rules b/wooting.rules deleted file mode 100644 index 3c7414ecf596..000000000000 --- a/wooting.rules +++ /dev/null @@ -1,83 +0,0 @@ -# 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" - -# Wooting 60HE (ARM) -SUBSYSTEM=="hidraw", ATTRS{idVendor}=="31e3", ATTRS{idProduct}=="1310", MODE:="0660", GROUP="input" -SUBSYSTEM=="usb", ATTRS{idVendor}=="31e3", ATTRS{idProduct}=="1310", MODE:="0660", GROUP="input" -# Wooting 60HE (ARM) Alt-gamepad mode -SUBSYSTEM=="hidraw", ATTRS{idVendor}=="31e3", ATTRS{idProduct}=="1311", MODE:="0660", GROUP="input" -SUBSYSTEM=="usb", ATTRS{idVendor}=="31e3", ATTRS{idProduct}=="1311", MODE:="0660", GROUP="input" -# Wooting 60HE (ARM) 2nd Alt-gamepad mode -SUBSYSTEM=="hidraw", ATTRS{idVendor}=="31e3", ATTRS{idProduct}=="1312", MODE:="0660", GROUP="input" -SUBSYSTEM=="usb", ATTRS{idVendor}=="31e3", ATTRS{idProduct}=="1312", MODE:="0660", GROUP="input" - -# Wooting 60HE (ARM) update mode -SUBSYSTEM=="hidraw", ATTRS{idVendor}=="31e3", ATTRS{idProduct}=="131f", MODE:="0660", GROUP="input" |