Deinstalling packages at pointyhat for print/acroread7 fails http://pointyhat.freebsd.org/errorlogs/i386-errorlogs/a.7.2005072221/acroread7-7.0.1.log due to directories interference between emulators/linux_base-8, x11-toolkits/linux-gtk2, devel/linux-glib2. While the last two use an @unexec rmdir metod to cleanup directories, the first one doesn't. That's why pkg_deleting it doesn't work. And that is acroread7 problem at pointyhat. The patch below adds @unexec method and redirection of stderr to /dev/null to deal with directories. Fix: WBR -- bsam--EyXCdXCEv3l6C8npqadTzmlym2uIQDSt5Rn2Tf4wDfDoH0V1 Content-Type: text/plain; name="patch-linux_base-8" Content-Transfer-Encoding: 7bit Content-Disposition: attachment; filename="patch-linux_base-8" --- Makefile.orig Thu Sep 1 13:16:44 2005 +++ Makefile Fri Sep 2 12:23:06 2005 @@ -8,7 +8,7 @@ PORTNAME= linux_base-8 PORTVERSION= 8.0 -PORTREVISION= 6 +PORTREVISION= 7 CATEGORIES= emulators linux MASTER_SITES= ${MASTER_SITE_REDHAT_LINUX} \ ${MASTER_SITE_REDHAT_LINUX:S/$/:new/} \ @@ -145,7 +145,10 @@ ${RM} -f ${PLIST} cd ${WRKSRC} && ${FIND} -s . -type f -o -type l | \ ${CUT} -c3-999 >> ${PLIST} \ - && ${FIND} -d * -type d | ${SED} -e 's:^:@dirrm :' >> ${PLIST} + && ${FIND} -d * -type d | \ + ${SED} -e 's:^:@unexec rmdir :' \ + -e 's:$$: 2> /dev/null || true:' >> ${PLIST} + do-install: cd ${WRKSRC} && ${FIND} * | ${CPIO} -dmp ${PREFIX} How-To-Repeat: Install linux_base-8 alog with the mentioned ports and try to pkg_delete -f linux_base-8.
Responsible Changed From-To: freebsd-ports-bugs->emulation Over to maintainer.
1. New patch for Makefile: - dynamic plist deleted; - a group of spaces replaced by a tab (as portlint reccommended). 2. A new plist file to replace a dynamic one: - "@unexec rmdir ... 2> /dev/null || true" instead of "@dirrm"; - empty but needed directories are created "@exec mkdir ...". WBR -- Boris B. Samorodov, Research Engineer InPharmtech Co, http://www.ipt.ru Telephone & Internet Service Provider
We do have lines for deinstallation at the port's pkg-install file. But at http://www.freebsd.org/doc/en_US.ISO8859-1/books/porters-handbook/pkg-deinstall.html it is said that we should use a pkg-deinstall script. Here are two more patches. The first one is a real patch for pkg-install and the second is a new file pkg-deinstall. Hm. It become too many stand alone files and patches. Should I prepare one patch-file to replace those? WBR -- Boris B. Samorodov, Research Engineer InPharmtech Co, http://www.ipt.ru Telephone & Internet Service Provider
State Changed From-To: open->closed Sorry, I forgot to take care of this PR after discussing it with you. Close this PR after taking some remaining parts from the PR (deinstall).