-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 On 09/28/2014 07:04 AM, Benjamin A. Shelton wrote:
On 09/27/2014 02:13 AM, Ralf Mardorf wrote:
On Sat, 2014-09-27 at 10:02 +0200, Florian Pelz wrote:
Same here. With only NoExtract, I linked /bin/sh to dash, reinstalled bash, and /bin/sh was gone. With both NoExtract and NoUpgrade, I did the same and /bin/sh was still a link to dash. My bad, until now I'm using NoExtract for files I don't want to have, I wasn't aware that a file or link we want to have gets lost.
Okay, so I wasn't *completely* losing my mind (what little of it there is!).
Here's what I think is happening (probably wrong, but this is what I've deduced from further reading and some strace fun):
Since (re)installing over an existing package first removes its constituent files, NoExtract alone results in the reinstallation process removing bash (and the /usr/bin/sh link). But, since the file is specified as NoExtract, the link/file isn't recreated during package extraction (it's skipped). NoUpgrade, on the other hand, prevents the file from being removed (reinstallation must therefore be considered as an "upgrade" for this purpose) but if it's not also specified by NoExtract, it's immediately overwritten by the new copy.
So, if my understanding is correct, this would explain why both options must be used in order to keep something relatively unscathed. NoUpgrade prevents its removal (or more accurately it "prevents its upgrade"); NoExtract prevents it from being overwritten.
Disclaimer: I haven't looked at the pacman sources yet. This is exclusively from observation and what my (admittedly very limited) understanding of pacman provides.
Benjamin
That makes sense, even if it is not what I would have expected pacman to do judging from the description in man pacman.conf. Thank you. -----BEGIN PGP SIGNATURE----- Version: GnuPG v2 iQIcBAEBAgAGBQJUJ6iJAAoJEMqreLELZNG3wSMP/1zge+KR4yRSi/ZZUTILsqGO 8E6DfmHDfvOvLZddTTiSGmSJm8NV1j4kjjon6ifuW2orEBmd/Hr4L22bCGQrd8X6 oWseS0VoXgxMRmjO/CPKImvOUY3kMmBEYZzV56Ags6iCBQrXo0fkFrg4Gy65+lYc JIH2nnKQLCb5D0JMfcdnicrmTwitqWDPSoE/rbgKpa4bLG/WzvZTClJBP9wOtlaI aWNEUSoEYiXaz2/p9HoEzWGTY22IAz01eVY/PfV0J7nY6h+N2evas+T9Z1Cq3W3D KPJgqjiCSh2f02Sr+iERWl71E5hOEQLQb+b1vI4HsZShwlwpdpRSPbWdiUB878fI pZM8lMURK3yt2nLc5tQ6tcUDmMskcWt/RXw/gLTdDfURGfeymD9362BQPR6tu5/P WxFQekf+ScODStOFU98DUASo7gRdR30+WvVzUwpuAoent/fgLNEQvOX7r8uYX4DT 7RVnmLO2u6SoPD08Xlocd18qqc8EIZJm/lCKzwX/drF7+KKMxVe/vKKzPeGbHhhb gr657+6W3xZBYtSmBvabjq8Tktp/TvLfxiSUGdCxfCSqLqw+hs5UYXNxKAx6GvdT RlX6rlPaylX5cBPWoB1Jt+1fDuTZPZnsMDiYDF0GdCI8P68+zijrmJ9vkXEkF/cj tcdta/fK8ceZogIN/i0Y =R4dC -----END PGP SIGNATURE-----