Você pode usar systemctl set-environment para enviar alguns valores para execuções futuras do serviço. Por exemplo, com uma unidade:
[Unit]
Description=testing
[Service]
Type=oneshot
ExecStart=/my/command myarg1 ${MYDONE}
ExecStart=/usr/bin/systemctl set-environment MYDONE=1
[Install]
No primeiro systemctl start <unit> o último arg passado para /my/command será '' e MYDONE não estará no ambiente. Em versões posteriores, o último argumento será 1 e MYDONE=1 estará no ambiente.