SHA256
1
0
forked from pool/lirc

2 Commits

Author SHA256 Message Date
9f2d033ac9 Accepting request 1245277 from vdr
OBS-URL: https://build.opensuse.org/request/show/1245277
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/lirc?expand=0&rev=79
2025-02-12 20:31:10 +00:00
Stefan Seyfried
9846bb6ea7 - Update to version 0.10.2
* Vendor latest linux/lirc.h and handle lirc overflows.
  * mode2: support lirc overflows, carrier reports, and timeouts
  * Lots of fixes for python 3.
  * irdroid: fix hang after transmit
  * The deprecated lircd --uinput option is dropped. Use
    lircd-uinput(8) instead.
  * The deprecated generation of lirc.hwdb is dropped. Use
    the configs/*.conf or the python database.py instead.
  * Added a new lirc-postinstall scripts which updates
    configuration and docs in final install destination (#286).
  * Using LIRC_IRDB_CACHE_ID lirc now supports reproducible
    builds. See #301 and updated irdb-get(1) manpage.
  * lircd: Support for the GOLDSTAR flag in lircd.conf(5) is dropped.
  * plugins: srm7500libusb: Major overhaul.
  * plugins:girs: Drop support for LIRC_SET_REC_TIMEOUT, add new
    driver option ending_timeout (#302).
- Drop pyyaml-60-compatibility.patch: merged upstream.
- Drop lirc-autoconf-py310.patch: no longer needed.
- Rebase harden_lircd.service.patch and reproducible.patch.
- Drop rcFOO symlinks.

# Happens to fix build with Python 3.13

OBS-URL: https://build.opensuse.org/package/show/vdr/lirc?expand=0&rev=120
2025-02-12 09:25:20 +00:00
8 changed files with 53 additions and 15484 deletions

View File

@@ -1,7 +1,7 @@
Index: lirc-0.10.1/systemd/lircd.service
Index: lirc-0.10.2/systemd/lircd.service
===================================================================
--- lirc-0.10.1.orig/systemd/lircd.service
+++ lirc-0.10.1/systemd/lircd.service
--- lirc-0.10.2.orig/systemd/lircd.service
+++ lirc-0.10.2/systemd/lircd.service
@@ -6,6 +6,16 @@ Wants=lircd-setup.service
After=network.target lircd-setup.service
@@ -16,6 +16,6 @@ Index: lirc-0.10.1/systemd/lircd.service
+RestrictRealtime=true
+# end of automatic additions
+#
Type=simple
Type=notify
RuntimeDirectory=lirc
ExecStart=/usr/sbin/lircd --nodaemon
; User=lirc

Binary file not shown.

BIN
lirc-0.10.2.tar.bz2 LFS Normal file

Binary file not shown.

File diff suppressed because it is too large Load Diff

View File

@@ -1,3 +1,28 @@
-------------------------------------------------------------------
Wed Jan 29 15:21:16 UTC 2025 - Dominique Leuenberger <dimstar@opensuse.org>
- Update to version 0.10.2
* Vendor latest linux/lirc.h and handle lirc overflows.
* mode2: support lirc overflows, carrier reports, and timeouts
* Lots of fixes for python 3.
* irdroid: fix hang after transmit
* The deprecated lircd --uinput option is dropped. Use
lircd-uinput(8) instead.
* The deprecated generation of lirc.hwdb is dropped. Use
the configs/*.conf or the python database.py instead.
* Added a new lirc-postinstall scripts which updates
configuration and docs in final install destination (#286).
* Using LIRC_IRDB_CACHE_ID lirc now supports reproducible
builds. See #301 and updated irdb-get(1) manpage.
* lircd: Support for the GOLDSTAR flag in lircd.conf(5) is dropped.
* plugins: srm7500libusb: Major overhaul.
* plugins:girs: Drop support for LIRC_SET_REC_TIMEOUT, add new
driver option ending_timeout (#302).
- Drop pyyaml-60-compatibility.patch: merged upstream.
- Drop lirc-autoconf-py310.patch: no longer needed.
- Rebase harden_lircd.service.patch and reproducible.patch.
- Drop rcFOO symlinks.
-------------------------------------------------------------------
Tue Mar 26 08:47:23 UTC 2024 - pgajdos@suse.com

View File

@@ -1,7 +1,7 @@
#
# spec file for package lirc
#
# Copyright (c) 2024 SUSE LLC
# Copyright (c) 2025 SUSE LLC
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
@@ -23,7 +23,7 @@
%define _rundir /run
%endif
Name: lirc
Version: 0.10.1
Version: 0.10.2
Release: 0
Summary: Tools for Infrared Receivers
License: GPL-2.0-or-later
@@ -36,11 +36,6 @@ Patch1: harden_irexec.service.patch
Patch2: harden_lircd-uinput.service.patch
Patch3: harden_lircd.service.patch
Patch4: harden_lircmd.service.patch
# PATCH-FIX-UPSTREAM pyyaml-60-compatibility.patch sht#lirc#365 mcepl@suse.com
# Makes the package compatible with PyYAML 6.0+
Patch5: pyyaml-60-compatibility.patch
# PATCH-FIX-OPENSUSE lirc-autoconf-py310.patch, ran autoreconf for finding python 3.10
Patch6: lirc-autoconf-py310.patch
BuildRequires: fdupes
BuildRequires: gcc-c++
BuildRequires: gobject-introspection
@@ -223,9 +218,11 @@ make %{?_smp_mflags}
%install
%make_install
chmod a+x %{buildroot}%{_bindir}/pronto2lirc
%if 0%{?suse_version} < 1600
# Create backward compatibility symlink
ln -s %{_sbindir}/service %{buildroot}%{_sbindir}/rc%{name}d
ln -s %{_sbindir}/service %{buildroot}%{_sbindir}/rc%{name}md
%endif
mkdir -p %{buildroot}%{_tmpfilesdir}
echo "d /run/lirc 0755 root root 10d" \
> %{buildroot}/%{_tmpfilesdir}/lirc.conf
@@ -242,7 +239,7 @@ find %{buildroot} -type f -name "*.la" -delete -print
#
#
# Don't install documentation in a non standard directory
rm -rf %{buildroot}%{_datadir}/doc
rm -rf %{buildroot}%{_datadir}/{,%{name}/}doc
# hide python dependency
chmod a+x %{buildroot}%{_bindir}/pronto2lirc
mkdir -p %{buildroot}%{_rundir}
@@ -295,7 +292,7 @@ usermod -a -G input lirc &> /dev/null || :
%files core
%license COPYING
%doc AUTHORS ChangeLog NEWS README
%doc doc/html doc/lirc.hwdb doc/irxevent.keys
%doc doc/irxevent.keys
%doc contrib
%dir %{_datadir}/%{name}
%dir %{_libdir}/%{name}
@@ -305,12 +302,10 @@ usermod -a -G input lirc &> /dev/null || :
%exclude %{_bindir}/irxevent
%exclude %{_bindir}/xmode2
%{_bindir}/*
%{_datadir}/%{name}/lirc.hwdb
%{_sbindir}/*
%{_udevdir}/rules.d/60-%{name}.rules
%{_libdir}/%{name}/plugins
%exclude %{_libdir}/%{name}/plugins/ftdi.so
%exclude %{_libdir}/%{name}/plugins/audio.so
%exclude %{_mandir}/man1/irxevent.*
%exclude %{_mandir}/man1/xmode2.*
%{_mandir}/man1/*

View File

@@ -1,53 +0,0 @@
---
python-pkg/lirc/database.py | 8 ++++----
tools/check_configs.py | 2 +-
2 files changed, 5 insertions(+), 5 deletions(-)
--- a/python-pkg/lirc/database.py
+++ b/python-pkg/lirc/database.py
@@ -66,7 +66,7 @@ def _load_kerneldrivers(configdir):
'''
with open(os.path.join(configdir, "kernel-drivers.yaml")) as f:
- cf = yaml.load(f.read())
+ cf = yaml.load(f.read(), Loader=yaml.Loader)
drivers = cf['drivers'].copy()
for driver in cf['drivers']:
if driver == 'default':
@@ -132,14 +132,14 @@ class Database(object):
yamlpath = configdir
db = {}
with open(os.path.join(yamlpath, "confs_by_driver.yaml")) as f:
- cf = yaml.load(f.read())
+ cf = yaml.load(f.read(), Loader=yaml.Loader)
db['lircd_by_driver'] = cf['lircd_by_driver'].copy()
db['lircmd_by_driver'] = cf['lircmd_by_driver'].copy()
db['kernel-drivers'] = _load_kerneldrivers(configdir)
db['drivers'] = db['kernel-drivers'].copy()
with open(os.path.join(yamlpath, "drivers.yaml")) as f:
- cf = yaml.load(f.read())
+ cf = yaml.load(f.read(), Loader=yaml.Loader)
db['drivers'].update(cf['drivers'].copy())
for key, d in db['drivers'].items():
d['id'] = key
@@ -158,7 +158,7 @@ class Database(object):
configs = {}
for path in sorted(glob.glob(configdir + '/*.conf')):
with open(path) as f:
- cf = yaml.load(f.read())
+ cf = yaml.load(f.read(), Loader=yaml.Loader)
configs[cf['config']['id']] = cf['config']
db['configs'] = configs
self.db = db
--- a/tools/check_configs.py
+++ b/tools/check_configs.py
@@ -9,7 +9,7 @@ def main():
configs = {}
for path in glob.glob('*.conf'):
with open(path) as f:
- cf = yaml.load(f.read())
+ cf = yaml.load(f.read(), Loader=yaml.Loader)
if cf['config']['id'] + '.conf' != path:
print( "Id: %s, path: %s" % (cf['config']['id'], path))
configs[cf['config']['id']] = cf['config']

View File

@@ -3,11 +3,11 @@ https://sourceforge.net/p/lirc/git/merge-requests/33/
https://sourceforge.net/p/lirc/git/merge-requests/34/
https://sourceforge.net/p/lirc/git/merge-requests/36/
Index: lirc-0.10.1/tools/lirc-lsplugins.cpp
Index: lirc-0.10.2/tools/lirc-lsplugins.cpp
===================================================================
--- lirc-0.10.1.orig/tools/lirc-lsplugins.cpp
+++ lirc-0.10.1/tools/lirc-lsplugins.cpp
@@ -415,10 +415,9 @@ static void print_header(void)
--- lirc-0.10.2.orig/tools/lirc-lsplugins.cpp
+++ lirc-0.10.2/tools/lirc-lsplugins.cpp
@@ -413,10 +413,9 @@ static void print_header(void)
static void print_yaml_header(void)
{
static const char* const YAML_HEADER =
@@ -20,23 +20,23 @@ Index: lirc-0.10.1/tools/lirc-lsplugins.cpp
printf("\ndrivers:\n");
}
Index: lirc-0.10.1/python-pkg/lirc/database.py
Index: lirc-0.10.2/python-pkg/lirc/database.py
===================================================================
--- lirc-0.10.1.orig/python-pkg/lirc/database.py
+++ lirc-0.10.1/python-pkg/lirc/database.py
@@ -156,7 +156,7 @@ class Database(object):
--- lirc-0.10.2.orig/python-pkg/lirc/database.py
+++ lirc-0.10.2/python-pkg/lirc/database.py
@@ -160,7 +160,7 @@ class Database(object):
d['device_hint'] = hint
configs = {}
- for path in glob.glob(configdir + '/*.conf'):
+ for path in sorted(glob.glob(configdir + '/*.conf')):
with open(path) as f:
cf = yaml.load(f.read())
cf = yaml.load(f.read(), Loader = Loader)
configs[cf['config']['id']] = cf['config']
Index: lirc-0.10.1/tools/irdb-get
Index: lirc-0.10.2/tools/irdb-get
===================================================================
--- lirc-0.10.1.orig/tools/irdb-get
+++ lirc-0.10.1/tools/irdb-get
--- lirc-0.10.2.orig/tools/irdb-get
+++ lirc-0.10.2/tools/irdb-get
@@ -9,7 +9,6 @@ import fnmatch
import os
import os.path
@@ -45,26 +45,12 @@ Index: lirc-0.10.1/tools/irdb-get
import urllib.error # pylint: disable=no-name-in-module,F0401,E0611
import urllib.request # pylint: disable=no-name-in-module,F0401,E0611
@@ -193,7 +192,7 @@ def do_yaml_config():
@@ -198,7 +197,7 @@ def do_yaml_config():
lircmd_by_driver[driver].append("%s/%s" % (tokens[0], tokens[2]))
print("#")
- print("# Created by 'irdb-get yaml-config' at " + time.ctime())
- print("# Created by 'irdb-get yaml-config' as of " + CACHE_ID)
+ print("# Created by 'irdb-get yaml-config'")
print("#")
print("\nlircd_by_driver:")
print_yaml_dict(lircd_by_driver)
Index: lirc-0.10.1/tools/lirc-make-devinput
===================================================================
--- lirc-0.10.1.orig/tools/lirc-make-devinput
+++ lirc-0.10.1/tools/lirc-make-devinput
@@ -61,8 +61,7 @@ if test -n "$lirc_map"; then
fi
-echo "# Generated by $(basename $0) on $(uname -r)"
-echo "# Date: $(date)"
+echo "# Generated by $(basename $0)"
cat <<EOF
begin remote