commit
						beee4a3bad
					
				@ -1,38 +1,41 @@
 | 
				
			||||
import os
 | 
				
			||||
import platform
 | 
				
			||||
 | 
				
			||||
 | 
				
			||||
def get_system_info():
 | 
				
			||||
    system = platform.system()
 | 
				
			||||
    
 | 
				
			||||
    if system == "Linux":
 | 
				
			||||
        # Attempt to identify specific Linux distribution
 | 
				
			||||
        distro = "linux"  # Default to generic 'linux'
 | 
				
			||||
        try:
 | 
				
			||||
            with open("/etc/os-release") as f:
 | 
				
			||||
                os_release_info = f.read().lower()
 | 
				
			||||
            if "ubuntu" in os_release_info:
 | 
				
			||||
                return "raspberry-pi-ubuntu"
 | 
				
			||||
            elif "raspbian" in os_release_info:
 | 
				
			||||
                return "raspberry-pi-os"
 | 
				
			||||
                if "raspbian" in os_release_info:
 | 
				
			||||
                    distro = "raspberry-pi-os"
 | 
				
			||||
                elif "ubuntu" in os_release_info:
 | 
				
			||||
                    distro = "ubuntu"
 | 
				
			||||
        except FileNotFoundError:
 | 
				
			||||
            pass
 | 
				
			||||
        
 | 
				
			||||
 | 
				
			||||
        # Check for Raspberry Pi hardware
 | 
				
			||||
        is_raspberry_pi = False
 | 
				
			||||
        try:
 | 
				
			||||
            with open("/proc/device-tree/model") as f:
 | 
				
			||||
                model_info = f.read()
 | 
				
			||||
            if "Raspberry Pi" in model_info:
 | 
				
			||||
                if distro == "ubuntu":
 | 
				
			||||
                    return "raspberry-pi-ubuntu"
 | 
				
			||||
                return "raspberry-pi"
 | 
				
			||||
                if "Raspberry Pi" in model_info:
 | 
				
			||||
                    is_raspberry_pi = True
 | 
				
			||||
        except FileNotFoundError:
 | 
				
			||||
            pass
 | 
				
			||||
        
 | 
				
			||||
        return distro
 | 
				
			||||
 | 
				
			||||
        if is_raspberry_pi:
 | 
				
			||||
            if distro == "ubuntu":
 | 
				
			||||
                return "raspberry-pi-ubuntu"
 | 
				
			||||
            else:
 | 
				
			||||
                return "raspberry-pi"
 | 
				
			||||
        else:
 | 
				
			||||
            return distro
 | 
				
			||||
    elif system == "Darwin":
 | 
				
			||||
        return "darwin"
 | 
				
			||||
    elif system == "Windows":
 | 
				
			||||
        return "windows"
 | 
				
			||||
    else:
 | 
				
			||||
        return "unknown"
 | 
				
			||||
        return "unknown"
 | 
				
			||||
					Loading…
					
					
				
		Reference in new issue