Download package dependencies for offline installation ?

is there a way to get urls of the packages that have been updated and then download them in another computer?
like this feature of ubuntu HOWTO: Download package dependencies for offline installation - Ubuntu Forums

its a simple feature and its present in smart and synaptic,yet its not in yast (or i havent found it yet.

i would use smart package manager but in my home connection for checking for updates ,yast is better ( smart downloads filelist.xml.gz that is very way biger than what yast downloads (though it enables smart to show filelist of package BEFORE installing)
.so at home i can check for package update with yast ,buy downloading them is very hard. (my connectioon is very bad (i live in iran) and yast mirrors are NOT the best of servers ,so yast gets interrupted in middle downloading a rpm and the whole process is waiting for me to press retry ,so i cant do updates and installs overnight.btw is there some way to tell it to retry always or a number of times automatically? )

i need the url links of rpms so i download them separately and install them.

openSUSE 11.2 (coming soon) will have a better download reliability for zypper. Another possibility might be to use rsync to pull the update repository and then you can update from your local repo. However, the initial download may be a problem with a slow connection, as the repo has grown to something like 5+GB.

maybe i didnt say it right
i meant to say i want to download packages that are from many repositories , NOT JUST update repository.
so in smart i can use its --url or something like that option in terminal or ,in gui i can disconnect the internetr just before clicking apply change and after clicking it gives me an error massage with urls to download so i can copy and paste them.

but yast is still a very weak point of suse ,and sadly it has nothing to do with rpm specifics or any other major redhat system function, its just that yast doesnt make it very easy to do things,…many things that other package manager have as very basic and easy options and very ,you know,default ones.i mean when u install sofware with yast it uses the urls of to download them and the site directs yast to mirrors (i hav etried it with download manager and saw it get directed to other mirrors) ,so yast uses the basic why not give the option so buser can download the packages himself?
in synaptic its right there in first menu of it to save the packages and their urls so user can download them.
but in yast it just saves (import export ) whole packages list with their info and status (installed , remove ,install update and so on) but not their urls :((. i mean how hard is that?

zypper equivalent of yum —downloadonly, 02/02/09, Mike’s blag

You can but there should be a new zypper flag in 11.2 which presumably will make the transition to the gui.

its good to know that zypper is gonna have a download only option but its no use to me and my problem.
1)my problem IS downloading with zypper.i dont wanna download with yast or zypper because of errors and lack of resume of interrupted download (which is one of other basic option in all other package manager but yast :slight_smile: )

i dont want the cache of packages because if i could get yast to download my packages without me clicking reply or getting to download a 100 mb package like 5 times to get it right ,i wouldnt need the cache.

  1. and i am sure that yast wont put an option in GUI mode to give me the urls. it would eventually put the download option but you would have to download them with yast , which in my opinion in does NOT have a good download manager (aria2 or whatever it is, can be used with an option in command line and i have used it before with better result than yast without it, but still its not like retriver or IDM or flashgot. and aria2 doesnt work with some repositories like NVIDIA ,it seems that NVIDIA doesnt recognizes araia2 when checking for their repositories update).

Did you check out smart package manager? Its what I use most the time on openSUSE.

Mmm well your needs are a bit out there and special, it is only for this scenario it “could” be needed. So not sure why you should be accommodated but to your problem…

The only way I can see you doing this is by walking the tree so first you need a resolv xml then you would need to walk them.


curl | patt GB

My patt is an awk expression to cut out paragraphs…

awk 'BEGIN{RS="";ORS="

"}/'"$1"'/' $2

I’m not sure what you’re asking is provided by any package manager this is a rather peculiar situation, maybe you need to look at why Yast/zypper is timing out rather than hacking around it.

Hindsight why even use the mirror list this maybe superflous just get the resolv xml and walk it.

plz read my first post
as i have said i used smart before and it was good for giving the urls
and i said in my 3rd post how to get urls in smart and its ability to resume

but its not a good download manager. my packages get interupted in middle of downloading in smart too.

and in my connection smart is not a good option to check for updates because it download the filelist.xml.gz thngy which is the bigget info of repo that yast doesnt refreshing repos in yast is way faster that smart.

Yes, but smart also resumes where it left off. If one does not want that resume (where it left off) to happen, just go to /var/lib/smart/packages (or someplace around there) and remove the partial file. I’m not at a linux pc right now and I’m going by memory (with a splitting headache).

I disagree 100% here. Smart IMHO is FAR superior to anything debian or zypper/yast have when it comes to assessing and downloading updates.

There is MUCH more to this than just “refreshing” the filelist.xml.gz as you call it.

its a rare need right?
so why every other package manager has it?
read above post,that says use smart.even smart has that option in commandline.
and read this to see that ubuntu has this “out there and special” need taken care of a long time ago.
i dont want to insult anybody but plz read my post before you decide that its a stupid question and or that no other package manager has that option.obviously you are NOT very good with synaptic in ubuntu that has this option in FIRST menu of it.and i have said that it has check that it has ,before u say “I’m not sure what you’re asking is provided by any package manager this is a rather peculiar situation”.

Also, a point about your first post. You did NOT say you had used smart before. … .you said you “would” use smart, but … then you gave some reasons that I don’t happen to agree with …

By saying “would use” does not say you have used. Rather it suggests that you may have just assessed it without actually trying. The rest is up to the user to guess whether or not you have tried.

Since some of your conclusions about smart were incorrect (in my view) then I thought you had not tried it. It appears to me now you simply either missed features, or misunderstood them. Thats all IMHO and not intended to be anything further. We all miss things / features about packages at times.

Do you know what your attitude sucks…

Find your own solution but it can be done…

as i said i want it to download them all WITHOUT my interaction.

then why i refresh packman repo in yast and it takes like 1 min but in smart it download a 2mb AND a 11mb file to refresh packman repo which on my connection (128kb/s) takes like at least 10 min.

so yast is faster because it doesnt download filelist.xml
not because its better.i agree that smart is smarter( or at least was before opensuse11.1 came out),but yast is faster in refreshing repositories.
or maybe i have set and option to refresh filelist as well?which i doubt because i havent touched smart options (which are not that many)

One other note about repositories, … which is a bit off topic, … but its important this be put in context since you are complaining about a poor connection to the Internet.

Unless you are a skilled average openSUSE Linux user or an advanced openSUSE Linux user, then IMHO you should always stick with only 4 repositories in your Software Package Manager of choice. Just 4. No others. None. The 4 I recommend are OSS, Non-OSS, Update and Packman. In fact, if have the installation DVD, you can even sometimes (not all the time) dispense with OSS, as the DVD provides some of that.

By only having those 4 repos you solve 99.9% of the dependency hiccups new users have by NEVER encountering such hiccups. And you have far less to download/keep up to date when your Package Manager runs.

You simply are not missing much by only sticking with those 4. Add more only an as required basis. To do other wise is IMHO a waste of bandwidth, which for me here in Germany does not matter, but for you where you live is entirely another matter.

Indeed, but I wonder if it will stay that way? Lets see how things pan out with 11.2 zypper, as it is supposed to improve on 11.1 zypper and allow the details of packages that have not yet been downloaded, to be displayed (although I could be wrong here).

But as you point out, YaST does not give all the information one might want. I’m also of the view that Smart’s dependency resolution algorithms are no longer superior to that of YaST/zypper, but infact YaST/zypper may be superior. But I do believe the presentation in smart is far superior to anything in synaptic or yast, when it comes to assessing what updated rpms are available. That saves ME time, as opposed to just saving bandwidth where I am not watching and don’t really care.

Smart saves me time where I care. Not where something is taking place in the background and I don’t care.

One does not have to do a “smart update” before selecting and downloading with smart, BUT if one does not, it is possible that the application that smart has a list of in its cache is out of date. My view is if one is bandwidth limited, then one should update less.

Instead, for packman (one of the 4 repos I recommend) I recommend a user go here and browse the packman updates: PackMan :: Updates
Then, and only then, if one sees an update they want, should the “smart update” be launched.

That is what I do, and I have a very large bandwidth at home.

you are right i have not said i used it before ,but from my post you get that i had, like when i say what smart download and that is has the option for getting urls.
but ok i say now that i have used smart and it is slow for me in refreshing repositories . and btw in smart gui you dont get the urls unless you go offline and extract them from error massages,but in synaptic u can just get them in from menu.

and to that guy that said my attitude sucks: i learned a long time ago to be polite but not care what other people think of my way or attitude.but thanks for your answer and sorry if i offended you, but next time check before you say thing like “i dont think any other package manager has this” or that “its very special need”.
just because ur yast doesnt gives u error on ur connection doesnt mean the same thing for others.and go read openFate request to see how many persons have complained about yast errors in downloading and in inferiority to other package manager. i like suse and i want to see it progress but with a package manager like this… .

An explanation as to how this might work.

Lets say the last time I did a “smart update” was 4 weeks ago. Then I read of application-a which is real neat, and I do not have installed. So I immediately launch smart (but do not acess the internet with it yet) and sure enough, application-a is available, but not installed.

So I select application-a for installation. Smart starts the download for it, and also starts the download for application-b, application-c, application-d and application-3, which are all dependencies.

Unfortuantely, after smart finishes downloading, it advises me that application-c was not available.

So I note application-c was with the “Update” Repos (and not Packman), so I tell Smart to ONLY download the updated list for “Update” repos. Smart does that. And then I tell smart to install application-a again. This time smart ONLY downloads application-c (because it already downloaded the others) and it installs all the applications.

Not once in that scenario did I have to update the Packman repository list.

Ditto …

but next time check before you say thing like "i dont think any other package manager has this

I told you and solved it, it still will need tweaking but you need…

–dry-run and -v with a tee whilst not getting the urls you’ll get the repo which is the same as you just add on the front…

this option (seeing updates only) is available in yast inside gnome ,or from commandline using yast with --gtk flag that runs the gtk interface of yast. so yast does have this feature but just inside its gtk version (which btw another weak point of yast that gtk and qt version have different structure AND different options :slight_smile: .they should have the same options (obviously all the option of two interface combined ) but with different graphical widgets,not two entirely different interface that first time i saw it thought was another package manager all together .

as i said i dont like yast or zypper downloading just to much problems on my connection.
so if there is a way that yast gives me the urls of to be installed packages,say it out loud .
i try ubuntu new verion next week and i may abandon suse all together just because of ubuntu vast app repos and better package manager.
and i have asked the same question i have asked in this post at ubunutuforums and they just pointed to synaptic menu and vollaaaaa.