Date: Tuesday, February 15, 2022 @ 07:41:11 Author: arojas Revision: 437344
Fix build with python-yaml 6 (FS#73766) Added: lirc/trunk/python-yaml-6.patch Modified: lirc/trunk/PKGBUILD ---------------------+ PKGBUILD | 9 +++-- python-yaml-6.patch | 78 ++++++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 84 insertions(+), 3 deletions(-) Modified: PKGBUILD =================================================================== --- PKGBUILD 2022-02-15 06:52:10 UTC (rev 437343) +++ PKGBUILD 2022-02-15 07:41:11 UTC (rev 437344) @@ -4,7 +4,7 @@ pkgname=lirc _pkgver=0.10.1 [[ $_pkgver =~ [a-z]$ ]] && pkgver="${_pkgver:0:-1}.${_pkgver: -1}" || pkgver="$_pkgver" -pkgrel=11 +pkgrel=12 epoch=1 pkgdesc="Linux Infrared Remote Control utilities" arch=('x86_64') @@ -23,16 +23,19 @@ source=("https://prdownloads.sourceforge.net/${pkgname}/${pkgname}-${_pkgver}.tar.bz2" lirc-0.10-build-fix.patch lirc.logrotate - lirc.tmpfiles) + lirc.tmpfiles + python-yaml-6.patch) sha1sums=('9d6f6d18ac566a96ef4ca1d6909a4e8bc517d48a' '952ce902c94d822b0113d8e74bc6fda6a551ad7e' '4342b004eb53d51fcbb9af2cf136bb4990874608' - '5cd3f206e6e60632d9bea2ce9d22dbe5283eb129') + '5cd3f206e6e60632d9bea2ce9d22dbe5283eb129' + '3d6d40bba363051ae36c09709dc5a41166cf2d51') prepare() { cd "${srcdir}/lirc-${_pkgver}" patch -p1 -i ../lirc-0.10-build-fix.patch + patch -p1 -i ../python-yaml-6.patch # Fix build with python-yaml 6 autoreconf -fi automake -ac Added: python-yaml-6.patch =================================================================== --- python-yaml-6.patch (rev 0) +++ python-yaml-6.patch 2022-02-15 07:41:11 UTC (rev 437344) @@ -0,0 +1,78 @@ +From bb6a390633f32942ac10f9b7b7fc01dfbd395a48 Mon Sep 17 00:00:00 2001 +From: Alec Leamas <leamas.a...@nowhere.net> +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 +