Bug 3669 - wrong %postun breaks upgrade
Summary: wrong %postun breaks upgrade
Status: CLOSED FIXED
Alias: None
Product: Sisyphus
Classification: Development
Component: ms-fonts-ttf (show other bugs)
Version: unstable
Hardware: all Linux
: P2 major
Assignee: Vyacheslav Dikonov
QA Contact: qa-sisyphus
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2004-02-12 17:03 MSK by Sergey Vlasov
Modified: 2005-07-13 15:45 MSD (History)
0 users

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Sergey Vlasov 2004-02-12 17:03:37 MSK
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 на старую версию пакета для устранения
последствий ошибки в предыдущих версиях (иначе после первого обновления на
исправленную версию каталог со шрифтами всё равно будет удалён из списка).
Comment 1 Michael Shigorin 2004-02-12 18:06:54 MSK
в 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
Comment 2 Michael Shigorin 2004-02-12 18:10:56 MSK
эээ... даже так (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 ||:
Comment 3 Vyacheslav Dikonov 2004-02-19 01:17:58 MSK
Исправления внесены.
Comment 4 Sergey Vlasov 2004-02-21 20:56:36 MSK
seems to be fixed