From 0e41d9412c178d8e1ffda174d1ea8e8fdfee9690 Mon Sep 17 00:00:00 2001 From: Toshaan Bharvani Date: Sun, 9 Oct 2022 11:56:32 +0200 Subject: [PATCH] initial package creation Signed-off-by: Toshaan Bharvani --- ...lete-get_event_loop-with-get_running.patch | 44 + ...uild-install-media-lirc.h-BTS-872074.patch | 60 + ...rash-on-start-on-missing-lirc.config.patch | 24 + ...ins-devinput-fix-glob-no-match-error.patch | 38 + ...consistent-loglevel-debug-option-307.patch | 25 + ...-use-deprecated-time.clock-RHBZ-1718.patch | 30 + ...abase.py-Handle-new-PyYAML-interface.patch | 78 ++ SOURCES/99-remote-control-lirc.rules | 1 + SOURCES/README.fedora | 146 +++ SPECS/lirc.spec | 1066 +++++++++++++++++ 10 files changed, 1512 insertions(+) create mode 100644 SOURCES/0001-Replace-the-obsolete-get_event_loop-with-get_running.patch create mode 100644 SOURCES/0001-build-install-media-lirc.h-BTS-872074.patch create mode 100644 SOURCES/0002-lirc-setup-Fix-crash-on-start-on-missing-lirc.config.patch create mode 100644 SOURCES/0003-plugins-devinput-fix-glob-no-match-error.patch create mode 100644 SOURCES/0005-mode2-Fix-inconsistent-loglevel-debug-option-307.patch create mode 100644 SOURCES/0006-python-pkg-Don-t-use-deprecated-time.clock-RHBZ-1718.patch create mode 100644 SOURCES/0007-database.py-Handle-new-PyYAML-interface.patch create mode 100644 SOURCES/99-remote-control-lirc.rules create mode 100644 SOURCES/README.fedora create mode 100644 SPECS/lirc.spec diff --git a/SOURCES/0001-Replace-the-obsolete-get_event_loop-with-get_running.patch b/SOURCES/0001-Replace-the-obsolete-get_event_loop-with-get_running.patch new file mode 100644 index 0000000..1133703 --- /dev/null +++ b/SOURCES/0001-Replace-the-obsolete-get_event_loop-with-get_running.patch @@ -0,0 +1,44 @@ +From fd88080637e019fdca3e9412e470b073d4f282b1 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Robert-Andr=C3=A9=20Mauchin?= +Date: Mon, 14 Jun 2021 19:49:22 +0200 +Subject: [PATCH] Replace the obsolete get_event_loop with get_running_loop + +--- + python-pkg/lirc/async_client.py | 2 +- + python-pkg/tests/test_client.py | 7 ++++++- + 2 files changed, 7 insertions(+), 2 deletions(-) + +diff --git a/python-pkg/lirc/async_client.py b/python-pkg/lirc/async_client.py +index 1affce68..f3586b0f 100644 +--- a/python-pkg/lirc/async_client.py ++++ b/python-pkg/lirc/async_client.py +@@ -63,7 +63,7 @@ class AsyncConnection(object): + + self._conn = connection + self._loop = loop +- self._queue = asyncio.Queue(loop=self._loop) ++ self._queue = asyncio.Queue() + self._loop.add_reader(self._conn.fileno(), read_from_fd) + + def close(self): +diff --git a/python-pkg/tests/test_client.py b/python-pkg/tests/test_client.py +index d9af254d..7c1fb9fa 100644 +--- a/python-pkg/tests/test_client.py ++++ b/python-pkg/tests/test_client.py +@@ -106,7 +106,12 @@ class ReceiveTests(unittest.TestCase): + stdout = subprocess.PIPE, + stderr = subprocess.STDOUT) as child: + _wait_for_socket() +- loop = asyncio.get_event_loop() ++ ++ try: ++ loop = asyncio.get_running_loop() ++ except RuntimeError: ++ loop = asyncio.new_event_loop() ++ + with LircdConnection('foo', + socket_path=_SOCKET, + lircrc_path='lircrc.conf') as conn: +-- +2.31.1 + diff --git a/SOURCES/0001-build-install-media-lirc.h-BTS-872074.patch b/SOURCES/0001-build-install-media-lirc.h-BTS-872074.patch new file mode 100644 index 0000000..e442d8a --- /dev/null +++ b/SOURCES/0001-build-install-media-lirc.h-BTS-872074.patch @@ -0,0 +1,60 @@ +From 11e1e9ee6b353c6e7c68f92f89c49d52f396cfc7 Mon Sep 17 00:00:00 2001 +From: Alec Leamas +Date: Mon, 14 Aug 2017 10:31:55 +0200 +Subject: [PATCH] build: install media/lirc.h (BTS #872074). + +The plugin builds references this file. Basically, this should be +resolved by lirc_driver.h, testing if the kernel header is +available and using it if so, but without including config.h + +This fix adds an evil symlink to not remove anything. The proper +fix includes actually moving the file and also streamlining the +HAVE_KERNEL_LIRC_H to the generic HAVE_LINUX_LIRC_H. +--- + Makefile.am | 5 ++++- + configure.ac | 3 +++ + 2 files changed, 7 insertions(+), 1 deletion(-) + +diff --git a/Makefile.am b/Makefile.am +index aafb4e8..9f3dd14 100644 +--- a/Makefile.am ++++ b/Makefile.am +@@ -138,12 +138,15 @@ install-data-hook: + $(SED) -i -e '/^plugindir/s|/usr/lib|$(libdir)|' \ + $(DESTDIR)$(lirc_confdir)/lirc_options.conf + cp -pr $(srcdir)/contrib $(DESTDIR)$(pkgdatadir) ++ chmod u+w $(DESTDIR)$(includedir) ++ cd $(DESTDIR)$(includedir)/lirc; ln -s include/media . + + uninstall-hook: + -chmod -R u+w $(DESTDIR)/$(pkgdatadir)/contrib + -rm -rf $(DESTDIR)/$(pkgdatadir) \ + $(DESTDIR)/$(pkgpythondir) \ +- $(DESTDIR)/$(pkgdatadir)/contrib ++ $(DESTDIR)/$(pkgdatadir)/contrib \ ++ $(DESTDIR)$(includedir)/lirc + + dist-hook: ChangeLog fix-version + cp -pr $(srcdir)/contrib $(distdir) +diff --git a/configure.ac b/configure.ac +index 321a61f..4108688 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -511,11 +511,14 @@ AC_DEFINE(LIRC_OPTIONS_VAR, ["LIRC_OPTIONS_PATH"],[ + Environment variable overriding options file path]) + + AH_TOP([ ++#ifndef ROOT_CONFIG_H ++#define ROOT_CONFIG_H + #include "paths.h" + ]) + + AH_BOTTOM([ + #include "lirc/lirc_config.h" ++#endif // ROOT_CONFIG_H + ]) + + dnl write these decisions out to the Makefiles +-- +2.9.3 + diff --git a/SOURCES/0002-lirc-setup-Fix-crash-on-start-on-missing-lirc.config.patch b/SOURCES/0002-lirc-setup-Fix-crash-on-start-on-missing-lirc.config.patch new file mode 100644 index 0000000..7a88b96 --- /dev/null +++ b/SOURCES/0002-lirc-setup-Fix-crash-on-start-on-missing-lirc.config.patch @@ -0,0 +1,24 @@ +From e2693b9022f390070ef0136020aafc8c1c18769c Mon Sep 17 00:00:00 2001 +From: Alec Leamas +Date: Fri, 12 Oct 2018 20:49:58 +0200 +Subject: [PATCH] lirc-setup: Fix crash on start on missing lirc.config. + +--- + Makefile.am | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/Makefile.am b/Makefile.am +index aafb4e8ca..d5dbfb621 100644 +--- a/Makefile.am ++++ b/Makefile.am +@@ -80,6 +80,7 @@ py_PYTHON = python-pkg/lirc/__init__.py \ + python-pkg/lirc/database.py \ + python-pkg/lirc/paths.py + ++nodist_py_PYTHON = python-pkg/lirc/config.py + nodist_py_pkg_PYTHON = python-pkg/lirc/config.py + + if HAVE_PYTHON35 +-- +2.14.4 + diff --git a/SOURCES/0003-plugins-devinput-fix-glob-no-match-error.patch b/SOURCES/0003-plugins-devinput-fix-glob-no-match-error.patch new file mode 100644 index 0000000..ebcd758 --- /dev/null +++ b/SOURCES/0003-plugins-devinput-fix-glob-no-match-error.patch @@ -0,0 +1,38 @@ +From 14685b280fde85a6e801f7fb7d5e579b2ddb3581 Mon Sep 17 00:00:00 2001 +From: Ayke van Laethem +Date: Fri, 28 Jul 2017 18:07:50 +0200 +Subject: [PATCH 3/6] plugins: devinput: fix glob "no match" error + +See 63e041cc5 and LIRC issue #285 (Debian: #860551) +--- + plugins/devinput.c | 10 +++++----- + 1 file changed, 5 insertions(+), 5 deletions(-) + +diff --git a/plugins/devinput.c b/plugins/devinput.c +index 846a0b70..d4d733a0 100644 +--- a/plugins/devinput.c ++++ b/plugins/devinput.c +@@ -247,15 +247,15 @@ static int locate_default_device(char* errmsg, size_t size) + + r = glob("/sys/class/rc/rc0/input[0-9]*/event[0-9]*", + 0, NULL, &matches); +- if (r != 0) { +- log_perror_warn("Cannot run glob %s", DEV_PATTERN); ++ if (r == GLOB_NOMATCH) { ++ strncpy(errmsg, "No /sys/class/rc/ devices found", size - 1); + log_notice("No input device available for devinput driver." + " Consider stopping lircd.socket or reconfigure lirc"); +- snprintf(errmsg, size, "Cannot glob %s", DEV_PATTERN); + return 0; + } +- if (matches.gl_pathc == 0) { +- strncpy(errmsg, "No /sys/class/rc/ devices found", size - 1); ++ if (r != 0) { ++ log_perror_warn("Cannot run glob %s", DEV_PATTERN); ++ snprintf(errmsg, size, "Cannot glob %s", DEV_PATTERN); + return 0; + } + if (matches.gl_pathc > 1) { +-- +2.20.1 + diff --git a/SOURCES/0005-mode2-Fix-inconsistent-loglevel-debug-option-307.patch b/SOURCES/0005-mode2-Fix-inconsistent-loglevel-debug-option-307.patch new file mode 100644 index 0000000..4f0f742 --- /dev/null +++ b/SOURCES/0005-mode2-Fix-inconsistent-loglevel-debug-option-307.patch @@ -0,0 +1,25 @@ +From aa2b06cff01b52666e44aae59ee56fc9092cad93 Mon Sep 17 00:00:00 2001 +From: Alec Leamas +Date: Sun, 3 Sep 2017 04:21:57 +0200 +Subject: [PATCH 5/6] mode2: Fix inconsistent loglevel/debug option (#307). + +--- + tools/mode2.cpp | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/tools/mode2.cpp b/tools/mode2.cpp +index fe578f89..e962610d 100644 +--- a/tools/mode2.cpp ++++ b/tools/mode2.cpp +@@ -74,7 +74,7 @@ static const char* const help = + + static const struct option options[] = { + {"help", no_argument, NULL, 'h'}, +- {"debug", required_argument, NULL, 'D'}, ++ {"loglevel", required_argument, NULL, 'D'}, + {"version", no_argument, NULL, 'v'}, + {"device", required_argument, NULL, 'd'}, + {"driver", required_argument, NULL, 'H'}, +-- +2.20.1 + diff --git a/SOURCES/0006-python-pkg-Don-t-use-deprecated-time.clock-RHBZ-1718.patch b/SOURCES/0006-python-pkg-Don-t-use-deprecated-time.clock-RHBZ-1718.patch new file mode 100644 index 0000000..87375f6 --- /dev/null +++ b/SOURCES/0006-python-pkg-Don-t-use-deprecated-time.clock-RHBZ-1718.patch @@ -0,0 +1,30 @@ +From 9d2e0a40294408764710657e78929c83f2fc0f31 Mon Sep 17 00:00:00 2001 +From: Alec Leamas +Date: Wed, 21 Aug 2019 21:48:25 +0200 +Subject: [PATCH 6/6] python-pkg: Don't use deprecated time.clock() (RHBZ + #1718285) + +--- + python-pkg/lirc/client.py | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git a/python-pkg/lirc/client.py b/python-pkg/lirc/client.py +index 7e069a55..482913cf 100644 +--- a/python-pkg/lirc/client.py ++++ b/python-pkg/lirc/client.py +@@ -219,10 +219,10 @@ class RawConnection(AbstractConnection): + def readline(self, timeout: float = None) -> str: + ''' Implements AbstractConnection.readline(). ''' + if timeout: +- start = time.clock() ++ start = time.perf_counter() + while b'\n' not in self._buffer: + ready = self._select.select( +- start + timeout - time.clock() if timeout else timeout) ++ start + timeout - time.perf_counter() if timeout else timeout) + if ready == []: + if timeout: + raise TimeoutException( +-- +2.20.1 + diff --git a/SOURCES/0007-database.py-Handle-new-PyYAML-interface.patch b/SOURCES/0007-database.py-Handle-new-PyYAML-interface.patch new file mode 100644 index 0000000..298cae5 --- /dev/null +++ b/SOURCES/0007-database.py-Handle-new-PyYAML-interface.patch @@ -0,0 +1,78 @@ +From bb6a390633f32942ac10f9b7b7fc01dfbd395a48 Mon Sep 17 00:00:00 2001 +From: Alec Leamas +Date: Fri, 21 Jan 2022 14:00:54 +0100 +Subject: [PATCH] database.py: Handle new PyYAML interface. + +--- + python-pkg/lirc/database.py | 12 ++++++++---- + tools/check_configs.py | 4 ++++ + 2 files changed, 12 insertions(+), 4 deletions(-) + +diff --git a/python-pkg/lirc/database.py b/python-pkg/lirc/database.py +index d464c2ab..d1f42c64 100644 +--- a/python-pkg/lirc/database.py ++++ b/python-pkg/lirc/database.py +@@ -44,6 +44,10 @@ import sys + + try: + import yaml ++ try: ++ from yaml import CLoader as Loader, CDumper as Dumper ++ except ImportError: ++ from yaml import Loader, Dumper + except ImportError: + _YAML_MSG = ''' + "Cannot import the yaml library. Please install the python3 +@@ -66,7 +70,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 = Loader) + drivers = cf['drivers'].copy() + for driver in cf['drivers']: + if driver == 'default': +@@ -132,14 +136,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 = 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 = Loader) + db['drivers'].update(cf['drivers'].copy()) + for key, d in db['drivers'].items(): + d['id'] = key +@@ -158,7 +162,7 @@ class Database(object): + configs = {} + for path in 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'] + db['configs'] = configs + self.db = db +diff --git a/tools/check_configs.py b/tools/check_configs.py +index 1e0d831b..5e458de7 100755 +--- a/tools/check_configs.py ++++ b/tools/check_configs.py +@@ -4,6 +4,10 @@ + + import glob + import yaml ++try: ++ from yaml import CLoader as Loader, CDumper as Dumper ++except ImportError: ++ from yaml import Loader, Dumper + + def main(): + configs = {} +-- +2.34.1 + diff --git a/SOURCES/99-remote-control-lirc.rules b/SOURCES/99-remote-control-lirc.rules new file mode 100644 index 0000000..c6d6bed --- /dev/null +++ b/SOURCES/99-remote-control-lirc.rules @@ -0,0 +1 @@ +SUBSYSTEM=="rc", ATTR{protocols}="lirc" diff --git a/SOURCES/README.fedora b/SOURCES/README.fedora new file mode 100644 index 0000000..b1a629f --- /dev/null +++ b/SOURCES/README.fedora @@ -0,0 +1,146 @@ +## Fedora README + +0.9.2 + +This a major upstream update. Don't expect things to be the same, read +the NEWS file in the documentation (/usr/share/doc/lirc/NEWS). + +Packaging-wise, the package has been split into smaller packages. Installing +the 'lirc' package will bring all of them. You might be interested in +not installing or removing e. g., unused drivers, the gui and/or the +config package. + +The lircd daemon now runs as user lirc. This is using the new +--effective-user option, so it's still started as root and runs as root +until all devices and files are opened. Should this become a problem, just +change the effective-user option in lirc_options.conf. + + + +0.9.1 + +#### Systemd + +The fedora lirc package supports two systemd services lircd.socket +and lircmd.service. See below for enabling and starting these +services. + +Since systemd quite aggressively runs things in parallel during startup, +clients like irexec sometimes runs into troubles because the socket +they want to connect to isn't available. This can cause hard to debug +problems. From this version, lircd supports a --wait-for-socket option. +Using this, the calling party is blocked until the socket is available. + +#### New configuration file(s) + +From this version lirc supports a new configuration file +/etc/lirc/lirc_options.conf. This holds default values for all +command line options, and does in fact replace those in most +installations. When updating, you need to use your old +/etc/sysconfig/lirc config file to update lirc_options.conf. + +The old file /etc/sysconfig/lirc is no longer used. + +The need to define a device that should be reserved (the old +LIRC_IR_DEVICE option) is no longer needed - lircd is clever enough +to do this by itself. + +#### Enable lirc protocol (obsolete) + +In previous version the lirc protocol had to be be enabled +for the actual device used. This was done using either by installing the +lirc-disable-kernel-rc subpackage or by setting the LIRCD_IR_DEVICE in +/etc/sysconfig/lirc. This is no longer needed, lircd does this +automatically. The lirc-disable-kernel-rc subpackage is still available +"just in case" but should normally not be needed. + +#### Socket activation + +As of 0.9.4-15+, the Fedora lirc package sports systemd socket +activation. This should fix the problems at startup when clients can't +connect to /var/run/lircd because the lircd service is yet not started. + +To start the lircd service using socket activation: +``` + # systemctl enable lircd.socket + # systemctl start lircd.socket +``` +The lircmd is started the usual way: +``` + # systemctl enable lircmd.service + # systemctl start lircmd.service +``` +#### Running another instance. + +Sometimes another lircd instance is required to handle some other input +device. This could be done by creating a new service definition in +/etc/systemd/system. + +In my case I have an extra instance handling ir output to the transciever. +This is accomplished with a file /etc/systemd/system/lirc-tx: +---------------- +[Unit] +Description=LIRC Infrared Signal Decoder +After=network.target + +[Service] +Type=simple +ExecStart=/usr/sbin/lircd --driver=iguanaIR \ + --device=/var/run/iguanaIR/0 \ + --output=/var/run/lirc/lircd-tx \ + --pidfile=/run/lirc/dont-use-lircd-tx.pid \ + --nodaemon \ + --allow-simulate + +[Install] +WantedBy=multi-user.target + +----------------------- + +This defines a new service which can be started using +'systemctl start lirc-tx' etc. It's essential that each service has an +unique output socket. You should probably also think twice before running +two instances with the same input device. + +## Troubleshooting + +Getting lircd logs from last boot cycle: +``` + # journalctl -b /usr/sbin/lircd +``` + +If lircd fails to start or dies after restart, first check logs for errors: +``` + # journalctl -f & + # systemctl restart lircd.service +``` + +You could also run lircd in foreground after stopping service: +``` + # systemctl stop lircd.service + # bash + # source /etc/systconfig/lirc + # /usr/sbin/lircd $LIRCD_OPTIONS --driver $LIRC_DRIVER \ + > --device $LIRC_DEVICE --nodaemon +``` + +Sometimes kernel complains about multiple clients trying to access the +same device. In this case you need to blacklist some kernel module +to make the kernel device available for lircd. One example is my RF +remote using the atilibusb driver. This needs to blacklist the built_in +ati_remote module. This is is done by creating the file +/etc/modprobe.conf.d/blacklist-ati-remote.conf as: +``` +# Block built-in handling of ati-remote (use lircd instead). +blacklist ati_remote +``` + + + + + + + + + + diff --git a/SPECS/lirc.spec b/SPECS/lirc.spec new file mode 100644 index 0000000..6bd65da --- /dev/null +++ b/SPECS/lirc.spec @@ -0,0 +1,1066 @@ +# This package depends on automagic byte compilation +# https://fedoraproject.org/wiki/Changes/No_more_automagic_Python_bytecompilation_phase_2 + +%global _hardened_build 1 +%global __python %{__python3} + +%global released 1 +#define tag devel + +Name: lirc +Version: 0.10.0 +Release: 36%{?tag:.}%{?tag}%{?dist} +Summary: The Linux Infrared Remote Control package + +%global repo http://downloads.sourceforge.net/lirc/LIRC/%{version} +%global tarball %{name}-%{version}%{?tag:-}%{?tag}.tar.gz + + # lib/ciniparser* and lib/dictionary* are BSD, others GPLv2 +License: GPLv2 and BSD +URL: http://www.lirc.org/ +Source0: %{?released:%{repo}%{?tag:-}%{?tag}/}%{tarball} +Source1: README.fedora +Source2: 99-remote-control-lirc.rules +Patch1: 0001-build-install-media-lirc.h-BTS-872074.patch +Patch2: 0002-lirc-setup-Fix-crash-on-start-on-missing-lirc.config.patch +Patch3: 0003-plugins-devinput-fix-glob-no-match-error.patch +Patch5: 0005-mode2-Fix-inconsistent-loglevel-debug-option-307.patch +Patch6: 0006-python-pkg-Don-t-use-deprecated-time.clock-RHBZ-1718.patch +Patch7: 0001-Replace-the-obsolete-get_event_loop-with-get_running.patch +Patch8: 0007-database.py-Handle-new-PyYAML-interface.patch + + +BuildRequires: gcc-c++ +BuildRequires: /usr/bin/xsltproc +BuildRequires: alsa-lib-devel +Buildrequires: autoconf +BuildRequires: automake +BuildRequires: checkpolicy +BuildRequires: doxygen +BuildRequires: expect +BuildRequires: kernel-headers +BuildRequires: man2html-core +BuildRequires: libftdi-devel +BuildRequires: libtool +%if (0%{?fedora} && 0%{?fedora} < 37) || (0%{?rhel} && 0%{?rhel} < 10) +BuildRequires: libusb-devel +%else +BuildRequires: libusb-compat-0.1-devel +%endif +BuildRequires: libusb1-devel + +BuildRequires: libxslt +BuildRequires: libXt-devel +BuildRequires: portaudio-devel +BuildRequires: python%{python3_pkgversion}-devel +BuildRequires: python%{python3_pkgversion}-PyYAML +BuildRequires: python%{python3_pkgversion}-setuptools +BuildRequires: socat +BuildRequires: systemd-devel +BuildRequires: make + +Requires: %{name}-libs = %{version}-%{release} +Requires: lockdev +Suggests: xorg-x11-misc-fonts + +Requires(pre): shadow-utils +Requires(post): systemd + #for triggerun +Requires(post): systemd-sysv +Requires(post): policycoreutils +Requires(postun): systemd +Requires(postun): policycoreutils +Requires(preun): systemd + +%description +LIRC is a package that allows you to decode and send infra-red and +other signals of many (but not all) commonly used remote controls. +Included applications include daemons which decode the received +signals as well as user space applications which allow controlling a +computer with a remote control. + +Installing this package will install most of the LIRC sub-packages. +You might want to install lirc-core, possibly adding some other +packages to get a smaller installation. + + +%package core +Summary: LIRC core, always needed to run LIRC +Requires: lirc-libs%{?_isa} = %{version}-%{release} +%{?systemd_requires} + +%description core +Part of the LIRC package suite which handles IR remotes. See +the package lirc for more. + +The lirc core contains the lircd daemons, the devinput and +default driver and most of the applications. + +%package compat +Summary: Compatibility package installing all lirc packages +Obsoletes: lirc <= 0.9.1a +Provides: lirc = %{version}-%{release} +Requires: lirc-core%{?_isa} = %{version}-%{release} +Requires: lirc-config = %{version}-%{release} +Requires: lirc-tools-gui%{?_isa} = %{version}-%{release} +Requires: lirc-drv-portaudio%{?_isa} = %{version}-%{release} +Requires: lirc-drv-ftdi%{?_isa} = %{version}-%{release} + +%description compat +Part of the LIRC package suite which handles IR remotes. See +the package lirc for more. + +Installing this package will install most lirc sub-packages, roughly +the same as installing previous versions of the lirc package. + +%package libs +Summary: LIRC libraries + +%description libs +Part of the LIRC package suite which handles IR remotes. See +the package lirc for more. + +This package includes shared libraries that applications use to +interface with LIRC. + + +%package config +Summary: LIRC Configuration Tools and Data +Requires: lirc-core = %{version}-%{release} +Requires: lirc-doc = %{version}-%{release} +Requires: gnome-icon-theme +Requires: python%{python3_pkgversion}-PyYAML +BuildArch: noarch + +%description config +Part of the LIRC package suite which handles IR remotes. See +the package lirc for more. + +The config package contains tools and data to support the +LIRC configuration process. + + +%package devel +Summary: Development files for LIRC +Requires: lirc-core%{?_isa} = %{version}-%{release} + +%description devel +Part of the LIRC package suite which handles IR remotes. See +the package lirc for more. + +This package includes files for developing applications that use lirc +including headers and pkg-config files. + + +%package doc +Summary: LIRC documentation +BuildArch: noarch + +%description doc +Part of the LIRC package suite which handles IR remotes. See +the package lirc for more. + +This package contains lirc documentation. + + +%package disable-kernel-rc +Summary: Disable kernel ir device handling in favor of lirc +Requires: %{name} = %{version}-%{release} +BuildArch: noarch + +%description disable-kernel-rc +Part of the LIRC package suite which handles IR remotes. See +the package lirc for more. + +This package contains an udev rule which disables the kernel built-in +handling of infrared devices (i. e., rc* ones) by making lirc the only +used protocol. + + +%package tools-gui +Summary: LIRC GUI tools +Requires: lirc-core%{?_isa} = %{version}-%{release} + +%description tools-gui +Part of the LIRC package suite which handles IR remotes. See +the package lirc for more. + +This package contains some seldom used X11-based tools for debugging +lirc configurations. + + +%package drv-portaudio +Summary: Portaudio LIRC User-Space Driver +Requires: lirc-core%{?_isa} = %{version}-%{release} +License: LGPLv2 + +%description drv-portaudio +Part of the LIRC package suite which handles IR remotes. See +the package lirc for more. + +This package contains a lirc user space driver which supports +an IR receiver in microphone input using the portaudio library. + + +%package drv-ftdi +Summary: Ftdi LIRC User-Space Driver +Requires: lirc-core%{?_isa} = %{version}-%{release} + +%description drv-ftdi +Part of the LIRC package suite which handles IR remotes. See +the package lirc for more. + +This package contains a user-space driver which works together +with the kernel, providing full support for the ftdi device. +See http://www.ftdichip.com. + + +# Don't provide or require anything from _docdir, per policy. +%global __provides_exclude_from ^%{_docdir}/.*$ +%global __requires_exclude_from ^%{_docdir}/.*$ + + +%prep +%autosetup -p1 -n %{name}-%{version}%{?tag:-}%{?tag} +sed -i -e 's/#effective-user/effective-user /' lirc_options.conf +sed -i -e '/^effective-user/s/=$/= lirc/' lirc_options.conf +sed -i '/User=/s/; *//' systemd/lircd.service +sed -i '/Group=/s/; *//' systemd/lircd.service +sed -i 's/; *user=/User=/' systemd/irexec.service +sed -i 's/; *group=/Group=/' systemd/irexec.service + +sed -i -e 's|/usr/local/etc/|/etc/|' contrib/irman2lirc + + +%build +autoreconf -fi +export PYTHON=/usr/bin/python3 + +%configure \ + --docdir="%{_pkgdocdir}" \ + --enable-uinput \ + --enable-devinput \ + --with-lockdir=/var/lock/lockdev +make LANG=C.utf8 V=0 %{?_smp_mflags} + +%check +if test -d python-pkg/tests; then + cd python-pkg/tests; python3 -m unittest discover || exit 1 + cd $OLDPWD +fi + +echo "Plugins: 40" > summary.ok +echo "Drivers: 51" >> summary.ok +echo "Errors: 0" >> summary.ok +tools/lirc-lsplugins -U plugins/.libs -s > summary +diff -w summary summary.ok || exit 1 + + +%install +make -s V=0 LIBTOOLFLAGS="--silent %{?Wnone}" DESTDIR=$RPM_BUILD_ROOT install + +chmod 755 $RPM_BUILD_ROOT%{_datadir}/lirc/contrib/irman2lirc +find $RPM_BUILD_ROOT%{_libdir}/ -name \*.la -delete + +install -pm 755 contrib/irman2lirc $RPM_BUILD_ROOT%{_bindir} +install -Dpm 644 doc/lirc.hwdb $RPM_BUILD_ROOT%{_datadir}/lirc/lirc.hwdb +install -Dpm 644 contrib/60-lirc.rules \ + $RPM_BUILD_ROOT%{_udevrulesdir}/60-lirc.rules +install -Dpm 644 %{SOURCE2} \ + $RPM_BUILD_ROOT%{_udevrulesdir}/99-remote-control-lirc.rules +cp -a %{SOURCE1} README.fedora + +mkdir -p $RPM_BUILD_ROOT/%{_tmpfilesdir} +echo "d %{_rundir}/lirc 0755 lirc lirc -" \ + > $RPM_BUILD_ROOT%{_tmpfilesdir}/lirc.conf + + +%pre core +getent group lirc >/dev/null || groupadd -r lirc +getent passwd lirc >/dev/null || \ + useradd -r -g lirc -d /var/log/lirc -s /sbin/nologin \ + -c "LIRC daemon user, runs lircd." lirc +usermod -a -G dialout lirc &> /dev/null || : +usermod -a -G lock lirc &> /dev/null || : +usermod -a -G input lirc &> /dev/null || : +exit 0 + +%post core +%systemd_post lircd.service lircmd.service +systemd-tmpfiles --create %{_tmpfilesdir}/lirc.conf + +%preun core +%systemd_preun lircd.service lircmd.service + +%postun core +%systemd_postun_with_restart lircd.service lircmd.service + +%ldconfig_scriptlets libs + + +%files compat + +%files drv-portaudio +%{_libdir}/lirc/plugins/audio.so +%{_datadir}/lirc/configs/audio.conf + +%files drv-ftdi +%{_libdir}/lirc/plugins/ftdi.so +%{_datadir}/lirc/configs/ftdi.conf + +%files tools-gui +%{_bindir}/xmode2 +%{_bindir}/irxevent +%{_mandir}/man1/irxevent* +%{_mandir}/man1/xmode2* + +%files config +%{_bindir}/irdb-get +%{_bindir}/lirc-config-tool +%{_bindir}/lirc-setup +%{_mandir}/man1/irdb-get* +%{_mandir}/man1/lirc-config-tool* +%{_mandir}/man1/lirc-setup* +%{_datadir}/lirc/configs/* +%exclude %{_datadir}/lirc/configs/ftdi.conf +%exclude %{_datadir}/lirc/configs/audio.conf + + +%files core +%doc README AUTHORS NEWS README.fedora +%dir /etc/lirc +/etc/lirc/lircd.conf.d +%config(noreplace) /etc/lirc/lirc*.conf +%config(noreplace) /etc/lirc/irexec.lircrc +%{_tmpfilesdir}/lirc.conf +%{_unitdir}/lirc* +%{_unitdir}/irexec.service +%{_udevrulesdir}/60-lirc.rules +%{_bindir}/*ir* +%{_bindir}/*mode2 +%exclude %{_bindir}/irdb-get +%exclude %{_bindir}/xmode2 +%exclude %{_bindir}/irxevent +%exclude %{_bindir}/lirc-setup +%exclude %{_bindir}/lirc-config-tool +%{_sbindir}/lirc* +%{_libdir}/lirc/plugins +%exclude %{_libdir}/lirc/plugins/ftdi.so +%exclude %{_libdir}/lirc/plugins/audio.so +%{_libdir}/python%{python3_version}/site-packages/lirc +%{_libdir}/python%{python3_version}/site-packages/lirc-setup +%{_datadir}/lirc/ +/var/lib/lirc/images +/var/lib/lirc/plugins +%exclude %{_datadir}/lirc/configs/* +%{_mandir}/man1/*ir*.1* +%{_mandir}/man1/*mode2*.1* +%{_mandir}/man5/lircd.conf.* +%{_mandir}/man5/lircrc.* +%{_mandir}/man8/lirc*d.8* +%{_mandir}/man8/lircd-setup.8* +%{_mandir}/man8/lircd-uinput.8* +%exclude %{_mandir}/man1/lirc-config-tool* +%exclude %{_mandir}/man1/irdb-get* +%exclude %{_mandir}/man1/lirc-setup* +%exclude %{_mandir}/man1/irxevent* +%exclude %{_mandir}/man1/xmode2* + +%files libs +%license COPYING COPYING.ciniparser COPYING.curl +%{_libdir}/libirrecord.so.* +%{_libdir}/liblirc_client.so.* +%{_libdir}/liblirc_driver.so.* +%{_libdir}/liblirc.so.* + +%files devel +%{_includedir}/lirc/ +%{_includedir}/lirc_private.h +%{_includedir}/lirc_driver.h +%{_includedir}/lirc_client.h +%{_libdir}/libirrecord.so +%{_libdir}/liblirc_client.so +%{_libdir}/liblirc_driver.so +%{_libdir}/liblirc.so +%{_libdir}/pkgconfig/lirc-driver.pc +%{_libdir}/pkgconfig/lirc.pc + +%files doc +%license COPYING COPYING.ciniparser COPYING.curl +%doc ChangeLog +%{_pkgdocdir} + +%files disable-kernel-rc +%{_udevrulesdir}/99-remote-control-lirc.rules + +%changelog +* Thu Jun 16 2022 Python Maint - 0.10.0-36 +- Rebuilt for Python 3.11 + +* Thu Jun 16 2022 Alec Leamas - 0.10.0-35 +- Handle libusb-devel -> libus-compat-0.1-devel + +* Fri Jan 21 2022 Alec Leamas - 0.10.0-34 +- Add patch for revised PyYAML interface. Closes: #2034939 + +* Thu Jan 20 2022 Fedora Release Engineering - 0.10.0-33 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild + +* Thu Jul 22 2021 Fedora Release Engineering - 0.10.0-32 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild + +* Fri Jun 04 2021 Python Maint - 0.10.0-31 +- Rebuilt for Python 3.10 + +* Tue Mar 02 2021 Zbigniew Jędrzejewski-Szmek - 0.10.0-30 +- Rebuilt for updated systemd-rpm-macros + See https://pagure.io/fesco/issue/2583. + +* Tue Jan 26 2021 Fedora Release Engineering - 0.10.0-29 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild + +* Tue Nov 03 2020 Alec Leamas - 0.10.0-28 +- Add R: lockdev. Closes: #1839223. + +* Mon Oct 26 2020 Alec Leamas - 0.10.0-27 +- Fix python bytecompile FTBFS error. + +* Mon Oct 26 2020 Alec Leamas - 0.10.0-26 +- Fix python version FTFBS error. + +* Sat Aug 01 2020 Fedora Release Engineering - 0.10.0-25 +- Second attempt - Rebuilt for + https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild + +* Tue Jul 28 2020 Fedora Release Engineering - 0.10.0-24 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild + +* Tue May 26 2020 Miro Hrončok - 0.10.0-23 +- Rebuilt for Python 3.9 + +* Thu Jan 30 2020 Paul Wouters - 0.10.0-22 +- Use rundir macro and not old hardcoded /var/run for tmpfile creation in spec file. + +* Wed Jan 29 2020 Fedora Release Engineering - 0.10.0-21 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild + +* Thu Oct 03 2019 Miro Hrončok - 0.10.0-20 +- Rebuilt for Python 3.8.0rc1 (#1748018) + +* Wed Aug 21 2019 Alec Leamas - 0.10.0-19 +- Fix FTBS on python 3.8. Closes: #1718285. +- mode2: Fix inconsistent loglevel/debug option (upstream #307) +- plugins: devinput: fix glob "no match" error (upstream #285, DBS 860551) + +* Mon Aug 19 2019 Miro Hrončok - 0.10.0-18 +- Rebuilt for Python 3.8 + +* Thu Jul 25 2019 Fedora Release Engineering - 0.10.0-17 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild + +* Sat Mar 9 2019 Stephen John Smoogen - 0.10.0-16 +- EPEL 7 has moved forward to Python 3.6, no need for suppressing tests for < 3.5 any longer + +* Fri Feb 01 2019 Fedora Release Engineering - 0.10.0-15 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild + +* Fri Oct 12 2018 Alec Leamas - 0.10.0-14 +- Rework patch for lirc-setup crash on startup. + +* Fri Oct 12 2018 Alec Leamas - 0.10.0-13 +- Added patch for lirc-setup crash on startup. + +* Fri Jul 13 2018 Fedora Release Engineering - 0.10.0-12 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild + +* Mon Jul 02 2018 Miro Hrončok - 0.10.0-11 +- Rebuilt for Python 3.7 + +* Fri Jun 29 2018 Alec Leamas - 0.10.0-10 +- Conditionalize ldconfig scriptlets. + +* Tue Jun 19 2018 Miro Hrončok - 0.10.0-9 +- Rebuilt for Python 3.7 + +* Wed Jun 13 2018 Alec Leamas - 0.10.0-8 +- Patch systemd files to use correct user and group - #1590724. + +* Wed Feb 07 2018 Fedora Release Engineering - 0.10.0-7 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild + +* Mon Jan 22 2018 Alec Leamas - 0.10.0-6 +- Fix for rhbz #1536901, missing R(post) in lirc-core. + +* Thu Dec 28 2017 Tom Hughes - 0.10.0-5 +- Don't expire files in runtime directory. + +* Sun Dec 10 2017 Alec Leamas - 0.10.0-4 +- Fix rhbz #1514359, f27 version is less than f26. + +* Sun Aug 20 2017 Alec Leamas - 0.10.0-3 +- Fix rhbz #1483330, use correct serial devices lock dir. + +* Tue Aug 15 2017 Alec Leamas - 0.10.0-2 +- Fix Debian BTS 872074, FTBS on external plugins e. g. libirman. + +* Sat Aug 12 2017 Alec Leamas - 0.10.0-1 +- New upstream release +- All patches upstreamed. + +* Thu Aug 03 2017 Fedora Release Engineering - 0.9.4c-8.2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild + +* Wed Jul 26 2017 Fedora Release Engineering - 0.9.4c-8.1 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild + +* Tue Apr 4 2017 Alec Leamas - 0.9.4c-8 +- Fix bad include paths causing FTBS in packages using -devel. +- Fix bad python import path. +- Fix missing socket activation - #1438702 + +* Fri Feb 10 2017 Fedora Release Engineering - 0.9.4c-7.1 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild + +* Wed Jan 04 2017 Alec Leamas - 0.9.4c-7 +- Added upstream patch for bad ircat --config handling +- Added upstream patch for lircd SET_INPUTLOG segfault +- Added upstream patch for FTBS on clients building against lirc + +* Fri Dec 23 2016 Alec Leamas - 0.9.4c-6 +- Add patch for --listen parsing bug (upstream #249). + +* Mon Dec 19 2016 Miro Hrončok - 0.9.4c-5.1 +- Rebuild for Python 3.6 + +* Wed Dec 07 2016 Alec Leamas - 0.9.4c-5 +- Added missing lircd-setup.service file. + +* Sun Oct 30 2016 Alec Leamas - 0.9.4c-4 +- Added upstream patches (10) + +* Sat Oct 22 2016 Alec Leamas - 0.9.4c-3 +- Add fix for header file curl_poll.h, fixing clients FTBS errors. + +* Fri Oct 21 2016 Alec Leamas - 0.9.4c-2 +- Rebuilt + +* Fri Oct 21 2016 Alec Leamas - 0.9.4c-1 +- New upstream version, patches upstreamed + +* Tue Aug 23 2016 Alec Leamas - 0.9.4b-4 +- Add fixes for #221 and #222 +- Update patches, include everything from upstream +- Add some minor fixes for lircd.org +- Obsoletes 0.9.4b-3 which is unpushed. + +* Mon Aug 22 2016 Alec Leamas - 0.9.4b-3 +- Add yet another ABRT crasher fix. +- Update fix for #1364744. + +* Wed Aug 17 2016 Alec Leamas - 0.9.4b-2 +- Added patch for audio_alsa plugin (#218). +- Move R: python3-PyYAML to lirc-compat, fixes import error + https://retrace.fedoraproject.org/faf/reports/1229333/ +- Modify usb devices acl(5) udev rule (#1364744). + +* Tue Aug 09 2016 Alec Leamas - 0.9.4b-1 +- Rebuilt for new upstream version 0.9.4b. + +* Tue Jul 19 2016 Fedora Release Engineering - 0.9.4-3.1 +- https://fedoraproject.org/wiki/Changes/Automatic_Provides_for_Python_RPM_Packages + +* Wed Jun 29 2016 Alec Leamas - 0.9.4a-1 +- New upstream release. +- Fixes #1350750, bad systemd files syntax. + +* Thu May 26 2016 Alec Leamas - 0.9.4-3 +- Add fix for FTBS parallel build deps error. + +* Thu May 26 2016 Alec Leamas - 0.9.4-2 +- New upstream release. + +* Thu May 12 2016 Alec Leamas - 0.9.3a-5 +- Fix upstreamed/duplicated lirc.4 manpage (#1319344). + +* Thu Feb 04 2016 Fedora Release Engineering - 0.9.3a-4 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild + +* Wed Nov 25 2015 Alec Leamas - 0.9.3a-3 +- Fix bad Obsoletes (#1284522). + +* Tue Nov 10 2015 Fedora Release Engineering - 0.9.3a-2 +- Rebuilt for https://fedoraproject.org/wiki/Changes/python3.5 + +* Wed Oct 14 2015 Alec Leamas - 0.9.3a-1 + - Upstream update + - Added missing icons dependency. + - Some patches upstreamed. + +* Mon Sep 14 2015 Alec Leamas 0.9.3-6 +- Add a selinux policy. +- Clean up some macros. + +* Wed Sep 09 2015 Alec Leamas - 0.9.3-5 +- Move scriptles to lirc-core (#1261289). +- Adjust deps between lib, core, and devel (also #1261289). +- Make temporary files owned by lirc:lirc +- Add missing library flag causing rpmlint noise. +- Remove foreign distro stuff in contrib/. + +* Mon Sep 07 2015 Alec Leamas - 0.9.3-4 +- Fix missing file database.py (lirc-setup cannot start). + +* Sun Sep 06 2015 Alec Leamas - 0.9.3-3 +- Fix missing lirc-drv-irman. + +* Sun Sep 06 2015 Alec Leamas - 0.9.3-2 +- Rebuilt + +* Sat Sep 05 2015 Alec Leamas - 0.9.3-1 +- New upstream version. + +* Wed Aug 19 2015 Alec Leamas - 0.9.3-0.3.pre3 +- Added lirc-lsplugins left-over logfile patch (COPR only). + +* Tue Aug 18 2015 Alec Leamas - 0.9.3-0.2pre3 +- Add new patch for external module compilation (COPR only). + +* Thu Jul 30 2015 Alec Leamas - 0.9.3-0.2pre1 +- Add udev rule to fix /dev/lirc0 permissions (COPR only). + +* Wed Jul 1 2015 Alec Leamas - 0.9.3-0.1pre1 +- Provisionary COPR 0.9.3 pre-release - major upstream update. + +* Wed Jun 17 2015 Fedora Release Engineering - 0.9.2a-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild + +* Wed Dec 10 2014 Alec Leamas - 0.9.2-1 +- Major upstream update. +- New package structure with more, smaller packages. + +* Wed Sep 03 2014 Alec Leamas - 0.9.1a-4 +- rebuilt + +* Thu Aug 21 2014 Alec Leamas - 0.9.1a-3 +- rebuilt to pick up new iguanaIR. + +* Thu Aug 21 2014 Aölec Leamas - 0.9.1a-2 +- Rebuilt for new iguanaIR ABI version. + +* Tue Aug 19 2014 Alec Leamas - 0.9.1-1 +- Updating to latest release. +- Removing tons of patches now upstreamed. +- Using built manpages as-is (no need to remove not-built tools) + +* Mon Aug 18 2014 Alec Leamas - 0.9.0-28 +- Rebuilt due to iguanaIR so-bump. + +* Sun Aug 17 2014 Fedora Release Engineering - 0.9.0-27 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild + +* Sat Jun 07 2014 Fedora Release Engineering - 0.9.0-26 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild + +* Thu May 29 2014 Wolfgang Ulbrich - 0.9.0-25 +- enable BR iguanaIR again +- add missing isa tags + +* Thu May 29 2014 Wolfgang Ulbrich - 0.9.0-24 +- rebuild for libftdi soname bump +- disable BR iguanaIR temporary, it pulls in lirc-0.9.0-23 and build fails + +* Wed Jan 08 2014 Alec Leamas - 0.9.0-23 +- Remove f16 systemd upgrade snippets. + +* Sun Nov 17 2013 leamas.alec@gmail.com - 0.9.0-22 +- Fix -Werror=format-security build error (#1037178). +- Not yet built. + +* Sun Nov 17 2013 leamas.alec@gmail.com - 0.9.0-21 +- lircd.service: add sh wrapper to handle empty argumentes. + +* Sun Nov 17 2013 leamas.alec@gmail.com - 0.9.0-20 +- Fixing typo in -20. +- Ignore errors in PreExec/PostExec. + +* Sat Nov 16 2013 Alec Leamas - 0.9.0-19 +- Fix missing {} in lircd.service (bz 1025030, comment 24) + +* Tue Nov 12 2013 Alec Leamas - 0.9.0-18 +- Remove old nowadays stale links to lirc.service. +- Fix broken reference to lirc.service in lircmd.service +- Update README + +* Thu Oct 17 2013 Alec Leamas - 0.9.0-17 +- Add a udev "Only use lirc" subpackage. +- Revise enabling of lirc protocol. +- Documenting upstream merge request. +- Resurrect contrib/lircs, use systemctl. +- Force creation of /run/lirc after installation. +- Use /lib/tmpfiles.d, not /etc/tmpfiles.d with _tmpfilesdir macro. + +* Tue Oct 15 2013 Wolfgang Ulbrich - 0.9.0-16 +- fix build for f18 +- remove BR perl, already called in build system +- fix bogus in changelog date + +* Thu Oct 10 2013 Alec Leamas - 0.9.0-15 +- Actually use sysconfig files (881976). +- Modify lirc.service to not fork. +- Add support for iguanaIR driver (#954146). +- Add hardened build flag (955144). +- Use actual systemd macros (850191). +- Clean up some nowadays not used directives. +- Run autoreconf by default (926082). +- Cleanup some obsoleted autotools usage, two new patches. +- Deactivate other decoders on start (923978). +- Filter away docdir dependencies. +- Remove obsolete F8 upgrade Obsoletes: (sic!). +- Fix inconsistent/duplicate /usr/share/lirc in %%files. +- Add %%doc (notably COPYING) to remotes subpackage. +- Claim /etc/lirc. +- Update to latest upstream (10 patches). +- Use /var and /etc instead of %%{_sysconfdir} and %%{localstatedir}. +- Removed obsolete code to move config files to /etc/lirc in %%post. +- Renamed main systemd service: lirc.service -> lircd.service. +- Added socket activation support. +- Don't claim temporary files in /run/lirc, they are just transient. +- Initiate lircd.conf, lircmd.conf from external template. +- Bumping release, 14 is published. + +* Thu Feb 14 2013 Fedora Release Engineering - 0.9.0-11 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_19_Mass_Rebuild + +* Thu Jul 19 2012 Fedora Release Engineering - 0.9.0-10 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild + +* Thu Apr 19 2012 Jon Ciesla - 0.9.0-9 +- Migrate to systemd, BZ 789760. + +* Fri Jan 13 2012 Fedora Release Engineering - 0.9.0-8 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_17_Mass_Rebuild + +* Tue Jun 21 2011 Jarod Wilson 0.9.0-7 +- Only alter protocols for the device lirc is configured to talk to + and don't try to poke protocols on non-rc-core lirc devices + +* Mon Jun 06 2011 Jarod Wilson 0.9.0-6 +- And now take out the libusb1-devel bit, its actually the removal of + libusb-config from libusb-devel that broke things, so we need some + fixage upstream, backported here. + +* Tue May 31 2011 Jarod Wilson 0.9.0-5 +- Add explict BR: libusb1-devel, as some userspace drivers require it, and + its apparently not getting into the build root any longer + +* Sat May 28 2011 Jarod Wilson 0.9.0-4 +- Apparently, the title of bz656613 wasn't quite correct, some stuff + in /var/run does need to be installed, not ghosted... + +* Tue May 03 2011 Jarod Wilson 0.9.0-3 +- Properly support tmpfs /var/run/lirc in new systemd world (#656613) +- Don't ghost config files, lay 'em down with pointers in them + +* Tue May 03 2011 Jarod Wilson 0.9.0-2 +- Only disable in-kernel IR decoders if we're not using devinput mode, + as they're actually required for devinput mode to work right. + +* Sat Mar 26 2011 Jarod Wilson 0.9.0-1 +- Update to lirc 0.9.0 release +- Disable in-kernel IR decoding when starting up lircd, reenable on shutdown + +* Tue Feb 08 2011 Fedora Release Engineering - 0.9.0-0.2.pre1 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild + +* Tue Oct 26 2010 Jarod Wilson 0.9.0-0.1.pre1 +- Update to lirc 0.9.0-pre1 snapshot +- Add conditional flag for building with iguanaIR support (there's an + iguanaIR package awaiting review right now) + +* Mon Sep 06 2010 Jarod Wilson 0.8.7-1 +- Update to lirc 0.8.7 release + +* Sat Sep 04 2010 Jarod Wilson 0.8.7-0.1.pre3 +- Update to lirc 0.8.7-pre3 snapshot + +* Mon Aug 02 2010 Jarod Wilson 0.8.7-0.1.pre2 +- Fix up sub-package license file inclusion per new fedora + licensing guidelines +- Update to lirc 0.8.7pre2 snapshot + +* Fri May 21 2010 Bastien Nocera 0.8.6-7 +- Fix Firefly remote definition keycodes + +* Sun Apr 11 2010 Jarod Wilson 0.8.6-6 +- Revert to compat-ioctls per upstream discussion (#581326) + +* Wed Mar 17 2010 Jarod Wilson 0.8.6-5 +- Update devinput lircd.conf with additional keys from input.h + +* Mon Feb 15 2010 Jarod Wilson 0.8.6-4 +- Un-bungle newly introduced segfault in prior build + +* Mon Feb 15 2010 Jarod Wilson 0.8.6-3 +- Fix up ioctl portability between 32-bit and 64-bit + +* Thu Nov 12 2009 Jarod Wilson 0.8.6-2 +- Add devinput mouse event passthru to uinput support from lirc cvs + +* Sun Sep 13 2009 Jarod Wilson 0.8.6-1 +- Update to lirc 0.8.6 release + +* Sat Aug 29 2009 Jarod Wilson 0.8.6-0.6.pre2 +- Rediff patches so they actually apply still + +* Sat Aug 29 2009 Jarod Wilson 0.8.6-0.5.pre2 +- Update to lirc 0.8.6pre2 + +* Sat Jul 25 2009 Fedora Release Engineering - 0.8.6-0.4.pre1 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_12_Mass_Rebuild + +* Tue Jul 21 2009 Jarod Wilson 0.8.6-0.3.pre1 +- Set up tools to use /dev/lirc0 instead of /dev/lirc by default +- Set a default font for xmode2 most people actually have (#467339) + +* Wed Jun 24 2009 Jarod Wilson 0.8.6-0.2.pre1 +- Fix things up so the relocated socket actually works out of the box + +* Tue Jun 23 2009 Jarod Wilson 0.8.6-0.1.pre1 +- Update to lirc 0.8.6pre1 +- Adds Linux input layer support to lircmd +- Adds XMP protocol support +- Moves lircd socket from /dev/ to /var/run/lirc/ and pid file from + /var/run/ to /var/run/lirc/ + +* Thu May 28 2009 Jarod Wilson 0.8.5-2 +- Update to lirc 0.8.5 +- Add irman support, now that libirman is in Fedora (#474992) + +* Sun May 17 2009 Jarod Wilson 0.8.5-1.pre3 +- Update to lirc 0.8.5pre3 cvs snapshot + +* Fri Apr 10 2009 Jarod Wilson 0.8.5-1.pre2 +- Update to lirc 0.8.5pre2 cvs snapshot + +* Thu Feb 26 2009 Jarod Wilson 0.8.5-1.pre1 +- Update to lirc 0.8.5pre1 cvs snapshot +- Adds support for usb-connected ftdi-based homebrew transceivers +- Rebuilt for https://fedoraproject.org/wiki/Fedora_11_Mass_Rebuild + +* Tue Dec 09 2008 Jarod Wilson 0.8.4a-3 +- BR: automake and libtool to get cvs additions building + +* Mon Dec 08 2008 Jarod Wilson 0.8.4a-2 +- Nuke bogus and harmful %%postun --try-restart (#474960) +- Assorted updates from lirc cvs: + * Add uinput injection support + * Add support for binding lircd listener to a specific ip + +* Sun Oct 26 2008 Jarod Wilson 0.8.4a-1 +- Update to lirc 0.8.4a release (fixes mode2 irrecord failures) +- Really fix the mceusb remote config file this time + +* Thu Oct 16 2008 Jarod Wilson 0.8.4-2 +- Make all remote configs have unique names (#467303) +- Fix up some key names that got screwed up by standardization script + +* Sun Oct 12 2008 Jarod Wilson 0.8.4-1 +- Update to 0.8.4 release + +* Fri Oct 10 2008 Jarod Wilson 0.8.4-0.5.pre2 +- Re-enable portaudio driver by default, require v19 or later + +* Mon Oct 06 2008 Jarod Wilson 0.8.4-0.4.pre2 +- Update to 0.8.4pre2 + +* Mon Oct 06 2008 Bastien Nocera 0.8.4-0.3.pre1 +- Fix more keycodes for the streamzap remote + +* Wed Oct 01 2008 Bastien Nocera 0.8.4-0.2.pre1 +- Don't create a backup for the keycodes patch, or all the original files + will also get installed, and get used in gnome-lirc-properties + +* Wed Sep 24 2008 Jarod Wilson 0.8.4-0.1.pre1 +- Update to 0.8.4pre1 +- Drop upstream patches +- Adds support for the CommandIR II userspace driver + +* Tue Sep 16 2008 Jarod Wilson 0.8.3-7 +- Fix multilib upgrade path from F8 (Nicolas Chauvet, #462435) + +* Thu Aug 14 2008 Bastien Nocera 0.8.3-6 +- Make lircd not exit when there's no device available, so that the + daemon is running as expected when the hardware is plugged back in + (#440231) + +* Thu Aug 14 2008 Bastien Nocera 0.8.3-5 +- Add huge patch to fix the majority of remotes to have sensible keycodes, + so they work out-of-the-box (#457273) + +* Mon Jun 23 2008 Jarod Wilson 0.8.3-4 +- Drop resume switch patch, no longer required +- Add support for config option style used by gnome-lirc-properties (#442341) + +* Mon Jun 02 2008 Jarod Wilson 0.8.3-3 +- Add additional required patches for gnome-lirc-properties (#442248) +- Put remote definitions in their own sub-package (#442328) + +* Mon May 12 2008 Jarod Wilson 0.8.3-2 +- Include upstream patch for lircd.conf remote include directives (#442248) +- Include upstream patch to validate transmit buffers + +* Sun May 04 2008 Jarod Wilson 0.8.3-1 +- Update to 0.8.3 release + +* Sun Apr 27 2008 Jarod Wilson 0.8.3-0.4.pre3 +- Update to 0.8.3pre3 + +* Sun Apr 06 2008 Jarod Wilson 0.8.3-0.3.pre2 +- Update to 0.8.3pre2 + +* Tue Feb 12 2008 Ville Skyttä 0.8.3-0.2.pre1 +- Split libraries into -libs subpackage. +- Refresh autotools re-run avoidance hack. + +* Thu Oct 18 2007 Jarod Wilson 0.8.3-0.1.pre1 +- 0.8.3pre1 +- adds Mac IR support, resolves bz #284291 + +* Wed Aug 15 2007 Ville Skyttä 0.8.2-2 +- License: GPLv2+ + +* Sun Jun 10 2007 Ville Skyttä 0.8.2-1 +- 0.8.2. + +* Wed Jun 6 2007 Ville Skyttä 0.8.2-0.1.pre3 +- 0.8.2pre3. +- Fix up linefeeds and char encodings of more docs. + +* Fri May 18 2007 Ville Skyttä 0.8.2-0.1.pre2 +- 0.8.2pre2. + +* Sun Jan 7 2007 Ville Skyttä 0.8.1-1 +- 0.8.1. + +* Sat Dec 30 2006 Ville Skyttä 0.8.1-0.2.pre5 +- 0.8.1pre5. + +* Tue Dec 12 2006 Ville Skyttä 0.8.1-0.2.pre4 +- 0.8.1pre4. + +* Thu Nov 30 2006 Ville Skyttä 0.8.1-0.2.pre3 +- 0.8.1pre3. + +* Sun Oct 15 2006 Ville Skyttä 0.8.1-0.2.pre2 +- 0.8.1pre2, optflags patch no longer needed. + +* Mon Aug 28 2006 Ville Skyttä 0.8.1-0.2.pre1 +- Rebuild. + +* Sat Jul 1 2006 Ville Skyttä 0.8.1-0.1.pre1 +- 0.8.1pre1. +- Add rpmbuild options for enabling/disabling ALSA, portaudio and/or X + support, ALSA and X enabled by default, portaudio not. +- Split most of the documentation to -doc subpackage. +- Install irman2lirc as non-doc. + +* Tue Feb 14 2006 Ville Skyttä 0.8.0-3 +- Avoid standard rpaths on lib64 archs. + +* Sat Jan 21 2006 Ville Skyttä 0.8.0-2 +- 0.8.0. + +* Sat Jan 14 2006 Ville Skyttä 0.8.0-0.2.pre4 +- 0.8.0pre4. + +* Sun Jan 1 2006 Ville Skyttä 0.8.0-0.2.pre3 +- 0.8.0pre3. + +* Tue Dec 27 2005 Ville Skyttä +- Split kernel modules into separate package. +- Disable debugging features. + +* Wed Dec 14 2005 Ville Skyttä 0.8.0-0.2.pre2 +- 0.8.0pre2, kernel >= 2.6.15 USB patch applied upstream. +- lirc_clientd renamed to lircrcd. + +* Tue Nov 29 2005 Ville Skyttä 0.8.0-0.2.pre1 +- Pull security fix for the new lirc_clientd from upstream CVS, and + while at it, some other useful post-0.8.0pre1 changes. +- Kernel >= 2.6.15 patchwork based on initial patch from Andy Burns (#172404). +- Disable lirc_cmdir kernel module (unknown symbols). +- Adapt to modular X.Org packaging. + +* Wed Nov 9 2005 Ville Skyttä 0.8.0-0.1.pre1 +- 0.8.0pre1, usage message patch applied upstream. + +* Sun Oct 30 2005 Ville Skyttä 0.7.3-0.1.pre1 +- 0.7.3pre1, "no device" crash fix applied upstream. +- Fix lircd and lircmd usage messages. + +* Wed Aug 31 2005 Ville Skyttä 0.7.2-3 +- Make the init script startup earlier and shutdown later by default. + +* Sun Aug 14 2005 Ville Skyttä 0.7.2-2 +- 0.7.2, patch to fix crash at startup when no device is specified. +- Enable audio input driver support (portaudio). +- Improve package description. +- Don't ship static libraries. +- Drop pre Fedora Extras backwards compatibility hacks. +- Make svgalib support (smode2) build conditional, disabled by default. +- Simplify module package build (still work in progress, disabled by default). +- Other minor specfile cleanups and maintainability improvements. + +* Thu May 26 2005 Ville Skyttä 0.7.1-3 +- Adjust kernel module build for FC4 and add hauppauge, igorplugusb, imon, + sasem, and streamzap to the list of modules to build. This stuff is still + disabled by default, rebuild with "--with modules --target $arch" to enable. + +* Sun Apr 17 2005 Ville Skyttä 0.7.1-2 +- 0.7.1. + +* Thu Apr 7 2005 Michael Schwendt +- rebuilt + +* Sun Dec 5 2004 Ville Skyttä 0.7.0-1 +- Update to 0.7.0; major rework of the package: +- Change default driver to "any". +- Add -devel subpackage. +- Improve init script, add /etc/sysconfig/lirc for options. +- Rename init script to "lirc" to follow upstream; the script is not only + for lircd, but lircmd as well. +- Log to syslog instead of separate log file. +- %%ghost'ify /dev/lirc*. +- Build kernel modules when rebuilt with "--with kmod". This stuff was mostly + borrowed from Axel Thimm's packages, and is not really ready for FC3+ yet. +- Enable debugging features. +- Specfile cleanups. + +* Mon Aug 30 2004 Matthias Saou 0.6.6-3 +- Added missing /sbin/ldconfig calls. + +* Wed May 19 2004 Matthias Saou 0.6.6-2 +- Rebuild for Fedora Core 2... this spec file still _really_ needs reworking! + +* Fri Nov 7 2003 Matthias Saou 0.6.6-2 +- Rebuild for Fedora Core 1... this spec file _really_ needs reworking! + +* Mon Mar 31 2003 Matthias Saou +- Rebuilt for Red Hat Linux 9... this spec file needs some reworking! + +* Mon Oct 7 2002 Matthias Saou +- Update to 0.6.6 final. + +* Mon Sep 16 2002 Matthias Saou +- Updated to latest pre-version. +- Kernel modules still need to be compiled separately and with a custom + kernel :-( + +* Thu May 2 2002 Matthias Saou +- Update to 0.6.5. +- Rebuilt against Red Hat Linux 7.3. +- Added the %%{?_smp_mflags} expansion. + +* Thu Oct 4 2001 Matthias Saou +- Initial RPM release. +