diff options
-rw-r--r-- | .SRCINFO | 37 | ||||
-rw-r--r-- | .gitignore | 12 | ||||
-rw-r--r-- | PKGBUILD | 101 | ||||
-rw-r--r-- | fix-60-sec-delay.patch | 27 | ||||
-rw-r--r-- | scons-py3.patch | 63 | ||||
-rw-r--r-- | scons-v4.2.0.patch | 20 | ||||
-rw-r--r-- | xboxdrvctl-py3.patch | 73 |
7 files changed, 72 insertions, 261 deletions
@@ -1,34 +1,25 @@ pkgbase = xboxdrv - pkgdesc = Userspace gamepad driver for Linux - pkgver = 0.8.8 - pkgrel = 7 - url = https://xboxdrv.gitlab.io/ + pkgdesc = Userspace Xbox gamepad driver and input remapper + pkgver = 0.8.9 + pkgrel = 1 + url = https://github.com/xiota/xboxdrv arch = x86_64 - license = GPL3 - makedepends = scons + license = GPL-3.0-or-later makedepends = boost + makedepends = git makedepends = pkg-config - makedepends = libx11 - makedepends = python - depends = libx11 + makedepends = scons + depends = python depends = dbus-glib depends = dbus-python depends = libusb - depends = systemd + depends = libx11 backup = etc/default/xboxdrv - source = xboxdrv-0.8.8.tar.gz::https://gitlab.com/xboxdrv/xboxdrv/-/archive/v0.8.8/xboxdrv-v0.8.8.tar.gz - source = xboxdrv.service + source = xboxdrv::git+https://github.com/xiota/xboxdrv.git#tag=v0.8.9 source = xboxdrv.default - source = fix-60-sec-delay.patch - source = scons-py3.patch - source = scons-v4.2.0.patch - source = xboxdrvctl-py3.patch - sha512sums = a7f4c35dbd56289fe7b24150c0452bd72fda99f01a2271b20175cb872d06798270492bee2a0a6449b43dc23593a8c1c955a0e4505186240b366f0c34cd9958a5 - sha512sums = f1a4e7b1a06e951c3a4f5bcdec5f14db542b34963950619f0d4b1ee324d64b18ca2f63642719ef65a63e424702fb0eb33e0259937906732e587b96a9582c2e6b - sha512sums = 4f6e9a12b208254e19daba477dd7787147a8b2c8a83007d92f8cfce6212c21ce3306f23a2669080f0e46986ca102ab08c262b42c678caf1a891326b4e2c40b5f - sha512sums = 58170b3f96f02e5ba0af5f6641482fb1c612ca70650e475d68b55c05a62ec0831033190b90e591d593fd6b25c2a155e6c4975f37eef1534245947156a5e3285f - sha512sums = b3a3bbb51fa1c4ad4dd898136c3bf7c0f13193bdd07bbcb5c8243edb747c68223fe8c5bd2fd578f6c2b18844827524abb0533ce98b6e0e60fe936597cdba811d - sha512sums = b7d9911bd52fb59f5dd655a4f81e61848ea2637ebd44768d963a525e62c4592d00f7f40d6eb4e14a184fbd0d6517df182ffb2cafd1e9a66406b86672ad63cdea - sha512sums = 4e6de460523c1ddfc608b3bd6fb211a7ca0516b64a2d91e01b51deaa4fcc57d64985bb2ccfca43873efef4987e0d04741f0e97dbd6b77037a4417a97cb8d0bf9 + source = xboxdrv.service + sha256sums = SKIP + sha256sums = 68a286300d28bbfc97eb694c6cc413776f0bc16e35de6d1969f13ef1e7d1cac5 + sha256sums = d631a8c3af7e2b4ef22f1494ded5d7a8029a8dd9756ef8907f909ef6aa0afc2b pkgname = xboxdrv diff --git a/.gitignore b/.gitignore index 5d57491b6dcd..018a3de08144 100644 --- a/.gitignore +++ b/.gitignore @@ -1,10 +1,4 @@ * -!/.SRCINFO -!/.gitignore -!/PKGBUILD -!/fix-60-sec-delay.patch -!/scons-py3.patch -!/scons-v4.2.0.patch -!/xboxdrv.default -!/xboxdrv.service -!/xboxdrvctl-py3.patch +!PKGBUILD +!.SRCINFO +!.gitignore @@ -1,58 +1,67 @@ -# Maintainer: Levente Polyak <anthraxx[at]archlinux[dot]org> -# Maintainer: Andrew Rabert <ar@nullsum.net> +# Maintainer: +# Contributor: Levente Polyak <anthraxx[at]archlinux[dot]org> +# Contributor: Andrew Rabert <ar@nullsum.net> # Contributor: Jack Mitchell <jack@embed.me.uk> # Contributor: Kevin MacMartin <prurigro at gmail dot com> -pkgname=xboxdrv -pkgver=0.8.8 -pkgrel=7 -pkgdesc='Userspace gamepad driver for Linux' -url='https://xboxdrv.gitlab.io/' +_pkgname="xboxdrv" +pkgname="$_pkgname" +pkgver=0.8.9 +pkgrel=1 +pkgdesc="Userspace Xbox gamepad driver and input remapper" +url="https://github.com/xiota/xboxdrv" +license=('GPL-3.0-or-later') arch=('x86_64') -license=('GPL3') -depends=('libx11' 'dbus-glib' 'dbus-python' 'libusb' 'systemd') -makedepends=('scons' 'boost' 'pkg-config' 'libx11' 'python') + +depends=( + 'python' + 'dbus-glib' + 'dbus-python' + 'libusb' + 'libx11' + + # implicit + #bash + #dbus + #glib2 + #systemd-libs +) +makedepends=( + 'boost' + 'git' + 'pkg-config' + 'scons' +) + backup=("etc/default/xboxdrv") -source=(${pkgname}-${pkgver}.tar.gz::https://gitlab.com/xboxdrv/${pkgname}/-/archive/v${pkgver}/xboxdrv-v${pkgver}.tar.gz - xboxdrv.service - xboxdrv.default - fix-60-sec-delay.patch - scons-py3.patch - scons-v4.2.0.patch - xboxdrvctl-py3.patch) -sha512sums=('a7f4c35dbd56289fe7b24150c0452bd72fda99f01a2271b20175cb872d06798270492bee2a0a6449b43dc23593a8c1c955a0e4505186240b366f0c34cd9958a5' - 'f1a4e7b1a06e951c3a4f5bcdec5f14db542b34963950619f0d4b1ee324d64b18ca2f63642719ef65a63e424702fb0eb33e0259937906732e587b96a9582c2e6b' - '4f6e9a12b208254e19daba477dd7787147a8b2c8a83007d92f8cfce6212c21ce3306f23a2669080f0e46986ca102ab08c262b42c678caf1a891326b4e2c40b5f' - '58170b3f96f02e5ba0af5f6641482fb1c612ca70650e475d68b55c05a62ec0831033190b90e591d593fd6b25c2a155e6c4975f37eef1534245947156a5e3285f' - 'b3a3bbb51fa1c4ad4dd898136c3bf7c0f13193bdd07bbcb5c8243edb747c68223fe8c5bd2fd578f6c2b18844827524abb0533ce98b6e0e60fe936597cdba811d' - 'b7d9911bd52fb59f5dd655a4f81e61848ea2637ebd44768d963a525e62c4592d00f7f40d6eb4e14a184fbd0d6517df182ffb2cafd1e9a66406b86672ad63cdea' - '4e6de460523c1ddfc608b3bd6fb211a7ca0516b64a2d91e01b51deaa4fcc57d64985bb2ccfca43873efef4987e0d04741f0e97dbd6b77037a4417a97cb8d0bf9') - -prepare() { - cd ${pkgname}-v${pkgver} - sed 's|python|python2|g' -i examples/*.py - patch -p1 < "${srcdir}/fix-60-sec-delay.patch" - patch -p1 < "${srcdir}/scons-py3.patch" - patch -p1 < "${srcdir}/scons-v4.2.0.patch" - patch -p1 < "${srcdir}/xboxdrvctl-py3.patch" -} + +_pkgsrc="$_pkgname" +source=( + "$_pkgsrc"::"git+$url.git#tag=v${pkgver}" + "xboxdrv.default" + "xboxdrv.service" +) +sha256sums=( + 'SKIP' + '68a286300d28bbfc97eb694c6cc413776f0bc16e35de6d1969f13ef1e7d1cac5' + 'd631a8c3af7e2b4ef22f1494ded5d7a8029a8dd9756ef8907f909ef6aa0afc2b' +) build() { - cd ${pkgname}-v${pkgver} + cd "$_pkgsrc" scons \ - LINKFLAGS="${LDFLAGS}" \ - CXXFLAGS="${CPPFLAGS} ${CXXFLAGS}" \ - "${MAKEFLAGS}" + LINKFLAGS="$LDFLAGS" \ + CXXFLAGS="$CPPFLAGS $CXXFLAGS" \ + "$MAKEFLAGS" } package() { - cd ${pkgname}-v${pkgver} - make PREFIX=/usr DESTDIR="${pkgdir}" install - install -Dm 644 "${srcdir}/${pkgname}.service" "${pkgdir}/usr/lib/systemd/system/${pkgname}.service" - install -Dm 644 "${srcdir}/${pkgname}.default" "${pkgdir}/etc/default/${pkgname}" - install -Dm 644 README.md NEWS PROTOCOL -t "${pkgdir}/usr/share/doc/${pkgname}" - install -Dm 644 examples/* -t "${pkgdir}/usr/share/doc/${pkgname}/examples" - install -Dm 644 data/org.seul.Xboxdrv.conf -t "${pkgdir}/etc/dbus-1/system.d" -} + cd "$_pkgsrc" + make PREFIX=/usr DESTDIR="$pkgdir" install -# vim: ts=2 sw=2 et: + install -Dm644 "$srcdir/$_pkgname.service" -t "$pkgdir/usr/lib/systemd/system/" + install -Dm644 "$srcdir/$_pkgname.default" "$pkgdir/etc/default/$_pkgname" + install -Dm644 README.md NEWS PROTOCOL -t "$pkgdir/usr/share/doc/$_pkgname/" + install -Dm644 examples/* -t "$pkgdir/usr/share/doc/$_pkgname/examples/" + install -Dm644 data/org.seul.Xboxdrv.conf -t "$pkgdir/etc/dbus-1/system.d/" +} diff --git a/fix-60-sec-delay.patch b/fix-60-sec-delay.patch deleted file mode 100644 index da543d2cfa01..000000000000 --- a/fix-60-sec-delay.patch +++ /dev/null @@ -1,27 +0,0 @@ -From 7326421eeaadbc2aeb3828628c2e65bb7be323a9 Mon Sep 17 00:00:00 2001 -From: buxit <buti@bux.at> -Date: Wed, 2 Nov 2016 16:25:14 +0100 -Subject: [PATCH] fix 60 seconds delay - -use `libusb_handle_events_timeout_completed()` instead of `libusb_handle_events()` -should fix #144 ---- - src/usb_gsource.cpp | 5 ++++- - 1 file changed, 4 insertions(+), 1 deletion(-) - -diff --git a/src/usb_gsource.cpp b/src/usb_gsource.cpp -index 00bf1315..afb38f65 100644 ---- a/src/usb_gsource.cpp -+++ b/src/usb_gsource.cpp -@@ -174,7 +174,10 @@ USBGSource::on_source_dispatch(GSource* source, GSourceFunc callback, gpointer u - gboolean - USBGSource::on_source() - { -- libusb_handle_events(NULL); -+ struct timeval to; -+ to.tv_sec = 0; -+ to.tv_usec = 0; -+ libusb_handle_events_timeout_completed(NULL, &to, NULL); - return TRUE; - } - diff --git a/scons-py3.patch b/scons-py3.patch deleted file mode 100644 index 4aa6fa619317..000000000000 --- a/scons-py3.patch +++ /dev/null @@ -1,63 +0,0 @@ -From 17bd43a7d3ef86216abc36b42b4e6a1f70aa9979 Mon Sep 17 00:00:00 2001 -From: xnick <xnick@users.noreply.github.com> -Date: Thu, 12 Oct 2017 20:34:35 +0300 -Subject: [PATCH] Update SConstruct - -python3 compatible ---- - SConstruct | 16 ++++++++-------- - 1 file changed, 8 insertions(+), 8 deletions(-) - -diff --git a/SConstruct b/SConstruct -index 4cd79704..c0007054 100644 ---- a/SConstruct -+++ b/SConstruct -@@ -19,7 +19,7 @@ def build_dbus_glue(target, source, env): - xml = re.sub(r"callback = \(([A-Za-z_]+)\) \(marshal_data \? marshal_data : cc->callback\);", - r"union { \1 fn; void* obj; } conv;\n " - "conv.obj = (marshal_data ? marshal_data : cc->callback);\n " -- "callback = conv.fn;", xml) -+ "callback = conv.fn;", xml.decode('utf-8')) - - with open(target[0].get_path(), "w") as f: - f.write(xml) -@@ -29,10 +29,10 @@ def build_bin2h(target, source, env): - Takes a list of files and converts them into a C source that can be included - """ - def c_escape(str): -- return str.translate(string.maketrans("/.-", "___")) -+ return str.translate(bytes.maketrans(b"/.-", b"___")) - -- print target -- print source -+ print(target) -+ print(source) - with open(target[0].get_path(), "w") as fout: - fout.write("// autogenerated by scons Bin2H builder, do not edit by hand!\n\n") - -@@ -45,8 +45,8 @@ def build_bin2h(target, source, env): - data = fin.read() - fout.write("// \"%s\"\n" % src.get_path()) - fout.write("const char %s[] = {" % c_escape(src.get_path())) -- bytes_arr = ["0x%02x" % ord(c) for c in data] -- for i in xrange(len(bytes_arr)): -+ bytes_arr = ["0x%02x" % c for c in data] -+ for i in range(len(bytes_arr)): - if i % 13 == 0: - fout.write("\n ") - fout.write(bytes_arr[i]) -@@ -131,12 +131,12 @@ env.Append(CPPDEFINES = { 'PACKAGE_VERSION': "'\"%s\"'" % package_version }) - conf = Configure(env) - - if not conf.env['CXX']: -- print "g++ must be installed!" -+ print('g++ must be installed!') - Exit(1) - - # X11 checks - if not conf.CheckLibWithHeader('X11', 'X11/Xlib.h', 'C++'): -- print 'libx11-dev must be installed!' -+ print('libx11-dev must be installed!') - Exit(1) - - env = conf.Finish() diff --git a/scons-v4.2.0.patch b/scons-v4.2.0.patch deleted file mode 100644 index 04b05e8d6ffc..000000000000 --- a/scons-v4.2.0.patch +++ /dev/null @@ -1,20 +0,0 @@ ---- a/SConstruct 2021-10-31 20:42:44.232084185 -0400 -+++ b/SConstruct 2021-10-31 20:42:54.063024444 -0400 -@@ -36,7 +36,7 @@ - with open(target[0].get_path(), "w") as fout: - fout.write("// autogenerated by scons Bin2H builder, do not edit by hand!\n\n") - -- if env.has_key("BIN2H_NAMESPACE"): -+ if "BIN2H_NAMESPACE" in env: - fout.write("namespace %s {\n\n" % env["BIN2H_NAMESPACE"]) - - # write down data -@@ -62,7 +62,7 @@ - for src in source], ",\n")) - fout.write("\n}\n\n") - -- if env.has_key("BIN2H_NAMESPACE"): -+ if "BIN2H_NAMESPACE" in env: - fout.write("} // namespace %s\n\n" % env["BIN2H_NAMESPACE"]) - - fout.write("/* EOF */\n") diff --git a/xboxdrvctl-py3.patch b/xboxdrvctl-py3.patch deleted file mode 100644 index 71d8762cb9ca..000000000000 --- a/xboxdrvctl-py3.patch +++ /dev/null @@ -1,73 +0,0 @@ ---- a/xboxdrvctl 2021-06-21 19:39:51.000000000 -0400 -+++ b/xboxdrvctl 19:43:27.467984928 -0400 -@@ -1,4 +1,4 @@ --#!/usr/bin/env python2 -+#!/usr/bin/env python3 - - ## Xbox360 USB Gamepad Userspace Driver - ## Copyright (C) 2011 Ingo Ruhnke <grumbel@gmail.com> -@@ -37,23 +37,23 @@ - help="print controller status") - - group.add_option("-s", "--slot", metavar="SLOT", type="int", -- dest="slot", -+ dest="slot", - help="use slot SLOT for actions") - - group.add_option("-l", "--led", metavar="NUM", type="int", -- dest="led", -+ dest="led", - help="set LED") - --group.add_option("-r", "--rumble", metavar="L:R", -- dest="rumble", -+group.add_option("-r", "--rumble", metavar="L:R", -+ dest="rumble", - help="print controller status") - - group.add_option("-c", "--config", metavar="NUM", type="int", -- dest="config", -+ dest="config", - help="switches to controller configuration NUM") - - group.add_option("--shutdown", action="store_true", -- dest="shutdown", -+ dest="shutdown", - help="shuts down the daemon") - - parser.add_option_group(group) -@@ -69,9 +69,9 @@ - try: - bus.get_object("org.seul.Xboxdrv", '/org/seul/Xboxdrv/Daemon') - except dbus.exceptions.DBusException: -- bus = dbus.SystemBus() -+ bus = dbus.SystemBus() - else: -- print "Error: invalid argument to --bus. Must be 'auto', 'session, or 'system'" -+ print("Error: invalid argument to --bus. Must be 'auto', 'session, or 'system'") - exit() - - if options.status: -@@ -82,19 +82,19 @@ - daemon.Shutdown() - else: - if (options.led or options.rumble or options.config) and options.slot == None: -- print "Error: --slot argument required" -+ print("Error: --slot argument required") - exit() - else: - if options.slot != None: - slot = bus.get_object("org.seul.Xboxdrv", '/org/seul/Xboxdrv/ControllerSlots/%d' % options.slot) -- -+ - if options.led != None: - slot.SetLed(options.led) - - if options.rumble: - m = re.match('^(\d+):(\d+)$', options.rumble) - if not m: -- print "Error: invalid argument to --rumble" -+ print("Error: invalid argument to --rumble") - exit() - else: - left = int(m.group(1)) |