Hello, On Wed, 02 Oct 2013, AP wrote:
This really seems a big story behind the two big and different (perhaps) scenarios - .deb and .rpm. The wikipedia link is great. I guess whole of the world's linux is categorized in either of these two categories.
Not at all. It's the same concept. Created and packaged slightly differently. Compare .msi vs. .exe or rather .msi vs. .cab in the Winders world ... (as the .exe brings the installer (often InstallShield (-> see "rpm" and "dpkg" the programs)) along with it and .msi, .cab, .rpm, .deb do not). In the winders world, you'd get a "install.exe" or "setup.exe" along with that .cab files (with .msi it's in the system just like with .rpm/.deb you use rpm/dpkg, it comes with the system). Usually though, you do not use rpm/dpkg directly, but use frontends like apt-get, aptitude, zypper, yast, yum, .... (but there is a lot of nifty stuff you can do that the frontends can't). As you ask here and opensuse uses RPM, try finding the equivalent to even the very simple rpm -qa --last | less with any frontend. AFAIK: neither yast nor zypper can do that. But why should they reimplement a feature that is already implemented just fine in rpm? Yes, a sort of "shim" just calling rpm and displaying the output would be nice, but, ah, let's say, stuff like that is not a priority ;) Ok, now, for you to help understand that rpm vs. deb more clearly: Think of a program. That program consists of a set of files that use other files (libraries) that have to match. You don't have to worry about that though, that what those packagemanagers (rpm, dpkg etc.) are supposed to handle for you. Ok, so, you got a bunch of files need some libs in some version each. What now. You bundle them up. And add to the bundle what libs are needed for the program to run. How you actually bundle and "add" the dependencies is rather irrelevant. Same job. But there have emerged 3 main ways to do it. DEB, RPM and PKG/Ports (aka tarballs, forget about that for now again). The job? Well: bundle the files: /usr/bin/foo /usr/lib64/libfoo.so.0 in some kind of archive, e.g. tar (as .deb does) or cpio (as rpm does). Now comes the hard part, the dependencies: /usr/bin/foo needs some libglib-2.0.so.0 and libfoo needs that _and_ some libbar.so.0. We want, that you are notified to install those libs if not already installed. So we add something to the .deb/.rpm (in whatever way, how is irrelevant (deb uses an extra tarball, rpm a header)) to tell the installer (dpkg/rpm) to also install whatever provides us with libglib-2.0.so.0 and whatever gives us libbar.so.0. If you use dpkg/rpm directly, they will tell you just that you need to install libglib... and libbar first. If you use a frontend like apt-get, aptitude, zypper, yast, yum, etc., the will automatically select the packages providing those two libraries (and _their_ dependencies as well). So, basically, your question sums up to something this: Should I put my resumee in a black or a blue folder? Staple or bind it? And what's the difference between the black and the blue? Does the _CONTENT_ of your resumee differ in any way depending on what coloured-folder you put it? Whether you stapled it together or bound it in some other way? Does it change the _content_, if you wrap your gift for your loved ones in blue, green or red for christmas? It changes the outside, you may have also have changed the stuff for the ribbons. But as much as you may change ribbon-material and other packaging, it does not change the content. Think of .deb as "stapled and blue" and .rpm as "bound and black". Or the other way around. It does not matter. HTH, -dnh -- I can resist everything except temptation. -Oscar Wilde -- To unsubscribe, e-mail: opensuse+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse+owner@opensuse.org