Thursday, June 04, 2009

Fedora 11: yum hangs on 'Setting up Package Sacks'

NOTE: this post was originally written after seeing this problem in rawhide. The problem persisted into Fedora 11, but all the notes below are for a rawhide configuration. The fix below works for the fedora.repo also.

If you are trying Fedora 11 and yum hangs showing the following output:
# yum -v update
Config time: 0.045
Yum Version: 3.2.22
Setting up Package Sacks
_
Do not fear. There are (at least) two reasons why you can see this issue. First, the problem may just be an intersection between your proxy's configuration and the default yum configuration. If you are behind a proxy, just edit the file /etc/yum.repos.d/fedora-rawhide.repo and change the default "mirrorlist" entry to use http instead of https as follows:
mirrorlist=http://mirrors.fedoraproject.org/metalink?repo=rawhide&arch=i386
enabled=1
Of course, you will need to leave the "arch" as x86_64 if you are installing on a 64bit machine. The default https that fedora has chosen will not work with many "transparent" proxy setups, so just change it to http, and you should be fine.

Note, all this assumes that you set up your proxy as follows:
# export http_proxy=http://my-semi-xparent-proxy.com:8080
And when you do run a yum update, run it like this:
yum -v --enablerepo=rawhide update
Alternatively you can edit the /etc/yum.conf file and add a line like this
proxy=http://my_proxy.com:port/
Which brings us to the second easy way to get yourself stuck staring at 'Setting up Package Sacks'. This came up when folks were updating Fedora 11 - preview ... that is, do not run it simply as "yum update" like I did, because it will look as though it does the update just fine, but it will break yum. Doing a simple "yum update" without enabling rawhide will enable the base fedora.repo and the fedora-updates.repo, which will also cause yum to hang at 'Setting up Package Sacks' again with the new "https" in the newly updated "fedora.repo".

Then again, you may enjoy having some extra time while you stare at yum hanging at 'Setting up Package Sacks' until it times out, I sure did ... it gave me enough time to write the following rant.

Remember ... this was the Fedora 11 preview, so you do not want to enable the normal repositories. This is a "feature bug" in my opinion. Doing an update should not change my enabled repositories without prompting me first. I say this is a bug because I have used Debian (sid) for years, and I have been using Redhat/Fedora for just as long, but I have never had this problem with Debian. Flame away.

Hope that helps.

UPDATE: Although this blog entry was for "Fedora 11 - preview" the solutions suggested here, as the anonymous comment below suggests, may also apply to Fedora 11 which has now been released.