mirror of
https://github.com/systemd/systemd
synced 2024-09-06 16:56:43 +00:00
![Zbigniew Jędrzejewski-Szmek](/assets/img/avatar_default.png)
Absolute paths make everything simple and quick, but sometimes this requirement can be annoying. A good example is calling 'test', which will be located in /usr/bin/ or /bin depending on the distro. The need the provide the full path makes it harder a portable unit file in such cases. This patch uses a fixed search path (DEFAULT_PATH which was already used as the default value of $PATH), and if a non-absolute file name is found, it is immediately resolved to a full path using this search path when the unit is loaded. After that, everything behaves as if an absolute path was specified. In particular, the executable must exist when the unit is loaded.
14 lines
285 B
Desktop File
14 lines
285 B
Desktop File
[Unit]
|
|
Description=Test for basic execution
|
|
|
|
[Service]
|
|
ExecStart=touch /tmp/a ; /bin/touch /tmp/b ; touch /tmp/c
|
|
ExecStart=test -f /tmp/a
|
|
ExecStart=!test -f /tmp/b
|
|
ExecStart=!!test -f /tmp/c
|
|
ExecStart=+test -f /tmp/c
|
|
ExecStartPost=rm /tmp/a /tmp/b /tmp/c
|
|
|
|
PrivateTmp=true
|
|
Type=oneshot
|