FS#3700 - Pacman unable to upgrade to udev-079-1

Attached to Project: Pacman
Opened by David Rosenstrauch (darose) - Wednesday, 04 January 2006, 02:12 GMT
Task Type Bug Report
Category
Status Closed
Assigned To Judd Vinet (judd)
Architecture not specified
Severity High
Priority Normal
Reported Version 0.7 Wombat
Due in Version Undecided
Due Date Undecided
Percent Complete 100%
Votes 0
Private No

Details

Pacman won't let me upgrade to udev-079-1. It tells me that it needs to remove hotplug. Fine. Then it tells me that it can't because hotplug is dependent on hwd. OK, so I go and uninstall hwd, and then try to do the upgrade again, and it STILL gives me the same message (about not being able to uninstall hotplug due to hwd) - even though hwd is not longer installed.

So I can't do the upgrade. There doesn't seem to be any workaround for this.

I'm seeing this behavior on 3 different Arch boxes.
This task depends upon

Closed by  Aaron Griffin (phrakture)
Wednesday, 03 January 2007, 06:18 GMT
Reason for closing:  Fixed
Additional comments about closing:  Old bug - fixed now. Closing
Comment by David Rosenstrauch (darose) - Wednesday, 04 January 2006, 02:58 GMT
Here's an example:

[darose@darsys4 ~]$ sudo pacman -S udev
:: udev conflicts with hotplug. Remove hotplug? [Y/n] y

Remove: hotplug

Targets: udev-079-1

Total Package Size: 0.2 MB

Proceed with upgrade? [Y/n] y

checking package integrity... done.
error: this will break the following dependencies:
hotplug: is required by hwd

[darose@darsys4 ~]$ pacman -Q hwd
Package "hwd" was not found.

[darose@darsys4 ~]$ pacman -Q | grep hwd
[darose@darsys4 ~]$
Comment by Judd Vinet (judd) - Wednesday, 04 January 2006, 03:58 GMT
Hmm, strange. According to ABS, hwd does not even depend on hotplug.

Take a look at the files in /var/lib/pacman/extra/hwd-4.7.1-1. Do you see any references to hotplug in the "desc" or "depends" files?

What happens if you completely remove the directory /var/lib/pacman/extra/hwd-4.7.1-1 and then try --sync'ing udev? (Btw, don't --refresh first, or the hwd directory will show up again).
Comment by Judd Vinet (judd) - Wednesday, 04 January 2006, 03:59 GMT
If you don't see any problems with the desc/depends files, please tar/gzip up your entire /var/lib/pacman directory and send it to me. Email is fine if you don't want to attach it here.
Comment by Eugenia Loli-Queru (Eugenia) - Wednesday, 04 January 2006, 05:30 GMT
I have the EXACT same problem as David. Removing hwd does not fix the problem. I can't upgrade as long this error exists...

[root@lc2430 eugenia]# pacman -Suy
:: Synchronizing package databases...
:: current is up to date
:: extra is up to date
:: pcmciautils conflicts with pcmcia-cs. Remove pcmcia-cs? [Y/n]
:: udev conflicts with hotplug. Remove hotplug? [Y/n]

Remove: pcmcia-cs hotplug

Targets: anjuta-1.2.4a-1 mozilla-firefox-1.5-1 devhelp-0.11-1 epiphany-1.8.3-2 galeon-2.0.0-1
gnomemeeting-1.2.3-1 hal-0.5.5.1-4 kernel26-2.6.15-2 libgphoto2-2.1.6-5 lirc-0.7.2-6
man-pages-2.18-2 mkinitrd-1.01-25 mysql-5.0.18-1 pcmciautils-011-1 sane-1.0.17-2
slmodem-2.9.11-6 udev-079-1 wlan-ng26-0.2.3-3 yelp-2.12.2-1

Total Package Size: 66.9 MB

Proceed with upgrade? [Y/n]

checking package integrity... done.
error: this will break the following dependencies:
hotplug: is required by hwd

[root@lc2430 eugenia]# pacman -R hotplug
error: this will break the following dependencies:
hotplug: is required by hwd
hotplug: is required by pcmciautils
hotplug: is required by udev

[root@lc2430 eugenia]# pacman -S udev
:: udev conflicts with pcmcia-cs. Remove pcmcia-cs? [Y/n]
:: udev conflicts with hotplug. Remove hotplug? [Y/n]

Remove: pcmcia-cs hotplug

Targets: udev-079-1

Total Package Size: 0.2 MB

Proceed with upgrade? [Y/n]

checking package integrity... done.
error: this will break the following dependencies:
hotplug: is required by hwd
hotplug: is required by pcmciautils
Comment by Judd Vinet (judd) - Wednesday, 04 January 2006, 05:45 GMT
Eugenia, please send me your pacman DB.

