I am using the .service files included with Samba4. The problem apparently comes from the fact that /var/run is now a symlink to /run, which is tmpfs. When {smbd, nmbd, winbindd} starts up, it tries to create a directory under /var/run/samba; but unless you have something like Fedora's tmpfiles.d, the parent directory /var/run/samba will not exist after each time the system is rebooted, and the daemon will not attempt to create the parent directory, and ends up failing to start as a result.
Okay, so tmpfiles.d is generic, and not Fedora-specific. So another option would be to create a tmpfiles.d configuration file to go along with the systemd service files.
Justin, do you have a specific patch we can add ? Jeremy.
What I ended up doing is just creating a samba conf file in tmpfiles.d as follows: :::::::::::::: /usr/lib/tmpfiles.d/samba.conf :::::::::::::: d /run/samba 0755 root root - Perhaps it would make sense to include this in packaging/systemd/?
I've added the samba.conf.tmp file from Fedora and documented it.