dear Maintainer,
i installed policyd-weight on a fresh debian 13 machine.
after installation, i wondered why the service was not running and
checked status with `systemctl status policyd-weight.service`, which
gave this output:
○ policyd-weight.service - Perl policy daemon for the Postfix MTA
Loaded: loaded (/usr/lib/systemd/system/policyd-weight.service; enabled; preset: enabled)
Active: inactive (dead) since Tue 2025-11-11 23:23:27 CET; 5min ago
Duration: 234ms
Invocation: 78d1487c15714713b7d8910bdb240dfb
Docs: man:policyd-weight(8)
Process: 1631 ExecStart=/usr/sbin/policyd-weight -D $DAEMON_OPTS (code=exited, status=0/SUCCESS)
Process: 1635 ExecStopPost=/bin/rm -f /var/run/policyd-weight.pid (code=exited, status=0/SUCCESS)
Main PID: 1631 (code=exited, status=0/SUCCESS)
Mem peak: 18M
CPU: 204ms
Nov 11 23:23:27 dev systemd[1]: Started policyd-weight.service - Perl policy daemon for the Postfix MTA.
Nov 11 23:23:27 dev (d-weight)[1631]: policyd-weight.service: Referenced but unset environment variable evaluates to an empty string: DAEMON_OPTS
Nov 11 23:23:27 dev systemd[1]: policyd-weight.service: Deactivated successfully.
stopping/starting/restarting the service resulted in the same state.
manually executing the start command `/usr/sbin/policyd-weight -D` (as
$DAEMON_OPTS is unset by default) gave no output and never finished.
i think that the ExecStart command in
/usr/lib/systemd/system/policyd-weight.service is missing the `start`
argument.
the service starts as expected, if i change it from
ExecStart=/usr/sbin/policyd-weight -D $DAEMON_OPTS
to
ExecStart=/usr/sbin/policyd-weight -D $DAEMON_OPTS start
as `systemctl status policyd-weight.service` shows:
● policyd-weight.service - Perl policy daemon for the Postfix MTA
Loaded: loaded (/usr/lib/systemd/system/policyd-weight.service; enabled; preset: enabled)
Active: active (running) since Tue 2025-11-11 23:55:51 CET; 3min 37s ago
Invocation: ac119a5028f9447991c9c7b91cc75a55
Docs: man:policyd-weight(8)
Main PID: 2309 (policyd-weight )
Tasks: 2 (limit: 9486)
Memory: 19.2M (peak: 19.4M)
CPU: 195ms
CGroup: /system.slice/policyd-weight.service
├─2309 "policyd-weight (master)"
└─2312 "policyd-weight (cache)"
Nov 11 23:55:51 dev systemd[1]: Started policyd-weight.service - Perl policy daemon for the Postfix MTA.
Nov 11 23:55:51 dev (d-weight)[2309]: policyd-weight.service: Referenced but unset environment variable evaluates to an empty string: DAEMON_OPTS
Nov 11 23:55:51 dev postfix/policyd-weight[2309]: policyd-weight 0.1.15 beta-2 started and daemonized. conf:default settings; GID:106 106 EGID:106 106 UID:102 EUID:102; taint mode: 0
Nov 11 23:55:51 dev postfix/policyd-weight[2309]: cache_query: start: calling spawn_cache()
Nov 11 23:55:51 dev postfix/policyd-weight[2312]: cache spawned
i am a little surprised about the version naming 0.1.15 "beta-2", though.
btw, `journalctl -eu policyd-weight.service` also warns about legacy run
dir at /var/run/:
Nov 11 23:22:50 dev systemd[1]: /usr/lib/systemd/system/policyd-weight.service:7: PIDFile= references a path below legacy directory /var/run/, updating /var/run/policyd-weight.pid → /run/policyd-weight.pid; pl>
Nov 11 23:22:51 dev systemd[1]: /usr/lib/systemd/system/policyd-weight.service:7: PIDFile= references a path below legacy directory /var/run/, updating /var/run/policyd-weight.pid → /run/policyd-weight.pid; pl>