pkgsrc-Bugs archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

pkg/55615: pkgin -F (force package reinstall) doesn't (force package reinstall)



>Number:         55615
>Category:       pkg
>Synopsis:       pkgin -F (force package reinstall) doesn't (force package reinstall)
>Confidential:   no
>Severity:       serious
>Priority:       medium
>Responsible:    pkg-manager
>State:          open
>Class:          sw-bug
>Submitter-Id:   net
>Arrival-Date:   Sat Aug 29 14:55:00 +0000 2020
>Originator:     Bruce Lilly
>Release:        9.0
>Organization:
>Environment:
NetBSD cq60-615dx.blilly.net 9.0 NetBSD 9.0 (GENERIC) #0: Fri Feb 14 00:06:28 UTC 2020  mkrepro%mkrepro.NetBSD.org@localhost:/usr/src/sys/arch/amd64/compile/GENERIC amd64 x86_64 Intel 686-class NetBSD
>Description:
Occasionally a package may need to be reinstalled to correct a problem (e.g. corrupted file).  pkgin -F, according to the man page, should force a package reinstall, but it merely reports "nothing to be done".
>How-To-Repeat:
Install some package
corrupt some file (e.g. a man page or configuration file)
try to force a reinstall via pkgin -F

To recover (or as a workaround)
manually force reinstall via
   pkg_delete -f
   pkg_add -DU
>Fix:
Partial fix:
*** impact.c.orig       Mon May 25 04:22:50 2020
--- impact.c    Fri Aug 28 20:55:27 2020
***************
*** 268,273 ****
--- 268,275 ----
                                }
  
                                TRACE("   * upgrade with %s\n", lpkg->full);
+                               /* 2020-08-19 BL: 0>pdp->keep means reinstall */
+                               if (0>pdp->keep) toupgrade=TOINSTALL;
                                /*
                                 * insert as an upgrade
                                 * oldpkg is used when building removal order

"Partial" fix because it still sometimes fails to force a reinstall; I suspect that a full fix would involve adding an additional macro to distinguish a forced reinstall from "TOINSTALL".



Home | Main Index | Thread Index | Old Index