I have been unsuccessful in finding a permanent working solution for audio forwarding over NoMachine using an Arch Linux host. I had raised issues on both the Arch Linux Forums as well as the NoMachine Forums. A trouble report was created to track this issue.
I have found a temporary workaround which results in pulseaudio being successfully forwarded over NX, but it must be applied each time a NoMachine connection is established. It requires logging in as the superuser to be able to search through some NoMachine logins which are not viewable as the default user:
➜ su - Password: ➜ ➜ cd /usr/NX/var/log ➜ grep -r -n 'native.socket' . ./nxserver.log:1179:2016-08-18 11:40:53 805.980 14969 NXNODE WARNING! Could not load module native with name: /usr/NX/var/run/nxdevice/D-1001-CCDE160BF6050EDC229A1FDD4CB7FD12/audio/native.socket.
You should see a bunch of entries similar to the one above. The expected audio module at the specified location does not exist, but you can quickly create a symlink at that location pointing to
/run/user/1000/pulse/native assuming your default uid is 1000 using a command such as the follows:
ln -s /usr/NX/var/run/nxdevice/D-1001-CCDE160BF6050EDC229A1FDD4CB7FD12/audio/native.socket /run/user/1000/pulse/native
Check that your audio output isn’t muted or at low volume, and you should now be able to hear audio forwarded from the guest machine.
If anyone knows of a permanent solution, please share.