Andreas Beckmann <a...@debian.org> writes:

> According to policy 7.2 you cannot rely on the depends being available
> during purge, only the essential packages are available for sure.

Hi Andreas,

I can't see coturn rely on any of its dependencies during purge, do you?

> (this was observed in a piuparts nodocs test)

Could you please explain to me what a "nodocs" test is?  Since the
postinst creates /var/lib/turn/turndb if it doesn't exist, I've got no
idea how /var/lib/turn can be missing during purge.  Was it removed by
the testing framework for being "unowned", for example?  (Anyway, I
agree that the postrm should be protected from such occurrences.)

> From the attached log (scroll to the bottom...):
>
>   Purging configuration files for coturn (4.5.2-2) ...
>   rmdir: failed to remove '/var/lib/turn': No such file or directory
>   dpkg: error processing package coturn (--purge):
>    installed coturn package post-removal script subprocess returned error 
> exit status 1
>   Errors were encountered while processing:
>    coturn
>
> Why don't you ship the (empty) directory in the package and let dpkg
> take care of creation and removal?

The postinst creates a database in /var/lib/turn, so dpkg --remove could
only emit a warning about not removing an empty directory in most cases.
So the database (and the containing /var/lib/turn directory) must be
removed by the postrm during purge.  Thus I don't see much point in
shipping an empty /var/lib/turn, but I may be overlooking something.
And I actually do, as this bug report proves; but what is it?

(BTW the current setup has another problem: /var/lib/turn must also be
writable by the server for the SQLite database within being writable.)
-- 
Thanks,
Feri

Reply via email to