-
-
- {/* Status */}
-
-
- {isLxcActive ? "LXC Mode" : isVmActive ? "VM Mode" : "Unknown"}
-
-
- {isLxcActive ? "Native Driver" : isVmActive ? "VFIO Passthrough" : ""}
-
- {isEditing && (
-
- Click to toggle
-
+ {/* VM Label */}
+
- Change pending
-
+ style={{ fontFamily: 'system-ui, sans-serif' }}
+ >
+ VM
+
+
+
+ {/* Status Text - Large like GPU name */}
+
+
+ >
+ {isLxcActive
+ ? "Ready for LXC containers"
+ : isVmActive
+ ? "Ready for VM passthrough"
+ : "Mode unknown"}
+
+
+ {isLxcActive
+ ? "Native driver active"
+ : isVmActive
+ ? "VFIO-PCI driver active"
+ : "No driver detected"}
+
+ {hasChanged && (
+
+ Change pending...
+
+ )}
)
diff --git a/AppImage/components/hardware.tsx b/AppImage/components/hardware.tsx
index 43ff1efb..a41258ff 100644
--- a/AppImage/components/hardware.tsx
+++ b/AppImage/components/hardware.tsx
@@ -19,7 +19,7 @@ import {
import { fetchApi } from "@/lib/api-config"
import { ScriptTerminalModal } from "./script-terminal-modal"
import { GpuSwitchModeIndicator } from "./gpu-switch-mode-indicator"
-import { Pencil, Check, X } from "lucide-react"
+import { Settings2, CheckCircle2 } from "lucide-react"
const parseLsblkSize = (sizeStr: string | undefined): number => {
if (!sizeStr) return 0
@@ -884,42 +884,35 @@ export default function Hardware() {
className="mt-3 pt-3 border-t border-border/30"
onClick={(e) => e.stopPropagation()}
>
-
+
Switch Mode
{editingSwitchModeGpu === fullSlot ? (
-
-
-
+ Cancel
+
+
handleSwitchModeSave(fullSlot, e)}
+ >
+
+ Save
+
+ >
) : (
-
handleSwitchModeEdit(fullSlot, e)}
>
-
+
Edit
-
+
)}
@@ -928,7 +921,6 @@ export default function Hardware() {
isEditing={editingSwitchModeGpu === fullSlot}
pendingMode={pendingSwitchModes[gpu.slot] || null}
onToggle={(e) => handleSwitchModeToggle(gpu, e)}
- compact
/>
)}