ports/183947: news/inn [PATCH] to avoid destroying any user data during package upgrades

Horia Racoviceanu horia at racoviceanu.com
Thu Nov 14 06:30:01 UTC 2013


>Number:         183947
>Category:       ports
>Synopsis:       news/inn [PATCH] to avoid destroying any user data during package upgrades
>Confidential:   no
>Severity:       non-critical
>Priority:       low
>Responsible:    freebsd-ports-bugs
>State:          open
>Quarter:        
>Keywords:       
>Date-Required:
>Class:          change-request
>Submitter-Id:   current-users
>Arrival-Date:   Thu Nov 14 06:30:00 UTC 2013
>Closed-Date:
>Last-Modified:
>Originator:     Horia Racoviceanu
>Release:        9.1-RELEASE amd64
>Organization:
>Environment:
FreeBSD horia.lan 9.1-RELEASE-p7 FreeBSD 9.1-RELEASE-p7 #0: Mon Sep  9 21:34:37 UTC 2013 root at amd64-builder.daemonology.net:/usr/obj/usr/src/sys/GENERIC amd64
>Description:

>How-To-Repeat:

>Fix:
- Change all `rm -Rf` and `rm -R` to `rmdir` in pkg-plist to avoid destroying any user data during package upgrades.

measured plist-ok in tinderbox and portupgrades on a working system preserved data.

Build log:
https://redports.org/buildarchive/20131114045333-10834/

Patch attached with submission follows:

Index: news/inn/pkg-plist
===================================================================
--- news/inn/pkg-plist	(revision 333132)
+++ news/inn/pkg-plist	(working copy)
@@ -222,7 +222,7 @@
 @comment --------------------------------------------------------------
 @dirrm %%EXAMPLESDIR%%/db
 @dirrm %%EXAMPLESDIR%%
- at unexec rm -Rf %%TMPDIR%%                 2>/dev/null || true
+ at unexec rmdir  %%TMPDIR%%                 2>/dev/null || true
 @unexec rmdir  %%SHAREDIR%%               2>/dev/null || true
 @unexec rmdir  %%NEWSSPOOL%%/overview     2>/dev/null || true
 @unexec rmdir  %%NEWSSPOOL%%/outgoing     2>/dev/null || true
@@ -231,21 +231,23 @@
 @unexec rmdir  %%NEWSSPOOL%%/incoming     2>/dev/null || true
 @unexec rmdir  %%NEWSSPOOL%%/articles     2>/dev/null || true
 @unexec rmdir  %%NEWSSPOOL%%/archive      2>/dev/null || true
- at unexec rm -Rf %%NEWSSPOOL%%/tmp          2>/dev/null || true
+ at unexec rmdir  %%NEWSSPOOL%%/tmp          2>/dev/null || true
 @unexec rmdir  %%NEWSSPOOL%%              2>/dev/null || true
- at unexec rm -Rf %%RUNDIR%%                 2>/dev/null || true
- at unexec rm -R  %%NEWSBASE%%/http
- at unexec rm -R  %%NEWSBASE%%/lib
- at unexec rm -R  %%NEWSBASE%%/include/inn
- at unexec rm -R  %%NEWSBASE%%/include
+ at unexec rmdir  %%RUNDIR%%                 2>/dev/null || true
+ at unexec rmdir  %%NEWSBASE%%/http
+ at unexec rmdir  %%NEWSBASE%%/lib/perl/INN
+ at unexec rmdir  %%NEWSBASE%%/lib/perl
+ at unexec rmdir  %%NEWSBASE%%/lib
+ at unexec rmdir  %%NEWSBASE%%/include/inn
+ at unexec rmdir  %%NEWSBASE%%/include
 @unexec rmdir  %%ETCDIR%%                 2>/dev/null || true
- at unexec rm -Rf %%NEWSBASE%%/doc
+ at unexec rmdir  %%NEWSBASE%%/doc
 @unexec rmdir  %%DBDIR%%                  2>/dev/null || true
- at unexec rm -Rf %%NEWSBASE%%/bin/rnews.libexec
- at unexec rm -Rf %%NEWSBASE%%/bin/filter
- at unexec rm -Rf %%NEWSBASE%%/bin/control
- at unexec rm -Rf %%NEWSBASE%%/bin/auth/resolv
- at unexec rm -Rf %%NEWSBASE%%/bin/auth/passwd
- at unexec rm -Rf %%NEWSBASE%%/bin/auth
- at unexec rm -Rf %%NEWSBASE%%/bin
+ at unexec rmdir  %%NEWSBASE%%/bin/rnews.libexec
+ at unexec rmdir  %%NEWSBASE%%/bin/filter
+ at unexec rmdir  %%NEWSBASE%%/bin/control
+ at unexec rmdir  %%NEWSBASE%%/bin/auth/resolv
+ at unexec rmdir  %%NEWSBASE%%/bin/auth/passwd
+ at unexec rmdir  %%NEWSBASE%%/bin/auth
+ at unexec rmdir  %%NEWSBASE%%/bin
 @unexec rmdir %%NEWSBASE%% 2>/dev/null ||( echo "===>  If you don't plan to use inn later, you can safely remove %%NEWSBASE%%. Deinstall process kept these files intact:" | fmt && for i in $(find %D/news -type f); do echo "    - $i"; done)


>Release-Note:
>Audit-Trail:
>Unformatted:


More information about the freebsd-ports-bugs mailing list