# It's not recommended to modify this file in-place, because it will be
# overwritten during package upgrades.  If you want to customize, the best
# way is to create a file "/etc/systemd/system/netopeerguid.service",
# containing
#   .include /lib/systemd/system/netopeerguid.service
#   ...make your changes here...
# For more info about custom unit files, see
# http://fedoraproject.org/wiki/Systemd#How_do_I_customize_a_unit_file.2F_add_a_custom_unit_file.3F
#
# For example, to pass additional options (for instance, -D definitions) to the
# supervisor binary at startup, you need to create a file named
# "/etc/systemd/system/netopeerguid.service" containing:
#       .include /lib/systemd/system/netopeerguid.service
#       [Service]
#       Environment=OPTIONS=-DMY_DEFINE

[Unit]
Description=NetopeerGUI backend daemon
After=network.target local-fs.target remote-fs.target

[Service]
Type=simple
Environment=LANG=C
ExecStart=@bindir@/netopeerguid
KillMode=process
PrivateTmp=false

[Install]
WantedBy=multi-user.target
