PDA

View Full Version : How to download entire RPM Packages (dependencies and all) for later installation.



ultimal
27th July 2007, 09:24 PM
Hi,

I don't have internet access at home (I live in the wilderness out in the middle of a jungle). So downloading and using yum is not an option. I was wondering if there is any way to download rpm packages COMPLETELY, i.e. not just download the package but download the package and all of its dependencies and all the dependencies of its dependencies and so on. I need to download Beryl for now but I keep coming across dependency issues every time I download something and try to install at home. I use FC 7 32Bit Edition.

Thanks.

JN4OldSchool
27th July 2007, 09:43 PM
What if, if you have another computer somewhere running F7 you can use revisor to construct a series of install DVDs with whatever UP TO DATE packages you want to include. You can even include the Livna repo in Revisor and install the nVidia driver, mp3, video and anything else! Just create your package and DL it then burn the ISO to a DVD(s) and install at home.

William Haller
27th July 2007, 09:52 PM
It isn't easy to do that. Even if you mirror the repository completely (as we do here for our in-house systems), there will still be times when you sync up to the repository in the middle of a package upload on the mirror end. You will have the latest packages the mirror has, but may still be missing some dependency that hasn't yet made it to the mirrors.

Look at yum-pull (google) for a good start to mirroring. We have made some additional helper scripts that we have added to that for our in-house copy of that package to keep from pulling down older packages that might be found on some mirrors and not on others.

The best bet would probably be to carefully go through the available packages and just go ahead and install the most recent copy of anything you think you might possibly want the next time you have access so yum can handle getting any dependencies it needs.

If the home system can't be moved, then a mirror might be your next best bet, but it would involve a huge download. If you are downloading to a Linux system (but not your home system), you could use RPM commands with --requires and possibly build your own tree of dependencies before you leave the download site repeating the process with each new RPM downloaded and comparing it with your known home RPM list. Somebody may well have a script to do just that.

You can install individual packages off the DVD with rpm, but if other files have changed since the DVD was burned, it may well complain about dependencies.

gthill
27th July 2007, 09:57 PM
You can also mirror the whole fedora package as well. I have a mirror on a portable hard drive and have configured yum with local.repos for livna,updates and everything. Then whenever you get to a fast internet with lots of download capacity you can update that, then update your system from the hard drive. It's a big download initially but once its done the system update is very fast and you can install/remove till your hearts content, even in the jungle. You can get the base from the dvd.

gthill
27th July 2007, 10:07 PM
[QUOTE=William Haller]It isn't easy to do that. Even if you mirror the repository completely (as we do here for our in-house systems), there will still be times when you sync up to the repository in the middle of a package upload on the mirror end. You will have the latest packages the mirror has, but may still be missing some dependency that hasn't yet made it to the mirrors.

This is always possible but if you keep repeating the sync until there's nothing to sync anymore you reduce the chances . I haven't experienced dependency problems with this method but if you do it will probably be for a select few packages .

JN4OldSchool
27th July 2007, 10:12 PM
sheesh, it's not like the dude wants to make revisor ISOs all day long, just a one shot DVD he can install from. I suppose you do have a point that a mirror COULD be syncing something just as you go to DL, but wouldnt this be handled the same as a yum update? I mean, wouldnt it tell you it failed such and such package? Besides that, I am not a gambling man, but if I were?....well, I will take those odds. BTW, I doi like the idea of a USB external drive better. That actually makes good sense.

vinbob
27th July 2007, 11:31 PM
I was going to suggest http://rpm.pbone.net as they have an rpm search that lists dependencies.

But in the case of Beryl I wouldn't bother if I where you.
Not only because Beryl is now deprecated in favour of Compiz-Fusion but it could get pretty messy leading to the old "dependency hell" situation.

If you really feel the need to get the extra desktop effects without an internet connection I suggest foregoing the package manager route & grabbing the tarball from Compiz-Fusion (http://www.opencompositing.org) and checking out their forums.

HTH