FS#31692 - Symlinks listed in NoExtract are deleted on package install

Attached to Project: Pacman
Opened by Christian Neukirchen (chneukirchen) - Tuesday, 25 September 2012, 16:58 GMT
Last edited by Dave Reisner (falconindy) - Tuesday, 25 September 2012, 17:47 GMT
Task Type Bug Report
Category General
Status Closed
Assigned To No-one
Architecture All
Severity Medium
Priority Normal
Reported Version 4.0.3
Due in Version Undecided
Due Date Undecided
Percent Complete 100%
Votes 0
Private No

Details

Summary and Info:

I had a symlink I wanted to protect before overwriting by pacman, but it was removed after installing a package that places a file there, even tho the file was listed as NoExtract.
(NoUpgrade works, btw.)

Steps to Reproduce:

% ls -l /sbin/init
lrwxrwxrwx 1 root root 10 Sep 25 18:49 /sbin/init -> runit-init*

% grep NoExtr /etc/pacman.conf
NoExtract = sbin/init

% sudo pacman -S sysvinit
warning: sysvinit-2.88-8 is up to date -- reinstalling
resolving dependencies...
looking for inter-conflicts...

Targets (1):

Name Old Version New Version Net Change Download Size

sysvinit 2.88-8 2.88-8 0.00 MiB

Total Installed Size: 0.14 MiB
Net Upgrade Size: 0.00 MiB

Proceed with installation? [Y/n]
(1/1) checking package integrity [######################] 100%
(1/1) loading package files [######################] 100%
(1/1) checking for file conflicts [######################] 100%
(1/1) checking available disk space [######################] 100%
(1/1) upgrading sysvinit [######################] 100%
error: command failed to execute correctly
(intentional, tries to reload init.)

% ls -l /sbin/init
/bin/ls: cannot access /sbin/init: No such file or directory
This task depends upon

Closed by  Dave Reisner (falconindy)
Tuesday, 25 September 2012, 17:47 GMT
Reason for closing:  Not a bug
Additional comments about closing:  Working as intended
Comment by Dave Reisner (falconindy) - Tuesday, 25 September 2012, 17:34 GMT
Upgrading is a two step process:

1) remove the old (current) package
2) install the new package

NoExtract only applies to the latter. Sounds to me like you want NoUpgrade instead (or both?).
Comment by Christian Neukirchen (chneukirchen) - Tuesday, 25 September 2012, 17:38 GMT
Ok, I misread the manual then.

Loading...