# tar cjf pacmandb.tar.bz2 /var/lib/pacman

Then email the resulting pacmandb.tar.bz2 to me and I'll take a look. Thanks.
Comment by Eugenia Loli-Queru (Eugenia) - Wednesday, 04 January 2006, 05:53 GMT
Sent. Please let me know if you haven't receive it for some reason.
Comment by Judd Vinet (judd) - Wednesday, 04 January 2006, 06:20 GMT
For some reason, even though hwd no longer depends on hotplug, it has been left as a REQUIREDBY package in hotplug, which is preventing you from upgrading.

Here are the steps to manually fix. I know this isn't ideal. If many users have this problem, I'll post a script or equivalent that will do the job for them.

1. As root, edit "/var/lib/pacman/local/hotplug-2004_09_23-4/depends" with a text editor
2. Delete all package names that come _after_ "%REQUIREDBY%" and _before_ the blank line that comes before "%CONFLICTS%"

For example, here is the depends file before editing. I've explicitly marked the blank lines.

[snip]
%DEPENDS%
usbutils
-----BLANK LINE HERE-----
%REQUIREDBY%
hwd
pcmciautils
udev
-----BLANK LINE HERE-----
%CONFLICTS%
-----BLANK LINE HERE-----
%PROVIDES%
-----BLANK LINE HERE-----
[/snip]


Now here is the file after editing.

[snip]
%DEPENDS%
usbutils
-----BLANK LINE HERE-----
%REQUIREDBY%
-----BLANK LINE HERE-----
%CONFLICTS%
-----BLANK LINE HERE-----
%PROVIDES%
-----BLANK LINE HERE-----
[/snip]


Once finished editing, try upgrading again. I tested with your DB, Eugenia, and this hacky little solution worked. Sorry for the confusion.
Comment by Eugenia Loli-Queru (Eugenia) - Wednesday, 04 January 2006, 06:39 GMT
this worked, thanks. I got the following output though during removal:

checking package integrity... done.
removing pcmcia-cs...
warning: /etc/pcmcia/wireless.opts saved as /etc/pcmcia/wireless.opts.pacsave
warning: /etc/pcmcia/serial.opts saved as /etc/pcmcia/serial.opts.pacsave
warning: /etc/pcmcia/scsi.opts saved as /etc/pcmcia/scsi.opts.pacsave
warning: /etc/pcmcia/parport.opts saved as /etc/pcmcia/parport.opts.pacsave
warning: /etc/pcmcia/network.opts saved as /etc/pcmcia/network.opts.pacsave
warning: /etc/pcmcia/memory.opts saved as /etc/pcmcia/memory.opts.pacsave
warning: /etc/pcmcia/ieee1394.opts saved as /etc/pcmcia/ieee1394.opts.pacsave
warning: /etc/pcmcia/ide.opts saved as /etc/pcmcia/ide.opts.pacsave
warning: /etc/pcmcia/ftl.opts saved as /etc/pcmcia/ftl.opts.pacsave
warning: /etc/pcmcia/config.opts saved as /etc/pcmcia/config.opts.pacsave
warning: /etc/conf.d/pcmcia saved as /etc/conf.d/pcmcia.pacsave
done.
removing hotplug...
warning: /etc/hotplug/usb.usermap saved as /etc/hotplug/usb.usermap.pacsave
warning: /etc/hotplug/usb.handmap saved as /etc/hotplug/usb.handmap.pacsave
warning: /etc/hotplug/usb.distmap saved as /etc/hotplug/usb.distmap.pacsave
warning: /etc/hotplug/blacklist saved as /etc/hotplug/blacklist.pacsave
done.
loading package data... done.
Comment by David Rosenstrauch (darose) - Wednesday, 04 January 2006, 07:06 GMT
Yeah, that fix worked for me too. Really weird how that dependency got stuck like that!
Comment by Judd Vinet (judd) - Wednesday, 04 January 2006, 08:55 GMT
Yes, those are leftover config files that pacman always saves by default. You can delete them with this command:

# find /etc/pcmcia /etc/hotplug -name "*.pacsave" -exec rm {} \;
Comment by David Rosenstrauch (darose) - Wednesday, 04 January 2006, 13:56 GMT
No, I mean really weird how that:

%REQUIREDBY%
hwd

got stuck there.
Comment by arjan timmerman (blaasvis) - Saturday, 25 March 2006, 21:56 GMT
status ?
Comment by Eugenia Loli-Queru (Eugenia) - Saturday, 25 March 2006, 21:58 GMT
Judd's recommendation worked for me. However, this is something that must be fixed on Pacman so it doesn't happen again.

Loading...