postuninstall scriptlet (through /bin/sh): /usr/sbin/chkfontpath --remove /usr/share/fonts/default/TrueType-ms Так нельзя - %postun вызывается в том числе и при обновлении пакета, причём %postun от старого пакета выполняется после %post от нового пакета. В результате после обновления шрифты оказываются недоступны. Должно быть так: if [ "$1" = "0" ]; then /usr/sbin/chkfontpath -q -r /usr/share/fonts/default/TrueType-ms ||: fi (||: нужно, чтобы возможные ошибки - например, если каталог уже удалён из списка - не останавливали удаление пакетов) Ещё необходимо добавить %triggerpostun на старую версию пакета для устранения последствий ошибки в предыдущих версиях (иначе после первого обновления на исправленную версию каталог со шрифтами всё равно будет удалён из списка).
в vera-fonts-ttf (#3691) сделал так: %post %_bindir/fc-cache %ttfdir %_sbindirchkfontpath -q --add %ttfdir %postun if [ "$1" = "0" ]; then %_sbindirchkfontpath -q --remove %ttfdir ||: fi %triggerpostun -- %name < 1.10-alt2 echo "Fixing faulty fontpath removal in 1.10-alt1" %_bindir/fc-cache %ttfdir %_sbindirchkfontpath -q --add %ttfdir
эээ... даже так (thanks vsu): %post %_bindir/fc-cache %ttfdir ||: %_sbindir/chkfontpath -q --add %ttfdir ||: %postun if [ "$1" = "0" ]; then %_sbindir/chkfontpath -q --remove %ttfdir ||: fi %triggerpostun -- %name < 1.10-alt2 %_sbindir/chkfontpath -q --add %ttfdir ||:
Исправления внесены.
seems to be fixed