FS#19947 - pacman fails completely on x86_64 systems when using 32bit chroot due to architecture feature.

Attached to Project: Pacman
Opened by Nikolay Bogoychev (Dheart) - Thursday, 24 June 2010, 08:56 GMT
Last edited by Dan McGee (toofishes) - Thursday, 24 June 2010, 13:24 GMT
Task Type Bug Report
Category General
Status Closed
Assigned To No-one
Architecture x86_64
Severity Critical
Priority Normal
Reported Version 3.4.0
Due in Version Undecided
Due Date Undecided
Percent Complete 100%
Votes 1
Private No

Details

Summary and Info:
pacman fails completely on x86_64 systems when using 32bit chroot due to architecture feature. When using pacman in the 32bit chroot installing any package fails because it is reported to be of the wrong architecture. You can't even downgrade pacman.

Steps to Reproduce:
1) Install a 32bit chroot as described here [url]http://wiki.archlinux.org/index.php/Arch64_Install_bundled_32bit_system[/url]
(Note... that may no longer be possible due to pacman's new feature)
2) Upgrade/install pacman 3.4
3) Try installing any packages and you'll receive the following:
[code][root@lightbringer dheart]# dchroot -d "pacman -Su"
(arch32) pacman -Su
:: Starting full system upgrade...
warning: wine: local (1.2rc2-1) is newer than extra (1.1.44-1)
error: failed to prepare transaction (package architecture is not valid)
:: package glibc-2.12-3-i686 does not have a valid architecture
:: package libtool-2.2.10-1-i686 does not have a valid architecture
:: package libxfont-1.4.2-1-i686 does not have a valid architecture
:: package pm-utils-1.4.0-1-i686 does not have a valid architecture
:: package poppler-0.14.0-1-i686 does not have a valid architecture
:: package pygobject-2.21.3-1-i686 does not have a valid architecture
dchroot: Child exited non-zero.
dchroot: Operation failed.
[/code]
This task depends upon

Closed by  Dan McGee (toofishes)
Thursday, 24 June 2010, 13:24 GMT
Reason for closing:  Not a bug
Additional comments about closing:  Architecture from auto to i686 in /etc/pacman.conf fixes the problem.
Comment by Nikolay Bogoychev (Dheart) - Thursday, 24 June 2010, 08:57 GMT Comment by Pierre Schmitz (Pierre) - Thursday, 24 June 2010, 09:07 GMT
The wiki needs to be fiex. If you enter a 32bit chroot or run pacman on it you have to prefix your command with linux32. E.g. linux32 chroot ...
Comment by Allan McRae (Allan) - Thursday, 24 June 2010, 09:29 GMT
linux32 is the solution. Or just turn that feature off and do not use $arch in your Server line.
Comment by Dan McGee (toofishes) - Thursday, 24 June 2010, 11:55 GMT
I'm not seeing the bug here. You do know you can specify "Architecture = i686" and things will work just fine, right? And of course use linux32...
Comment by Nikolay Bogoychev (Dheart) - Thursday, 24 June 2010, 13:22 GMT
Okay, my bad, didn't know about the architecture line in pacman.conf. It works with it quite fine, the wiki needs editing, close the bug report, please.
Thank you for the quick response.

Loading...