#1
Hi all, I'm Priya. I run a small Proxmox setup at home and do DevOps work for a living. I'm stuck on a workstation question and want to hear how others decided.
The two options
- Keep a dedicated desktop on 24/7. It sits next to the cluster as a dev box. Local disks, a GPU if I want one, and everything is just there.
- Run a dev VM on the cluster and use a low-power laptop as a thin client. The laptop only runs a terminal, an editor and a browser.
What pulls me toward the VM
- Power - I haven't measured the desktop's idle draw properly yet. I plan to put a smart plug on it for a week before deciding, because I don't trust my guess.
- Reproducibility - a VM can come from a cloud-init template, be configured by Ansible, and be rebuilt from Git. A desktop slowly turns into a pet.
- Snapshots and backups - rolling back before a risky toolchain change is nice. So is having the VM covered by the same backup jobs as everything else.
- Access from anywhere - with Tailscale or WireGuard, the same environment is reachable from the couch or from another city.
What pulls me toward the desktop
- The chicken-and-egg problem - if the cluster is down, I can't use my dev environment to fix the cluster. A separate machine is a useful escape hatch.
- GUI and GPU work - terminal and editor workflows over SSH are great. Full desktop sessions over RDP, SPICE or something like Sunshine/Moonlight are where I'm less sure how it feels day to day. GPU passthrough on Proxmox also adds complexity I'd have to maintain.
- Latency - remote editing is fine on a LAN. I'm unsure how it holds up over VPN on a bad connection.
- Blast radius - a noisy build or runaway container in a dev VM shares CPU and RAM with services my family relies on, unless I limit it.
What I'm leaning toward
A hybrid, dev VM for most work, using VS Code Remote-SSH or similar from the laptop, plus one small, cheap local machine that is not a cluster member and can reach the management network. I'd only keep the full desktop if I have a real need for local GPU or GUI work.
A minimal SSH config for the VM approach would look like this:
Host devvm
HostName devvm.lab.example
User priya
ForwardAgent no
ServerAliveInterval 30
ServerAliveCountMax 4
I'd keep the private key on the laptop, not the VM, and let the VM pull from my Git server.
Questions for you
- If you've moved from a desktop to a remote dev VM, what did you regret or miss, and did you keep a fallback machine?
- For anyone doing GUI work remotely, which protocol has actually held up for you on a home network and over VPN?