diff --git a/main.py b/main.py index 24d0c4f..58453a2 100644 --- a/main.py +++ b/main.py @@ -187,7 +187,7 @@ async def bootstrap_node(ip, user, password): await manager.broadcast(f"🔍 Inventur auf {ip} wird durchgeführt...") # Befehlskette: Arch, OS-Name, Docker-Check - inspect_cmd = "uname -m && (lsb_release -ds || cat /etc/os-release | grep PRETTY_NAME | cut -d'=' -f2) && (command -v docker >/dev/null 2>&1 && echo '1' || echo '0')" + inspect_cmd = "uname -m && (sw_vers -productName 2>/dev/null || grep PRETTY_NAME /etc/os-release 2>/dev/null | cut -d'=' -f2 | tr -d '\"' || uname -s) && (command -v docker >/dev/null 2>&1 && echo '1' || echo '0')" ssh_cmd = f"ssh -o StrictHostKeyChecking=no {user}@{ip} \"{inspect_cmd}\"" try: @@ -267,7 +267,7 @@ async def refresh_status(node_id: int): node = conn.execute('SELECT * FROM nodes WHERE id = ?', (node_id,)).fetchone() if not node: return {"status": "Offline"} - inspect_cmd = "uname -m && (lsb_release -ds || cat /etc/os-release | grep PRETTY_NAME | cut -d'=' -f2) && (command -v docker >/dev/null 2>&1 && echo '1' || echo '0')" + inspect_cmd = "uname -m && (sw_vers -productName 2>/dev/null || grep PRETTY_NAME /etc/os-release 2>/dev/null | cut -d'=' -f2 | tr -d '\"' || uname -s) && (command -v docker >/dev/null 2>&1 && echo '1' || echo '0')" ssh_cmd = f"ssh -o StrictHostKeyChecking=no -o ConnectTimeout=3 {node['user']}@{node['ip']} \"{inspect_cmd}\"" try: