I was thinking of a simple rsync based solution which would sync back and forth at each boot|wakeup/suspend|shutdown with the home dir copy hosted on the NAS, but have no idea of how good it would handle a possible clash if two machines are working at the same time on the same file. That would be quite rare, but not impossible.
btw: for those interested in building a home NAS, I just purchased this enclosure (0) and can confirm it works perfectly under both Linux and XigmaNAS. I didn't build any ZFS arrays on it yet as I still have to purchase the new disks, however it correctly detects and imports those I tried.
0: https://icybox.de/product/externe_speicherloesungen/IB-3780-C31
One caveat though: the box has a "sync" function (bad name, has nothing to do with syncing disks) to spin down drives and put the controller to sleep to minimize power draw if the host goes to sleep or is turned off, and that works as advertised, but it lacks a very important (in my case) function to self power on in case of power outage when power is restored, therefore I can configure the BIOS/UEFI in the NAS machine to do that, but although the NAS mainboard turns back on, the controller doesn't and all disks will remain off, forcing me to go downstairs just to push a button. Not good. I could easily solve this by cracking open the unit (ie. goodbye warranty) and put a simple monostable circuit that briefly shorts the power on button when power is restored, but ideally it should have that function built in.
The traditional solution here would be to configure the NAS as an NFS server, and mount home directories on all other machines over the network. While it's not required, it's sortof nicer to have user accounts and groups synchronized as well: this used to use NIS (aka Yellow Pages, or UP, or later NIS+), but these days LDAP is the usual solution. If you only have a small number of users/groups, then you can rely on just manually updating all the clients if you prefer.