python3-slip-dbus: Fix build with wheel packaging

Migrate to use setuptools instead of distutils
merge slip.dbus into slip module since we use
slip.dbus, it works fine for OE

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Trevor Gamblin <trevor.gamblin@windriver.com>
This commit is contained in:
Khem Raj 2022-03-02 22:57:34 -08:00
parent daba6521fa
commit 238814e5a1
3 changed files with 121 additions and 4 deletions

View File

@ -0,0 +1,38 @@
From 4309ce76351b1685d08b3ba55d4f62b3e53ef76b Mon Sep 17 00:00:00 2001
From: Khem Raj <raj.khem@gmail.com>
Date: Tue, 1 Mar 2022 19:06:35 -0800
Subject: [PATCH] setup.py: Use setuptools instead of distutils
Upstream-Status: Pending
Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
setup.py.in | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
--- a/setup.py.in
+++ b/setup.py.in
@@ -2,20 +2,17 @@
# -*- coding: utf-8 -*-
import sys
-from distutils.core import setup
+from setuptools import setup, find_packages
setup(name="slip", version="@VERSION@",
py_modules=["slip.__init__", "slip.util.__init__",
"slip.util.hookable", "slip.util.files",
- "slip._wrappers.__init__", "slip._wrappers._glib"],
- requires=["selinux"])
-
-setup(name="slip.dbus", version="@VERSION@",
- py_modules=["slip.dbus.__init__", "slip.dbus.bus",
+ "slip._wrappers.__init__", "slip._wrappers._glib",
+ "slip.dbus.__init__", "slip.dbus.bus",
"slip.dbus.constants", "slip.dbus.introspection",
"slip.dbus.mainloop", "slip.dbus.polkit", "slip.dbus.proxies",
"slip.dbus.service"],
- requires=["dbus", "decorator", "StringIO", "xml.etree.ElementTree"])
+ requires=["dbus", "decorator", "selinux", "StringIO", "xml.etree.ElementTree"])
if sys.version_info.major == 2:
setup(name="slip.gtk", version="@VERSION@",

View File

@ -0,0 +1,76 @@
From 9b939c0b534c1b7958fa0a3c7aedf30bca910431 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Miro=20Hron=C4=8Dok?= <miro@hroncok.cz>
Date: Mon, 7 Jun 2021 23:23:47 +0200
Subject: [PATCH] Python 3.10+ fix: Use collections.abc.Callable instead of
collections.Callable
The deprecated aliases to Collections Abstract Base Classes were removed from
the collections module in Python 3.10.
https://docs.python.org/3.10/whatsnew/changelog.html#python-3-10-0-alpha-5
https://bugs.python.org/issue37324
---
slip/dbus/polkit.py | 6 +++---
slip/util/hookable.py | 6 +++---
2 files changed, 6 insertions(+), 6 deletions(-)
diff --git a/slip/dbus/polkit.py b/slip/dbus/polkit.py
index 128e8ce..320676d 100644
--- a/slip/dbus/polkit.py
+++ b/slip/dbus/polkit.py
@@ -26,7 +26,7 @@
from __future__ import absolute_import
-import collections
+import collections.abc
import dbus
from decorator import decorator
from functools import reduce
@@ -103,14 +103,14 @@ class MyProxy(object):
def some_method(self, ...):
..."""
- assert(func is None or isinstance(func, collections.Callable))
+ assert(func is None or isinstance(func, collections.abc.Callable))
assert(
authfail_result in (None, AUTHFAIL_DONTCATCH) or
authfail_exception is None)
assert(
authfail_callback is None or
- isinstance(authfail_callback, collections.Callable))
+ isinstance(authfail_callback, collections.abc.Callable))
assert(
authfail_exception is None or
issubclass(authfail_exception, Exception))
diff --git a/slip/util/hookable.py b/slip/util/hookable.py
index 89c7392..0cd9967 100644
--- a/slip/util/hookable.py
+++ b/slip/util/hookable.py
@@ -23,7 +23,7 @@
"""This module contains variants of certain base types which call registered
hooks on changes."""
-import collections
+import collections.abc
from six import with_metaclass
__all__ = ["Hookable", "HookableSet"]
@@ -67,7 +67,7 @@ class _HookEntry(object):
def __init__(self, hook, args, kwargs, hookable=None):
- assert(isinstance(hook, collections.Callable))
+ assert(isinstance(hook, collections.abc.Callable))
assert(isinstance(hookable, Hookable))
for n, x in enumerate(args):
@@ -174,7 +174,7 @@ def add_hook_hookable(self, hook, *args, **kwargs):
self.__add_hook(hook, self, *args, **kwargs)
def __add_hook(self, hook, _hookable, *args, **kwargs):
- assert isinstance(hook, collections.Callable)
+ assert isinstance(hook, collections.abc.Callable)
assert isinstance(_hookable, Hookable)
hookentry = _HookEntry(hook, args, kwargs, hookable=_hookable)
self.__hooks__.add(hookentry)

View File

@ -14,12 +14,14 @@ LICENSE = "GPLv2+"
LIC_FILES_CHKSUM = "file://COPYING;md5=5574c6965ae5f583e55880e397fbb018"
SRCNAME = "python-slip"
SRC_URI = "https://github.com/nphilipp/${SRCNAME}/releases/download/${SRCNAME}-${PV}/${SRCNAME}-${PV}.tar.bz2"
S = "${WORKDIR}/${SRCNAME}-${PV}"
SRC_URI[md5sum] = "28ae5f93853466c44ec96706ba2a1eb4"
SRC_URI = "https://github.com/nphilipp/${SRCNAME}/releases/download/${SRCNAME}-${PV}/${SRCNAME}-${PV}.tar.bz2 \
file://9b939c0b534c1b7958fa0a3c7aedf30bca910431.patch \
file://0001-setup.py-Use-setuptools-instead-of-distutils.patch \
"
SRC_URI[sha256sum] = "c726c086f0dd93a0ac7a0176f383a12af91b6657b78a301e3f5b25d9f8d4d10b"
S = "${WORKDIR}/${SRCNAME}-${PV}"
do_compile:prepend() {
sed -e 's/@VERSION@/${PV}/g' ${S}/setup.py.in > ${S}/setup.py
}
@ -32,3 +34,4 @@ RDEPENDS:${PN} += "\
CLEANBROKEN = "1"
inherit setuptools3
PIP_INSTALL_PACKAGE = "slip"