From 812e09840e3e264f87001f1557342b5265a3c403 Mon Sep 17 00:00:00 2001 From: Z572 Date: Wed, 19 Apr 2023 20:30:09 +0800 Subject: [PATCH 1/2] Add "openeuler" support to os_detect.py --- src/rospkg/os_detect.py | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) diff --git a/src/rospkg/os_detect.py b/src/rospkg/os_detect.py index eae76ad..4cfa65a 100644 --- a/src/rospkg/os_detect.py +++ b/src/rospkg/os_detect.py @@ -265,6 +265,25 @@ def get_codename(self): return "" raise OsNotDetected('called in incorrect OS') +class OpenEuler(OsDetector): + """ + Detect OpenEuler OS. + """ + def __init__(self, release_file="/etc/openEuler-release"): + self._release_info = read_os_release() + self._release_file = release_file + def is_os(self): + return os.path.exists(self._release_file) + def get_version(self): + if self.is_os(): + return self._release_info["VERSION_ID"] + raise OsNotDetected("called in incorrect OS") + def get_codename(self): + if self.is_os(): + return "" + raise OsNotDetected('called in incorrect OS') + + class OpenSuse(OsDetector): """ @@ -655,6 +674,7 @@ def get_codename(self): OS_MANJARO = 'manjaro' OS_CENTOS = 'centos' OS_EULEROS = 'euleros' +OS_OPENEULER = 'openeuler' OS_CYGWIN = 'cygwin' OS_DEBIAN = 'debian' OS_ELEMENTARY = 'elementary' @@ -695,6 +715,7 @@ def get_codename(self): OsDetect.register_default(OS_MANJARO, Manjaro()) OsDetect.register_default(OS_CENTOS, FdoDetect("centos")) OsDetect.register_default(OS_EULEROS, FdoDetect("euleros")) +OsDetect.register_default(OS_OPENEULER, OpenEuler()) OsDetect.register_default(OS_CYGWIN, Cygwin()) OsDetect.register_default(OS_DEBIAN, Debian()) OsDetect.register_default(OS_ELEMENTARY, LsbDetect("elementary")) From 2a4740b8ef681483c2f362f2c89ac202e3d3f254 Mon Sep 17 00:00:00 2001 From: Zheng Junjie Date: Mon, 19 Feb 2024 17:25:29 +0800 Subject: [PATCH 2/2] fixup! Add "openeuler" support to os_detect.py --- src/rospkg/os_detect.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/rospkg/os_detect.py b/src/rospkg/os_detect.py index 4cfa65a..de6edcd 100644 --- a/src/rospkg/os_detect.py +++ b/src/rospkg/os_detect.py @@ -275,7 +275,7 @@ def __init__(self, release_file="/etc/openEuler-release"): def is_os(self): return os.path.exists(self._release_file) def get_version(self): - if self.is_os(): + if (self.is_os() and "VERSION_ID" in self._release_info): return self._release_info["VERSION_ID"] raise OsNotDetected("called in incorrect OS") def get_codename(self):