%global debug_package %{nil} URL: https://github.com/MCC45TR/uke-linux-hardware-support Source0: uke-speaker-orientation-0.1.0.tar.xz ExclusiveArch: aarch64 BuildRequires: gcc-c++ pkgconf-pkg-config alsa-lib-devel wayland-devel systemd-devel BuildRequires: libasan libubsan BuildRequires: systemd Name: uke-speaker-orientation Version: 0.1.0 Release: 5.fc46 License: MIT Summary: Display-aware internal speaker routing for Uke Wayland sessions Requires: uke-displayport-audio >= 0.1.0-6 %description -n uke-speaker-orientation Follow the internal display transform in KDE Plasma and GNOME Wayland sessions and set the Uke kernel's per-amplifier Speaker Rotation controls. Only the active local session and the exact combined Uke card are eligible. No gain, speaker enable, firmware, microphone or external-output setting is changed. %prep %setup -q ( mkdir -p "%{_builddir}/uke-speaker-orientation-0.1.0/work/uke-speaker-orientation" cd '%{_builddir}/uke-speaker-orientation-0.1.0/work/uke-speaker-orientation' rm -rf 'uke-speaker-orientation-0.1.0' /usr/bin/rpmuncompress -x '%{_builddir}/uke-speaker-orientation-0.1.0/inputs/uke-speaker-orientation/uke-speaker-orientation-0.1.0.tar.gz' STATUS=$? if [ $STATUS -ne 0 ]; then exit $STATUS fi cd 'uke-speaker-orientation-0.1.0' /usr/bin/chmod -Rf a+rX,u+w,g-w,o-w . ) %build ( cd "%{_builddir}/uke-speaker-orientation-0.1.0/work/uke-speaker-orientation/uke-speaker-orientation-0.1.0" g++ -O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -mbranch-protection=standard -fasynchronous-unwind-tables -fstack-clash-protection -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -std=c++17 -Wall -Wextra -Werror \ $(pkg-config --cflags alsa wayland-client libsystemd) \ src/uke-speaker-orientation.cpp -Wl,-z,relro -Wl,--as-needed -Wl,-z,pack-relative-relocs -Wl,-z,now -specs=/usr/lib/rpm/redhat/redhat-hardened-ld -specs=/usr/lib/rpm/redhat/redhat-hardened-ld-errors -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -Wl,--build-id=sha1 -specs=/usr/lib/rpm/redhat/redhat-package-notes \ $(pkg-config --libs alsa wayland-client libsystemd) -o uke-speaker-orientation ) %install ( cd "%{_builddir}/uke-speaker-orientation-0.1.0/work/uke-speaker-orientation/uke-speaker-orientation-0.1.0" install -Dm0755 uke-speaker-orientation %{buildroot}/usr/libexec/uke-speaker-orientation install -Dm0644 src/uke-speaker-orientation.desktop %{buildroot}/etc/xdg/autostart/uke-speaker-orientation.desktop ) %check ( cd "%{_builddir}/uke-speaker-orientation-0.1.0/work/uke-speaker-orientation/uke-speaker-orientation-0.1.0" bash tests/speaker-orientation.sh ) %files -n uke-speaker-orientation %license work/uke-speaker-orientation/uke-speaker-orientation-0.1.0/LICENSE %doc work/uke-speaker-orientation/uke-speaker-orientation-0.1.0/SPEAKER-ORIENTATION.md /usr/libexec/uke-speaker-orientation %config(noreplace) /etc/xdg/autostart/uke-speaker-orientation.desktop %changelog * Thu Oct 29 2026 Senemos Maintainers <75160848+MCC45TR@users.noreply.github.com> - 0.1.0-5.fc46 - Build this component independently from its reviewed source recipe.