

For the storage volume:
Bcache to make an ssd cache, then for the volume itself, BTRFS raid 1 setup. Setup any necessary SMB and NFS shares. Setup Nextcloud via docker. Probably rsync for any local distro mirrors. I’d also toss on dockerized gitlab. Add any additional services via docker.

I just run whatever linux I want in a hypervisor and make it my daily driver for everything other that teams calls… (I can’t seem to make Linux do any echo cancellation). The mac just can’t do the basics I need on its own, it’s workflow nightmare. Short of pains of being on an ARM64 CPU, the VM does pretty well. Started off using UTM, then switched to Parallels. It’s not always perfect, but it is SO much better that straight up MacOS.