diff --git a/0003-Use-platform-specific-python-extension-dir.patch b/0003-Use-platform-specific-python-extension-dir.patch new file mode 100644 index 0000000..2dc94c8 --- /dev/null +++ b/0003-Use-platform-specific-python-extension-dir.patch @@ -0,0 +1,25 @@ +From 2877272703e7b9f59cd5c690c70555b101c69815 Mon Sep 17 00:00:00 2001 +From: Alec Leamas +Date: Tue, 25 Dec 2012 11:54:55 +0100 +Subject: [PATCH 3/7] Use platform specific python extension dir + +--- + configure | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/configure b/configure +index f901211..1a51327 100755 +--- a/configure ++++ b/configure +@@ -5167,7 +5167,7 @@ $as_echo "$PYTHON_LDFLAGS" >&6; } + $as_echo_n "checking for Python site-packages path... " >&6; } + if test -z "$PYTHON_SITE_PKG"; then + PYTHON_SITE_PKG=`$PYTHON -c "import distutils.sysconfig; \ +- print distutils.sysconfig.get_python_lib(0,0);"` ++ print distutils.sysconfig.get_python_lib(1,0);"` + fi + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $PYTHON_SITE_PKG" >&5 + $as_echo "$PYTHON_SITE_PKG" >&6; } +-- +1.7.11.7 + diff --git a/0006-udev-invoke-systemd-support-not-sysV-init-file.patch b/0006-udev-invoke-systemd-support-not-sysV-init-file.patch new file mode 100644 index 0000000..bf08829 --- /dev/null +++ b/0006-udev-invoke-systemd-support-not-sysV-init-file.patch @@ -0,0 +1,13 @@ +diff --git a/udev/iguanaIR.rules b/udev/iguanaIR.rules +index b3bc34f..21bc00d 100644 +--- a/udev/iguanaIR.rules ++++ b/udev/iguanaIR.rules +@@ -12,7 +12,7 @@ ATTR{manufacturer} == "IguanaWorks", ATTR{product} == "USB IR Transceiver", \ + OWNER = "iguanair", MODE = "0664", \ + RUN = "/bin/mkdir -p /var/run/iguanaIR", \ + RUN += "/bin/chown iguanair /var/run/iguanaIR", \ +- RUN += "/etc/init.d/iguanaIR rescan" ++ RUN += "/usr/libexec/iguanaIR/rescan" + + # FOR DEBUGGING TRY ADDING TO THE RUN LINES: + #RUN += "/bin/bash -c 'echo $major $minor r=$result i=$id n=$number k=$kernel p=$parent r=$root >> /tmp/udev.txt'" diff --git a/0010-build-Remove-cmake-dist-generation.patch b/0010-build-Remove-cmake-dist-generation.patch deleted file mode 100644 index 0384a9a..0000000 --- a/0010-build-Remove-cmake-dist-generation.patch +++ /dev/null @@ -1,39 +0,0 @@ -From ac541ea506a82ab699bff42829f697e46755eb12 Mon Sep 17 00:00:00 2001 -From: Alec Leamas -Date: Mon, 30 Jan 2017 10:56:33 +0100 -Subject: [PATCH 10/14] build: Remove cmake dist generation. - -The cmake code is worse in at least two ways: It includes whatever -junk it finds in the source directory, and it isn't aware of the -lirc-driver-iguanair in the parent directory. The make-dist.sh -script just is better, so drop the cmake code. ---- - software/usb_ir/CMakeLists.txt | 12 ------------ - 1 file changed, 12 deletions(-) - -diff --git a/software/usb_ir/CMakeLists.txt b/software/usb_ir/CMakeLists.txt -index e056483..8a55372 100644 ---- a/software/usb_ir/CMakeLists.txt -+++ b/software/usb_ir/CMakeLists.txt -@@ -15,18 +15,6 @@ Set(SO_AGE 3) - - Set(SOVERSION 0) - --# Source dist setup --set(CPACK_SOURCE_PACKAGE_FILE_NAME "${CMAKE_PROJECT_NAME}-${FULLVER}") --set(CPACK_SOURCE_IGNORE_FILES -- "/build/;/.git/;~$;${CPACK_SOURCE_IGNORE_FILES}") --set(CPACK_SOURCE_GENERATOR TGZ) --include(CPack) -- --add_custom_target(check_git ${CMAKE_COMMAND} -- -P ${CMAKE_SOURCE_DIR}/check_git_status.cmake) --add_custom_target(dist COMMAND ${CMAKE_MAKE_PROGRAM} package_source -- DEPENDS check_git) -- - #Set(TARGET_ANDROID true) - - If(TARGET_ANDROID) --- -2.9.3 - diff --git a/0011-lirc-drv-Fix-missing-linker-flag.patch b/0011-lirc-drv-Fix-missing-linker-flag.patch deleted file mode 100644 index d4127e5..0000000 --- a/0011-lirc-drv-Fix-missing-linker-flag.patch +++ /dev/null @@ -1,25 +0,0 @@ -From db05b2629b6b5a5972a51e2d2fbbf04e45e56cc8 Mon Sep 17 00:00:00 2001 -From: Alec Leamas -Date: Fri, 3 Feb 2017 00:01:08 +0100 -Subject: [PATCH 11/14] lirc-drv: Fix missing linker flag. - ---- - software/lirc-drv-iguanair/Makefile | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/software/lirc-drv-iguanair/Makefile b/software/lirc-drv-iguanair/Makefile -index 3bae4e9..6aff458 100755 ---- a/software/lirc-drv-iguanair/Makefile -+++ b/software/lirc-drv-iguanair/Makefile -@@ -17,7 +17,7 @@ driver = iguanair - - all: $(driver).so - --LDFLAGS += -liguanaIR -L../usb_ir/build -+LDFLAGS += -lusb -liguanaIR -L../usb_ir/build - CFLAGS += -I../usb_ir - MODPROBE_CONF = 60-blacklist-kernel-iguanair.conf - --- -2.9.3 - diff --git a/0012-build-cmake-Use-correct-permissions-when-installing.patch b/0012-build-cmake-Use-correct-permissions-when-installing.patch deleted file mode 100644 index 1f5a353..0000000 --- a/0012-build-cmake-Use-correct-permissions-when-installing.patch +++ /dev/null @@ -1,51 +0,0 @@ -From 4264b5d65c012fdbe4e2b676ef1987ab4a0778dd Mon Sep 17 00:00:00 2001 -From: Alec Leamas -Date: Sat, 4 Feb 2017 10:56:21 +0100 -Subject: [PATCH 12/14] build: cmake: Use correct permissions when installing. - ---- - software/usb_ir/CMakeLists.txt | 2 ++ - software/usb_ir/files/systemd/usr/bin/iguanaIR-rescan | 12 ++++++------ - 2 files changed, 8 insertions(+), 6 deletions(-) - -diff --git a/software/usb_ir/CMakeLists.txt b/software/usb_ir/CMakeLists.txt -index 8a55372..665ae82 100644 ---- a/software/usb_ir/CMakeLists.txt -+++ b/software/usb_ir/CMakeLists.txt -@@ -245,9 +245,11 @@ install(FILES iguanaIR.h - DESTINATION /usr/include) - if (${SYSTEMD_FOUND} EQUAL 1) - install(DIRECTORY files/systemd/usr -+ USE_SOURCE_PERMISSIONS - DESTINATION /) - else() - install(DIRECTORY files/sysV/usr files/sysV/etc -+ USE_SOURCE_PERMISSIONS - DESTINATION /) - endif() - -diff --git a/software/usb_ir/files/systemd/usr/bin/iguanaIR-rescan b/software/usb_ir/files/systemd/usr/bin/iguanaIR-rescan -index a41a59d..9d0a700 100755 ---- a/software/usb_ir/files/systemd/usr/bin/iguanaIR-rescan -+++ b/software/usb_ir/files/systemd/usr/bin/iguanaIR-rescan -@@ -4,11 +4,11 @@ - # signal fails, restart daemon. - - if systemctl --quiet is-active iguanaIR.service; then -- pid=$( systemctl --property=MainPID show iguanaIR.service ) || \ -- pid='' -- pid=${pid##*=} -- [ -n "$pid" ] && kill -HUP $pid &>/dev/null && exit 0 -+ pid=$( systemctl --property=MainPID show iguanaIR.service ) || \ -+ pid='' -+ pid=${pid##*=} -+ [ -n "$pid" ] && kill -HUP $pid &>/dev/null && exit 0 - fi - systemctl show --property=UnitFileState iguanaIR.service | -- grep -q enabled && \ -- systemctl restart iguanaIR.service -+ grep -q enabled && \ -+ systemctl restart iguanaIR.service --- -2.9.3 - diff --git a/0016-reflasher-Move-to-python3.patch b/0016-reflasher-Move-to-python3.patch deleted file mode 100644 index 516c9bd..0000000 --- a/0016-reflasher-Move-to-python3.patch +++ /dev/null @@ -1,106 +0,0 @@ -From ad3c951d613fd8926f2afc4ce219dee592418fad Mon Sep 17 00:00:00 2001 -From: Alec Leamas -Date: Thu, 22 Aug 2019 18:42:11 +0200 -Subject: [PATCH] reflasher: Move to python3. - ---- - files/python/usr/bin/iguanaIR-reflasher | 10 +++++----- - 1 file changed, 5 insertions(+), 5 deletions(-) - -diff --git a/files/python/usr/share/iguanaIR-reflasher/iguanaIR-reflasher b/files/python/usr/bin/iguanaIR-reflasher/iguanaIR-reflasher -index 97cacc2..abfbc50 100755 ---- a/files/python/usr/share/iguanaIR-reflasher/iguanaIR-reflasher -+++ b/files/python/usr/share/iguanaIR-reflasher/iguanaIR-reflasher -@@ -1,4 +1,4 @@ --#!/usr/bin/python2.7 -tt -+#!/usr/bin/python3 - # - # ************************************************************************** - # ** upgrade-usb *********************************************************** -@@ -215,7 +215,7 @@ def listDevices(path = iguanaIR.IGSOCK_NAME): - if device != 'ctl' and \ - not stat.S_ISLNK(os.lstat(os.path.join(path, device)).st_mode): - devices.append(device) -- except Exception, inst: -+ except Exception as inst: - devices = ['0'] - if MessageCannotlistdevice == False: - message(LOG_WARN,"""Guessing device "0", failed to list devices:\n %s\n""" % inst) -@@ -466,7 +466,7 @@ def writePagesToDevice(pages): - count += 1 - if count == rebootPage: - sys.stdout.write('\n Rebooting device') -- print deviceTransaction(iguanaIR.IG_DEV_RESET) -+ print(deviceTransaction(iguanaIR.IG_DEV_RESET)) - if deviceVersion() != version: - message(LOG_WARN, "Mid-write reboot unsuccessful.\n") - -@@ -506,7 +506,7 @@ def writeHexFile(filename, blank_pages = False, setFeatures = False): - pages = readPages(open(filename, 'r')) - - if blank_pages: -- blanks = range(128) -+ blanks = list(range(128)) - for page in pages: - blanks.remove(page['start'] / 64) - -@@ -538,7 +538,7 @@ def writeHexFile(filename, blank_pages = False, setFeatures = False): - def checkFileExists(path): - try: - os.stat(path) -- except OSError, inst: -+ except OSError as inst: - if inst[0] != errno.ENOENT: - raise - return False --- -2.20.1 - -diff --git a/files/python/usr/bin/iguanaIR-reflasher b/files/python/usr/bin/iguanaIR-reflasher -index 97cacc2..abfbc50 100755 ---- a/files/python/usr/bin/iguanaIR-reflasher -+++ b/files/python/usr/bin/iguanaIR-reflasher -@@ -1,4 +1,4 @@ --#!/usr/bin/python2.7 -tt -+#!/usr/bin/python3 - # - # ************************************************************************** - # ** upgrade-usb *********************************************************** -@@ -215,7 +215,7 @@ def listDevices(path = iguanaIR.IGSOCK_NAME): - if device != 'ctl' and \ - not stat.S_ISLNK(os.lstat(os.path.join(path, device)).st_mode): - devices.append(device) -- except Exception, inst: -+ except Exception as inst: - devices = ['0'] - if MessageCannotlistdevice == False: - message(LOG_WARN,"""Guessing device "0", failed to list devices:\n %s\n""" % inst) -@@ -466,7 +466,7 @@ def writePagesToDevice(pages): - count += 1 - if count == rebootPage: - sys.stdout.write('\n Rebooting device') -- print deviceTransaction(iguanaIR.IG_DEV_RESET) -+ print(deviceTransaction(iguanaIR.IG_DEV_RESET)) - if deviceVersion() != version: - message(LOG_WARN, "Mid-write reboot unsuccessful.\n") - -@@ -506,7 +506,7 @@ def writeHexFile(filename, blank_pages = False, setFeatures = False): - pages = readPages(open(filename, 'r')) - - if blank_pages: -- blanks = range(128) -+ blanks = list(range(128)) - for page in pages: - blanks.remove(page['start'] / 64) - -@@ -538,7 +538,7 @@ def writeHexFile(filename, blank_pages = False, setFeatures = False): - def checkFileExists(path): - try: - os.stat(path) -- except OSError, inst: -+ except OSError as inst: - if inst[0] != errno.ENOENT: - raise - return False --- -2.20.1 diff --git a/iguanaIR.spec b/iguanaIR.spec index b57c995..2bc587e 100644 --- a/iguanaIR.spec +++ b/iguanaIR.spec @@ -1,18 +1,16 @@ %global commit6 e23b9d3726b010c9e747786ffe72e38debc8cfef %global shortcommit %(c=%{commit6}; echo ${c:0:7}) %global repo https://github.com/iguanaworks/iguanair-lirc/archive -%global __python %{__python3} Name: iguanaIR Version: 1.1.0 -Release: 44%{?dist} +Release: 26%{?dist} Epoch: 2 Summary: Driver for Iguanaworks USB IR transceiver -# Automatically converted from old format: GPLv2 and LGPLv2 - review is highly recommended. -License: GPL-2.0-only AND LicenseRef-Callaway-LGPLv2 +License: GPLv2 and LGPLv2 URL: http://iguanaworks.net/ir -Source0: http://iguanaworks.net/downloads/%{name}-%{version}.tar.bz2 +Source0: http://iguanaworks.net/downloads/%{name}-%{version}.tar.gz Source1: iguanaIR.service Source2: iguanaIR-rescan Source3: README.fedora @@ -31,17 +29,13 @@ Source12: 0012-Makefile-Add-DESTDIR-support.patch Source13: 0013-Convert-all-files-to-LF-line-endings-like-main-drive.patch Source20: 0020-build-Fix-DESTDIR-dont-update-docs.patch -Source21: 0016-reflasher-Move-to-python3.patch Requires: udev BuildRequires: cmake gcc BuildRequires: dos2unix BuildRequires: git -BuildRequires: libusb1-devel -%if 0%{?fedora} < 37 -libusb-devel -%endif +BuildRequires: libusb1-devel, libusb-devel BuildRequires: popt-devel BuildRequires: systemd @@ -84,7 +78,6 @@ what this means, you don't need it. Summary: lirc plugin for iguanair user-space driver Requires: lirc >= 0.9.4 BuildRequires: lirc-devel >= 0.9.4 -BuildRequires: make %description -n lirc-drv-iguanair lirc plugin providing full support for the iguanaIR userspace driver, @@ -95,9 +88,9 @@ the same as was built in into the lirc releases up to 0.9.3. %prep %setup -q -n %{name}-%{version} %setup -q -T -D -a 6 -%patch -P1 -p3 -%patch -P2 -p1 -%patch -P3 -p1 +%patch1 -p3 +%patch2 -p1 +%patch3 -p1 cp %{SOURCE3} README.fedora cd iguanair-lirc-%{commit6} patch -p1 < %{SOURCE10} @@ -106,14 +99,6 @@ patch -p1 < %{SOURCE12} git apply --whitespace=fix %{SOURCE13} dos2unix Makefile patch -l -p2 --fuzz 2 < %{SOURCE20} -cd .. -patch -p1 --fuzz 2 < %{SOURCE21} - -# Create a sysusers.d config file -cat >iguanair.sysusers.conf </dev/null 2>&1 || : +fi +/sbin/ldconfig %preun -%systemd_preun %{name}.service +if [ $1 -eq 0 ] ; then + # Package removal, not upgrade + /bin/systemctl --no-reload disable %{name}.service > /dev/null 2>&1 || : + /bin/systemctl stop %{name}.service > /dev/null 2>&1 || : +fi %postun -%systemd_postun_with_restart %{name}.service +/bin/systemctl daemon-reload >/dev/null 2>&1 || : +if [ $1 -ge 1 ] ; then + # Package upgrade, not uninstall + /bin/systemctl try-restart %{name}.service >/dev/null 2>&1 || : +fi +/sbin/ldconfig %files @@ -212,11 +210,6 @@ install -m0644 -D iguanair.sysusers.conf %{buildroot}%{_sysusersdir}/iguanair.co %ghost %attr(755, iguanair, iguanair) /run/%{name} %attr(775, iguanair, iguanair) %{_localstatedir}/log/%{name} -%if 0%{fedora} < 30 -%{_libdir}/python2.7/* -%endif -%{_sysusersdir}/iguanair.conf - %files devel %{_includedir}/%{name}.h %{_libdir}/lib%{name}.so @@ -235,63 +228,6 @@ install -m0644 -D iguanair.sysusers.conf %{buildroot}%{_sysusersdir}/iguanair.co %changelog -* Thu Jul 24 2025 Fedora Release Engineering - 2:1.1.0-44 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild - -* Tue Feb 11 2025 Zbigniew Jędrzejewski-Szmek - 2:1.1.0-43 -- Add sysusers.d config file to allow rpm to create users/groups automatically - -* Fri Jan 17 2025 Fedora Release Engineering - 2:1.1.0-42 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild - -* Mon Sep 02 2024 Miroslav Suchý - 2:1.1.0-41 -- convert license to SPDX - -* Thu Jul 18 2024 Fedora Release Engineering - 2:1.1.0-40 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild - -* Wed Jan 24 2024 Fedora Release Engineering - 2:1.1.0-39 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild - -* Sat Jan 20 2024 Fedora Release Engineering - 2:1.1.0-38 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild - -* Thu Jul 20 2023 Fedora Release Engineering - 2:1.1.0-37 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild - -* Thu Jan 19 2023 Fedora Release Engineering - 2:1.1.0-36 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild - -* Thu Jul 21 2022 Fedora Release Engineering - 2:1.1.0-35 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild - -* Thu Jan 20 2022 Fedora Release Engineering - 2:1.1.0-34 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild - -* Thu Jul 22 2021 Fedora Release Engineering - 2:1.1.0-33 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild - -* Tue Mar 02 2021 Zbigniew Jędrzejewski-Szmek - 2:1.1.0-32 -- Rebuilt for updated systemd-rpm-macros - See https://pagure.io/fesco/issue/2583. - -* Tue Jan 26 2021 Fedora Release Engineering - 2:1.1.0-31 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild - -* Tue Jul 28 2020 Fedora Release Engineering - 2:1.1.0-30 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild - -* Wed Jan 29 2020 Fedora Release Engineering - 2:1.1.0-29 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild - -* Thu Aug 22 2019 Alec Leamas - 2:1.1.0-28 -- Move to python3 (Closes: #1737981). -- Drop the SWIG-generated python bindings. -- Update ancient systemd scriptlets. - -* Thu Jul 25 2019 Fedora Release Engineering - 2:1.1.0-27 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild - * Fri Feb 01 2019 Fedora Release Engineering - 2:1.1.0-26 - Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild diff --git a/sources b/sources index 30c49ff..21f6ca7 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (iguanaIR-1.1.0.tar.bz2) = 19d793598043c203192c7de0066794629ef64cefe901beca4e894e2090a3d0a91d813de1ae5440a8d51c1f94ad4a960278dbe625302564dcc39c38a668cf18f2 +SHA512 (iguanaIR-1.1.0.tar.gz) = 64f54ce117fc94e356433812ebc9a2fbc94f4f85d6688e628be49eb1ae66c9e99fc425da23ec09b919123dc7c9e0df8cc303ebe6aaae589881a0418ab3fa40ef SHA512 (iguanair-lirc-e23b9d3.tar.gz) = ad116c16ea9f18259e2b915f1e1589d08e4ddc787459bc8595876ec0cc2ea36265a2dcb6b7792e3d1e9faab8e8ad680fdf9f0f59fac6d87148464aeb0aba86fb