Hacker News new | ask | show | jobs
by christian008 1888 days ago
I started doing all my development inside a virtual machine. UTM on the M1 chip running Ubuntu ARM works very well and has minimal impact on battery life. The VS Code remote extension makes development inside the VM feel like its local.
1 comments

What I dislike in the VM approach is that the development machine and the host are somewhat disconnected and it's non-trivial for them to share files. Also, I'm concerned I'll write software with too many linuxisms that would render it incompatible with other Unixes (which are still used in far too many places). With my tooling, I even try hard to make it work on Windows, just in case.
That's why I use Parallels Desktop, even though I would prefer to use open source software. They provide great file system integration on common OS plus a few other things like GPU graphics (I tried with windows 10 arm).
If you share $HOME with your VM (which is apparently the default in Parallels), you're not gaining much in terms of security. https://zerodayengineering.com/blog/dont-share-your-home.htm...
So you run a Linux box using Parallels and use VS Code or something on the Mac side to edit files? I'm interested in adopting a similar workflow, so your guidance would be appreciated.
> and it's non-trivial for them to share files.

My approach is to have a separate dropbox and GitHub account for sharing, that both machines have access to.

You may want to look into Vagrant. It automates the setup of the VMs (and the sharing of files between them) so you can quickly test between say Ubuntu and FreeBSD.