From a2e4e4eca54ed10fe591d3737cd67fae3496c40c Mon Sep 17 00:00:00 2001 From: usmannasir Date: Thu, 24 Apr 2025 14:08:07 +0500 Subject: [PATCH] bug fix: decidedistro check --- plogical/processUtilities.py | 42 ++++++++++++++++++++---------------- 1 file changed, 23 insertions(+), 19 deletions(-) diff --git a/plogical/processUtilities.py b/plogical/processUtilities.py index 52a0c65ea..46cd51473 100755 --- a/plogical/processUtilities.py +++ b/plogical/processUtilities.py @@ -169,27 +169,31 @@ class ProcessUtilities(multi.Thread): distroPath = '/etc/lsb-release' distroPathAlma = '/etc/redhat-release' - if os.path.exists(distroPath): - - ## this is check only - if open(distroPath, 'r').read().find('22.04') > -1: - ProcessUtilities.ubuntu22Check = 1 + # First check if we're on Ubuntu + if os.path.exists('/etc/os-release'): + with open('/etc/os-release', 'r') as f: + content = f.read() + if 'Ubuntu' in content: + if '22.04' in content: + ProcessUtilities.ubuntu22Check = 1 + return ProcessUtilities.ubuntu20 + elif '20.04' in content: + return ProcessUtilities.ubuntu20 + return ProcessUtilities.ubuntu - if open(distroPath, 'r').read().find('20.04') > -1 or open(distroPath, 'r').read().find('22.04'): - return ProcessUtilities.ubuntu20 - return ProcessUtilities.ubuntu - else: - if open('/etc/redhat-release', 'r').read().find('CentOS Linux release 8') > -1 or open('/etc/redhat-release', 'r').read().find('AlmaLinux release 8') > -1 \ - or open('/etc/redhat-release', 'r').read().find('Rocky Linux release 8') > -1 \ - or open('/etc/redhat-release', 'r').read().find('Rocky Linux release 9') > -1 or open('/etc/redhat-release', 'r').read().find('AlmaLinux release 9') > -1 or \ - open('/etc/redhat-release', 'r').read().find('CloudLinux release 9') > -1 or open('/etc/redhat-release', 'r').read().find('CloudLinux release 8') > -1: - ## this is check only - if open(distroPathAlma, 'r').read().find('AlmaLinux release 9') > -1 or open(distroPathAlma, 'r').read().find('Rocky Linux release 9') > -1: - ProcessUtilities.alma9check = 1 - - return ProcessUtilities.cent8 - return ProcessUtilities.centos + # Check for RedHat-based distributions + if os.path.exists(distroPathAlma): + with open(distroPathAlma, 'r') as f: + content = f.read() + if any(x in content for x in ['CentOS Linux release 8', 'AlmaLinux release 8', 'Rocky Linux release 8', + 'Rocky Linux release 9', 'AlmaLinux release 9', 'CloudLinux release 9', + 'CloudLinux release 8']): + if any(x in content for x in ['AlmaLinux release 9', 'Rocky Linux release 9']): + ProcessUtilities.alma9check = 1 + return ProcessUtilities.cent8 + # Default to Ubuntu if no other distribution is detected + return ProcessUtilities.ubuntu @staticmethod def containerCheck():