Hi,

On 10/11/2021 09:37, Matthew Vernon wrote:
On 09/11/2021 15:17, Adam Borowski wrote:

Not replacing deleted config file /etc/init.d/rsyslog

This is the problem - ucf thinks that it knew about /etc/init.d/rsyslog before it got deleted (and so it thinks you deliberately removed it).

This is correct, but I now understand _why_ it happened - I uploaded orphan-sysvinit-scripts 0.08 before Michael uploaded rsyslog 8.2110-2

So:

orphan-sysvinit-scripts registers /etc/init.d/rsyslogd with ucf
then
rsyslog upgrade remove the unmodified config file (with dpkg-maintscript-helper which knows nothing of ucf)
so
ucf thinks the user did this

We've not seen this before, because previously scripts have only made it into orphan-sysvinit-scripts after removal by other packagers, not beforehand.

So:

I think the bit in update_init_d.sh that adds new scripts:
    if [ -e "/lib/systemd/system/$systemd" ] && [ "$action" = "add" ]; then
        ucf "/usr/share/orphan-sysvinit-scripts/$sysv" "/etc/init.d/$sysv"
        ucfr orphan-sysvinit-scripts "/etc/init.d/$sysv"
        update-rc.d "$sysv" "${rcd:-defaults}" >/dev/null

needs to also check something like dpkg-query -S /etc/init.d/$sysv returns 1 (i.e. the file is not still registered by dpkg as belonging to another package)

Seem sensible?

Regards,

Matthew

Reply via email to