Script 'mail_helper' called by obssrc Hello community, here is the log from the commit of package libratbag for openSUSE:Factory checked in at 2026-10-31 23:07:38 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/libratbag (Old) and /work/SRC/openSUSE:Factory/.libratbag.new.1255 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "libratbag" Sat Oct 31 23:07:38 2026 rev:19 rq:1393967 version:0.18+git20260917.8235b5b Changes: -------- --- /work/SRC/openSUSE:Factory/libratbag/libratbag.changes 2025-10-12 22:29:50.367477865 +0200 +++ /work/SRC/openSUSE:Factory/.libratbag.new.1255/libratbag.changes 2026-10-31 23:10:08.712329467 +0100 @@ -1,0 +2,23 @@ +Fri Oct 30 20:02:14 UTC 2026 - Martin Pluskal <[email protected]> + +- Add add-holtek-a09f-driver.patch: new holtek_a09f driver for + Holtek 04d9:a09f gaming mice. +- Add USB modalias Supplements to ratbagd for automatic + installation with supported mice. + +------------------------------------------------------------------- +Wed Oct 21 18:26:03 UTC 2026 - Martin Pluskal <[email protected]> + +- Update to version 0.18+git20260917.8235b5b (commit 8235b5bb): + * New supported devices: ASUS TUF Gaming M3 Gen II, ASUS ROG + Strix Impact III and its Wireless variant, ASUS TUF Gaming M4 + Air, ASUS TUF Mini WL, ASUS ROG Keris (wired), Logitech MX + Master 4, Logitech G705 and Glorious Model O Eternal, plus new + USB IDs for the Logitech G502 X family, MX Vertical and ROG + Keris Wireless AimPoint. + * asus: support the Omni receiver and new data layouts. + * swig: use the Python 3 C API so the bindings build with SWIG + 4.5. +- Drop add-logitech-MX-Master-4.patch: merged upstream. + +------------------------------------------------------------------- Old: ---- add-logitech-MX-Master-4.patch libratbag-0.18.tar.xz New: ---- add-holtek-a09f-driver.patch generate-ratbag-supplements.sh libratbag-0.18+git20260917.8235b5b.tar.xz libratbag.obsinfo ----------(Old B)---------- Old: 4.5. - Drop add-logitech-MX-Master-4.patch: merged upstream. ----------(Old E)---------- ----------(New B)---------- New: - Add add-holtek-a09f-driver.patch: new holtek_a09f driver for Holtek 04d9:a09f gaming mice. ----------(New E)---------- ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ libratbag.spec ++++++ --- /var/tmp/diff_new_pack.Buf2C6/_old 2026-10-31 23:10:11.000424200 +0100 +++ /var/tmp/diff_new_pack.Buf2C6/_new 2026-10-31 23:10:11.004424366 +0100 @@ -1,7 +1,7 @@ # # spec file for package libratbag # -# Copyright (c) 2025 SUSE LLC and contributors +# Copyright (c) 2026 SUSE LLC and contributors # Copyright (c) 2019 Matthias Bach <[email protected]>. # # All modifications and additions to the file contributed by third parties @@ -18,22 +18,27 @@ Name: libratbag -Version: 0.18 +Version: 0.18+git20260917.8235b5b Release: 0 Summary: Configuration library for gaming mice License: MIT -Group: Development/Libraries/C and C++ URL: https://github.com/libratbag/libratbag Source0: %{name}-%{version}.tar.xz Source1: README.SUSE +Source2: generate-ratbag-supplements.sh Patch1: shebang-env.diff Patch3: harden_ratbagd.service.patch Patch4: use-python-3.6.patch -# PATCH-FEATURE-UPSTREAM add-logitech-MX-Master-4.patch https://github.com/libratbag/libratbag/pull/1764 -Patch5: add-logitech-MX-Master-4.patch +# PATCH-FIX-UPSTREAM add-holtek-a09f-driver.patch https://github.com/libratbag/libratbag/pull/1915 -- add driver for Holtek 04d9:a09f gaming mice +Patch5: add-holtek-a09f-driver.patch +# Refresh: zero-touch, ratbag_modalias_supplements is generated at build time from data/devices/*.device in Source0 plus device backport patches; no manual edits needed. (Stays after the Source/Patch tags: S-colon-N resolves only post-tag on rpm 4.20, and spec-cleaner's hoist plus SOURCE rename does not parse there.) +%define ratbag_modalias_supplements %(sh %{S:2} %{S:0} %{_sourcedir}/*.patch %{_sourcedir}/*.diff) +%define ratbag_modalias_count %(sh %{S:2} %{S:0} %{_sourcedir}/*.patch %{_sourcedir}/*.diff | wc -l) +%if %{ratbag_modalias_count} == 0 +%error "ratbag_modalias_supplements generated zero IDs, refusing silent modalias loss" +%endif BuildRequires: fdupes BuildRequires: gcc-c++ -BuildRequires: json-glib-devel BuildRequires: libunistring-devel BuildRequires: meson >= 0.50.0 BuildRequires: pkgconfig @@ -43,6 +48,7 @@ BuildRequires: valgrind BuildRequires: pkgconfig(check) >= 0.9.10 BuildRequires: pkgconfig(glib-2.0) +BuildRequires: pkgconfig(json-glib-1.0) BuildRequires: pkgconfig(libevdev) BuildRequires: pkgconfig(libsystemd) >= 227 BuildRequires: pkgconfig(libudev) >= 196 @@ -56,7 +62,6 @@ %package -n liblur3 Summary: Logitech Unifying Receiver configuration library -Group: System/Libraries %description -n liblur3 A library to configure and handle the /dev hidraw devices belonging @@ -64,9 +69,9 @@ %package -n ratbagd Summary: Service granting access to the configuration options of gaming mice -Group: Hardware/Other Requires(pre): group(games) Recommends: libratbag-tools +%{ratbag_modalias_supplements} %description -n ratbagd libratbag is a configuration library for gaming mice. It provides a @@ -79,7 +84,6 @@ %package devel Summary: Development files for the libratbag game mouse config library -Group: Development/Libraries/C and C++ Requires: liblur3 = %{version} %description devel @@ -92,7 +96,6 @@ %package tools Summary: Utilities for configuring gaming mice -Group: Hardware/Other Requires: python3-evdev Requires: ratbagd @@ -108,10 +111,10 @@ %setup -q %patch -P1 -p1 %patch -P3 -p1 +%patch -P5 -p1 %if 0%{?suse_version} < 1550 %patch -P4 -p1 %endif -%patch -P5 -p1 cp %{SOURCE1} . %build ++++++ _service ++++++ --- /var/tmp/diff_new_pack.Buf2C6/_old 2026-10-31 23:10:11.069427057 +0100 +++ /var/tmp/diff_new_pack.Buf2C6/_new 2026-10-31 23:10:11.074427264 +0100 @@ -2,8 +2,8 @@ <service name="obs_scm" mode="manual"> <param name="url">https://github.com/libratbag/libratbag.git</param> <param name="scm">git</param> - <param name="revision">v0.18</param> - <param name="versionformat">@PARENT_TAG@</param> + <param name="revision">8235b5bb6032dea15901ab58a8218956f4494d08</param> + <param name="versionformat">0.18+git%cd.%h</param> <param name="changesgenerate">enable</param> <param name="versionrewrite-pattern">v(.*)</param> </service> ++++++ _servicedata ++++++ --- /var/tmp/diff_new_pack.Buf2C6/_old 2026-10-31 23:10:11.099428299 +0100 +++ /var/tmp/diff_new_pack.Buf2C6/_new 2026-10-31 23:10:11.106428589 +0100 @@ -1,6 +1,6 @@ <servicedata> <service name="tar_scm"> <param name="url">https://github.com/libratbag/libratbag.git</param> - <param name="changesrevision">9f4789f8746188a75cd3090e94adf984f0ac4cc6</param></service></servicedata> + <param name="changesrevision">8235b5bb6032dea15901ab58a8218956f4494d08</param></service></servicedata> (No newline at EOF) ++++++ add-holtek-a09f-driver.patch ++++++ ++++ 1067 lines (skipped) ++++++ generate-ratbag-supplements.sh ++++++ #!/bin/sh # Generate RPM Supplements: modalias(...) lines for the ratbagd subpackage # from libratbag's data/devices/*.device files. # Usage: generate-ratbag-supplements.sh TARBALL [PATCH...] [TREEDIR...] # TARBALL upstream tarball; scanned via tar without unpacking # PATCH device backport patch; added (+DeviceMatch=) lines scanned # TREEDIR unpacked tree; TREEDIR/data/devices/*.device scanned # Prints one 'Supplements:' line per USB ID (uppercase, sorted, deduped). # Fails loudly on unreadable input, malformed IDs, or an empty result. set -eu tmpdir=$(mktemp -d) trap 'rm -rf "$tmpdir"' EXIT raw="$tmpdir/raw" : > "$raw" for src in "$@"; do [ -e "$src" ] || continue if [ -d "$src" ]; then sed -n 's/^DeviceMatch=//p' "$src"/data/devices/*.device >> "$raw" elif [ "${src%.tar.xz}" != "$src" ] || [ "${src%.tar.gz}" != "$src" ] || [ "${src%.tar}" != "$src" ]; then tar -xOf "$src" --wildcards '*/data/devices/*.device' | sed -n 's/^DeviceMatch=//p' >> "$raw" else sed -n '/^+++/!s/^+.*DeviceMatch=//p' "$src" >> "$raw" fi done ids=$(tr ';' '\n' < "$raw" | tr -d '\r' | grep -i '^usb:' | sed 's/^[Uu][Ss][Bb]://' | tr 'a-f' 'A-F' | sort -u) [ -n "$ids" ] || { echo "generate-ratbag-supplements.sh: no USB IDs found" >&2; exit 1; } printf '%s\n' "$ids" | while IFS= read -r id; do case "$id" in [0-9A-F][0-9A-F][0-9A-F][0-9A-F]:[0-9A-F][0-9A-F][0-9A-F][0-9A-F]) printf 'Supplements: modalias(usb:v%sp%sd*dc*dsc*dp*ic*isc*ip*in*)\n' \ "${id%%:*}" "${id##*:}" ;; *) echo "generate-ratbag-supplements.sh: malformed USB ID '$id'" >&2 exit 1 ;; esac done ++++++ libratbag.obsinfo ++++++ name: libratbag version: 0.18+git20260917.8235b5b mtime: 1789649799 commit: 8235b5bb6032dea15901ab58a8218956f4494d08
