在 deb 包中,我创建了应用程序的桌面快捷方式
blah.postinst:
#!/bin/sh
cp /usr/share/applications/blah.desktop ~/Desktop/
chmod 777 ~/Desktop/blah.desktop
使用dpkg -r mypackage.deb
将删除所有内容,撤消所有操作...但保留此桌面快捷方式。
我以为 postrm 脚本可以做到这一点,尝试过
blah.postrm
#!/bin/sh
rm ~/Desktop/blah.desktop
但是现在安装程序失败!!!试图删除不存在的项目。
Purging configuration files for blah...
rm: cannot remove `/home/me/Desktop/blah.desktop': No such file or directory
dpkg: error processing blah(--purge):
subprocess installed post-removal script returned error exit status 1
Errors were encountered while processing:
blah
如何/为什么?如何在卸载过程中删除快捷方式?
答案1
在尝试在 POSTRM 脚本中删除文件之前,如何添加条件来检查文件是否存在?
这应该可以让它dpkg
顺利完成工作,而不会因为文件不存在而失败。