This can probably be marked [solved] since I believe OP's question has also been answered.
]]>I believe the recommended way to change options for a service with systemd is to make the changes to the file in question after copying it to /etc/systemd/system. You could actually have it source a conf.d file and use those args by using EnvironmentFile= and then adding the necessary arguments to the end of the ExecStart= line. So in your case it would be
... EnvironmentFile=/etc/conf.d/tftp ... ExecStart=/usr/sbin/in.tftpd -s /srv/tftp/ $TFTPD_ARGS ...
No one is stopping you from using an environment file, but I think that the method systemd provides allows for the reduced need of said files.
Thanks for the reply. This makes sense, but then it still goes back to my original issue with copying & changing the service file: this will mask future updates to the service file (and no pacnew file to highlight that the file has changed, either).
I think at this point the .service file in the tftp-hpa should be changed as mentioned, or /etc/conf.d/tftp should be removed from the package. Does that make sense? At this point, after installing the package, modifying the provided /etc/conf.d/tftp file has no effect.
]]>...
EnvironmentFile=/etc/conf.d/tftp
...
ExecStart=/usr/sbin/in.tftpd -s /srv/tftp/ $TFTPD_ARGS
...
No one is stopping you from using an environment file, but I think that the method systemd provides allows for the reduced need of said files.
]]>At least in the case of tftp-hpa, because it has no effect
So is this a package bug for tftp-hpa?
]]>I'm baffled: my /etc/conf.d is there alive and active, and so is systemd in a working condition. Why do you think you cannot use /etc/conf.d with systemd?
At least in the case of tftp-hpa, because it has no effect
/usr/lib/systemd/system/tftpd.service
[Service]
ExecStart=/usr/sbin/in.tftpd -s /srv/tftp/
And changing TFTPD_ARGS in /etc/conf.d/tftpd has no effect on this command line.
]]>For example, if I just want to change the root directory for the tftp-hpa server, I can copy/modify the .service file to change the arguments, but then if the actual service file changes in an update (new dependencies or whatever), I won't get the benefit of these updates.
Is there some way to use /etc/conf.d/tftp to specify the TFTPD_ARGS and have these arguments used by systemd?
]]>