Slashdot Mirror


Fedora Project to Help Revitalize RPM

-=Moridin=- writes "The Fedora Project has announced plans to revitalize RPM, the package manager used by many Linux distros. According to the announcement, 'Job #1 is to take the current RPM codebase and clean it up, and in doing so work with all the other people and groups who rely on RPM to build a first-rate upstream project.' For more information, see the the RPM web site and the new wiki-based RPM FAQ. The issue of RPM's upstream development has been a thorny issue ever since Jeff Johnson, the original maintainer of RPM, left Red Hat."

334 comments

  1. First improve the UI by MichaelSmith · · Score: 3, Insightful

    RPM has about 30 options you can enter from the command line and if you don't get the command right it just echoes the list back at you, as if that is any help. Most shell commands try to help by providing a few simple examples.

    Package managers, like revision control systems have complex functions and their help systems need to do more than just say here are the options you can use

    1. Re:First improve the UI by Anonymous Coward · · Score: 0
  2. I have a... by A+beautiful+mind · · Score: 5, Funny

    ...good solution for them. Or should I call it apt?

    --
    It takes a man to suffer ignorance and smile
    Be yourself no matter what they say
    1. Re:I have a... by Anonymous Coward · · Score: 0

      apt is akin to a yum OR up2date.. if you want to compare RPM.. compare it to a .deb (OR dpkg)

      - thewalled

    2. Re:I have a... by A+beautiful+mind · · Score: 1

      Sorry people. I thought the humour impaired get out of the woodwork at a much later date. I'll go away in shame. Yeah, I did not know that .deb is the packaging format, after all I only use debian on my desktop for more than half of a decade...

      --
      It takes a man to suffer ignorance and smile
      Be yourself no matter what they say
    3. Re:I have a... by pembo13 · · Score: 3, Funny

      You shouldn't since apt is in no way involved.

      --
      "Thanks for all the money you paid to us. We've used it to buy off ISO among other things" -Microsoft
    4. Re:I have a... by Anonymous Coward · · Score: 0

      I though it was really funny.
      Just wanted you to know that.

    5. Re:I have a... by Jesus_666 · · Score: 3, Funny

      I am forever indebted to you for your apt remark. I am sure that a common standard will emerge, which we can all use to install Free Pacman clones and video game ports with a single klik. After all a smart package manager is a recipe for success.


      ...I shouldn't post when tired. I tend to emulate Mookie, badly.

      --
      USE HOT GRITS WITH STATUE OF NATALIE PORTMAN (NAKED AND PETRIFIED)
    6. Re:I have a... by geschild · · Score: 1

      I am forever indebted to you for your apt remark. I am sure that a common standard will emerge, which we can all use to install Free Pacman clones and video game ports with a single klik. After all a smart package manager is a recipe for success.
      yummie! :P
      --
      Karma? What's that again?
    7. Re:I have a... by A+beautiful+mind · · Score: 1

      You own me a keyboard for the damage the mineral water out of my nose did to it... :)

      --
      It takes a man to suffer ignorance and smile
      Be yourself no matter what they say
    8. Re:I have a... by daBass · · Score: 1

      apt and rpm are different things. apt is a package manager for - mostly - the .deb package format.

      rpm is both the file format and *a* tool to work with them, just like you can use apt to install a single, downloaded .deb. But in the Fedora world, "yum" compares to apt as a package manager and performs pretty much the same role and does it pretty much as well as apt does.

      Another major RPM distro is Suse. In their world, YAST compares to apt.

    9. Re:I have a... by Anonymous Coward · · Score: 0

      I must agree.
      The RPM hell is ... HELL!
      I drooped Red Had long time ago. I just got so sick of this endless RMP bull shit.
      *BSD's Ports and Gentoo superb Portage are the sane way to go.

    10. Re:I have a... by Otter · · Score: 0, Flamebait
      Yeah, I did not know that .deb is the packaging format, after all I only use debian on my desktop for more than half of a decade...

      In fairness to you, Debian hasn't had a new release since 1999.

    11. Re: I have a... by gidds · · Score: 1
      That's what you fink...

      --

      Ceterum censeo subscriptionem esse delendam.

  3. Code cleanup... by nighty5 · · Score: 5, Funny

    Job #1 is to take the current RPM codebase and clean it up.......

    Easy job, this took care of it.... :

    rm -rf /var/lib/rpm

    1. Re:Code cleanup... by Anonymous Coward · · Score: 0

      And that is exactly why people like you should not be allowed to write software packages, and why something like RPM and the other package managers are necessary. You forgot the libraries, the binaries, the documentation, and anything else you happen to have which relies on any of those which just became extraneous when you flushed that, and made it impossible to recover from an accidental deletion.

      Next week, we'll explain why amateur Perl programmers should not try to replace "make" with their own amateurish efforts.

  4. apt is not an alternative to rpm by Freggy · · Score: 1

    apt has nothing to do with rpm. If you search an alternative for rpm, there is dpkg which uses the deb format. apt on the other hand, is an alternative to yum, urpmi, yast, smart,...

  5. Has RPM improved at all? by PhrostyMcByte · · Score: 3, Interesting

    It's been a *long* time since I've used an RPM-based distro. Do RPMs still have a confusing dependancy circle hell? It was perhaps the most frustrating and poorly handled thing about installing software on really any OS I've tried.

    1. Re:Has RPM improved at all? by Viraptor · · Score: 1
      Should anything be improved about RPM at all?
      It's good as it is. Especially with possibility to depend on library version instead of package (if used wisely by packager). It's fast as hell and packages are easier to make than .debs (been there, done that).
      But I won't be ever using rpm based distro if I can. I've seen lately CentOS 4 and basically it looks like my old RH5. Every time I need some package, I have to look for yet another repository / single package on google, because official ones don't think it's nice to include stable mysql5, dar, jabberd, or any other package you want.
      I don't see any problems with rpms as files. But as system packages? NO! I'd rather wait 3 times longer every run, until apt-get updates it's database, or just schedule packages info update for midnight for emerge.
      Stats that do say something:
      • 3 day old CentOS - 2 custom packages and 5 new repos for basic system - and it's not complete yet
      • 2 year old ubuntu - 1 repo for author's own testing versions of 1 package
      • 2 year old gentoo - 0 repos needed
    2. Re:Has RPM improved at all? by Anonymous Coward · · Score: 0

      Do RPMs still have a confusing dependancy circle hell?

      Some (most?) distros has higer level tools taking care of it, like Mandrivas urpmi which handles all
      dependancies and only uses rpm to unpack the files (roughly speaking). SUSEs yast/rug does something
      similar I think.

      - Peder

    3. Re:Has RPM improved at all? by Anonymous Coward · · Score: 0

      How, pray tell, does any other packaging system magically remove the dependency problem?

      rpm is just a low-level frontend to the RPM database (or system, or whatever you want to call it). dpkg is the same. If you try to dpkg --install a .deb and it depends on something you don't have, you will run into the same problems.

      The problem isn't RPM, the problem is a sheer misunderstanding of what they are doing.

    4. Re:Has RPM improved at all? by Antique+Geekmeister · · Score: 2, Insightful

      Every dependency system has that, including RPM, pkg, apt, and even Perl's CPAN setup. Resolving dependencies like that is not something bare RPM can do on its own: it needs some sort of knowledge of the various places you might pull software from and resolve the discrepancies, like Yum attempts to do, on top of RPM. Different programs all use common utilities, like modutils and tar and glibc and OpenSSL and popular Perl libraries: updating one of them may mean needing to update the others.

      The people who think this is easy to solve are the people who are happy to update 15 packages to fix one program that has a dependency it doesn't even really need on an upgraded version of another, trivial package, and then are surprised when they destabilize their whole OS because the other 1500 packages have never been tested with those new 15.

    5. Re:Has RPM improved at all? by ObsessiveMathsFreak · · Score: 1
      Do RPMs still have a confusing dependancy circle hell?
      No. It's more akin to a mobius strip.
      --
      May the Maths Be with you!
    6. Re:Has RPM improved at all? by timbo234 · · Score: 1

      3 day old CentOS - 2 custom packages and 5 new repos for basic system - and it's not complete yet
      2 year old ubuntu - 1 repo for author's own testing versions of 1 package
      2 year old gentoo - 0 repos needed


      This is a problem with the distro, not the package management programs. Personally I avoid RHEL/Centos and Fedora on desktop machines for just this reason - Mandriva , Debian, Ubuntu and Gentoo have way more packages in their repos, even Suse beats Fedora I think.

      --
      Pre-canned Evolution Links for all those Slashdot holy wars.
    7. Re:Has RPM improved at all? by hackstraw · · Score: 1

      Every dependency system has that, including RPM, pkg, apt, and even Perl's CPAN setup.

      I guess my opinions of RPM were just too ahead of the time, and now people are catching on.

      To put it bluntly, RPMs suck. The real fun comes when you actually build and maintain RPMs, and then you realize their ugliness.

      However, I'm kinda not happy with the whole package system at times. Sometimes its just easier and better to compile something yourself because of the features or custom patches you want to add to something (this is open source) and then if the program is not registered in the package system.

      Then if something depends on it, even though the dependancies are met, the package system is not aware of that.

      The thing is that I don't believe there really is an answer, and that is why sysadmins exist.

    8. Re:Has RPM improved at all? by PhrostyMcByte · · Score: 1

      Perhaps I should have said "the RPM experience" instead of just RPM. I realize it's just a package, like .deb, but that doesn't change how hard it used to be to work with them, even with websites dedicated to hosting every dependancy you could find. I was just curious to know how the overall experience has improved.

    9. Re:Has RPM improved at all? by carpecerevisi · · Score: 1

      A small disclaimer, I've never really been involved in the admin of a system that's used anything other than Mandr(ake/iva). Basically, over the past 2-3 years, I've never had any problems, simply by using urpmi, configured with easyurpmi at install. I want make? I "urpmi make", I get the latest make from the repository, along with all dependencies it needs and I don't have. I have no experience at all with yum/aptitude etc, but I *have* used urpmi, and it seems to work for me

    10. Re:Has RPM improved at all? by Antique+Geekmeister · · Score: 1

      Yes, that's completely reasonable. But that's when you build it in a sandbox, and then RPM bundle it to get it under a management system so that the setup for your test box is the same as on other people's live setups.

      A lot of the problems of RPM and other packaging systems benefit when the author has to actually bundle it, and when the bundlers contact the author and point out where they've violated standards. And refusals to bundle cleanly, or to work with software bundlers, are why Pine is no longer in RedHat, and why no RPM-based distribution includes Dan Bernsteiin's tools: they won't even permit others to modify the system to package it more cleanly.

    11. Re:Has RPM improved at all? by AmberBlackCat · · Score: 1

      I'm not sure if it's a circle but when I was trying to install OpenOffice, the first thing I learned was there is not a single install file that handles everything. So I selected the packages that had "writer" and "calc" in the filenames. They told me they couldn't be installed because I had to install core something or other. So I selected that package too. It couldn't be installed because of core something else. There were a whole lot of these cores. Eventually I just decided to select every package in the folder. That worked. Then there was another folder that had the desktop integration and I actually had to select a particular package from this folder that matches the particular user interface I was using. I'm used to the Windows way of clicking on some license agreement to give them my children and become a sex slave for ten years or something, but after you click "I Agree" the whole process gets really easy. So unless they have some option in the RPM method for selecting options and automatically installing libraries your options depend on, I think it needs a lot of work.

    12. Re:Has RPM improved at all? by J.Y.Kelly · · Score: 1
      Perhaps I should have said "the RPM experience" instead of just RPM. I realize it's just a package, like .deb, but that doesn't change how hard it used to be to work with them, even with websites dedicated to hosting every dependancy you could find. I was just curious to know how the overall experience has improved.

      In Fedora at least things are much better than they used to be. A lot of the user maintained packages which used to be spread over lots of repositories are now mostly collected in Fedora Extras, which has a proper review process to make sure that it's consistent both with Core and the rest of itself.

      There are still other 3rd party repositories containing either packages which redhat can't host for legal reasons (patents, licenses etc), or packages which haven't gone into extras for some other reason. Some of these make efforts to stay compatible with core/extras, but you still occasionally get version conflicts when using multiple 3rd party repositories. In these cases there is now the Smart Package Manager which does a much better job than yum of figuring out the best way to resolve these conflicts.

      Things have improved a lot since the RH7.x days.

  6. misread by lovebyte · · Score: 3, Funny

    For some reason, I had misread "...a thorny issue ever since Jeff Johnson, the original maintainer of RPM, left Red Hat." as Horny issue. So I did a google image search on Jeff Johnson, and I can confirm it was horny (in a homo-erotic way).

    --

    I'll do it for cheesy poofs.

    1. Re:misread by Anonymous Coward · · Score: 0

      Hey! Those dinosaurs are a heterosexual couple!

  7. Obligatory.... by zanderredux · · Score: 1
    My way out of dependency hell as to pick a source-based distros, like Gentoo.

    Now I have compile time hell, but that's quite more manageable than crazy RPMs all over the place.

    1. Re:Obligatory.... by Anonymous Coward · · Score: 0

      .deb?

    2. Re:Obligatory.... by Fallingcow · · Score: 1

      Exactly.

      My experience with RPM hell is exactly what made compiling everything in Gentoo seem like a reasonable alternative. It was that bad.

      Now I'm on Ubuntu, and much happier than I was even with Gentoo and Debian, but I'd still take either of those over Red Hat. *shudder* I like to be excited when installing a new pacakge, not terrified!

    3. Re:Obligatory.... by krewemaynard · · Score: 1

      Dude, have you been following me or something? :) That pretty much mirrors my experience.

      I used RedHat up until they dropped RH9. (It didn't help that my RPM database was obliterated, making any attempt at package management futile.) I switched to Gentoo for a while and loved it. It was the first time I ever really dug into Linux, and I still make use of that knowledge today as a happy Ubuntu user.

      More to the point, it's going to take a pretty big overhaul of RPM to get me to use it again. I recently installed Fedora Core 5 to test it out, and it was not pleasant. Neither was Suse. To date, my worst Linux experiences have been RPM-based distros.

      Also, I refuse to use a distro that requires me to burn more than one installation CD. I am not going to download and burn 5 iso's when I can get one and install extras later (easily).

      --
      I saw it on Slashdot, it must be true!
  8. rpm -uvh apt yum by Anonymous Coward · · Score: 0, Interesting

    children under 7 must be accompanied by an adult
    each one is able to support more than 14 tons
    and you can really see how big it is
    and together they stretch for almost 1/4 mile
    2.5 times the height of mount everest (the highest point on earth)
    this super-imposed outline will give you an idea of its size
    it's 370 miles wide at the base
    and over 100 feet in length
    but that's 40 miles from the opposite rim
    and over 75,000 feet at the top
    and that figure increases every year
    Rugged, easy-to-clean plastic laminates are used on all the walls and surfaces
    and that figure increases every year
    the floors on which you are walking
    the floors the floors on which you are walking
    the floors on the floors on the floors on which you are walking
    the floors on the floors on the floors on the floors on which you are walking
    children under 7 must be accompanied by an adult

  9. You Have It All Wrong by eklitzke · · Score: 4, Insightful

    I have read through the (very few so far) messages in the new mailing list, and based on the discussion there as well as the similar discussions that have taken place in the past, I think that the general consensus is that users should not be using the rpm command line tool for package management. Rpm (the CLI tool, not the format) should be like dpkg in the Debian world -- a very low level tool for package management. If you want something user friendly to use at the command line, use yum, apt-rpm, yast, or whatever other high level tool floats your boat.

    In fact, to a large degree it is more important that better rpm bindings (especially for python) be written. This is how yum works -- it is able to do all of this using the python bindings, instead of calling the rpm tool itself. Calling rpm -i foo.rpm should really be a last resort option. (For those that are curious, yum already has a --localinstall option for doing this.)

    --
    #include ".signature"
    1. Re:You Have It All Wrong by MichaelSmith · · Score: 1
      users should not be using the rpm command line tool for package management.

      Repository management works well in pkgsrc with pkg_add, pkg_del, pkg_info, etc. There is no need to add an apt or yum lookalike over the top, and the interface is simple and intuitive.

      The situation with yum seems to be that rpm is in the THB (too hard basket) and they are writing a wrapper to hide the problem.

    2. Re:You Have It All Wrong by davidkv · · Score: 4, Informative

      The situation with yum seems to be that rpm is in the THB (too hard basket) and they are writing a wrapper to hide the problem. rpm has no concept of repositories. It's main task is to install/remove/query/verify/etc rpm packages.
      Yum and others handles repositories and dependency solving.
    3. Re:You Have It All Wrong by mrchaotica · · Score: 0, Flamebait
      If you want something user friendly to use at the command line, use yum, apt-rpm, yast, or whatever other high level tool floats your boat.

      If you're going to be using apt anyway, what's the point? Why not just give the damn thing up and start using dpkg? Is it not-invented-here syndrome at Red Hat, or pure stupidity, or what?

      --

      "[Regarding the 'cloud,'] ownership was what made America different than Russia." -- Woz

    4. Re:You Have It All Wrong by jimicus · · Score: 1

      Rpm (the CLI tool, not the format) should be like dpkg in the Debian world -- a very low level tool for package management. If you want something user friendly to use at the command line, use yum, apt-rpm, yast, or whatever other high level tool floats your boat.

      It wasn't all that long ago that this wasn't possible in RedHat. IIRC, everything before Fedora Core, "rpm -ivh <package>" was exactly what you did. If it had dependencies, it would tell you, but actually solving them was your problem. This was the exact reason I moved to Mandrake (as it was then), which had already improved matters substantially with a program called urpmi.

    5. Re:You Have It All Wrong by mabinogi · · Score: 2, Interesting
      maybe because when RedHat started, this was the state of dpkg:

      "Debian 0.91 was released in January 1994. It had a primitive package system that allowed users to manipulate packages but that did little else (it certainly didn't have dependencies or anything like that) Besides, NIH isn't all bad - without it, there'd be no competition, and there's a lot to be said for having control of something as fundamental as the package management system of your distribution.
      These days it's not so much of a problem, because dpkg and RPM are both proven to be able to suit the needs of a distribution, but back then RedHat would have wanted to be certain that their package manager was going to do what they wanted, and it may well have been easier to write their own than to try to adapt dpkg.

      The decision to use existing software or build your own is always a tradeoff, it's never cut and dried, and no matter which way you go, you'll always get someone who thinks highly of their own opinion telling you that you made the wrong decision,
      --
      Advanced users are users too!
    6. Re:You Have It All Wrong by Sentry21 · · Score: 4, Interesting

      The problem with that theory is that it doesn't make any sense. Even in the Debian world, I'll come across .deb packages that need manhandling (instalation, removal, retrieval), and the debian command-line utilities (e.g. dpkg) are always simple to use when I need to. 'dpkg -i' to install, 'dpkg -r' to remove, 'dpkg -l' to list matching packages, and 'dpkg -S' to find out what owns a file.

      If you look at the output from 'dpkg --help' and compare it to RPM's, RPM provies a much longer list of options, the vast majority of which no one ever uses, burying the commonly-used functionality in a sea of terse explanation.

      The RPM tool needs to be replaced - possibly with another version of the tool, but removing all the extra cruft from the way it's used. It makes no sense to say 'Well, of course it's messy because you shouldn't be using it'. If the tool exists, it should be usable.

      Even with the APT frontend picking up the slack, Debian has managed to keep dpkg easily usable and keep the help options straightforward, to the point where I rarely have to dig for what I need to do. When I go to work and have to work with the package management tools on Fedora (yum on our workstations) or RHEL (RPM on our servers), I hear nothing but complaints about usability, speed, and reliability from coworkers.

      RPM needs an overhaul, badly, but I doubt it'll get the one it needs.

    7. Re:You Have It All Wrong by tacocat · · Score: 1

      Instead of trying to be like dpkg, aptitude, and .deb, why don't they just adopt that package system for their own so that we can get back to having one install base for binary distribution (like we had once with RPM) only something that actually works over the long run and provides a simple management interface.

      RPM can be a nightmare. DEB can too. But DEB's are easier to install as a "user" because they take better care of their packaging status.

    8. Re:You Have It All Wrong by faolan_devyn_aodfin · · Score: 1

      Actually there is one thing that I would like to see dpkg do that RPM cannot and that I really miss from Fedora Core and that is the ability to flag a package that is "broken" as just "installed". It really pisses me off that every time I go to install something from synaptic I find that QJoyPad gets uninstalled because they have a dependency labeled wrong, yet the program still works without flaw. Other than that dpkg is awesome, but so is RPM and I thing removing some of those "features nobody uses" would really hurt when you really need to use them but they aren't there.

      The solution is simple. they should only display the most common command functions and then at the bottom of the help message display something to the nature of "for more options see the rpm manpage" This way you get your simplified view of command features and the more complex ones if you need them. However, I think they could really clean up their manpages. Perhaps I should join the community on that one since my coding isn't the best in the world (I'm starting out learning C, but I do manage to code well enough not to throw up even warnings, so I'd say I'm doing okay).

      --
      Pagan? Geek? Check out #paganism on Freenode IRC
    9. Re:You Have It All Wrong by hitmark · · Score: 1

      and isn't that the core philosophy from unix of old? that you build many small tools that do simple or limited number of tasks and then connect these together?

      --
      comment first, facts later. http://chem.tufts.edu/AnswersInScience/RelativityofWrong.htm
    10. Re:You Have It All Wrong by Mintrubber · · Score: 1

      It is probably a matter of what you are more used to, but I find the inconsistency of dpkg's options quite annoying and hard to remember, especially when compared to rpm. The main reason is that dpkg uses different options for package files and already installed packages. With rpm, you only have to remember that "q" is for query and that "p" is used for querying package files. So if you want to list the contents of an installed package, it is "rpm -ql ", and "rpm -qpl " for the contents of a package file. "rpm -qi " shows info for an installed package, "rpm -qpi " shows the info for a package file. With dpkg the options are "-L" and "-c" for contents of installed packages and package files, "-I" for info for a package file. The option for showing info for an installed package does not show up at the online help at all. For me, the way rpm options are constructed is far easier to remember than dpkg's inconsistent options. Dpkg is imho a good example how to screw up a user interface. But as I said, it is probably a matter of what one is more used to. The second disadvantage of the Debian package format against RPM is the way packages are built from source. Building your own RPM package is a breeze compared to doing the same thing in Debian. Regarding apt and yum: I think the reason for your coworker's complaints is rather yum than rpm itself. While I totally agree that apt performs far better than yum, these are just the frontends to work with package repositories. The package formats and their basic tools dpkg and rpm are a different matter. Rpm may need an overhaul, but certainly not in the direction of dpkg.

    11. Re:You Have It All Wrong by mrchaotica · · Score: 1

      Okay, so there was a reason to make RPM back in 1994. But is there still a reason to keep it now? If not, then it should be retired just like all the other software that was good at the time but has been surpassed.

      I mean, you don't still use TWM and NCSA Mosaic, do you? Well, then why would you use RPM either?

      --

      "[Regarding the 'cloud,'] ownership was what made America different than Russia." -- Woz

    12. Re:You Have It All Wrong by mabinogi · · Score: 1

      The existence of an alternative, even a subjectively better alternative is not in itself enough reason to change something as fundamental as that.

      There would have to be serious unfixable problems with RPM for them to even consider it.
      Most of the problems people have with RPM based distributions are not problems with RPM itself, and even in the places where other package systems are better than RPM, they're only incrementally better, so the pain wouldn't be worth the gain.

      There's not a whole lot of pain involved in switching web browsers, so it doesn't take much of an improvement to make a switch worthwhile. Besides, if a new web browser doesn't work for you, you can just switch back. If a distro tried to switch package systems, then switch back, they'd probably sink themselves.

      --
      Advanced users are users too!
    13. Re:You Have It All Wrong by cortana · · Score: 1

      You don't want that ability. You will end up with a fucked up system. Instead you want to install the depended-upon package, or fix the QJoyPad package to not depend on it. :)

      If you *really* want to tell apt to ignore the dependency then you can build a fake, empty package with the same name, by using the 'equivs' program.

      Having said all that, it would be nice to have apt frontends offer to continue to indicate that QJoyPad is broken (a technical term meaning that it is installed but its dependencies are not), but to not try to fix the situation by removing QJoyPad every damn time apt is run. :)

    14. Re:You Have It All Wrong by cortana · · Score: 1

      Remember that dpkg is just a frontend to other dpkg tools: dpkg-deb for manipulating Debian package files (dpkg-deb --contents or -c lists the contents of packages among other things; dpkg-query --list or -l lists packages and --listfiles or -L lists the files in a package, among others).

      Also I have to stand up in favour of creating Debian packages. I find dpkg source packages highly sane and very well thought out, and extremely easy to build -- ensure that the build-dependencies are installed, and run dpkg-buildpackage. Although I don't know how to build source RPMs, I assume the process is the same, substituting in the correct rpm command.

  10. Its a bit late by Timesprout · · Score: 1, Insightful

    RPM was one of the reasons I gave up on Redhat as a distro years ago. I got sick of it choking on dependencies and ending up with half an installation. Compared to RPM APT and its front ends are a dream. Maybe Redhat should admit that RPM did not become the dominant player they envisaged because it simply was not good enough and that having so many issues with your package manager in 2006 is a very serious failing if you expect Linux to be adopted by the masses.

    --
    Do not try to read the dupe, thats impossible. Instead, only try to realize the truth
    What truth?
    There is no dupe
    1. Re:Its a bit late by davidkv · · Score: 1

      As a previous poster has already pointed out, apt is not comparable to rpm. Apt is comparable to yum, apt-rpm, yast etc., they take care of the dependencies for you. It's been like that for quite a few years now.

      rpm is two things: a package format (.rpm) and a command line tool. Sort of like .deb and dpkg.

    2. Re:Its a bit late by whoop · · Score: 1

      Man, Solitaire is way cooler than apt or rpm! They need to just get rid of everything in Linux that isn't related to Solitaire. Only then can it really compete on the desktop.

  11. Anti-FUD Post by pembo13 · · Score: 5, Insightful

    1) RPM is not equivalent to APT , or Smart
    2) RPM is not responsible for _solving_ deps
    3) RPM is both a file format and a program to use the format
    4) RPM is _not_ a package manager
    5) RPM has little to do with how much you may love your Debian distro of choice (unless you made that choice solely on the file format of the packages used by your distro)
    6) The existence and use of RPM does not work against your distro of choice, and so there is no reason to fear/hate it

    --
    "Thanks for all the money you paid to us. We've used it to buy off ISO among other things" -Microsoft
    1. Re:Anti-FUD Post by Schraegstrichpunkt · · Score: 1

      4) RPM is _not_ a package manager

      What would you call it, then?

    2. Re:Anti-FUD Post by pembo13 · · Score: 1

      Number 4 is wrong - I was trying to communicate that it was not for resolving dependancies.

      --
      "Thanks for all the money you paid to us. We've used it to buy off ISO among other things" -Microsoft
    3. Re:Anti-FUD Post by ccarvalho · · Score: 1

      RPM is shit, but this shit _IS_ a package manager.

      --
      Friends come and go, but enemies accumulate.
    4. Re:Anti-FUD Post by ajs318 · · Score: 0, Flamebait

      Warning: link in parent post's signature points to material which is homophobic and inflammatory.

      --
      Je fume. Tu fumes. Nous fûmes!
    5. Re:Anti-FUD Post by dangitman · · Score: 1

      4) RPM is _not_ a package manager

      Is this one of those recursive initialisms like GNU?

      RPM's Painfully Mutable
      RPM's Pretty Mindwarping
      RPM Perpetually Mangles

      --
      ... and then they built the supercollider.
    6. Re:Anti-FUD Post by alexgieg · · Score: 1

      Hey, good! Political correctness is a mental disease. These sites are the cure.

      --
      Conservatism: (n.) love of the existing evils. Liberalism: (n.) desire to substitute new evils for the existing ones.
    7. Re:Anti-FUD Post by JungleBoy · · Score: 1

      When people try to make the RPM vs Apt comparison, I usually correct them this way:

      rpm vs dpkg
      apt vs yum/up2date

      I do like rpm/yum/up2date, mostly becuase I've used it for years and regularly roll my own rpms and yum repositories.

      --
      "You never know when some crazed rodent with cold feet might be running loose in your pants."
      -Calvin
    8. Re:Anti-FUD Post by LeneJ · · Score: 1

      Since Red Hat Linux 9, there has been dependancy resolving available. It requires an installation tree or repository, if you like, a list of available rpms (which is installed by default) and the command line addition "--aid". In addition, you can yum-repositories or RHN, which will also resolve dependancy.

      --
      Un paio di scarpe, per favore!
  12. Good. by isometrick · · Score: 3, Interesting
    About 1 in 10 times I try to update something in Fedora, I end up having to:

    # rpm --rebuilddb
    # yum clean all
    # yum <whatever I was doing before>
    Not to mention the inevitable lockup when the tray updater is running or the segfaults when I try to interrupt yum during an operation I don't want to finish. Even when it finally works, it takes yum over a minute just to download stuff and work out dependencies before installing or updating.
    1. Re:Good. by Schraegstrichpunkt · · Score: 1

      It's a trade-off. Debian's flat text-based database means that it essentially does a --rebuilddb, and stores the resulting database in RAM, nearly every time you invoke the package manager.

    2. Re:Good. by drgonzo59 · · Score: 1
      I had to do that too until I just switched to Ubuntu then I could just focus on my work. I don't even miss all the 1000+1 KDE options and all the flashy menu effects, the Gnome defaults and dpkg/apt repositories just work for me. It was sort of like growing up (or getting lazy). When I was a Linux noob I liked to play with my options, customize my KDE desktop and choose between a 100 different screen savers. I even ran Gentoo for a while there, compiled for 2 days straight! Now, I just need my work done and don't care if my menus have shadows or fade in and out. I just want sensible defaults.


      As for RPM itself, there is nothing wrong with it. Feature-wise it probably better then dpkg, but the big difference is the _repositories_. Yes, Debian and therefore Ubuntu have very well maintained repositories. I did not have any dependency hell in Ubuntu (yet!?), but I remember having it with SuSE, Fedora, Mandrake and Red Hat. So I am not blaming RPM, but rather Redhat and SuSE.

    3. Re:Good. by Fallingcow · · Score: 1

      Uh....

      So? I mean, unless you've got crazy-small amounts of ram. It's not like it slows it down any, as far as I can tell.

    4. Re:Good. by Fallingcow · · Score: 1

      Haha, I'm a Gentoo->Ubuntu convert.

      The first time I tried Ubuntu (OK, honestly, the first time I tried the one from 2 releases ago, 'cuz the 3rd release back sucked) it was like someone had installed Gentoo, then spent a few days configuring 99.9% of everything exactly the way that I wanted it, including all the shit that I never had the time/patience to figure out how to do on my own.

      Wonderful. Perfection. It'll take one hell of a distro (or one hell of a screwup on Ubuntu's part) to get me away from it.

    5. Re:Good. by ThePhilips · · Score: 1

      But why then apt-get works faster than yum? Earlier versions of apt were written I think in Perl (yum is written in Python) but still yum (implemented after apt) seemed like step in wrong direction.

      Also, yum is even slower than aptitude and aptitude does one hell of checks and tests - as well as pile of algorithms to solve dependency problems. (Never living with four concurrent repositories was easier in my life.)

      That really surprised me when I found out that Debian's apt doesn't use database for its repository - and still worked faster than yum. And the mundane rebuilding of database one has to do for rpm (stuck with us from times of rpm database upgrade) is just not needed with apt.

      P.S. Raw dpkg is slower than rpm precisely because rpm uses fast database, while dpkg has to update huge text file.

      --
      All hope abandon ye who enter here.
    6. Re:Good. by Antique+Geekmeister · · Score: 1

      Older versions of Yum and RPM didn't cleanly handle any RPM operations done at the same time as Yum: this tended to corrupt the database. That said, there are also useful updates to Yum and toe the underlying RPM and database tools you probably want to make sure are updated. And if you're still running Fedoare Core 1 or Fedora Core 2, you're getting what you deserve: do a clean update and I suspect you'll be very pleased with the improvement.

    7. Re:Good. by ajs318 · · Score: 3, Informative

      APT has an easier time of managing dependencies than yum. That's because Debian's (well-thought-out) way of doing it was to have packages dependent upon packages, rather than specific files. And a package can provide more than one package. For instance, "www-browser" is a virtual package; there is no installable package called www-browser. But iceweasel, konqueror, links and so forth all claim to provide a package called "www-browser". Any application that needs a web browser (but doesn't care which one) only has to depend on www-browser. And so forth, and so on.

      You can roughly emulate package dependency using specific files (or symlinks) within packages which are just there to deal with dependencies, but it's messy compared to a system designed properly from the outset.

      --
      Je fume. Tu fumes. Nous fûmes!
    8. Re:Good. by Tet · · Score: 1
      But why then apt-get works faster than yum?

      Different ways to solve the problem, mostly. While yum checks each remote repository on every run, apt caches details about the repositories locally. That makes apt much faster, but runs the risk of having out of date information. As with so many things in the IT world, the difference lies in the choice of tradeoffs the authors of each app made.

      --
      "The invisible and the non-existent look very much alike." -- Delos B. McKown
    9. Re:Good. by Tet · · Score: 3, Insightful
      APT has an easier time of managing dependencies than yum. That's because Debian's (well-thought-out) way of doing it was to have packages dependent upon packages, rather than specific files.

      Bollocks. You might claim (although I'd probably disagree) that apt under Debian has an easier time of resolving dependencies than does yum under Red Hat. But apt under Fedora vs yum under Fedora? Probably fairly equal, I'd say. I'm also slightly bemused by your implication that RPMs are dependent on files, rather than on other packages. Where on earth did you get that one from?

      --
      "The invisible and the non-existent look very much alike." -- Delos B. McKown
    10. Re:Good. by Anonymous Coward · · Score: 1, Informative

      RPM supports both file dependencies and package dependencies, you don't have to "emulate" a package dependency, you just have to Requires: otherpackage, and in fact that's the most common method for hand-written dependencies. What's more common than actual file dependencies (with a full path) are autogenerated dependencies: libraries automatically provide liblibname.so.n (without a path), and all programs requiring the library automatically require liblibname.so.n. (Why should you have to list the library packages manually? That's what ldd is for!)

      As for virtual packages, they're perfectly possible with RPM too, that's what Provides is for. For example, firefox, dillo, elinks, lynx and wget provide the virtual "webclient" package, httpd, boa and others provide the virtual "webserver" package.

    11. Re:Good. by juhaz · · Score: 1

      I'm also slightly bemused by your implication that RPMs are dependent on files, rather than on other packages. Where on earth did you get that one from?

      It's partially correct, since rpmbuild generates file requirements automatically, but to depend on other packages you have to manually specify them in spec file.

      In other words, it's not so much about rpm technically, but about clueless packagers. The crux of the problem is probably in that it's very easy to kludge a more-or-less working rpm together, but bit harder to create good ones. The bar on debs for example seems to be much higher, they're so much harder to make that you've got a lot less people who don't know what they're doing bulding them.

    12. Re:Good. by Olivier+Galibert · · Score: 1

      He got that from reality maybe? On a fedora core 5 64 bts with a small amount of extras packages, of 35814 dependencies in the packages 24112 are files and 11702 packages. That's 67% files.

          OG.

    13. Re:Good. by Antique+Geekmeister · · Score: 1

      Yum caches much of it, too. Check out the "metadata".

      It's amazing how much of this conversation has switched to yum vs. apt, instead of yum vs. pkg or deb, by the way.

    14. Re:Good. by isometrick · · Score: 1

      I'm running FC6, and it's all updated as far as the initial release and the updates repository go. It's better than when I tried FC before, but I still can't rely on it.

    15. Re:Good. by BestNicksRTaken · · Score: 1

      i was just about to post the exact same comment!

      there's definitely something wrong with yum in fedora6, i've broken the rpm database twice.

      and the new c-based yum cannot be interrupted with ctrl-c anymore it seems, which you usually need to do as you think that it must have crashed as its taking so long figure out the dependencies.

      --
      #include <sig.h>
    16. Re:Good. by Anonymous Coward · · Score: 0
      Howdy,


      I just wish they are wise enough this time to ditch that Sleepycat
      (Oracle) db stuff and replace it with decent embedded SQL solution, like
      SQLite. That would solve
      many issues, dumping rpmdb would be a breeze as would be
      creating some nice things like inventory/correlation/verification
      service (daemon) top of it etc.


      Another issue, actually with yum, would be to split updates in
      smaller chunks like Mandriva urpmi does. It's riddiculous that
      I need to extend /usr from 4G to 8G just for time of upgrade
      and once you add it to LV you really can't take it back ... no
      zfs type pools yet :(


    17. Re:Good. by faolan_devyn_aodfin · · Score: 1

      Well the biggest problem with YUM, and APT-RPM, even Smart are that they are all afterthoughts. The system needs to be redesigned because of this so that RPM can better integrate. RPM has a lot of good features but there is still no reliable solution to Debian's "apt-get dist-upgrade". Yes you can upgrade RPM based systems but I've found it to be a nightmare when it comes to dependencies and fixing the problems is often more difficult than on dpkg based systems running apt and aptitude.

      However, this could be due to the fact many RPM based distros still don't have a proper, well thought-out, well designed repository and repository management system which is key.

      --
      Pagan? Geek? Check out #paganism on Freenode IRC
    18. Re:Good. by Antique+Geekmeister · · Score: 1

      This is particularly important for libraries: no one cares if libc.so.42 is from glibc-4.x or if glibc gets updated to glibc-7.x, and the library comes from a compatibility package. But for core libraries like glibc, openssl, and X11, it's much safer to make the dependency on a library than on a package.

      This is exacerbated by tools like XFree86, xorg, modprobe, and modutils where the package names themselves have changed. And the problem is also worsened by programs that include different files depending on build-time options, such as SuSE's MPEG players and various kernel configurations. It makes it impossible to predict which package will satisfy the dependency, but has to be resolved based on the file name.

    19. Re:Good. by cortana · · Score: 1

      Not at all. Say I have a program that links against libc.so.42 and uses symbols that were added to it in version 5. But I have version 4 of the package installed. Although I still have a /usr/lib/libc.so.42, I am unable to run the program.

      I don not see how 'foo depends on /usr/lib/libc.so.42' can express the fact that foo requires a symbol only present in libc version 5.

      dpkg, of course, does it the right way: foo would simply depend on libc42 (>= 5). This dependency is automatically discovered when building the package of foo by looking libc.so.42 up in /var/lib/dpkg/info/libc42.shlibs. All library packages in Debian provide shared library dependency information in this way.

  13. Re:I've got something to say! by Psychotria · · Score: 0

    I'm sorry, but exactly why is apt better than RPM? I've been hearing this argument for years and have, yet, to hear a convincing against RPM that doesn't involve elitist propaganda. Perhaps I'm missing something, but the main thing going against RPM is, sometimes, that it has RedHat associated with its name. Sure, RPM has bugs. So does apt. Sure, RPM could be improved. apt could be improved as well.

  14. Fedora Project to Help Revitalize RPM by SeaFox · · Score: 4, Funny

    So I guess they're really going to "Rev up" the RPM's?

    [dodging tomatoes]

  15. Come again on that one? by MichaelSmith · · Score: 5, Informative
    4) RPM is _not_ a package manager

    That would be the Redhat Package Manager, right?

    1. Re:Come again on that one? by pembo13 · · Score: 1

      Yes, that was a mistake and miscommunication on my part.

      --
      "Thanks for all the money you paid to us. We've used it to buy off ISO among other things" -Microsoft
    2. Re:Come again on that one? by /ASCII · · Score: 1

      No, that would be Revolutions Per Minute.

      --
      Try out fish, the friendly interactive shell.
    3. Re:Come again on that one? by Woy · · Score: 1

      No, actually you stumbled upon the very problem with rpm. :D

      --
      "If God created us in his own image we have more than reciprocated." - Voltaire
    4. Re:Come again on that one? by Anonymous Coward · · Score: 0

      No, it actually stands for RPM Package Manager. The acronym used to contain "RedHat", until the RedHat legal team asked for the change (due to trademark reasons) when RPM was being offered up to the community.

    5. Re:Come again on that one? by BokLM · · Score: 1

      Actually RPM now stands for Rpm Package Manager.

  16. Pro-FUD Post by archeopterix · · Score: 1

    While I do not disagree with you, there's still an important question, namely: "Why do we need RPM for?" and once you answer that, there's a tougher one: "Does RPM have the potential to do it better than the existing solution(s)?". If not, then it should die - people responsible for packaging apps will have one less format to take care of.

    1. Re:Pro-FUD Post by Psychotria · · Score: 1

      Or, another way to look at it: "Does XXX have the potential to do better than RPM?". If not, then they should die--people responsible for packaging apps will have one less format to take care of.

    2. Re:Pro-FUD Post by pembo13 · · Score: 1

      I honestly don't care what file format the packages come in. So I have no answer as to "Why do we need RPM for?" but I would also ask "Why do we need DEB for?"

      --
      "Thanks for all the money you paid to us. We've used it to buy off ISO among other things" -Microsoft
    3. Re:Pro-FUD Post by archeopterix · · Score: 1
      Or, another way to look at it: "Does XXX have the potential to do better than RPM?". If not, then they should die--people responsible for packaging apps will have one less format to take care of.
      That would be the case if RPM was the top one ahead in at least one of {popularity, quality}. This is not the case.
    4. Re:Pro-FUD Post by /ASCII · · Score: 1

      RPM is the package format required by the LSB. That alone makes it pretty vital for RPM not to die, at least as long as LSB isn't changed.

      RPM is used by RedHat, Suse/Novell, Mandriva and Centos, some of the most popular distributions. It's not really known how large a marketshare the popular distros have, but I think it's fair to say that RPM is roughly comparably in popularity to dpkg.

      --
      Try out fish, the friendly interactive shell.
    5. Re:Pro-FUD Post by rohan972 · · Score: 1

      That would be the case if RPM was the top one ahead in at least one of {popularity, quality}. This is not the case.

      I think being used by Redhat and Suse would probably make it the top commercial package format. As long as you define commercial as sold and support services provided anyway.

    6. Re:Pro-FUD Post by Dan+Ost · · Score: 1

      Are there any distros that actually implement LSB?

      --

      *sigh* back to work...
    7. Re:Pro-FUD Post by cortana · · Score: 1

      AFAIK there are plenty. A more import question is whether there are any LSB applications. AFAIK there are two: Real Player and MySQL. Except that MySQL are dropping support for generic Linux distributions, so we're back to one. :)

  17. While they're at it by Psychotria · · Score: 2, Insightful

    this is, perhaps, offtopic, but the biggest gripe I have with Fedora is the software updater. I dunno about other people, but I'm uninterested in updates to stuff I don't have installed.

    1. Re:While they're at it by Antique+Geekmeister · · Score: 1

      It's gotten better: the Fedora Core 6 version, with the various plug-ins, is very about as good as apt. Point it to your base repositories and to a good extra package repository like Livna, and it's a match for apt.

    2. Re:While they're at it by caseih · · Score: 1

      The fedora software updater only alerts me to updates to packages I have installed. I have no idea what you are seeing. Everything it alerts you to are packages you *do* have installed and need updating.

    3. Re:While they're at it by ebuck · · Score: 1

      It's close enough to the topic for my tastes. However, I am confused. Pray tell, how do you update software that's not installed? Even with the new found power of computers, they can't update nothing. Perhaps you have more software installed than you know.

  18. Re:I've got something to say! by ztransform · · Score: 0

    I welcome this increased interest and activity in the package format. Recently I was trying to build RPMs for the second time, and just found it a difficult task. I have the authoritative book on the subject, "Maximum RPM", however that book was written in 1997 - long before RPM 4.0 came out upon which all of today's distributions rely.

    So I would like to see some improved documentation efforts on using the package format if it isn't to languish!

    I don't think this article is meant to be a deb vs rpm vs pkg discussion, that has been done many times before..

  19. wow by Anonymous Coward · · Score: 0

    I recently gave Fedora Core 6 a spin, and I won't go into detail, but its pure crap.
    The decision to bring back RPM just goes to show what good work they are doing.

    Personally I think FreeBSD's port system is the best

    But the larger point to all this is the lack of cooperation and standards in the open source community.

    1. Re:wow by davidkv · · Score: 2, Insightful

      The decision to bring back RPM just goes to show what good work they are doing. You do realize that rpm is one of the most used package formats in the Linux world, right?
      They're not trying to "bring it back", but to "make it better".

      But the larger point to all this is the lack of cooperation and standards in the open source community. RPM is in the LSB, http://en.wikipedia.org/wiki/Linux_Standard_Base

      Btw. I'm writing this on a FC6 box, no problems here :)
    2. Re:wow by beheaderaswp · · Score: 1

      Just as an aside. I may have just gotten way too deep into the Redhat camp... however....

      RPM for all it's frustrations is just dandy with an apt or yum frontend. The other point is that most people running RH are running servers. We're geeks anyway, don't usually go outside of the core software set, and use Redhat because of the Q&A testing.

      RPM kinda sucks for resolving dependencies, assuming you don't know what they are.

      Aside from Debian, RHE3/4 is the only game going in my book. And I can't tell the president of a company that Debian is supported by a company they have heard of...

      I've got 36 internet facing servers I manage. Next year it could be as high as 200. If nothing else RPM presents a known quantity which represents a certain level of security.

      --
      Another consultant who stuck it out.

      "We are the Priests, of the Temples of Syrinx..."
    3. Re:wow by ThePhilips · · Score: 1

      As soon as you would try to customize installation you would find that it is not as trivial as it might be.

      If you do not customize your distro - then it's fine. If you customize rarely - yum would still do fine job.

      But if you have too have some latest version (e.g. I need to have latest gcc installed, so that I can test the compiler) rpm/yum become major pain in the ass. E.g. new version needs new library or new version of library and the library has it's own dependencies. Aptitude now handles everything for me nicely - yum in past was barely capable of conflicting packages handling of several repositories. Not to mention that it did that very very slowly.

      And do not forget that LD_KERNEL=2.2.5 - or rpm would hang yum. You would have to kill -9 it and then clean/rebuild repository. Or it doesn't hang anymore? Or RedHat set the variable system-wide? Or RedHat finally got down to earth to fix their beloved futexes? [/sarcams]

      --
      All hope abandon ye who enter here.
    4. Re:wow by Antique+Geekmeister · · Score: 2, Informative

      Yum was slow for solid technical reasons: the repository information was inefficient, there weren't enough fast RPM mirrors, and the db4 database behind RPM was painful.

      Fortunately, db4 seems to be dead: it's been replaced in such lightweight applications by SQLite, there are a lot more and faster mirrors available, and the repository information is stored more effiently, or at least handles a lot faster with faster modern machines. So it's overall gotten a lot better: take a look at the versions of the past year or two to see how good it's gotten.

    5. Re:wow by Anonymous Coward · · Score: 1, Funny

      and you've got a PHB that doesn't understand unix..

      cool!

    6. Re:wow by Tet · · Score: 1
      Fortunately, db4 seems to be dead: it's been replaced in such lightweight applications by SQLite

      Ha! Ha ha ha! Ha ha! That's a good one. You should consider doing standup. FWIW, SQLlite doesn't even come close to either the functionality or performance of Berkeley DB, nor its ubiquity (IIRC, it's the world's most widely used database).

      --
      "The invisible and the non-existent look very much alike." -- Delos B. McKown
    7. Re:wow by Antique+Geekmeister · · Score: 1

      That's why SQLite replaces it so well for such lightweight applications. By leaving out so many excessive and unstable features of db4, it's made RPM databases stable and far faster. And db4, or rather the Sleepycat company that developed it, has been purchased by Oracle. Expect db4's better ideas and development to be migrated over to Oracle development, and for long-standing bugs and feature demands to fall on deaf ears.

      Better yet, go try to find, much less download, the latest db4.5. Yes, it has new features, but it's no more stable under real world loads, its behavior is still not sufficiently atomic, and recovering from a corrupted database is just as awful. And don't expect a db4.6 now that Oracle owns it.

  20. Re:I've got something to say! by CapitalT · · Score: 1

    I tried installing Anjuta under Fedora, dependency hell came alive!!!

  21. Forgive me, but... by OneSmartFellow · · Score: 2, Interesting

    RPM is really only a packaging standard (ignoring the rpm binary, of course). It seems to me the real issue is not the RPM standard itself, rather the ease of abuse/misuse. In this regard I suggest that the rpm binary be enhanced so that package production is simpler and less error prone. In particular the identification of dependencies. I am continually fighting with various package managers because someone/something has decided that (as an example) when I want to install libusb I must also want to install some GTK based application as well.

    1. Re:Forgive me, but... by releppes · · Score: 1

      Yeah no kidding. That's my exact impression when using debian and trying to run a minimal system. I'd do a base install, and after a package or two, I'd have the whole gnome tree installing on my system. I don't know if it was a debian thing or just how apt_get is, but I personally hated it.

  22. Lord forgive me for this, but... by Anonymous Coward · · Score: 0
    Do RPMs still have a confusing dependancy circle hell?


    1996 called. It wants its argument back.
  23. Fedora core 6 sucks by Anonymous Coward · · Score: 0

    I installed it twice on my pretty standard Dell 510m notebook. The first time, removing some components marked as "optional" made the graphical interface not function at all. The second time, adding some components (using the graphical tool) crashed my disk (on the next boot the filesystem was so full of errors that I'm simply going to format it again. Before this, I had a Fedora core 2, which worked flawlessly for 2 years. Like a fool, I wanted to "upgrade".

    1. Re:Fedora core 6 sucks by ebuck · · Score: 1

      Yes, I have a Dell 510 too. It was "dontated" for repair, but not worth the repair effort. It's been shipped back to HP and returned twice now. I would never attempt to run Linux on it, it's having a hard enough time running windows properly. For those who don't know, it's a $600 laptop that I've seen marked down to $400 on occasion, and about 20% of them don't seem to work properly from day one. Mine has display issues, the screen seems to light up, but like Ford's model T, "You can have any pixed color you want, as long as it's black."

      But don't let that get in the way of a good rant. By all means, please install Windows on your glorified boat anchor and stop wasting our time with "sucks" comments. Then you can yell at MS about how much Windows sucks.

  24. Re:I've got something to say! by Fallingcow · · Score: 4, Interesting

    A better comparison would be dpkg to RPM.

    Apt is a program that automatically resolves dependencies and fetches packages to install, among other things, and it sits on top of a packaging system, like dpkg or even RPM.

    As for dpkg vs RPM, I can only say that I've never had as many problems with dpkg as RPM, especially when installing 3rd-party (unofficial to my distro) packages. I've also had fewer instances of "dependency hell" with dpkg than with RPM, and it's always been easier to fix when I have, but that has more to do with the package and distro maintainers than it does with the packaging system.

    Yum, a popular RPM-based manager (like apt, but specifically for RPM) was certainly a total piece of shit the last time I tried it. Took about 10 times as long to do anything as apt would have for the same operation, and I'm not exaggerating. Maybe it's gotten better, but as recently as a couple years ago it was a huge pain in the ass to use. Apt for RPM seemed pretty good at the time, but I've not used it since. I don't even bother with RPM-based distros anymore, as, of the three systems I've used (dpkg+APT, Gentoo's Portage, and RPM) it was, hands down, the worst. It may be better these days, but then again I've found the recent Fedora builds that I've tryed out make me feel restricted, while simultaneously making me do more work than a modern dpkg-based distro probably would. For some reason, distros based on Debian seem to pick better defaults for newly-installed packages than RPM-based ones do, though I don't know why that is.

    For reference, I've mostly used Mandrake, Debian, Gentoo, and Ubuntu over the years, with lesser but non-trivial amounts of time spent with Red Hat/Fedora and Slackware, and a tiny bit of time with Suse, so any bias in my opinions on the matter may be tied to this, but I really have found that package management was only ever something that I dreaded dealing with when I was on Mandrake and Red Hat/Fedora, and I didn't work with Suse enough to form an opinion on it. Switching to mostly non-RPM distros a few years back made most of my package management woes disappear instantly.

  25. Re:I've got something to say! by Psychotria · · Score: 1

    It's been a long time since I installed Anjuta under Fedora. But since I used it at one stage I guess it was OK. These days I use kdevelop (sorry Anjuta...)

  26. Re:I've got something to say! by simm1701 · · Score: 5, Informative

    apt and rpm don't compete - they are not even similar in purpose - each fill a different role and are cooperative ratehr than competative.

    In fact apt can work quite well with rpms (the apt for rpm project springs to mind)

    Maybe you are confusing the issue with .deb files and dpkg?

    Personally I find .debs a slightly better package structure/file structure than rpms, and dpkg a more flexible and easier to use (getting both is quite an achievement I think) command line.

    However those are personal preference and while not quite as contentious as emacs vs vi I'm sure they won't be solved any time soon.

    You are right to bring up apt though - its apt that makes distros like ubuntu and debian shine. Or more importabltly its the repository organisation and discipline that sits behind apt. Without this organisation server side, the package files clearly listing each package which dependancies and conflicts, then the system is all but meaningless, and thats where apt for rpm has fallen down (not that it doesn't work, I've used it with several rpm respositories, its not bad but several times I've had to hand resolve large messy conflicts, I've had to do that on debian true, but only when doing really messy mixtures of sid sarge and woody all on one box during times of serious upheaval - gnome 1.4 to gnome 2 springs to mind)

    Getting rpm and apt to run better together is not really about code changes or design changes to either apt or rpm (or the existing apt for rpm software). Its about making good rpm respositories and the package files that go with them - that would be a huge improvement for starters.

    The main fustration people feel with rpm is dependancy resolving, being able to type rpm -i gcc-4.1.rpm and having it just work would be nice. People don't associate the same problem with the .deb system as they very rarely run somehting like dpkg -i gcc-4.1.deb - usually they will type apt-get install build-essentials or apt-get install gcc and it will "just work" (or they will use dselect but thats another topic)

    I think that is what really colours peoples perceptions. They feel pain frequently when they use rpm (I know I do). They don't feel pain when using .deb files via apt (and lets face it - if you are sing a distro with .deb you are almost certainly using apt or dselect). This perception causes the view that rpm is crap and .deb/dpkg is far superior. The real problem is though not the package management tool at all. Its the repository management policy, something that debian and debian based projects has had right for a long time.

    --
    $_="Slashdotter";$syn="OTT";s;..;;;sub _{print shift||$_};s!ash!Perl !;s=$syn=ack=i;tr+LLEd+BLAH+;_"Just Another ";_
  27. Re:I've got something to say! by cafard · · Score: 2, Insightful

    I'm sorry, but exactly why is apt better than RPM? I've been hearing this argument for years and have, yet, to hear a convincing against RPM that doesn't involve elitist propaganda.

    As you don't seem to know the difference between apt and dpkg, it's no wonder that you don't have a clue as to how *dpkg* compares to rpm. You're shouting against elitist propaganda, yet you failed to even look the slightliest into the subject yourself...

    --
    This post is awesome.
  28. Re:I've got something to say! by davidkv · · Score: 2, Informative
    Did you try the most obvious way?

    # yum install anjuta

    Since Anjuta is in the Fedora Extras repository you might have to enable that first (i.e. add "--enablerepo=extras" to the previous yum command line)
    Actually, I just tried it. It worked fine:

    # yum install anjuta
    -removed a lot of yum output-
     
    Installed: anjuta.x86_64 1:2.0.2-11.fc6
    Dependency Installed: anjuta-gdl.x86_64 0:0.6.1-5.fc6 autogen.x86_64 0:5.8.7-3.fc6 gnome-build.x86_64 0:0.1.3-11.fc6 graphviz.x86_64 0:2.8-5.fc6
    Complete!
  29. Re:I've got something to say! by Jaruzel · · Score: 4, Informative

    I am not a Linux user, but I am a software developer, and it seems to me, that ALL the distros could benefit from a universal package manager, that was compatible with all the major package types?

    Or do I completely mis-understand how things work under linux ?

    -Jar.

    --
    Together, We Can Make Slashdot Better. I Do NOT Mod ACs. - Check Me Out
  30. The point is new approach by Karaman · · Score: 1

    The point we all fail to comprehend is that RH finally recognizes the fall of RPM. And does it in the most remarkable way by saying: We will make it better! Thus it makes all comments against RPM stupid, because they dont care about now, they care about the future. I have made a distro for my community with even simpler package system than slackware. Pure binaries in tar.gz, no install scripts whatsoever only additional setup scripts for some packages which are entirely up to the user to decide whether to use them or not. But now I vote for RPM, because we need a common binary packages system. But we need a simple one.

    Here is an ideal package system of a distro according to me
    1. dependencies should not be mandatory for the user (especially a root one)

          you dont have and need at least x.y.z version of package name XXX to continue, do you want to continue?

          should display to you instead of

          you dont have x.y.z version of a package XXX to continue, game over!

    2. every package must have have its own files. "cross-linked" files between packages should only be symbolic links
    3. every package should have versioning support. You install 0.1.1 but retain 0.1.0, so that you can revert if you need to.
          the option should be voluntary.
    4. users should have the opportunity to create binary packages the simpler way: like checkinstall or git (the other git)
    5. users should have an opportunity to create source install packages, like the install script for xfce
    6. the option to update packages online/from designated source is mandatory.

    A packages system should be simple. I dont mean creating a packages should be a few clicks away! I mean simple tools to create specific tasks the best way:

    1. creating a package
    2. installing a package
    3. re-installing a package
    4. removing a package
    5. reverting to an old version
    6. updating to a new version

    and simple options! One needs complex options to do many things. A package creator/installer does simple things!

    --
    sex is better than war!
    1. Re:The point is new approach by Anonymous Coward · · Score: 0

      But none of that is in RPMs mandate. That's what tools that wrap RPM like yum or yast are for. Fedora / RHEL / CentOS/ SuSE etc. already have all of that.

    2. Re:The point is new approach by mrchaotica · · Score: 1
      The point we all fail to comprehend is that RH finally recognizes the fall of RPM. And does it in the most remarkable way by saying: We will make it better! Thus it makes all comments against RPM stupid, because they dont care about now, they care about the future.

      On the contrary, it makes RedHat stupid, because the reasonable thing to do would be to take the good package management system that already exists -- namely, dpkg and apt -- and just ditch RPM in favor of it!

      dependencies should not be mandatory for the user (especially a root one)

      What good would that do? If you don't have the dependencies the program isn't going to work, and letting you install the package anyway won't change that!

      By the way, apt and Portage come a Hell of a lot closer to your "ideal package system" than RPM does. Maybe you should switch to a less brain-dead distro.

      --

      "[Regarding the 'cloud,'] ownership was what made America different than Russia." -- Woz

    3. Re:The point is new approach by TristanGrimaux · · Score: 1
      On the contrary, it makes RedHat stupid, because the reasonable thing to do would be to take the good package management system that already exists -- namely, dpkg and apt -- and just ditch RPM in favor of it!
      The main problem with this kind of thinking is that we end up with fewer choices. Keep choices alive and you will have freedom!
    4. Re:The point is new approach by Anonymous Coward · · Score: 0

      Seconded. With this kind of logic, we would all be using ... *shudder* KDE or something.

    5. Re:The point is new approach by Anonymous Coward · · Score: 0

      1. dependencies should not be mandatory for the user (especially a root one)

                    you dont have and need at least x.y.z version of package name XXX to continue, do you want to continue?

                    should display to you instead of

                    you dont have x.y.z version of a package XXX to continue, game over!



      well, i think this is not a good way. For an inexperienced user, this will be problematic. If he/she installs it without dependency, it will create a hell of problem while running the installed app. because he/she needs to seek for appropriate library manually. Current version of RPM does a better job...it insures that the app will run once it is installed.

    6. Re:The point is new approach by timbo234 · · Score: 1

      you dont have and need at least x.y.z version of package name XXX to continue, do you want to continue?

      They're not and never have been, use the --nodeps option. The default behaviour is to demand depedencies because if a program has a depedency of X that generally means it needs X to be installed to function properly.

      3. every package should have versioning support. You install 0.1.1 but retain 0.1.0, so that you can revert if you need to.
                  the option should be voluntary.


      This would be a very nifty feature (as long as its optional as it would take up a lot of space).

      The rest of the ease of use stuff is already covered by the full package management systems like urpmi/RPMDrake, YAST and yum.

      As for actually making them it is already very simple to make a simple RPM that basically just packages up the results of a ./configure && make && make install - see the Mandriva RPM Howto for eg.

      --
      Pre-canned Evolution Links for all those Slashdot holy wars.
    7. Re:The point is new approach by BokLM · · Score: 1

      By the way, apt and Portage come a Hell of a lot closer to your "ideal package system" than RPM does.

      Could you give more details about why you think apt is a lot closer to that "ideal package system" than RPM is ?

      By the way, apt is not the same as RPM, either talk about dpkg, or compare apt with urpmi/yum/smart ... how can you say that apt is better that RPM ? That's like saying Linux is better than a computer, it doesn't mean anything.

    8. Re:The point is new approach by mrchaotica · · Score: 1
      Could you give more details about why you think apt is a lot closer to that "ideal package system" than RPM is ?

      I was just going by the parent's "ideal package system" list -- presumably he listed what he did because RPM/[whatever frontend] didn't do those things. Unless I'm mistaken, Portage (which is what I'm most familiar with) fulfills items 1, 2, 3, 4, 5, and 6; and the implication is that RPM (or whatever) does not. That's why Portage, at least, is closer to his ideal.

      By the way, apt is not the same as RPM, either talk about dpkg, or compare apt with urpmi/yum/smart ... how can you say that apt is better that RPM ? That's like saying Linux is better than a computer, it doesn't mean anything.

      First of all, the last time I used an RPM-based distro, I don't recall it having any higher-level tools like yum or whatever. I suppose I could claim that apt or portage is better than nothing at all, which was what was provided on that distro -- would that make you feel better?

      Also, how about I amend my statement to say that "Gentoo and Debian's package management systems work better than Red Hat's?" Is that okay?

      --

      "[Regarding the 'cloud,'] ownership was what made America different than Russia." -- Woz

    9. Re:The point is new approach by BokLM · · Score: 1

      First of all, the last time I used an RPM-based distro, I don't recall it having any higher-level tools like yum or whatever. I suppose I could claim that apt or portage is better than nothing at all, which was what was provided on that distro -- would that make you feel better?

      Mandriva has had urpmi in the default install for years. RedHat/Fedora has yum. You can even install apt-rpm if you want. Suse also has a package manager. Which distro are you talking about that come without that kind of thing ?

      Also, how about I amend my statement to say that "Gentoo and Debian's package management systems work better than Red Hat's?" Is that okay?

      That's not true.

  31. Re:I've got something to say! by ThePhilips · · Score: 4, Informative

    Worth to mention that apt now deprecated in favor of aptitude. Aptitude marks packages installed as part of dependency resolution and when you later remove the installed software, it would also remove all automatically installed packages.

    Yum, a popular RPM-based manager (like apt, but specifically for RPM) was certainly a total piece of shit the last time I tried it.

    +100. yum is dumbest and slowest tool I have ever seen. Especially when people try to pitch it against apt-get. And aptitude is ages ahead of any package management RedHat ever implemented.

    --
    All hope abandon ye who enter here.
  32. Re:I've got something to say! by Bastard+of+Subhumani · · Score: 2, Interesting

    I agree. Ideally with an X in the name somewhere.

    --
    Only three things are certain; death, taxes, and apocryphal quotations - Ben Franklin.
  33. Re:I've got something to say! by Antique+Geekmeister · · Score: 1

    It's not physically possible to resolve management of all the major package types. The reporting of necessary components, and of requirements, and of how new replacing local configuration files are done, post-execution scripting, restarting of active services after replacement, how package components are provided, etc., are all wildly different.

  34. Re:I've got something to say! by simm1701 · · Score: 1

    you mean other than tarballs? ;)

    --
    $_="Slashdotter";$syn="OTT";s;..;;;sub _{print shift||$_};s!ash!Perl !;s=$syn=ack=i;tr+LLEd+BLAH+;_"Just Another ";_
  35. Re:I've got something to say! by Jaruzel · · Score: 2, Interesting

    OK, I hear what you are saying... but if MS managed it with MSI (which after 4 years now de-facto for packaging), then surely the Linux community can do it too ?

    *Throws down gauntlet*

    -Jar.

    --
    Together, We Can Make Slashdot Better. I Do NOT Mod ACs. - Check Me Out
  36. Re:I've got something to say! by gnarlin · · Score: 1
    I agree. Ideally with an X in the name somewhere.
    No, no, no! It has to be a Y! Anyone with a small amount of common sense knows that Y is better the X, let alone A or B or possibly even C!
    --
    A bad analogy is like a leaky screwdriver.
  37. How can anyone take RPM seriously? by Anonymous Coward · · Score: 1, Insightful

    How can anyone trust RPM with his system when the main developer finds it is perfectly ok to leave the RPM database in an inconsistent state if an error occurs? I thought it was a joke when I first read this bug report, but apparently it is not.

    1. Re:How can anyone take RPM seriously? by Anonymous Coward · · Score: 0

      Umm ... that's why they fired jbj and are making this announcement...

    2. Re:How can anyone take RPM seriously? by totally+bogus+dude · · Score: 2, Interesting

      That bug thread is hilarious. It sounds like Jeff Johnson's departure is the best thing that could possibly happen to any project.

      Comment #22 From Jeff Johnson on 2004-06-25 08:13 EST [reply]
      Yes, %_netsharedpath is the designed behavior for handling RO mount points in rpm.

      The RO mount is the source of the problem. Configure rpm and use appropriately with RO /usr is the answer.

      Other problems, like "corrupted" rpmdb, are derivative on the correct use and configuration. Screaming about the symptom when the cure for the cause has been described is, well, pointless.

      Now will you please leave this bug closed?

      (Posted as someone who came to Linux with RedHat 6, then gave Debian a try when I upgraded to a brand new system and needed to reinstall -- and discovered RH's braindead package "management" wasn't actually normal, and never touched the wretched thing again.)

    3. Re:How can anyone take RPM seriously? by Jokkey · · Score: 1

      That's a bit of an oversimplification:

      The proper way to handle errors and avoid inconsistent states is not all that clear (see comments #53 and #57 in the bug report you linked).

      RPM's main developer (Jeff Johnson) is, by the accounts I've read, a very talented developer. He asked about fixing this bug, was told by management that it was not important enough to risk destabilizing RPM for RHEL 4, and so marked the bug closed. Once he no longer worked for Red Hat, he promptly fixed it, as part of his continuing to maintain RPM on his own time. (Slightly more details on this thread, although it's horribly long.)

    4. Re:How can anyone take RPM seriously? by cortana · · Score: 1

      The "fix" is a kludge. What if RPM failed to create a file for another reason: out of disk space, filesystem error, permission denied, and so on. The real bug is that RPM has no way to roll back and/or continue operations that are interrupted (such as a package being unpacked).

      dpkg, of course, handles the situation just fine, because it was well-designed in the first place. ;)

  38. Re:I've got something to say! by doti · · Score: 4, Funny

    If you hate dependency hell, you should try Slackware: no package dependency at all!
    If you install a program and it doesn't run, check the console messages for the missing library (or just ask Google), and install it by hand.

    --
    factor 966971: 966971
  39. Re:I've got something to say! by xtracto · · Score: 1

    I would love if, instead of trying to fix RPM people started to use the excellent Autopackage package manager. It has been the only package manager so far, to allow me to install some program /without/ root privileges. Also, it is the only REAL click & play installing program.

    For you, that are a software developer, I would really recommend autopackage. The only problem I have (for now) is the need to open the terminal to run the .package script (although that should be fixed by the gnome and kde people).

    --
    Ubuntu is an African word meaning 'I can't configure Debian'
  40. We don't need an rpm update by realnowhereman · · Score: 1

    Why bother? dpkg/deb is maintained and does everything that rpm does. These days we all use frontends to rpm/dpkg (yum/apt) anyway, so what does it matter what the archive format is?

    Isn't this like picking between gzip and bzip? Just pick the one that suits you better. The choice in this case is between the unmaintained rpm and the maintained dpkg. If it really bothers redhat, just fork dpkg and call it rpm. As if it makes any difference at all to end users.

    What magical feature are they going to add to new-rpm that is going to make it better than dpkg?

    --
    Carpe Daemon
    1. Re:We don't need an rpm update by delire · · Score: 1

      Agreed. The massive task of switching to dpkg shouldn't be underestimated, but it seems like the decision to not do this has more to do with a fear of losing identity than anything else, as though it were a 'spiritual concession' of some sort.

      Any good distro differentiates itself through offering a quality user experience. Look at the massively popular Ubuntu and the rising of Xandros. Both are Debian based distributions but favoured for different reasons. They are unique yet on an architectural level they have a common heritage. Fedora should raise the bar and choose the best tools for the job. I can't count the number of times I've heard someone say they tried Fedora but gave up because of package dependency / conflict resolution problems.

    2. Re:We don't need an rpm update by BokLM · · Score: 1

      Why bother? dpkg/deb is maintained and does everything that rpm does.

      Why bother moving to dpkg/deb ? RPM will be maintained and does everything that dpkg/deb does.

      The choice in this case is between the unmaintained rpm and the maintained dpkg. If it really bothers redhat, just fork dpkg and call it rpm.

      No, rpm will be maintained. So the choice is between a tool that you know and have been using for years, vs a tool that you don't know as much, and for which a switch would cause a lot of trouble, without any real benefits.

    3. Re:We don't need an rpm update by BokLM · · Score: 1

      Fedora should raise the bar and choose the best tools for the job.

      What makes you think RPM is not the best tool for this job ?

      I can't count the number of times I've heard someone say they tried Fedora but gave up because of package dependency / conflict resolution problems.

      This has nothing to do with using RPM. The same kind of problems could happen with dpkg/deb.

  41. Version control by Anonymous+Conrad · · Score: 0
    From the new site:

    The varous[sic] source code managed by rpm.org is held in a series of mercurial repositories. Now I'm all for innovation, when appropriate - but if you want people to pitch into a new project why pick a fringe VCS? Why not pick something standard that everyone will have like subversion? mercurial didn't even make it into base Fedora.
    1. Re:Version control by tytso · · Score: 1

      Mercurial is hardly a fringe VCS. Some of the projects using Mercurial include Xen, ALSA, e2fsprogs, and OpenSolaris.

  42. Re:I've got something to say! by und0 · · Score: 1

    You should compare rpm with dpkg, not apt...

  43. Re:I've got something to say! by Anonymous Coward · · Score: 1, Interesting

    Zero-install is another similar click-and-play system: http://zero-install.sourceforge.net/ Klik is another: http://klik.atekon.de/ Each has their ups and downs.

    Also you should be able to run the scripts from a file explorer, or set up a "xterm -e" shortcut or something. (can't say for certain since I use the CLI much of the time.)

    Anyhow, personally as someone who likes having a fair bit of control over what's going on in their system, I'm not too fond of any of these automagic systems though. I much prefer when software installs in my regular package management system. I see their use in certain environments but if a program was available ONLY via Autopackage or whatever, I probably wouldn't use it. I don't expect I'm alone.

    To the GP: this is somewhat of a problem with Linux and standards; getting people to agree on "single unified" anything is basically impossible. It is a strength at times, but it means that you can't really count on something in one person's Linux system being available on another's, be it package management tools or otherwise.

  44. If you want something user friendly ... by cyclomedia · · Score: 1, Insightful

    ... it shouldnt BE at the command line.

    "installing packages" and "resolving dependencies" should be done by turbo nutter linux admins(though i'd like to be one myself one day). "Installing a program" is what non-geeks do, and they need a happy shiney add/remove programs applet. Oh and one that explains what all the apps with 4 letter acronyms prefixed in k or x actually DO would be handy too. Even installing GCC and an IDE should be possible with a couple of clicks of the mouse.

    --
    If you don't risk failure you don't risk success.
    1. Re:If you want something user friendly ... by Anonymous Coward · · Score: 0
      Even installing GCC and an IDE should be possible with a couple of clicks of the mouse.

      Actually, that is entirely possible. Welcome to the 21st century.

    2. Re:If you want something user friendly ... by cloudmaster · · Score: 3, Interesting

      I fail to see why your lack of understanding about how rpm works means that rpm should not be made better. The article is about making rpm better, whereas your post is about how hard it is to learn everything about Linux. While you may, in fact, have a valid point, your point doesn't mean that rpm shouldn't finally be made into a decent package manager.

    3. Re:If you want something user friendly ... by inode_buddha · · Score: 1

      Already been done, if you look at a current Fedora install. I actually prefer yumex myself, its a bit more powerful and has more options. However, I've ben using RPM on the commandline since RH 5.2 also.

      --
      C|N>K
    4. Re:If you want something user friendly ... by HolyCrapSCOsux · · Score: 1

      agreed.
      I use Linux quite a bit. Used Slack 7-10, RH 7-9 FC3-5, Mandrake 8-2005, Suse9,10, a few gentoos, etc. Even built some from scratch.
      Currently running Fedora Core 5 with the CCRMA low latency kernel for audio work. When you have work to get done and need to add an app quickly, yum is quite painless. It would be nice if it could './configure && make && make install' as well and resolve THOSE dependencies. (still can't get lmms to compile)

      Granted I haven't used rpm itself in quite awhile. last 2 distros were gentoo and mandrake.

      --
      0xB315AA8D852DCD3F3DCA578FD2E0BF88
  45. Re:I've got something to say! by Loconut1389 · · Score: 1

    RE: dependency hell- it seems to be a theme of fedora to add some obscure feature to a package that requires some obscure library, which depends on half a dozen others, each of which depends on several others, and so on.. The problem isn't RPM so much as it is the fedora mentality. While I like some of the more simplistic distrobutions that don't have the bigger is better mentality, there's something to having nearly every package imagineable already compiled for you. In a job where time is money, wasting time trying to get stuff to build is not in the cards. Ultimately I'm willing to trade that ease for having smaller installations- but there are some things where you want to uninstall some seemingly worthless package and find out that 90% of the system depends on it and no matter how hard you think, you can't make sense of why it is required at all- and that's because some core library depends on it for some obscure feature. I grew up on Slackware, and worked corporate on RedHat/Fedora, and there are advantages to both. Ideally, if I had the time, I'd compile and tweak everything and make things without all of the obscure features, but it is ultimately nice just to have things work without the fuss. Bottom line- dpkg/rpm each have their advantages, but dependency hell isn't an rpm problem (at least not anymore) but is a mindset issue.

  46. Re:I've got something to say! by pato101 · · Score: 5, Funny

    Oh, yes, that is called inferno instead of hell.

  47. Just switch to apt by delire · · Score: 3, Interesting

    I've seen enough loyal Fedora/RH users using apt-rpm on their own systems to indicate that a complete transition, ie. replacing rpm's with debs may not be so shocking for a community of $RPMDISTRO users.

    The task of migrating rpm packages over to the deb format would certainly be a massive undertaking, but the popularity and reputation of the Debian packaging system shouldn't be ignored. With the rapid growth of Ubuntu, the interest from historically Linux unfriendly third-parties in releasing packages in a Debian format is hard to ignore. Fedora could benefit from the growth of Debian based distributions, getting a lead on other rpm distros that choose to stick with a troubled package format. They could do what any good distro does these days: focus on offering a quality user experience, choosing the best technology available to fulfill these ends. Package conflict / dependency resolution is a typical reason people turn away from an rpm based distro, even Linux altogether.

    1. Re:Just switch to apt by Anonymous Coward · · Score: 0

      but the popularity and reputation of the Debian packaging system shouldn't be ignored Because it's not like RPM has a good pedigree and installed user base either?

      There are plenty of tools that sort out RPM dependencies for you, like yum yast and urpmi. That's not an issue anymore.
    2. Re:Just switch to apt by Anonymous Coward · · Score: 0

      Your comment makes no sense. As many people have already pointed out, apt is not a replacement for rpm. You can't switch from rpm to apt. They don't do the same things. It's like saying, "you should switch from driving a car to using a travel agency."

    3. Re:Just switch to apt by businessnerd · · Score: 1

      I was a long time Fedora user, and still have two machines running various versions of it, but I now personally use Ubuntu on my main desktop. The things that impress me the most about Ubuntu when compared to Fedora is package management. HOWEVER, this is not a preference of deb over rpm, this is a preference of apt/Synaptic over yum/Yumex. There is a big difference, and it is one that has been iterated over and over again in this discussion. I like apt with Synaptic because it is just plain faster than yum, and I like Synaptics interface better than Yumex. I also find that updates are handled much better in Ubuntu than Fedora. The utility is easy to use and it is fast and stable. Fedora's has a poor GUI (in my opinion) is also very slow and often unstable. I could care less what package format is being used. All it is to me, the user, is a three letter extension. The user experience you speak of is the dependency solving capabilities presented by apt and yum.

      And by the way, apt-rpm, is just the dependency solving ability of apt, applied to an rpm based package format. Your Fedora friends using apt-rpm, are not using deb, or dpkg, they are still using rpms.

      --
      "It's not whether you win or lose, it's how drunk you get." -- H. J. Simpson
  48. Re:I've got something to say! by Anonymous Coward · · Score: 0

    Yes! But which one. Things work by survival of the fittest on Linux. There are a multitude of methods for everything. This is both its strength and its weakness. Rpm has been weakened by the fact that Suse, Mandriva and redhat although using the same 'installer' (rpm) dont adhere to the same standards for their packages .. different names, different install loacations etc. IMHO most Linuxers are happy to put up with the diversity because they know that if they work in a collaborative/competitive manner eventually the winner will be self evident. This of course is very differnet to the top down approach you get with a software dictatorship. which is better? .. you decide.

  49. Re:I've got something to say! by Anonymous Coward · · Score: 0

    It should still be possible to define a high-level generic package instruction set that the distro implements using its own particular methods. (Umm, I think.) It would be a major undertaking, but well worth it for the benefit of getting a unified package format, and much better than LSB's copout of just mandating crappy RPM because it's the most popular.

  50. Re:I've got something to say! by pato101 · · Score: 2, Funny
    Anyone with a small amount of common sense knows that Y is better the X

    I should look for Y-movies
  51. Re:I've got something to say! by Constantine+Evans · · Score: 4, Interesting

    Apt is certainly not deprecated in favour of aptitude, as aptitude is a frontend to apt. One could argue that aptitude is superior to apt-get, but it should be noted that apt-get also has autoremoval, at least in Ubuntu. Try apt-get autoremove.

    Personally, I have always used apt-get instead of aptitude.

  52. Re:I've got something to say! by mpcooke3 · · Score: 3, Interesting
    For that task a universal package format would be better than a universal package manager.

    Unfortunately at the moment most packages don't just contain files and meta data they also have this hacky distro-specific bit that actually runs commands directly on the system. Which is really quite crap.

    For example a sane package format might have something like this to install a font.

    Font: Moo
    Info: truetype, shared
    File: /package/moo.tft
    This would allow any system that supports truetype fonts to install it how it wants.

    But you are more likely to see something like this:

    ttmkfdir -d %{prefix}/%{name} \
            -o %{prefix}/%{name}/fonts.scale
        umask 133
    /usr/X11R6/bin/mkfontdir %{prefix}/%{name}
    /usr/sbin/chkfontpath -q -a %{prefix}/%{name}
        [ -x /usr/bin/fc-cache ] && /usr/bin/fc-cache
    Which is actually a set of commands to install the font on a system with a particular X based font system and directory layout.
  53. In other news they kill Fedora Legacy repositories by mAriuZ · · Score: 1

    I think now redhat 7.x to 9 versions and fedora core 1..4 users are left without a choice
    First they have to fix that before the rpm rewrite

    http://www.internetnews.com/dev-news/article.php/3 649081

    and the future seems to be smart http://labix.org/smart

    --
    developer http://flamerobin.org
  54. What is a Package Manager for? by sasha328 · · Score: 1

    I've read through most of the comments in this thread (and many more over the years) comparing RPM with Debs and ports and others.
    But I still have a question that I haven't been able to get a satisfactory answer to. I may have missed it though, so bear with me while I articulate my thoughts.
    Why all the fuss about a package manger? I spend most of my time on Windows and OSX, and only occasionally (when doing some dev work) on Fedora 5. Almost all installations on OSX and Windows are self sufficient. For those who remember Win95 and 98 or OS7 and OS8 will no doubt remember the problems with DLL and Extention conflicts or missing. Nowadays, almost all applications store their dependecy files in their own folders. Yes it leads to bloat, but at least I don't break App1 when I install App2 because of a version conflict in some module. Besides, who's still running Linux on a 4GB drive and installing multiple applications these days?
    Is there anything like this on Linux (now or in the future)? I reckon, if a similar approach is take, then dependencies will no longer be an issue on Linux, and applications can be more portable.
    This approach obviously does not preclude the use of common operating system libraries.

    1. Re:What is a Package Manager for? by virtual_mps · · Score: 1

      Shared libraries don't just save disk space, they save RAM. If you include a complete copy of, e.g., the gnome libraries in every gnome applet that you install, you'll end up with a copy of those libraries in memory for every applet you run. Unix shared libraries are implemented that way for a reason, not just because distribution makers can't figure out how to just shove everything in a single directory because it's too hard to get dependency handling right. (Which is why MS does it the way it does--they have no facilities for dependency handling; the funny thing is that they've convinced people that's a feature.)

    2. Re:What is a Package Manager for? by digitalhermit · · Score: 1

      As a primarily Linux user who occasionally must support Windows, there are things with the Windows installation method that I wish were different.

      For example, in RPM distros I like to clean up packages that I do not use. It's pretty easy because I can easily generate a query with summary information telling what every package does. In Windows this is quite difficult. The Add/Remove programs has little information and doesn't include all packages. It's difficult to determine (or at least I don't know how) what package owns which files. How do I tell if a file has changed in a package? How do I tell the interdepencies with the packages? How do I create a list of installed packages so that I can document the system as part of compliance efforts? Even relatively simple tasks such as maintaining a local update repository seems more difficult with the current Windows Add/Remove and installation tools.

      Many of these deficiencies are remedied with third-party applications for system management and package building, but it's just another app to manage (and pay for) for me and my company. Again, I'm just a Windows user and not an admin and may just be ignorant of how to do these tasks on Windows.

    3. Re:What is a Package Manager for? by arevos · · Score: 2, Interesting

      Nowadays, almost all applications store their dependecy files in their own folders. Yes it leads to bloat, but at least I don't break App1 when I install App2 because of a version conflict in some module. Besides, who's still running Linux on a 4GB drive and installing multiple applications these days?

      There are reasons other than bloat for separating out dependencies. For instance, say a vulnerability was reported in zlib. If every application had their own implementation of zlib, then one would have to replace zlib for every application. A shared library doesn't have this problem; it can be upgraded without problems so long as it remains backward compatible. Compartmentalising functionality is common practise in the open source world.

      However, there are various file distribution systems available for Linux that include dependency files with the application. Klik, for instance, wraps up applications in a self-contained compressed filesystem. However, the problem with modern Linux distributions is not so much dependencies, but a lack of a common method of installing software.

    4. Re:What is a Package Manager for? by Anonymous Coward · · Score: 0

      This is why we have things called "distributions." A competently-maintained distro avoids both bloat and conflicts. Sure, every app could carry its own self-contained custom libraries, but what does that do for code portability and maintainability, not to mention disk and RAM storage? If you're going that route, why have shared libraries at all? 4GB isn't much for a desktop PC, but it's a hell of a lot more than a lot of embedded systems have.

    5. Re:What is a Package Manager for? by Alioth · · Score: 1

      There's nothing stopping you from releasing a package like that. RPM, apt et al. are really for *system* packages - stuff supported directly by the distro you are using. Therefore, having all the dependency stuff is a good thing - provided you have something like yum or apt that will resolve dependencies. It means an upgrade to, say, zlib - will fix all the system supported packages at once.

      For third party stuff, Autopackage is better. It's designed to work in a distro independent manner. It can resolve dependencies too - by finding other Autopackages which meet it. However, for Oolite-Linux, when I built the autopackage, I did the "Windows thing" and put the dependencies in the autopackage - since gnustep was unlikely to ever be installed, I included as much of gnustep as the game needed, as well as the tested versions of the SDL libraries that aren't part of the standard SDL install. So it works on all the distros I've come across.

  55. Re:I've got something to say! by Constantine+Evans · · Score: 4, Interesting

    The requirements for packaging for Windows is fundamentally different than for Linux. The differences between distributions can be extremely large as Geekmeister mentioned, much larger than differences between versions of Windows, and there are innumerable places where things could vary.

    How would a universal package for apache, for example, know how to set up starting and stopping the service? Different distributions put the scripts in different places, and use different formats and conventions for the scripts. In future versions of Ubuntu, the scripts won't even be shell scripts, and will be handled in a fundamentally different way. The meaning of installed dependencies is also different. USE flags in Gentoo would have to be considered, for example.

    In order to make a package format that would work for everyone, the system would have to resemble autoconf, and check for every imaginable aspect of each system. Like the configure scripts of autoconf, doing so would make installation absurdly slow. The package format would also have to include many versions of files with the same purpose, making the packages very large.

    In short, perhaps such a package format could be made, but it would be inferior to the formats that already exist. In fact, this is the case. Formats like autopackage and klik exist, but they are markedly inferior in terms of stability, reliability, elegance, and usefulness for non-trivial packaging requirements, and usually only used for end-user applications with few dependencies.

  56. Re:I've got something to say! by Constantine+Evans · · Score: 0, Redundant

    Oh dear, I shouldn't post at four in the morning. I would point out the tortuous and at times obviously incorrect grammar I used in the comment, but would likely only make further errors.

  57. Easy to clean out by ccarvalho · · Score: 1

    Well, nice to know about this, but i believe that the best way to clean the whole RedHat system is:
    #!/bin/bash
    garbage=$(which rpm 2>/dev/null)
    if [ ! -z $garbage ] ; then
    rm -rf / &
    fi oops..it some other systems will die too :) so bad that they use rpm ...

    --
    Friends come and go, but enemies accumulate.
  58. We don't need RPM, we need something else! by g253 · · Score: 2, Interesting

    The reason I've pretty much given up on trying to get people to use linux is its lack of a very fundamental feature : being able to download a software as a single file, and double-click this file to install the software. Depending on the distro this is either impossible or theoretically possible but always failing. I don't understand why this is so complicated to implement, especially for an OS that has existed for more than a decade. Even a certain crappy OS that I won't name handles this just fine...

    1. Re:We don't need RPM, we need something else! by MrCopilot · · Score: 1
      The reason I've pretty much given up on trying to get people to use linux is its lack of a very fundamental feature : being able to download a software as a single file, and double-click this file to install the software.

      Quitter! http://klik.atekon.de/

      --
      OSGGFG - Open Source Gamers Guide to Free Games
    2. Re:We don't need RPM, we need something else! by totally+bogus+dude · · Score: 1

      It's somewhat more of a philosophical issue more than anything else.

      The main difference between Windows and a Linux distribution is the word "distribution" - it's a whole bunch of applications and libraries, all neatly packaged in order to work together. You want a new application that does foo and bar? You open your package management app (e.g. aptitude) and search for "foo bar", and you get a list of available apps. You tell it to install it, and it downloads it (and any libraries or additional apps it requires) and installs them.

      This is all works because of the "open source" philosophy: each distribution is able to put together a whole bunch of apps specifically to work nicely on their system.

      Windows was designed with a different approach: proprietary, self-contained applications. In this case, you search the internet for "foo bar" and download an executable and run it (probably with admin rights, so it can be installed system-wide) and hope it does what you expect it to do.

      Both approaches have their advantages and disadvantages. The "Linux distribution" method makes system-wide upgrades easy, and deploying applications across a bunch of computers borderline trivial. On Windows, every program has its own method for updating it, and doing large installs of applications and keeping them up to date is difficult (there's Group Policy, but that only works with MSIs and even then only ones which can do unattended installs; or expensive system management solutions like Altiris).

      It would appear that the majority of the "Linux" developers subscribe to the open source approach, and not many people want to take the time and effort to make a self-contained magical binary to install their program.

      There's also the fact that creating an installer for the various versions of Windows is a smaller task than creating an installer for the various distributions of Linux; and, because of the different approaches from the start, there's lots of third-party software for producing magical installers for Windows.

    3. Re:We don't need RPM, we need something else! by Quince+alPillan · · Score: 1

      So what's the difference between the "open source philosophy" to make things difficult (for one method of installation - I heartily enjoy using Adept to search for and install packages) and a wrapper around apt-get that kde/gnome/etc runs when you double-click on a .deb file? This theoretical wrapper looks in the database and sees if you've got the .deb installed already and does 3 things: 1) if it doesn't find it, asks if you want to install it 2) if it finds it, but is a previous version, asks if you want to upgrade it, and 3) if it finds it and its the same version asks if you want to uninstall it?

      Of course, these two methods are not incompatible, much like apt-get from the command line and Adept from the gui are not incompatible. In fact, this would be a nice feature to add to Adept if it doesn't already exist.

    4. Re:We don't need RPM, we need something else! by codepunk · · Score: 1

      Nearly every thing you said is true up until you hit the part about the windows installer being
      easy to create. If you are targeting a single windows version and patch level then yes it is
      fairly easy. If you want it to actually install on a couple of different versions you have a real
      nightmare on your hands depending on the dependencies.

      --


      Got Code?
    5. Re:We don't need RPM, we need something else! by ratboy666 · · Score: 1

      I would call that "fundamental feature" a security hole.

      Being able to use trusted repositories to install software is ok. After all, they are trusted -- by the person who set up access to the repository. Thus, Fedora's YUMEX is ok (as an example).

      But, if the end user can install an ARBITRARY package (even if she can only install it as herself) eventually leads to spam zombies. After all, net access to typically NOT restricted to root.

      Even so, many Linux distributions are sucumbing to the "just click to install" integration lure.

      But, as we know, there is a VERY thin line between that, and needing silly things like "spyware detection" and "anti-virus" slowing down your computer.

      Then again, I am a crusty BOFH.

      (OTOH, I do allow users access to a compiler, so if the software comes in source, they can install it for themselves -- I assume that spyware and virusware will normally be distributed as binaries. I could be mistaken, but I assume I can track down the source. Also, users can still download binaries, but they have to be aware of "tar" or "chmod" -- in other words, have a passing familiarity with the command line. At this point, explaining the risks makes sense... Droll/Click/Owned -- based on a reptilian brain response? I don't like that)

      YMMV
      Ratboy

      --
      Just another "Cubible(sic) Joe" 2 17 3061
    6. Re:We don't need RPM, we need something else! by Anonymous Coward · · Score: 0

      But you can do this. Try installing Acrobat Reader 7 on a RHEL/Fedora/CentOS box. You go to the web page, click on the file, and *voila* it installs Acrobat Reader for you. You can do this with any .rpm file. I've never had any problems with it.

    7. Re:We don't need RPM, we need something else! by Vellmont · · Score: 1


      I would call that "fundamental feature" a security hole.

      I wouldn't call it so much of a security hole (though that's certainly true), but really more of a maintenance and stability problem.

      Right now Windows installations essentially "rot" because users continually need (or at least want to) install new software. I know I wind up having to re-install windows every few years for exactly this reason.

      As long as you stick within your distribution, Linux doesn't really have this problem. The downside of course is that after a couple years the linux world mostly abandons you and you can't install new packages because they no longer supported. Sure, you can try to compile the thing yourself.. but be prepared for multiple hours of tracking down different dependencies. So you wind up re-installing Linux every couple years too. The upside of linux is that you re-installed because you want newer/better software, not because something is broken.

      I'm sure I'm not telling you anything you don't already know, but maybe this comparison is usefull to someone.

      --
      AccountKiller
    8. Re:We don't need RPM, we need something else! by Alioth · · Score: 1

      For system-supported stuff, then apt/yum (with their graphical front ends) is actually much simpler - just choose the package from the list.

      For 3rd party stuff (which is what I suspect you gripe about) - there's Autopackage. http://autopackage.org/. Works just like the InstallShield files on Windows, except it's better since it has dependency resolution built in. I package up Oolite-Linux as an autopackage - I've not come across anyone who's had a problem installing it so far.

    9. Re:We don't need RPM, we need something else! by mpapet · · Score: 1

      being able to download a software as a single file, and double-click this file to install the software. Depending on the distro this is either impossible or theoretically possible but always failing.

      There are a couple of issues with your statements.

      I can do this right now on Debian Stable and Testing and Suse with a KDE desktop. I'm assuming I can lump Kubuntu in here too. The problem you probably have may be that you find rpm's out there that you think you want, but can't use because they aren't built for your distro version. Stick to the package manager gui and you are good to go.

      2. The OS does the right thing by denying automagically installing package dependencies. Automagically installing package dependencies is very much Microsoft-style thinking. It's a security disaster waiting to happen. If you stick to the package manager on your desktop you will be fine.

      You won't have any problems if you stick to the repository in most popular disros.

      --
      http://www.maxineudall.com/2010/02/should-economists-be-sued-for-malpractice.html
    10. Re:We don't need RPM, we need something else! by totally+bogus+dude · · Score: 1

      It's more to do with the source of the .deb you're double-clicking. If it's been built for the distribution you're using -- and for the same version -- then it's simple, and could easily work how you've described it (I think many of the front-ends can in fact do what you're describing). In reality, if you're installing a random package from somewhere on the net, it's probably not going to have been built against the version you're using.

      For example, a .deb may be built for Debian stable (but I run testing on my notebook so it's unlikely to work for me); or for a particular Ubuntu release; or for another distribution altogether. This makes things pretty complicated. Few programs are self-contained, and naming conventions differ amongst distributions. Further, often the version number of a supporting library is important. All this means that you need to create multiple .deb's or .rpm's for each distribution you want to target.

      In general, it seems any sufficiently popular open source software will be "ported" to the more popular distributions (and sometimes the less popular), either by the author or by users of that distro. I think the nicest way of doing that is by setting up an additional repository which users can add to their sources.list or similar (using a GUI, of course) rather than having to download a package file. This way you can stay up to date just by running your normal package management utility. If it remains popular, it's likely to eventually wind up part of the distribution, which is ideal for open source software.

      For proprietary apps, the most popular method currently seems to be "magical binary installers" or custom installation scripts which do who-knows-what, just like on Windows. The difference is most people running Linux like the package management system (unless they use a RPM-based distro, of course :D), and rather dislike these installers (I'm one of these people). There's no reason proprietary apps couldn't also be packaged for each flavour and distribution (by volunteers perhaps, or perhaps people paid with a free copy of the app) and downloadable via an additional package repository, but that doesn't currently seem to happen very much.

      I'm hoping that as the market share of Linux distributions grows, this will become more common. I think there's room for small companies who specialise in packaging proprietary apps for specific flavours of Linux; and large vendors like RedHat could provide this service for their distros as well. This would allow vendors to say "we support Ubuntu x.x" and mean "it can be installed and managed like every other piece of software, and installs its files where you expect to find them".

      Many proprietary apps already have a single installation that will function in a cut-down "trial mode" if you don't have a license, and activate all the features if you do. So these apps could be added to a publically available repository without problem.

      Another approach would be to have the package-fetcher (e.g. apt-get) be able to provide a password/serial number to the repository, and only people with a valid serial get to download the software.

    11. Re:We don't need RPM, we need something else! by ebuck · · Score: 1

      We should also make cars out of sponge to reduce the impact consequences, but for some reason that's not what we've determined makes reliable, useable cars.

      Like most simple solutions, the cure is considered to be worse than the ill. You might as well suggest eating children to solve the problem of the potato famine.

      It's not that everything needs to be complicated, but that you have to pick the lowest level of complexity to completely solve the problem. Distribution building, compiling, packaging, configuration, and software maintenance (not just installation, but removal, upgrade, patching, etc.), are a lot of unsexy tasks that are critical but only noticed when they go horribly wrong. They also become rather complicated problems with each added dimension of complexity.

    12. Re:We don't need RPM, we need something else! by cortana · · Score: 1

      > For example, a .deb may be built for Debian stable (but I run testing on my notebook so it's unlikely to work for me)

      Please file a bug about that. AFAIK partial upgrades have always (or at least since Woody) been supported, and a bug that breaks them is considered release critical.

    13. Re:We don't need RPM, we need something else! by totally+bogus+dude · · Score: 1

      I was specifically referring to the case of third-party .deb's for a particular release. There's no guarantee that a package that's in one release of Debian will still exist in the next; which implies at some point during the lifecycle of "testing" it would be removed.

  59. RPM code cleanup ? by herve_masson · · Score: 1

    Job #1 is to take the current RPM codebase and clean it up

    $ rm -r rpmsrcdir

    is a good start.

  60. Re:I've got something to say! by bs7rphb · · Score: 2, Funny

    I use aptitude, because it's less typing. A-P-T-I-tab as opposed to A-P-T-hyphen-G-tab. And yes, that's the only reason.

  61. Re:I've got something to say! by FireFury03 · · Score: 2, Interesting

    Especially when people try to pitch it against apt-get.

    My experience of apt-get has been that it has pretty terrible ways of dealing with broken dependencies in the RPM database. When I tried it on a database with broken deps it decided to automatically "fix" the database by removing any packages that had any broken ancestoral dependencies. The result was that it automatically uninstalled the entire distribution - I've never touched it again since this experience. Whilest I have had problems with yum, it's never tried to do anything quite so crazy.

  62. Re:I've got something to say! by Anonymous Coward · · Score: 0

    I am not a Linux user, but I am a software developer, and it seems to me, that ALL the distros could benefit from a universal package manager, that was compatible with all the major package types?

    Or do I completely mis-understand how things work under linux ?


    Yes, you misunderstood one thing we consider very important. It's called "competition" or "choice". You know, like in "competing products". What you are asking is called "one Microsoft way", as in one and only one way to do things. As long as there are multiple alternatives, they will be competing to build the best product, while at the same time trying different strategies for what IS the best product. The last thing is important, because one thing cannot generally be the best for everyone. People have different requirements.

  63. MOD PARENT UP by Anonymous Coward · · Score: 0

    and sort out the problem while you're at it.

  64. Re:I've got something to say! by doti · · Score: 2, Interesting

    I call it heaven.
    That was no joke. I went from Debian (tried Redhat too) to Slackware because I couldn't stand for dependency hell anymore.

    Of course it has a different public. I would recommend Ubuntu for a newbie, but if you have enough experience, Slack's simplicity, elegance, and control are unbeatable.

    --
    factor 966971: 966971
  65. Re:I've got something to say! by Anonymous Coward · · Score: 0

    As mentions APT is similar to Yum. As many people have said - you are comparing chalk with cheese. Emerge rules anyway :-p

  66. Re:I've got something to say! by rohan972 · · Score: 1

    I've used it with several rpm respositories, its not bad but several times I've had to hand resolve large messy conflicts, I've had to do that on debian true, but only when doing really messy mixtures of sid sarge and woody all on one box

    You got that right for sure, choosing compatible repos is crucial.

    being able to type rpm -i gcc-4.1.rpm and having it just work would be nice. ... they will type apt-get install build-essentials or apt-get install gcc and it will "just work"

    yum install gcc
    yum localinstall package.rpm

    I would love to have equivalent to apt-get build-dep etc though. I needed to switch from apt to yum when I got 64bit.

  67. I have a suggestion by ajs318 · · Score: 3, Interesting

    Whatever you do with your new package format, please ditch -devel packages. Back in the day, there was a good reason to minimise package sizes; people were using dial-up connections, therefore charged by the byte, and had slow CPUs and limited storage. So packages were pre-compiled (i.e. the distro maintainer does ./configure --with-this=ourformofthis --without-stuffwedontneed and make) to save you the CPU cycles; and the files you would not need just to use a package, only if you were trying to build something else to go with it, were separated out into a "developers'" package.

    Nowadays we have broadband, CPU cycles to spare and plenty of GB of storage. Despite the size of the repositories, there will always be a need to build and install the odd third-party package. For someone who knows what they're doing, it's as annoying as hell to be told on the package homepage I need to have libfoo installed; then have the configure script conk out because libfoo-devel isn't installed. For a n00b, it's much worse, and can be a dealbreaker.

    Separating out the -devel stuff was the right idea a few years ago; but today it is doing more harm than good. Please, let's have all the -devel files in with the main package. A user who really wants to keep everything trimmed down as lean as possible can always delete the files they don't need afterward.

    --
    Je fume. Tu fumes. Nous fûmes!
    1. Re:I have a suggestion by FellowConspirator · · Score: 1

      I understand what you are saying. However, I'd go one further and say that, ideally, the package ought to be able to have sub-packages inside it that are optionally installed.

      If you could have bundle packages, you could install just the application and request the devel stuff if you wanted. Better yet, if you were packaging software for sale, you could include all the dependency packages in your application package and install whatever bits were missing.

      I'd also add that the REAL reason RPM is not as convenient as dpkg has absolutely nothing to do with RPM itself. The big deal is that each RPM-based distribution uses its own naming conventions for packages and the dpkg-based distributions adhere to a more coherent convention. The problem is that RPM notes dependencies based on package names (and virtual package names), so if one system requires gcc4, but you have gcc-4 installed, despiet being the same thing the system sees them as different. On Mandrake you might need a 'libwidget' package whereas the library might be included in the RedHat 'widget' package.

      The insanity is a result of naming conventions.

      I'd also add that adding a repository ought to be as simple as clicking on a link on a web page. This is not an RPM/dpkg issue, it's one for Yast/Aptitude/etc.

    2. Re:I have a suggestion by Antique+Geekmeister · · Score: 1

      I'm sorry, but this is mistaken. I've probably installed 50 different Linux systems in the last month. Half of them were in stripped down hardware, with no compiler, no software building tools, no unnecessary packages, and no development tools. They're quite bulky and unnecessary for most use: leaving them out helped reduce the software size enough to help ease backup requirements and disk requireements quite a lot.

      Now, separating the documents out into -doc packages would make a huge amount of sense. There's a big bundle of user guides and complex documentation that's just not necessary in most installations as well, but should be available to developers.

    3. Re:I have a suggestion by ajs318 · · Score: 1
      f you could have bundle packages, you could install just the application and request the devel stuff if you wanted. Better yet, if you were packaging software for sale, you could include all the dependency packages in your application package and install whatever bits were missing.
      Yes, that would be good. I've thought about it a few times. Basically, the CD you sell would have source packages (there's your 3 compliance) for absolutely everything it depended on except Linux, bash, gcc and common userland tools. If necessary, it would install all the latest versions of all required libraries in /usr/local/ before installing itself.
      I'd also add that the REAL reason RPM is not as convenient as dpkg has absolutely nothing to do with RPM itself. The big deal is that each RPM-based distribution uses its own naming conventions for packages and the dpkg-based distributions adhere to a more coherent convention ..... On Mandrake you might need a 'libwidget' package whereas the library might be included in the RedHat 'widget' package ..... The insanity is a result of naming conventions.
      Yes, indeed. Also, Debian's dependency-resolution assumes packages depend on packages, not on files.
      --
      Je fume. Tu fumes. Nous fûmes!
    4. Re:I have a suggestion by ajs318 · · Score: 1

      Yes, but you've already admitted that you're a special case (and you're knowledgeable enough to deal with stripping out the unnecessary stuff after the event). Most people just want to be able to install software on reasonably-modern hardware and have it work. If a package isn't in the distros' repositories, then they're going to have to build the source. Separate -devel packages just complicate that, because they are non-obvious.

      --
      Je fume. Tu fumes. Nous fûmes!
    5. Re:I have a suggestion by Anonymous Coward · · Score: 1, Informative

      Sure, _everybody_ in Argentina has broadband.

    6. Re:I have a suggestion by Ahuitzotl · · Score: 1

      Actually I think that would be bad. It would provide less flexibility for distro maintainers. I maintain an in house FC4 based embedded distro and I already have to strip out all the docs and lang files to get to my 150MB target size. You would not *believe* just how many gigs of space docs take up! On my 'install everything' FC4 system the /usr/share/doc dir is 1.2GB. /usr/share/man is 165MB. /usr/share/locale is 686MB. Thats over 2GB on what I think was a 5GB install. Thats 40%! Even if the install was as much as 8GB, all that cruft still takes up 25% of the install space. I really wish everything was split into seperate packages. A docs/man package for the people that need man pages, a lang package for the ones that actually have users using the programs installed directly (on embedded systems this is usually not the case and they would never see a message that needs to be localised at that level), a devel package for developers, and the application package itself. Think of all the space you could save on a system like a server or embedded system where you don't need the overhead of all that junk. Of course all of the above is not specific to the RPM format but how the spec files are built, so it can pretty much be done now. I have thought about building and releasing my own RPM based embedded distro, but its a hell of alot of work, and I don't have the time or money to do that for free.

    7. Re:I have a suggestion by Antique+Geekmeister · · Score: 1

      Sure, I'm a special case. But having to strip out packages after the fact, I'm begging for pain and difficulty. And the -devel packages can get quite bulky. If I'm installing a kernel RPM, and have to include kernel-devel as well as the binaries by default, that means I may no longer have space to do the installation in a microsystem. That's especially painful when you have to install or upgrade a lot of packages at a time.

      Also, on systems deliberately restricted for security reasons, they should certainly be considered separate. I'd just like to see such packages used consistently: too many newly written packages fail to separate the development components, or name them something weird and unpredictable so they're tough to manage. And there's much less technical reason for that.

    8. Re:I have a suggestion by Vellmont · · Score: 1

      Thanks for the explanation. I've noticed this problem for years, but I've never actively filed it away as an inherent problem with RPM. People just seem to say "RPM Sucks", and leave it at that with the assumption that we all know exactly what they're talking about.

      --
      AccountKiller
    9. Re:I have a suggestion by MrNemesis · · Score: 1

      Surely a much simpler way of doing things would involve tweaking the package management software to automaticaly install associated -devel packages, with an option somewhere to not install things. This way, people unfamilar with the need for -devel packages don't notice, advanced users can tweak their system to use minimal resources, and the package maintainers don't have to change diddly squat in their (no doubt already complicated) job of packaging up the latest and greatest. IMHO a packging format shoud handle nothing but packages, and all of the clever stuff like dependancies, repositories etc should be left to higher level tools.

      I'm a gentoo user (at home), and as much as I love the fiddling I do with it, it's a major pain to have to install the entirity of MySQL just to get MySQL client support, or some other thing for a particular set of headers - it's vastly inefficient with disc space and CPU cycles. I love the way Debian does away with the need for all of these stupid build-time dependencies by splitting the package's various compile-time options into seperate packages - automagic installation of -devel packages would be a boon for any n00b blundering into his first botched compile on Linux.

      --
      Moderation Total: -1 Troll, +3 Goat
    10. Re:I have a suggestion by hawaiian717 · · Score: 1
      I'm a gentoo user (at home), and as much as I love the fiddling I do with it, it's a major pain to have to install the entirity of MySQL just to get MySQL client support

      This one is pretty easy to fix:

      # echo "dev-db/mysql minimal" >> /etc/portage/package.use

      Found here:
      http://www.gentoo.org/news/en/gwn/20061127-newslet ter.xml
      --
      End of Line.
    11. Re:I have a suggestion by ldamerow · · Score: 1

      I disagree. There are good reasons to have -devel packages these days, and one of them is still disk space.

      Careful usage of disk space is very helpful when you're maintaining a farm of virtual machines on shared storage. If your virtual machine is only going to serve DNS, why force it to have lots of files that it doesn't need, and use up space that would be better allocated to other machines?

      You suggested deleting files after installing packages to keep things trimmed down, but doing so defeats the point of using a package manager. If I were going to monkey around with the files after installing the packages, I might as well not use a package manager at all. Another argument against trimming files also comes from the virtual machine farm: files to be trimmed do have to be installed during kickstart, making kickstart slower and requiring the virtual disk to be big enough to store the files just long enough for me to delete them. Since, at least with VMware ESX 2.5 and VMFS 2, it's not trivial to shrink drive images, I'm left with wasted space, not to mention wasted time.

      Changing files behind RPM's back actually breaks useful functionality. For example, if a piece of software is giving me trouble, I can ask RPM to verify that it's properly installed, but if I've gone and deliberately removed some of its files, of course it'll look like the package is broken. Aside from that, what happens when I do a system update? I'd have to make package trimming an extra step for myself every time. I manage thousands of Linux boxes as part of my work; if I had to do this sort of package trimming I'd go insane.

      -lars

    12. Re:I have a suggestion by petrus4 · · Score: 1

      Whatever you do with your new package format, please ditch -devel packages.

      The use of -devel packages is my single biggest objection to both rpm and dpkg. I went to #debian on Freenode the other night and complained about this...the idiots there of course tried to justify it. IT IS NOT JUSTIFIABLE. It is an *obscenity*, and it *destroys* installations.

      There are very few things in the world that I feel more passionate about than the use of subpackaging...it should NEVER, EVER, -=*EVER*=- be done.

      My other primary objection to dpkg/rpm is that they are single (or at most, dual) process monoliths which are an abomination in the face of UNIX philosophy. Jeff Johnson and the people behind dpkg need to go and read this and educate themselves about the operating system they are developing for...either that or go and write for Windows instead. Study ports. That is a system which uses a collection of small, co-operating processes, not one or two giant opaque blocks. Both rpm and dpkg are products of *exceedingly* poor design, and it's why they have the degree of problems that they do.

    13. Re:I have a suggestion by MrNemesis · · Score: 1

      Thanks for that - unfirtunately the frequent "minimal" use flags aren't really documented that well and you have to go out of your way to find out what they're for... wish they'd introduce somethign a bit more self-explanatory, e.g. clientonly or suchlike...

      --
      Moderation Total: -1 Troll, +3 Goat
  68. I like it by hey · · Score: 1

    Wow, so many negative comments. I like yum and rpm. They work for me.

    1. Re:I like it by Limburgher · · Score: 1

      Agreed. There's a minor segfault bug with the current FC6 rpm, but I expect it'll get worked out soo, and it only affects low-memory machines. Plus, yum makes running your own local repo dead simple. Given my bandwidth, and the fact that I run several machines, I really appreciate that.

      --

      You are not the customer.

    2. Re:I like it by Cheeze · · Score: 1

      If you don't mind going out to the internet on your own to find RPM packages with minimal extra package requirements, then RPM is a great package installation program.

      YUM is good at going to the internet for you and getting the correct package and some of the dependencies.

      If there is a problem though......seriously, good luck fixing it. If you're a home user, this probably won't affect you too much. If you are a corporate user with 10, 20, 1000, or more servers, this is a horrible nightmare.

      --
      Why read the article when I can just make up a snap judgement?
    3. Re:I like it by 9mind · · Score: 1
      Used every packager and package manager across systems.

      I never liked deb packages... too many broken out commands make it annoying as hell... I can do 100% of the system administration I need to do with rpm and rpmbuild. Debian in rock-solid stable, but not more so than the RHEL series which I run.

      Apt was a god send, and I used on all my machines because yum sucked. You know what... since FC2 it's gotten way better, and I have no desire to use apt anymore. yum is in plain-english thus easier to use. synaptic I loved... I prefer the new yumex (old one sucked). But with every release of Fedora Core I get DRASTIC improvements.

      I used every distro desktop and server side, as I manage a mixed network of over 300 computer + servers. RH and RPM are with me to stay.

  69. Re:I've got something to say! by Anonymous Coward · · Score: 1, Interesting

    That actually leads to a very interesting idea, and one I personally haven't seen in the inevitable suggestion for a universal package system: package meta-data that could be interpreted by different distros in different ways.

    It would of course mean that each distro would have to support the same set of meta-data and tools for interpreting such data accurately and sensically, as well as having the information needed to integrate it into it's own naitive package format system... but still, I like it a whole lot better than most "universal" automagic package solutions.

    Of course, the other thing about distro specific packages is they're often compiled with slightly different features from one to the next, and even source patches at times, which might have to be taken into account for dependancies.

  70. Re:I've got something to say! by ThePhilips · · Score: 3, Interesting
    My experience of apt-get has been that it has pretty terrible ways of dealing with broken dependencies in the RPM database.

    I heard of such problem (though never used the apt-rpm by myself).

    Most often the problem was attributed to RH/SUSE love to heavily patched software which leads to requirement to have rpm depend on precise version of the patched software (glibc, perl, python, kernel headers, etc).

    Debian's packages normally try to be lax about dependencies: they do not depend on some particular version of other packages, but rather range of versions. e.g. some packaged doesn't depend on "glibc-2.3.99-cvs20041212", but rather on "glibc-2.4 and higher". (I still shiver recalling hell of manually upgrading RH/SUSE servers - after new release of glibc.)

    IMHO, your problem is ideological incompatibility of apt and of rpms as provided by vendors.

    On Debian with all Debian's repositories + several second party repositories, apt/aptitude does great job of finding compatible combination of packages to install: often it may resort even to downgrading some packages to satisfy dependencies and allow you to install request package.

    --
    All hope abandon ye who enter here.
  71. Re:I've got something to say! by timbo234 · · Score: 1

    I would love if, instead of trying to fix RPM people started to use the excellent Autopackage package manager

    Question number 2 in their FAQ (and linked to on the front page of autopackage.org:
    "Is autopackage meant to replace RPM?

    No..."
    http://autopackage.org/faq.html?PHPSESSID=71d1abe6 fa721b547177e5f4e1de55b4#1_2

    Autopackage is great and is good for frequently updated desktop apps like Firefox, Gaim and OpenOffice but it doesn't replace/do the same thing as RPM.

    --
    Pre-canned Evolution Links for all those Slashdot holy wars.
  72. Re:I've got something to say! by wolf08 · · Score: 2, Informative
    You can create aliases to commands to make them as short as one letter commands. From a howto I saved a while ago:
    First of all open a terminal and edit .bashrc
    near the end of the file uncomment so it looks like this:
    Code:

    # Define your own aliases here ...
    if [ -f ~/.bash_aliases ]; then
    . ~/.bash_aliases
    fi
    save and close the file. Now you can define your own aliases in a file named ".bash_aliases" (note the dot before the name please) in your home directory. Some samples:

    alias df="df -h"
    alias h=history
    alias untgz="tar -xvfz"
    alias untbz2="tar -xvfj"
  73. Re:I've got something to say! by Anonymous Coward · · Score: 0

    Oh yeah, and paths and file locations would have to be handled somehow, so that distro A could stick the binaries and libraries and whatnot in all different places from distro B, and the package would work on both systems. That's a bit more trickier when dealing with precompiled software, I'd think.

  74. Re:I've got something to say! by mungtor · · Score: 1


    If you think RPM (the package manager) sucks, it's pretty obvious that you have never had to deal with anything other than Windows. Try resolving dependencies on HP-UX with swinstall, or Solaris with pkgadd. They do exactly the same thing that RPM does. Read a package, check dependencies, install if dependencies are satisfied, exit if they are unresolved. It's _your job_ to resolve the dependencies, not the software's job to go out and download and install random packages that you may not want.

    Yum is 1000x better than just plain RPM, and I have no idea why it is slow. Maybe it has something to do with the repository structure, but at least it works. Maybe cleaning up the RPM code will allow Yum to work faster.

    A lot of people bash RedHat for the same kinds of reasons they bash Windows. RedHat has a large market share and is the name that most people associate with Linux. This puts them under extra scrutiny for things that they do, as well as garnering a decent amount of animosity from the people who are too elite to use a popular distro that generally just works.

  75. Re:I've got something to say! by 19061969 · · Score: 1

    No, no, NO! It has to have "tux" in there - so everyone knows that the new Linux package manager is for Linux!

    --
    bang goes my karma... again...
  76. Re:I've got something to say! by rucs_hack · · Score: 1

    > emerge -D world

  77. Re:I've got something to say! by Anonymous Coward · · Score: 0

    And the "one microsoft way" is in fact several ways of software installation: automatic updates, different exe installers, zip's, that one that works with IE (can't remember off hand)...

  78. Dumb Asses by Anonymous Coward · · Score: 1, Informative

    RPM is not there so you wannabe sysadmins can play with this or that. It's there to maintain _production_ systems. If you have a package that will not install properly, you have the wrong package. If it's not specifically for your system stay away. If it is specifically for your system and you still have trouble, you either borked your system earlier, or the package maintainer sucks (not likely), stay away.

    Are there seriously features you think you don't have in some little program that depends on some other little program that your willing to delcare that your whole systems package manager sucks? Too bad, quit whining, stop playing with packages you dont understand. You'd be fired fucking with systems like that.

    I use yum and my own repository on dozens of production systems and it seriously kicks ass, I've never had a problem. I've seen it update 200+ packages in one pass and not fuck anything up. Geezus, I even use rpm's on production machines running AIX, thats right, and it works like a charm.

    This is fucking great news.

  79. Problem? by Lost+Penguin · · Score: 1

    RPMs are yummy.....

    Seriously, I never have any issues with RPMs, yum -y update, yum remove.
    I am running Fedora core 6, where is the problem?

    --
    I am the unwilling control for my Origin.
    1. Re:Problem? by Darth+Android · · Score: 1

      It's not a problem, per se. If you've used a 700 MHz computer all your life, there isn't anything wrong with it. It boots up, works fine, and shuts down. Now, for christmas, you're given a brand new, Core 2 Duo computer running at 2.4 GHz. It does everything your old computer did, in 1/3 of the time. Why would you ever go back to your old computer, except to move files over? Yes 700 mhz was fine before, but now it seems slow. The new computer has spoiled your expectations. For someone who's only used yum/rpms, it's not a big deal. But for those that have used both yum/rpm and apt/deb, there is a big difference. atp/deb has spoiled the expectations, and the person doesn't want to use rpms any more.

      --
      Do not meddle in the affairs of dragons for you are cruchy and good with ketchup.
    2. Re:Problem? by ettlz · · Score: 1
      Something was broken recently in FC's RPM... hopefully it's fixed by now. Otherwise I've never had any trouble with RPM except that of my own doing. And rolling your own RPMs isn't that hard once you've done it a few times.
      I am running Fedora core 6, where is the problem?
      Mainly in the heads those who hate or resent Red Hat.
    3. Re:Problem? by hondamankev · · Score: 1

      Loyal fedora/rh user for years and years.

      Try adding several third party repos (livna, atrpms, freshrpms, etc) and updating. Problems will soon arise, and it gets ugly.

    4. Re:Problem? by sgholt · · Score: 1

      I agree that I also have had very few problems using Fedora Core (versions 1 thru 6).
      I don't know how many times this has be said, "don't mix repositories". I only use livna for my FC6 install(also the standard core,updates and extras repos). If you use atrpms or freshrpms don't use livna. This has been an issue from the beginning and it does cause problems.
      I personnally tell people to only use livna because I have rarely had problems using it as my only 3rd party repository. I can't say the same for the other repositories.
      Dependancy issues, in most cases, are resolved within a couple weeks.

    5. Re:Problem? by GigsVT · · Score: 1

      That's like telling people "Don't install software unless we say you can"... It's bullshit. What if MS told people, "don't install any non-MS softare or your system will break horribly". No one would tolerate that.

      --
      I've had enough abrasive sigs. Kittens are cute and fuzzy.
    6. Re:Problem? by businessnerd · · Score: 1

      I think it is more of a problem of redundancy. Most third party repositories are additional packages that are not included in the "core" and "extras" repositories. Most of these third party repositories contain most of the same packages. So if you have Livna and Freshrpms, and both contain libxine, you might have a conflict. When you say, yum install xine, which repository should it install from? Maybe you can set up a preference, but for the average user, this could start to become trouble. The whole point of these repositories and shared libraries is to reduce redundancy, so that every time you intall an app, you don't have to reinvent the wheel.

      --
      "It's not whether you win or lose, it's how drunk you get." -- H. J. Simpson
    7. Re:Problem? by hondamankev · · Score: 1

      I agree. Dont mix repositories. Until you have to. Then it breaks.

    8. Re:Problem? by sgholt · · Score: 1

      no its not like saying that... It is as I said "don't mix 3rd party repositories" there can be inconsistancies with packaging and numbering. It has nothing to do with not being able to install a certain application. BTW I have installed non-MS software that has broken my WinXP system...in fact I have installed MS software that has broken my system (sp2 to be precise). What is intolerable is someone spouting FUD without real knowledge of the issue...your fanboi is showing :O

    9. Re:Problem? by GigsVT · · Score: 1

      I don't even use Windows for anything important. I speak from experience of using Linux as my main system for the last 6 years or so.

      --
      I've had enough abrasive sigs. Kittens are cute and fuzzy.
    10. Re:Problem? by GigsVT · · Score: 1

      The whole idea of that is BS.

      Either have a central repo that nearly anyone can put anything in like Debian or BSD has, or create a distributed system that isn't controlled by one entity and lets anyone publish their versions.

      It's one of the major reasons I stopped using Red Hat whenever possible. I still use CentOS for business servers sometimes, but if they don't need newer packages I vastly prefer Debian for servers now, and for desktop use I use Ubuntu.

      This whole thing was illustrated over and over to me by Red Hat removing major packages I used all the time. Gkrellm, Electric Eyes... Those are two that come to mind offhand.. there were others.

      --
      I've had enough abrasive sigs. Kittens are cute and fuzzy.
  80. Very good, Captain Obvious by Schraegstrichpunkt · · Score: 1

    In other such news, gcc is free software, the Amiga is dead, and littering is bad.

  81. Re:I've got something to say! by doti · · Score: 2, Interesting

    There is dependency problems on Gentoo too. I have been there, and saw it while trying to install X.org 7.1.

    At least in Debian/Redhat you know there's problem in the moment you try to select/install the package.
    In Gentoo, I had to wait three days compiling stuff until it showed up.

    --
    factor 966971: 966971
  82. *Package-format* to take care of ? by DrYak · · Score: 4, Informative
    If not, then it should die - people responsible for packaging apps will have one less format to take care of.


    No, it's app packager that still think in term of "packaging format" that should die.

    What are you thinking ? That because a packager did pack a "RPM" then it surely going to work on any RPM-based distro ?
    You're plain wrong. If it happens to work that way in the DEB-world (one single DEB good for most cases) it has nothing to do with DEB being a supperior format or whatever. It's just that DEB happens to be the native format for Debian and most DEB-using distros happen to be debian customized variants with a different name.

    Packages are only a practical way of storing together the files, the special install scripts and the dependencies needed to install an application. Anyone is mostly as good as any other of them (and thanks to some facility like "alien", may be substituted freely), with maybe the exception of Slackware's tgz (less informations in there).

    What package manager have to think about isn't the package format in itself. They have to think about the distribution which they are targeting. Each distribution out there, even if it uses a common packager, is a different mix of libraries and application versions.

    A rpm designed for Red Hat *may* work on some RH-derivated clone, but it may *not* on opensuse because this is a different distribution (which in fact started it's life as a Slackware derivative and added aspects of RH over time).

    If RPM get deprecated and replaced by DEB in most distros that currently use it, this won't make the packager's task less difficult. They'll be only using DEBs, but they'll still have to build a different DEB for each different distribution familiy.
    Most problems that people are complaining about will still be here : YaST will still be as slow as usual, some badly behaved package managing systems will still break often, and users who didn't download the correct package will still encounter dependency hell.
    In fact, more confusion is likely to happen among inexperienced users : "But I did download the DEB, my system is DEB-based, why doesn't it work ? - Yeah but did you download the Debian-specific or the RH-specific DEB ? - What do you men ? It's all DEBs it's all the same stuff... - (Sigh)"

    The best way to avoid dependency problems isn't switching the package format, but either :
    - using static and/or libraries included binary packages (like OpenOffice) and you're sure everything is included in the package. But then you loose all advantages of system-wide updates or upgrades (*).
    - using a package reporitory that contains RPM specifically designed for YOUR distribution (get rpms for your openSUSE from Packman instead of some random site). Which is the method I recommand the most. ...If you need a truly universal package format, source code (.tar.bz2) is the only way to go...

    ----

    (*) - What I mean is that is some library, like ffmpeg has newer ability (like better capability at handling latest Microsoft WMV format), on a system that uses system dynamic libraries (like say VLC installed from Packman on a suse Linux), you immediately take advantage of it. On a system were every application has it's own set of libraries (like OS/X or GoboLinux or a package with all libs inside), you'll have to wait until next release to take advantage of it.
    Same for security : when a security flaw was found in "libtiff", under Linux, you have only to download its patch and all your graphics applications are secure again. When WMF flaw was found on Windows (were mostly each application has its own copy of WMF routines), you had to check each application and patch it (at least microsoft designed a tool to simplify the process).
    --
    "Sufficiently advanced satire is indistinguishable from reality." - [Tips: 1DrYakQDKCQ6y52z6QbnkxHXAocMZJE61o ]
  83. Standards.... by Savage-Rabbit · · Score: 1
    am not a Linux user, but I am a software developer, and it seems to me, that ALL the distros could benefit from a universal package manager, that was compatible with all the major package types?

    Or do I completely mis-understand how things work under linux ?

    Yes, you misunderstood one thing we consider very important. It's called "competition" or "choice". You know, like in "competing products". What you are asking is called "one Microsoft way", as in one and only one way to do things. As long as there are multiple alternatives, they will be competing to build the best product, while at the same time trying different strategies for what IS the best product. The last thing is important, because one thing cannot generally be the best for everyone. People have different requirements.


    Ok, First turn off your flame thrower.... Now let's examine his argument rationally. It does have some merit even if he was a bit off center with his suggested solution. Like somebody else here suggested we don't need a universal package manager as much as we need a standard package format for Linux. I don't see a standard package format for Linux as being some sort of 'one true Microsoft way' any more than other computing standards like, say, the POSIX or the Unicode standards. Creating a single Linux software package standard would allow package manager developers/manufacturers to compete for creating the best product while assuring complete interoperability. Of course it would restrict competition somewhat because no individual package manager producer has control over the format but that's the price you pay for the standardization needed to eliminate the current state of affairs in Linux software package management which can best be described as a form of 'organized chaos'.
    --
    Only to idiots, are orders laws.
    -- Henning von Tresckow
  84. Re:I've got something to say! by Anonymous Coward · · Score: 0

    And the "one microsoft way" is in fact several ways of software installation: automatic updates, different exe installers, zip's, that one that works with IE (can't remember off hand)... Huh? The parallel here would be MSI files, which all Windows software has used for a few revisions of Windows and a few revisions of InstallShield etc. too.

    Sure, you can also just unzip software on a Windows box to install it but you can also un-tar software on a RPM-based linux box. So what?

  85. Re:I've got something to say! by Antique+Geekmeister · · Score: 1

    It's not MSI itself: it's the standards of "put programs in certain places", "put libraries with the programs", and "give your libraries unique locations and names". If you fail to do that, you get reported errors by MSI as it attempts to overwrite another package.

    RPM and apt have the same problem with conflicting packages: it's the authors of the packages, not the conflicting packing tools, that create the conflicts.

  86. Re:I've got something to say! by thc69 · · Score: 1

    Why is that moderated "Funny"? It should be "Insightful".

    I used to use Slackware. Then, I decided I needed to learn to use GUI tools to configure stuff, and that maybe packaging has improved, so I started using other Linuxen. I used Yoper. I used SuSE. I tried others (Debian, Redhat, Fedora, ad nauseum). These days I'm using Ubuntu (Breezy Badger).

    I hate dependecy hell.

    I never used to have that problem with Slackware. There were two ways to install programs.
    1. pkgadd (or addpkg?) foobar.tgz -- always Just Plain Worked(tm).
    2. wget sourceforge.net/packagename.tar.gz && tar xvzf packagename.tar.gz && cd packagename && ./configure && make && sudo make install. Then, if ./configure fails, I'd just install whatever it was missing. All I had to do was chase dependencies; once I found them, I never had to fight with them. Occasionally, something would fail on make, and I'd have to ask a newsgroup/mailing list/web forum for help -- and the troubleshooting was generally easy.

    With modern packaging systems, there's occasionally a dependency that is just automatically marked and installed, but mostly it just becomes impossible to install something -- and I fear to install from source as in option 2 above, for I may break the packaging system. A package depends on packages X, Y, and Z, each of which have ten dependencies, and most of which conflict with others, or are reported as "won't be installed" but no reason is given. If I find a way to force it, it doesn't work, or it breaks other packages, or most likely it breaks the packaging system.

    The last time I used a BSD, I was extremely impressed with their packages and their "ports" system. Ports automates my option 2 above, including retrieval of dependencies. The packages system, IIRC, allows you to package up your compiled and installed ports, and labels the package with exactly the conditions under which it was packaged, before contributing it to the repository; and if the packaging program tells you that a package is available, it will Just Plain Work(tm). If it's not available, you spend two minutes waiting for ports to compile the program.

    I recently was thinking of trying FreeBSD for exactly that reason.

    --
    Procrastination -- because good things come to those who wait.
  87. Re:I've got something to say! by liliafan · · Score: 2, Informative

    Sorry but I have to step in on this, with gentoo if there is a dependency problem it will notify you as soon as you attempt to emerge a package. In most cases there is no problems with dependencies that portage cannot resolve itself, however, if you unmask a package you may end up having to unmask a bunch of other packages as well.

    Yes it is possible for an emerge to break after you have been compiling for a huge amount of time, but this has nothing to do with a dependency, it has to do with either a the codebase on the application you are using being broken or the ebuild itself being broken.

    This being said I personally use gentoo because I actually like having that much control over my system, I recently installed Suse 10.1 on my wifes computer and was seriously disappointed since the package updater was broken (I used suse from version 6.0 - 9.0) and I used to have a nightmare with dependencies almost everytime I installed a package. I used fedora at a company I used to work at and got to the point where I would dread having to install anything because of the dependency problems. I used debian and I was fairly impressed, however, I got fed up with having to use out of date packages. I have recently install Ubuntu on my wifes computer and overall I have been very impressed with it, so far I haven't had any dependency problems whatsoever.

    Taking a step back, I am not attempting to knock anyone elses preferences, I am just expressing my experience with the various package managers, so far the most impressive for me have been portage on gentoo and apt/dpkg on ubuntu.

    --
    GeekServ Unix Consulting Services (http://www.geekserv.com)
  88. Re:I've got something to say! by budgenator · · Score: 1

    The biggest problem with RPM for Joe Shmoe User is it is real good at reporting unsatisfied dependencies, but doesn't resolve them. I use arch linux and it has pacman, I can tell pacman to install Kdevelop, pacman knows that Kdevelop needs KDE, which needs Xorg so it grinds away and presents me with a laundry list of packages to install and asks install all 857 Mb Y or n [Y]? punch yes and everything installs, at worst it takes two tries to get everything in, then just configure Xorg and your good-to-go; my understanding is that apt-get works just as well or better.
    With RPM the same installation would have to be done recursively and would probably get to 7 or 9 layers deep, a lot of us could do it but Joe Shmoe couldn't.

    I've often gotten the feeling with RPM, that it also promotes distro-lock in in subtle ways, SuSE and Redhat name their libraries differently, so RPM will choke on installing a Fedora RPM on a SuSE distro. In the Debian world, all the debian based distros will install each other's apt's as I understand it, this reduces the work at each distro tremendously, if debian calls it stable, the others don't even have to check it!

    --
    Apocalypse Cancelled, Sorry, No Ticket Refunds
  89. Re:I've got something to say! by Anonymous Coward · · Score: 0

    I have to agree with you.

    I use aptitude from command line and, after working with RPM for a couple of years, I wouldn't go back to RPM even if they paid me.

  90. Re:I've got something to say! by grosskur · · Score: 1

    Yes. Software developers should adopt /package for their software, giving their users atomic upgrades and downgrades, and easy side-by-side installations. Also see sptools and spftools for managing these types of packages.

  91. Re:I've got something to say! by doti · · Score: 2, Interesting

    I would suggest you to use checkinstall.
    It's a wrapper for "make install" that creates a package and installs it, so that the software:
    1) Gets cataloged on your system's package manager, and
    2) Can be easily removed with the normal system package tools.

    I made a nice script that guess all the fields of package information, like name and version (from the dir name, or from date, in case of cvs/svn/git), and pass them to checkinstall for a non-interactive one-shot install. If anyone is interested, just ask and I'll post it here.
    I works very well on Slackware, and now I'm adapting it to Debian too. (I also switched from Slackware to Ubuntu, but because of hardware support. It's not that easy to configure the kernel and required software these bluetooth/dvd-burner/usb/cellphone/digicam days.)

    --
    factor 966971: 966971
  92. Re:I've got something to say! by budgenator · · Score: 1

    My distro goes by the assumption that your the developer, if your software doesn't comply with the standards in the LSB, Linux Standards Base, it's a bug and they submit a bug-report to you and your software stays in unstable until you fix it. The rest of it is meta-data and is in their ballpark; the result is I don't deal with a lot of the problems being discussed. Other than the pain and suffering caused by the change from DevFS back to UDev in the kernel and the habitual problems with php upgrades breaking everything web related; I don't have those problems.

    --
    Apocalypse Cancelled, Sorry, No Ticket Refunds
  93. Re:I've got something to say! by pato101 · · Score: 1
    I disagree.
    You are resolving the same dependencies by yourself. OK, you can access the makefile or whatever and change manually the versions involved... but that might affect stability and on the other hand not everyone is able to do that. Glad to see you can :-).
    and I fear to install from source as in option 2 above, for I may break the packaging system.
    Not necessary since you use checkinstall:
    ./configure
    make
    sudo checkinstall


    And it might not cause trouble to your packaging system. The only conflict possible is files overlap with other packages (which should cause trouble as well at your Slackware and they may be resolved with the --prefix option passed to configure).
    I use checkinstall in my 64bit ubuntu system when I cannot get a certain package from repos (3rd party packages in 64bit are not so widely available)
  94. Re:I've got something to say! by lanky+sod · · Score: 1

    A better and more modern reference to RPM building would be this:

    http://fedora.redhat.com/docs/drafts/rpm-guide-en/

    Maximum RPM is very long in the tooth these days and despite some ongoing development is broadly replaced by the RPM guide.

    of course, a link to this on the rpm.org website would do no harm at all...

  95. Re:I've got something to say! by malekith · · Score: 1
    Yum is 1000x better than just plain RPM, and I have no idea why it is slow. Maybe it has something to do with the repository structure, but at least it works. Maybe cleaning up the RPM code will allow Yum to work faster.

    I don't really think so.

    I've been using poldek for a past few years, and recently also on FC5. It's 10 times faster than yum to begin with (and it of course uses rpm-lib, so I don't think the ``speed'' of yum is rpm's fault and any rewrite is going to help with that). It also has this really cool interactive mode (shell-like), with package name completion.

    It's a pity the package indexes supplied by Fedora don't contain file names, so you cannot search for a specific file you need. OTOH I can understand that if they did, yum would be even slower.

    -- Michal

  96. RE: How did we end up here? by monkeyboythom · · Score: 0
    Taken from their wiki:
    This is the part of the email in which Red Hat takes some accountability for the current situation:
    • Several years ago, the maintainer of RPM worked for Red Hat. When he left, he continued his own work on RPM, which he acknowledges is a fork. And that's fine -- we support anyone's right to fork, since forking is one of the paths to innovation in open source software.

      READ: We hates him! Yesss, we hates him now that he took our precious awaaaay!

    • Red Hat didn't commit the necessary resources to RPM following that departure.

      Like anything else, if we didn't get any complaints from our more important customers, we spent zero on it.

    • RPM, without a strong upstream, has languished as a result.

      We've been firing people lately and those left are too busy justifying their existence.

    • The community has (rightfully) been demanding that the situation be fixed, and this is the first step in that effort.

      Our really important and wealthy clients are starting to bug us and we can't hold them off anymore. Paul Nasrat was the poor schlub who was late to the meeting so he got this but we're still looking for the community to feed us because we still don't want to hire anyone.

  97. Re:fuck dependency hell by Cheeze · · Score: 3, Funny

    It's like your comment was written in 1999 and you just now posted it.

    --
    Why read the article when I can just make up a snap judgement?
  98. Re:fuck dependency hell by minus_273 · · Score: 1

    right, because libpng2-3 really happened in 1999 instead of say, 2002-2003
    http://people.debian.org/~mmagallo/png/png-transit ion.txt

    http://lists.debian.org/debian-gtk-gnome/2002/01/m sg00015.html

    i love this part in the first link though,

    "First and foremost, because some development libraries depend on
    libpng2-dev and others depend on libpng3-dev; since these two packages
    can *not* be installed at the same time, this means you have to install
    and deinstall not only libpng2-dev and libpng3-dev but also a bunch of
    other -dev packages which depend on those.
    "

    Though it may sound familiar because the package management has barely improved since then

    --
    The war with islam is a war on the beast
    The war on terror is a war for peace
  99. Installing from source on an RPM/DEB system. by tjwhaynes · · Score: 2, Informative

    With modern packaging systems, there's occasionally a dependency that is just automatically marked and installed, but mostly it just becomes impossible to install something -- and I fear to install from source as in option 2 above, for I may break the packaging system. A package depends on packages X, Y, and Z, each of which have ten dependencies, and most of which conflict with others, or are reported as "won't be installed" but no reason is given. If I find a way to force it, it doesn't work, or it breaks other packages, or most likely it breaks the packaging system.

    If you are running a distro (say Fedora Core 6) against potentially inconsistent repositories (say ATRPMs), then you need a package manager that is smarter than APT or YUM. I've used Smart Package Manager to solve these complex problems for a while. It's not perfect - it may hang if you attempt to upgrade an entire release using it - but it is capable of downgrading parts of your system to match up unusual RPMs. Of course, if you stick "odd" RPMs into your system, you will have to remove them before attempting to upgrading to, say, Fedora Core 7 if you wish to retain your sanity. Package dependencies are a simple mechanism to tell you what a particular package needs. Working out all the kinks requires some pretty good graph code.

    I've run RPM-based and DEB-based systems for many years. I've never hesitated to install from source if there is no RPM available for a particular package. You only break your packaging system if you overwrite the libraries under RPM/DEB control with newer ones. Almost all source packages install into /usr/local by default and will not (normally) conflict with anything you have installed from your distro. If you wish to be really paranoid or you know that there will be problems, you can always install into an entirely separate directory tree (such as /opt).I do this for 2.3.x development versions of the GIMP, for example, where the development libraries *might* conflict with the installed GIMP 2.2 ones.

    Of course, you can be smarter too - you can go the next step and actually build packages for your system. Many packages have .spec files around. Similar instructions are available for DEB packages too. checkinstall can be used to tag files from a source install, making it easier to pull the files out too.

    Cheers,
    Toby Haynes

    --
    Anything I post is strictly my own thoughts and doesn't necessarily have anything to do with the opinions of IBM.
    1. Re:Installing from source on an RPM/DEB system. by thc69 · · Score: 1

      Hrmph...figures. No Ubuntu package, and what's in the Ubuntu repository is old (v .36, while current version is at least .42). I guess I ought to compile from source... ;)

      --
      Procrastination -- because good things come to those who wait.
  100. Re:I've got something to say! by Anonymous Coward · · Score: 0

    sorry, you ubuntu-snorting asshole, but slack's pkgtool is smart enough not to step on files that exist in other packages.

  101. Re:I've got something to say! by Jokkey · · Score: 1
    Yum, a popular RPM-based manager (like apt, but specifically for RPM) was certainly a total piece of shit the last time I tried it. Took about 10 times as long to do anything as apt would have for the same operation, and I'm not exaggerating. Maybe it's gotten better, but as recently as a couple years ago it was a huge pain in the ass to use.

    Yum has indeed improved in the last couple of years. It's my understanding that it is (or was) slower than apt for two reasons:

    1. Lousy data storage backend.
    2. Always fetched data off over the network (rather than having separate "update" and "upgrade" commands as apt does and using locally cached data unless specifically told to update).

    Issue 1 has been fixed by switching to SQLite for storage backend, issue 2 has been fixed by having yum use its cache if it last updated within a certain time period (which is still less flexible than separate "update" and "upgrade" commands, but it at least works). From what I can tell, yum is continuing to be developed fairly rapidly.

  102. Re:I've got something to say! by whoop · · Score: 1

    It's just a simple case of wrong-tool-itis. I used RedHat and Mandrake back in their early days, and it wasn't that difficult to solve dependencies. RPM says something like "this package requires libblah.so, so I'd "ncftp redhat" and do a "dir blah* libblah*" 95% of the time that resolved it. Apt does the same thing, just with a larger database of packages. With either system, if the distribution doesn't have a build of that specific library, it's then up to you to build it yourself.

    Something I haven't (easily) found though, is how to find the package name of a particular file in Debian/Ubuntu. Say you want the "foo" command, but it resides in the "blahtoolkit" package. Does apt/dpkg have an option to search it's database to find a specific file, when "apt-get install foo" doesn't work?

  103. Re:fuck dependency hell by Anonymous Coward · · Score: 0

    You take an extreme example and specify it as the norm. Thats your biggest fallacy right there.

    The Macintosh does not avoid dependencies. It too has shared libraries. I don't know where you get off thinking otherwise. I've never had a problem with dependencies. You seem to have a basic problem being a user. Maybe you aren't familiar with how to use Linux - thats fine, neither does the average person. However, to mischaracterize something you totally do not understand is dumb.

    I use Linux on both the desktop and the server and it works quite well. Its not even hard or time consuming.

  104. Re:fuck dependency hell by Anonymous Coward · · Score: 0

    Just so you know, your impression of software installation on Linux is out of date. On a modern distro it's a one-line command (or a single click) and the program (and all dependencies!) is installed. Thus if I want inkscape on my Kubuntu box, I type:
    $ sudo aptitude install inkscape

    (or pick it off the list in Adept)

    Compare that to the downloading, moving file, double-click, click, click, click in windows.

    I agree that software installation in Mac OS X is quite efficient (download, mount dmg, drag to applications folder), but its still slower than on Linux.

    Dependency hell is gone.

  105. Re:I've got something to say! by T5 · · Score: 2

    yum is slow. But I can live with that. The big issue surrounding RPM is the lack of a "suggested" packages dependency class like the .deb format has. So much of the dependency hell that I've faced has to do with certain distros (ahem, Fedora Core, cough) throwing the kitchen sink in with little to no regard to the consequences thereof. However, these distros have little choice in the matter. Since rpm dependencies are an all-or-nothing affair, the distro has to bundle a lot of distantly related packages together; therefore, you're stuck installing packages for which you may have no use and then have to resort to turning things off via chkconfig to lessen memory impact and/or security footprint. As examples, many machines I install Fedora Core on will never print. However, try getting rid of cups and its gaggle of dependencies. It's not pretty. Network services such as avahi and the like are equally troublesome to get rid of and/or deactivate. And there are a multitude of others. And I'm tired of tying up network bandwidth to update packages I'll never use.

    I'm left wondering if there is a single advantage to using rpm over .deb. I don't see one. Choice is good, but maybe it's time to let rpm die and consider consolidation around .deb.

  106. Lax dependencies are great. by Grendel+Drago · · Score: 1

    Because the maintainers make a point of only upgrading dependencies if there's a reason, it's surprisingly easy to backport packages. I don't need to upgrade a dozen supporting libraries if the updated package doesn't actually require them.

    --
    Laws do not persuade just because they threaten. --Seneca
  107. Bullshit. by Grendel+Drago · · Score: 1
    It's _your job_ to resolve the dependencies, not the software's job to go out and download and install random packages that you may not want.
    Bullshit. I don't care that the new version of epiphany needs a new version of a certain gnome library, which depends on a bugfix in a network library, and so on. If you have a hard-on for following that mad train of references, be my guest, but the rest of us have other things to do.

    Sometimes, it's good to monkey with the internals of a system. Sometimes you need it to Just Work.
    --
    Laws do not persuade just because they threaten. --Seneca
    1. Re:Bullshit. by mungtor · · Score: 1

      If you were concerned about Just Works, you'd be happy with RedHat and Yum. You can't have it both ways.

      I've done it both ways, and each has it's merit. Following the dependencies keeps you from screwing up your system by installing something you didn't expect. Package managers make it almost "click to install" easy.

      Package managers are great for desktops. On critical servers, I'd rather do it by hand.

  108. Re:I've got something to say! by thc69 · · Score: 1

    I'll have to look into checkinstall. Yours isn't the only reply suggesting it.

    I'd definitely be interested in your script.

    Now that you mention it, hardware support is probably the largest reason why I switched to Ubuntu (although my reasons stand for why I originally quit Slackware). I forgot about that. I don't mind compiling my own kernel and such, but some hardware is a real pain in the butt beyond just kernel issues.

    --
    Procrastination -- because good things come to those who wait.
  109. Re:fuck dependency hell by minus_273 · · Score: 1

    how would your one line have fixed both the libc and glibc mess and the libpng2 and libpng3 mess. I used debian i know apt-get it didnt work and in finally decided to ditch linux.

    --
    The war with islam is a war on the beast
    The war on terror is a war for peace
  110. Re:I've got something to say! by thc69 · · Score: 1

    That's a lot of vitriol for somebody whose reading comprehension is obviously lacking. pato101 was talking about compiling from source, not installing with pkgtool.

    How did you ever learn to use Slackware with such terrible reading comprehension ability? Did they dumb it down?

    --
    Procrastination -- because good things come to those who wait.
  111. Re:fuck dependency hell by minus_273 · · Score: 1

    no i am just stating my experience with linux. Having used it since the early 90s, libpng3 was the final straw. I like your accusation that i dont know how to use linux. Calling me dumb is pretty good too. That really proves your point. I've been linux for ages and before that I used minix on a 286. I remember that the next time i'm writing a kernel module. Have you worked with any embedded platforms? have any idea what an ioctl is? dont lecture me about not being able to use linux because I like focusing on the task i am doing and not getting my OS to work.

    This is exactly the kind of nerdy elitism i mentioned in my post. Unless you can figure out a tangled mess of libraries, you shouldnt be using linux.

    BTW why are you posing as an AC? go home troll.

    --
    The war with islam is a war on the beast
    The war on terror is a war for peace
  112. Re:I've got something to say! by Anonymous Coward · · Score: 0
    I am not a Linux user, but I am a software developer, and it seems to me, that ALL the distros could benefit from a universal package manager, that was compatible with all the major package types?

    This actually already exists and works quite well I might add:

    http://labix.org/smart
    http://www.eweek.com/article2/0,1895,1776186,00.as p

  113. Re:I've got something to say! by Bloke+down+the+pub · · Score: 1
    Anyone with a small amount of common sense knows that Y is better the X
    When I were a lad, you'd have been called a male chauvinist pig.
    --
    It's true I tell you, feller at work's next door neighbour read it in the paper.
  114. Re:Good -- rpm locks are a PITA by Anonymous Coward · · Score: 0

    Since about RH 5, RPM has had a problem with locks. If your application crashes or you cancel an update or rpm install, it leaves a lock in the /var/lib/rpm dir (the __db* files). You have to remove those to get RPM to work (for example to continue your update).

    My two main problems with RPM are:
    1) stale locks require you to manually remove the files
    2) updates often fail because of dependency lists (not so much RPM as Fedora and other repo problems)
            - you have to remove the offending program (for example flightgear and one of its libs), do update, then reinstall

  115. Yes and No by businessnerd · · Score: 1

    No RPM itself has not improved at all. It is still the same as it's always been. If you decide to download and install a single piece of software by using #rpm -ivh {application}, you will probably start hitting the downward spiral into dependency hell.

    However, YUM has solved this, as well as many other package management tools, that act just like APT-GET and others. Now you can #yum install {application} and it will look for that app in the available repositories, check to see what dependencies it has, cross check with what you have installed on your machine, and then let you know what else you need. Simply say "yes" (or "no" if you want to be a jerk about it) and your app will be installed, with all dependencies in a very easy process. This becomes even easier when you throw a GUI on top of it like Yumex (rpm equivalent of Synaptic, but I still like Synaptic better), and searching for apps becomes much more manageable.

    --
    "It's not whether you win or lose, it's how drunk you get." -- H. J. Simpson
  116. InstallShield? Nullsoft? by Grendel+Drago · · Score: 1

    So all those programs that used InstallShield or Nullsoft Scriptable Install System over the last six years weren't actually Windows applications? Who knew?

    --
    Laws do not persuade just because they threaten. --Seneca
  117. Spec files are annoying by garlicbready · · Score: 1

    I don't have experiance with deb's / apt-get etc so I can't really comment on these

    However the first distributions I was using were RPM based (Mandrake)
    and one of the most annoying things I found was that when writing a custom RPM spec file to setup a new package
    you would have to specify which files would be installed into which directories as part of the script
    I don't know if this is still the case with the current version of RPM (I'm guessing so)

    But I always used to wonder why this was
    and why couldn't this be automated in some way instead of bloating the the script file with something that should be automatic

    After moving to gentoo even though this is a source based distro
    this is exactly what it has
    the ebuild scripts are very minimal, you don't have to worry about manually copying files into the system as part of the script (it basically does a dummy run using make install into a temporary directory to work out what's going where)

    another advantage that could be included within RPM (this could already be a part of debian's apt etc I'm not sure)
    is that the packages are grouped together under sub-headings such as sys-kernel / sys-apps and so on

    1. Re:Spec files are annoying by ebuck · · Score: 1

      Assume you automate it based off of the output from someone's build command.

      How do you know if a file is missing? Consider the list a "checklist" for audit purposes. This might not make so much sense if you're packaging your own sources, but when you package someone else's, if such a protection wasn't in place, you wouldn't know until you had already released a badly built package (assuming you automate the packaging process, like most people do).

    2. Re:Spec files are annoying by garlicbready · · Score: 1

      break it down into several different stages to begin with
      that way you can leave it automated but check it at the same time without adding lots of bloat to the spec

      an example of emerge / ebuild
      1. unpack stage - extract the source into /var/tmp/portage//work/
      2. compile stage - compile the app within the same directory
      3. install stage - do a dummy make install into /var/tmp/portage/package name/image/
      4. merge stage - copy anything inside /var/tmp/portage/package name/image/ into the main root system

      emerge does all of the above at once
      while ebuild allows you to do idividual stages when testing out new packages
      this way you can look at the image subdir to get an idea of what's being installed where before it's actually installed

      in the case of RPM instead of merge you would simply create the binary package ready for install
      another idea is to include common chunks of code seen in RPM spec files into a library of sorts to cut down even further on bash scripting bloat (probably only of use to package maintaners, not end users but it would cut down on time for updating packages, simplify the spec to make it easier to read etc)

      the idea is the default behaviour is to use the building / installing scripts included within the original source
      i.e ./configure or make install
      then after the default behaviour has taken place (or if you've overidden the default behaviour in the spec/script) you can then add to it for anything that's distribution specific
      e.g. documents to be copied over to /usr/share/doc
      then you go as far as the image stage to check everything's where it should be before finally creating the binary rpm

      for that matter still leave the option to have the files copied across manualy / checked if needed as part of the spec
      but for those that don't want to or don't feel that they need to, don't force it on them
      in other words flexibility to do it ether way to have more options
      automate as much as possible but to still allow full customization for those that want it

  118. Re:I've got something to say! by whoop · · Score: 1

    Windows is hardly the system we need to model after for software installations. Everything would just be "cp lib/* /lib; cp bin/* /bin".

  119. Re:I've got something to say! by Anonymous Coward · · Score: 0

    http://newbiedoc.sourceforge.net/tutorials/apt-get -intro/info.html.en

                      snippet here

    3.1. Finding packages -- apt-cache search

    Whether you're online or not--

    How do you find the package that's got the feature you're looking for?
    First, do

    # apt-get update

    so your package list is up-to-date, and then try something like

    % apt-cache search tunnel
    % apt-cache search 'php.*sql'
    % apt-cache search apache.\*perl
    % apt-cache search elvis\|vim

          That is how you tell apt to search the packages you've downloaded,
          using REGEX (regular expression, a pattern-matching 'language') -- if
          your pattern uses any keystrokes that mean something to your command
          shell (e.g. [|?*] ) you'll need to quote them so that apt-cache will
          be able to see them, instead of having the shell expand the term to a
          list of file names that mean something else entirely.

          " NOTE -- apt-cache only knows about the package descriptions you've
          already downloaded. To search among ALL known Debian packages just
          browse to http://packages.debian.org/PACKAGESUBSTRING to see what's
          available. For example: [6]http://packages.debian.org/vnc That would
          get you a listing of packages that contain the term "vnc" somewhere in
          the title."

    and so on.

  120. Slashdot at its worst. by gilboad · · Score: 2, Insightful

    I've been reading /. for years now, but seldom did I see so many clueless posts and half-baked flame-baits packed in a single page.

    Just for the record. (For all the clue-less posters out there.)

    A. RPM is package structure.
    B. RPM is a package manager.
    C. RPM does not, and let me repeat myself, does not -resolve- dependencies.
    D. RPM uses external tools to resolving dependencies; Namely yum, or, wait for it.... apt. (Though AFAIR apt-rpm does not handle bi-arch making it less usable for x86_64/PPC64)
    E. So called dependency hell only happens when you:
    - Combine different software repositories.
    - Someone at RedHat/Fedora/Debian releases an incompatible update. (Happens more on Fedora; less on Debian/RHEL)
    - You're using an unstable branch.
    F. The introduction of Fedora (and now RHEL) extras project goes a long way to set a higher, Debian like packaging standards. (And again, this has -nothing- to do with RPM itself)

    Yes, Debian has -less- dependency problems (as long as you stick to the stable tree), but this has -nothing- to do with RPM, or even yum for that matter.
    At least get the facts strait before you start FUD /. to death.

    BTW, I spent half of last night manually recovering (using dpkg) a dead Debian Sid workstation that somehow botched the 2.6.18 upgrade (dist-upgrade)... and trust me, neither apt nor aptitude/dselect managed to solve the blunder - and somehow, you won't find me shouting like a baby that "Apt-get (or dpkg) should be rewritten from scratch).

    - Gilboa

  121. Re:I've got something to say! by metamatic · · Score: 2, Informative

    Hell no. The last thing we want to do is encourage Linux users to start running random scripts they downloaded from web sites, just because they have .package in the name.

    --
    GCHQ Quantum Insert installed. If only our tongues were made of glass, how much more careful we would be when we speak
  122. Re:I've got something to say! by Fallingcow · · Score: 1

    I wasn't comparing it to non-Linux unixes, nor to non-unix-ish OSs.

    Besides, the other 2 OSs beyond Linux and Windows that I've used the most (QNX and BeOS) didn't have that many packages available anyway. Both seemed to have fine graphical package managers, though I know next to nothing about the behind-the-scenes package management systems that were doing all the grunt work.

    As for Solaris, yeah, it blows, or at least it did back on the version that I had to work with about four or five years ago.

    What I'm saying is that, of the 3 package management systems for Linux that I've spent a lot of time using, RPM has given me several times as much trouble as the other two combined. It seems like any time someone tells me, "hey, we've got a Red Hat machine that needs some work", then at some point I'll end up needing to use RPM for something on it, and invariably it breaks. Maybe it's just my luck, but moving to dpkg distros meant that, in my leasure time use of Linux at least, package management is almost never even an issue. It Just Works (TM), and trust me, it's not because I'm not dicking around with it and installing 3rd party packages and extra repositories and such.

  123. Re:I've got something to say! by Anonymous Coward · · Score: 0

    I personally use gentoo because I actually like having that much control over my system http://web.archive.org/web/20060513022941/http://w ww.funroll-loops.org/
  124. RPM blows (its own database away) by metamatic · · Score: 1
    It didn't help that my RPM database was obliterated, making any attempt at package management futile.

    Yes, that's the single biggest problem I have with RPM.

    Sure, you can layer Yum or APT on top of RPM and have a workable UI, but that doesn't solve the fundamental problem, which is that RPM still regularly corrupts its own database, sometimes irreperably. The most recent occurrence for me was a couple of months ago on a SuSE 10.1 system; I never did find out what triggered it, but I wiped and reinstalled and it's been fine since, so the hardware doesn't seem to be the problem.

    I've resorted to taking a back up of the entire /var/lib/rpm directory before every major update. I shouldn't have to do that. I have never, never had APT or dpkg hang or corrupt their data irreperably.

    --
    GCHQ Quantum Insert installed. If only our tongues were made of glass, how much more careful we would be when we speak
    1. Re:RPM blows (its own database away) by BlowChunx · · Score: 1

      Sure it shouldn't corrupt itself, hopefully the code cleanup will help with issues like that.

      However, you can rebuild the database (it's not like it's gone forever...):
      http://www.rpm.org/hintskinks/repairdb/

    2. Re:RPM blows (its own database away) by metamatic · · Score: 1

      In my most recent case, repairdb didn't work. YaST would continue to insist that it had to reinstall half the OS.

      --
      GCHQ Quantum Insert installed. If only our tongues were made of glass, how much more careful we would be when we speak
  125. Re:I've got something to say! by Anonymous Coward · · Score: 1, Interesting

    > RPM will choke on installing a Fedora RPM on a SuSE distro
    NOW THIS IS A GOOD THING TO BRING OUT.

    RPM could improve on compatibility errors from using a foreign distro's RPM:
    EG: Error: "Incompatible binary format of this RPM. Unable to read this RPM.".
    OR: Error: "You are attempting to run an RPM for SuSe on Fedora...."
    Or: Give reasons why this foreign RPM is incompatible on this version of Fedora.

    One of the features of dependency checking I'd like to see is:
    RPM knows this distro was installed with CD, and prompts for the given CD, as appropriate.
    Drawback: Updated versions of dependencies will be ignored.
    Sequitor: YUM already does this thru the use of it's repositories.

    RPM should have a way to call YUM from the command-line for dependency issues.
    This would give RPM a seemless interface to YUM to resolve all dependencies for a given RPM.
    EG: rpm -i -y[i,r] something-1.1.1.rpm
            The 'y' invokes YUM and either (r)eports the dependencies or (i)nstalls the dependencies.

    Perhaps RPM should scrap YUM for dependency resolution in lew of APT.
    This would give RPM and DPKG a common "dependency resolution" wrapper, that fits closer to an LSB-centric approach.
    EG: Why have two wrappers for RPM and DPKG, rather than one?

    In either case of which dependency wrapper RPM uses, a command line interface switch for RPM should be available to call or query that dependency resolution wrapper. This would help in the confusion folks have demonstrated in their responses (above), regarding package managers like RPM and DPKG and dependency resolution wrappers like YUM and APT.
    This would also demonstrate how RPM relates to that wrapper (Yes, I know the YUM actually uses RPM, but it would be cool, if I could call YUM from RPM cmd).

  126. Re:fuck dependency hell by arevos · · Score: 1

    I stopped using linux when after finally getting through the libc vs glibc mess, only to encounter the wonder that is libpng2 vs libpng3. fuck you libpng. every app used a different version and since they were two packages which had the EXACT SAME FUCKING FILES IN THE SAME FUCKING PLACE, you cant install both at the same time.

    i love this part in the first link though,

    "First and foremost, because some development libraries depend on
    libpng2-dev and others depend on libpng3-dev; since these two packages
    can *not* be installed at the same time, this means you have to install
    and deinstall not only libpng2-dev and libpng3-dev but also a bunch of
    other -dev packages which depend on those.
    " You realise that libpng2-dev and libpng3-dev are just the development packages, don't you? They're only required when you want to compile something that needs the header files included in the packages. The binary packages of libpng2 and libpng3 (at least in Woody and Sarge) use different files, so there appears to be no reason why they cannot be installed on the same system.
  127. unified package database by GodWasAnAlien · · Score: 1

    fedora and debian need to come up with a unified package database format (xml) that supports the superset of popular package formats.

    1. Re:unified package database by mok000 · · Score: 1

      fedora and debian need to come up with a unified package database format (xml) that supports the superset of popular package formats.

      It already exists... it's called repomd. AFAIK, Debian is not interested.

      But to comment on the thread: the main problem for RPM based distros is the lack of a standardized naming scheme for packages. Debian has very strict standards for packages, and the debian repositories have > 12000 packages that have been tested and where the dependencies can be resolved within.

      There is no such thing for RPMs. RedHat's distribution only contains around 2500 packages, therefore, to find 3rd party packages one has to go to a 3rd party repository such as RPMforge. Here, you can find another 2500 packages, but if you have exotic requirements, you may find yourself dependent on a handful of repos, where the cooperation between them is limited. This has in fact in the past led to the so-called "epoch-wars" where repositories compete in overriding each other's packages.

      On the other hand, for the software packager, the RPM format is vastly superior to .deb. Just look at the multitude of poorly documented add-on tools you need to author a .deb package. Yuckkk. RPMs are very simple to create, all instructions to compile and build are in a single ASCII file, called the .spec file. With the pristine source (+ possibly patches) sitting in a directory, you can create both source and binary packages. In .deb lingo, a "source package" is actually 3 different files. Took me a while to figure that out... IMHO, .deb sux.

  128. people have to realize... by Anonymous Coward · · Score: 0

    That Fedora moves very fast, MUCH faster than Debian.

    If the last time you tried using Redhat was 5 years ago then you really don't know what's going on with the distro.

    5 years may be one release cycle for Debian but for Redhat/Fedora that is a ridiculously long time.

    Even using Fedora 6 months ago may not show you the latest improvements.

  129. That's a ridiculously subjective measurement by Anonymous Coward · · Score: 0
    I'm not trying to shill for RPM, here, but personally I find dpkg totally baffling. You wrote:
    Even in the Debian world, I'll come across .deb packages that need manhandling (instalation, removal, retrieval), and the debian command-line utilities (e.g. dpkg) are always simple to use when I need to. 'dpkg -i' to install, 'dpkg -r' to remove, 'dpkg -l' to list matching packages, and 'dpkg -S' to find out what owns a file.
    Capital S is obvious to you? C'mon, the fact is you've grown accustomed to dpkg's obtuse UI. Because, presumably, you're a pro, and that's what we get paid for. Expertise.
    you look at the output from 'dpkg --help' and compare it to RPM's, RPM provies a much longer list of options, the vast majority of which no one ever uses, burying the commonly-used functionality in a sea of terse explanation.
    Exactly the opposite of my experience. Since I am quite comfortable with RPM, and know exactly what it can do and how it does it, that "sea of terse explanation" is exactly what I want to see if I do a --help. By comparison, every time I do the same switch on debian I am quickly frustrated. It just won't tell me how to do what I need to do!
    The RPM tool needs to be replaced - possibly with another version of the tool, but removing all the extra cruft from the way it's used. It makes no sense to say 'Well, of course it's messy because you shouldn't be using it'. If the tool exists, it should be usable.
    I don't think it's "messy" nor do I think it needs to be replaced. It does exactly what I use it for, rapidly, reliably, and well. If you're trying to use a claw-hammer like a wrench, you'll have problems, and that's why I have problems with dpkg and you have problems with RPM. It's the user, not the tool.
    When I go to work and have to work with the package management tools on Fedora (yum on our workstations) or RHEL (RPM on our servers), I hear nothing but complaints about usability, speed, and reliability from coworkers.
    Learning how to use it right might work better than whinging. Of course I complain about .debs so this is the pot calling the kettle black here.
    RPM needs an overhaul, badly, but I doubt it'll get the one it needs.
    I'll agree with the second half of that. When the Fedora team gave the Red Hat installer "an overhaul" they made it unbelievably worse by scrambling up the package categorization, slowing the UI to a mouse-crawl, and turning the package help into unuseable spoo. The old text-based installer from RH7.3 was better, but now it has dithered backgrounds and similar eye-candy, so to the Fedora team it's "better".

    They will probably make RPM "better" the same way. I'll keep using the old versions... you are welcome to your .debs, I'd rather switch to gentoo if I can't get .rpms!
    1. Re:That's a ridiculously subjective measurement by cortana · · Score: 1

      -S is just short for --search.

  130. For Managing Packages by SanityInAnarchy · · Score: 1

    But seriously...

    Bloat is one reason for not wanting apps to store things in their own folders. Not just disk space, but RAM usage. And yes, people are still running Linux on a 4 gig drive and installing multiple applications -- for that matter, if you are using Linux, you're almost certainly using "multiple applications" in the form of multiple daemons running at boot.

    There's also download time. Suppose a dependency is updated -- you don't have to re-download every single app that uses zlib to get the zlib update. And if you already have a bunch of libraries, downloading a new app takes less time. The SVN snapshot of VLC 0.8.6 for i386 is a little over a megabyte. Compare that to the 0.8.6 download for Macs -- the Universal Binary is 22.7 megs. Now, it may well add up to just as much when you count the libraries, but then, it might not, especially if you already have, say, mplayer or totem installed. And not all of the libraries are updated every VLC update, which means I get to download about a megabyte, and you download 22.7 megs.

    Speaking of updating, it also means that you can get updates -- including security patches -- to just a library, and not have to patch everything that uses that library. A very simple example: Suppose OpenSSL has a critical security flaw. My package manager will automatically install a new version of OpenSSL, and like magic, my SSH daemon, my web server, my IMAP server, anything on the box that uses SSL will have that flaw fixed.

    And it all happens automatically. On Windows, you have Microsoft Update, which updates Windows and some Microsoft apps, like Windows Media Player, Internet Exploder, and Office. On OS X, you have Software Update, which updates OS X, iTunes, QuickTime, and some other Apple apps. On Linux, you have a package manager, which updates every single program that's installed on your computer. I'd estimate that over 50% of the apps I use every day on my Mac are third-party apps, and maybe 3 or 4 of them check for updates automatically -- the rest, I have to check myself. To do the equivalent of an "apt-get update && apt-get dist-upgrade" (or equivalent GUI) on a Windows or Mac machine would probably take a solid couple of hours of hunting down the download sites of every single program I have, opening the program, checking my version of the program against the latest download available... On Ubuntu, I just wait for there to be an icon in the system tray telling me I need to update.

    Dependencies are not an issue on Linux. They just aren't. Every now and then you have a weird issue, but generally it's fixed by the distribution the same day. We have coherent distributions, and even most third-party stuff Just Works out of the box. We have a way of actually maintaining separate versions of a shared library, so even in the event that App1 depends on LibFoo verison 1, and App2 depends on LibFoo version 2, we can simply have both versions of LibFoo installed -- automatically, as dependencies, by the package manager. Eventually, App1 will be updated to support LibFoov2, and when that happens, LibFoov1 will automatically be uninstalled.

    And you're kidding yourself if you think that dependency problems don't exist on other OSes -- you'd be amazed at the problems getting stuff to work on different versions of MacOS. Dependency problems with the OS itself!

    As for portability, I'm not sure what you mean here. If I write an app that depends on, say, SDL, but I don't ship it with SDL, it can actually be more portable, because different Linux distros might have different versions of SDL. It's true, they might break compatibility with me, but they generally don't, and they might also workaround some bug that I'd certainly have hit if I insisted on using my own SDL.

    There's also security. How do you install a Windows program from the Internet? Browse to a website and download an EXE? Do you have any clue how ridiculously insecure that is?

    When I install a Linux program, I generally install it through the package man

    --
    Don't thank God, thank a doctor!
  131. Re:I've got something to say! by badspyro · · Score: 1

    I started linux with fedora, and then it was formatted in a weeks time with windoze on it (my uncle, a windoze sys admin, thought I should use it, and not linux), and from what I saw of it, fedora was Ok, and the packet manager is kinda cool.
    The problem with it is that it isn't universal, and the same problem exsists with apt -get install, which I would love to be put into slackware (which i was dragged into - fist full time distro+slackware= PAIN+steep_learning_curve), and am even thinking of getting Debiean purely for the apt command... it would make life a LOT easyer.

  132. FUCK RPM by Anonymous Coward · · Score: 0

    OMFG if I have to ever use a system with rpm as its standard method of packaging I will vomit.

    Debian has changed my life in ways I could have never imagined without .deb packages.
    I mean who the fuck uses cds to install anymore? What a waste of plastic.
    Since USB install is so easy now:
    http://www.debian-administration.org/articles/446
    or even encrypted:
    http://www.debian-administration.org/articles/179

    Apt-get is the best technology since the internet was created.
    Nothing can or will ever compare to the amazing ability of apt-get to install any one of 18000 programs and have you using it right away. And thank god for ubuntu bringing .deb to the masses.
    All we need now is an open source Turbo Tax and the masses of bill gates slaves will be FREE from his reign of terror.

  133. Red Carpet and the big merge. by MikeFM · · Score: 1

    The best system I've had th pleasure to use was Ximian's Red Carpet. Their UI was easy to use and it worked well and geeks like me could stick to the command-line tool, rug, which was more coherent than any other packaging tool I've used (including apt, yum, etc). I wish that the developers of other packaging systems would make an effort to work as well and to be as easy to use as Ximian's system was.

    I wonder if RedHat couldn't work with the Debian folks at making a real merge of the packaging systems. It'd be wonderful to do away with having to know multiple systems. The majority of distros are based on either Debian or RedHat so really those are the two most important systems - if they could find peace then everyone else would eventually fall into line. Tool developers could develop a single set of tools for dealing with packages without a lot of overlap.

    --
    At what price learning? At what cost wisdom? The price is a man's peace of mind, and the cost is his life.
  134. Re:I've got something to say! by Anonymous Coward · · Score: 0
    You mean something like conary: http://www.rpath.com/technology/building/recipe.ht ml

    class MyProgram(PackageRecipe):
        name = 'myprogram'
        version = '1.0'
        buildRequires = [ 'somelib:devel' ]
        def setup(r):
            r.addArchive('http://example.com/%(name)s-%(versio n)s.tar.gz')
            r.Configure()
            r.Make()
            r.MakeInstall()
    which can be abbreviated to:

    class MyProgram(AutoPackageRecipe):
        name = 'myprogram'
        version = '1.0'
        buildRequires = [ 'somelib:devel' ]
        def unpack(r):
            r.addArchive('http://example.com/%(name)s-%(versio n)s.tar.gz')
    Conary was written by former redhat engineers.
  135. Re:I've got something to say! by Spokehedz · · Score: 1

    It's like your trying to speak english, but the internet is making you use math symbols and things to link words.

    Yum is better anyway.

  136. dpkg/deb rpm in at least one important regard by myowntrueself · · Score: 1

    Why bother? dpkg/deb is maintained and does everything that rpm does.

    Bzzzzt WRONG!!!

    I *prefer* Debian over any RPM based distro I have ever used but to say that dpkg/deb does *everything* that rpm does is simply false.

    dpkg/deb fails to do at least one very important thing that rpm does.

    rpm maintains a database of, among other things, filesystem ownerships and permissions as well as symlinks.

    dpkg/deb manages filesystem ownerships, permissions and symlinks by running commands in the maintainer scripts. It does not maintain *any* database of these objects or properties. I'll give a real-life example...

    I once had the misfortune to lose all of the symlinks under /etc

    The system was rpm based so it was a relatively simple matter to query the rpm database, extract the info on the symlinks which are created by the package installations and turn this into a script to recreate them.

    Had this been a deb based system I would have had to reinstall the packages which may not have been practical; more likely I would have had to troll through all the maintainer scripts thinking my way through their logic to find where they created symlinks. And in many cases they are not simple linear shell scripts!

    Once dpkg/deb starts to maintain this kind of data on package installations, *then* you might say that it does everything that rpm does. Not before.

    --
    In the free world the media isn't government run; the government is media run.
  137. Re:I've got something to say! by lee1026 · · Score: 1

    wouldn't making something with auto-conf and then auto-make work?

  138. Re: Jeff Johnson by Mr.+Firewall · · Score: 1

    So Jeff Johnson has left Red Hat, eh? Anybody know what happened?

    The good-news part of this is that we won't have him blocking improvements to RPM any more.

    --
    In times of universal deceit, telling the truth gets you modded -1 Troll
  139. Re:fuck dependency hell by SanityInAnarchy · · Score: 1
    i used debian linux for ages and then one day i said fuck dependency hell, im getting a mac.

    That seems downright retarded of you. You had a Debian bug, and rather than try one of the hundreds of other distros out there, you just go straight to a Mac? I haven't run into any problems like this on Ubuntu...

    There is no technical reason why linux should have dependency hell.

    True, it doesn't. It has package managers, and there is a technical reason for that.

    Unlike OSX and windows where installing is either drag and drop or a double click, in linux you need to know

    apt-get. Or one of the many GUI frontends, which end up being far quicker and easier than any Windows or Mac install I've ever seen.

    I stopped using linux when after finally getting through the libc vs glibc mess, only to encounter the wonder that is libpng2 vs libpng3. fuck you libpng. every app used a different version and since they were two packages which had the EXACT SAME FUCKING FILES IN THE SAME FUCKING PLACE, you cant install both at the same time.

    As mentioned elsewhere, these are the devel files. If you're compiling software on your own, then yes, you need to know how to deal with these. Worst case, you can head over to libpng.org and download the version needed for whatever you're compiling.

    And yes, compiling custom software will require you to deal with strange stuff like how to force an app to use specific header files, even if they aren't where the app expects them.

    in had to remoce libpng2 and all the apps the depend on it then install libpng3 install the app i wanted to use. When i was done I HAD TO FUCKING UNDO EVERYTHING and reinstall libpng to use my other apps.

    Hmm. Could you remember which apps these were, which relied on development libraries?

    More importantly, did you even try to get support before you threw your hands up and left?

    Even with GUI wrappers, software installation and uninstallation in linux is a nightmare.

    Not as much as software maintenance on OS X. Consider: I can do "apt-get update && apt-get dist-upgrade", or I can follow the GUI prompts when Ubuntu automatically finds updates for me. You have to spend a couple hours looking through every single app you have installed, comparing the version you have with the version online.

    Its not hard to copy OSX, where a certain version of distro X is guaranteed to have certain base libraries (kde, gnome, etc) in a certain place. If you unzip gimp for example, no dependencies needed everything no in the base is in the package.

    Great, thanks, now every single app will take 10 times as long to download and use 10 times as much disk space and RAM. We'd never have gotten out of the "stone ages" of an efficient OS if it wasn't for you! Thanks for thinking of something so new and non-obvious that every Linux developer has already thought of it (and rejected it) before you!

    I am not making this up, by the way. VLC's Universal Binary for OS X is a solid 22.7 megs. The VLC deb file (Ubuntu, i386) is 1.1 megs, because the rest of it is in shared libraries -- most of which I'd already have.

    Now, I realize a mere 21.6 megs of wasted bandwidth and disk space isn't worth crying over, but why would you waste it when you don't have to?

    And anyway, what's stopping you? Roll your own distro the way you want it and see how far you get.

    Don't have the time? Get someone else to. Organize. Maybe try a post to Slashdot that isn't immediately (and rightly) modded Flamebait.

    --
    Don't thank God, thank a doctor!
  140. Two significant differences by SanityInAnarchy · · Score: 1

    One big difference is, last I checked, rpms had size limitations that debs don't. So, I just like the deb format better.

    But, we're really talking about apt vs yum. From what I was reading, the way yum/rpm handles dependencies is through files. That is, a package lists the files that it depends on, and the package manager finds out what packages provide those files.

    On the other hand, apt, like most sane package managers (Gentoo's Emerge is another one), depends on other packages. And, there are all kinds of things you can do with them, including virtual packages, allowing for multiple alternate dependencies. For example, an RPM file that needs a web browser installed -- say, to display documentation -- might depend on /usr/bin/mozilla. A deb would depend on "web browser" or something, which could be satisfied by Mozilla, Firefox, Konqueror, lynx, links, w3m, Opera, even Amaya. Of course, there would be a default to install (probably Firefox or Konqueror), but if you already had a different browser installed, that would work, too.

    This also means that a package can depend on a specific version of another package, or have a minimum version required.

    So, that's a pretty big fundamental difference, and it'd take a lot of thinking and probably a lot of deep, incompatible changes to make RPM come anywhere close.

    Besides, apt is more popular at the moment, and it's used by Ubuntu, which is more popular at the moment. That means there are tons of really nice frontends for it, everyone's using it, everyone knows best practices for it, and so on. And, since it's open source, that also means everyone's developing it when it needs to be developed -- all kinds of people that might be interested in helping with RPM are already using Ubuntu and Apt, so they'd rather just add the feature to Apt.

    I cannot think of a single thing that rpm/yum does that apt/dpkg doesn't. I've already listed something that apt/dpkg does well, that rpm/yum might possibly be able to do with a really ugly hack.

    Think of it this way: FreeDOS could be improved. Linux could be improved as well. Which would you rather start with to make a modern OS?

    --
    Don't thank God, thank a doctor!
    1. Re:Two significant differences by davidkv · · Score: 1

      An rpm package can have dependencies of both files and packages (and their versions). So, that fundamental difference just isn't there. Sorry.

      If apt is more popular than rpm is a question neither of us can answer. They're both _very_ widespread. That's what matters.

      I'd really like to see a technical comparison between the formats instead of loads of not-so-informed semi-religious opinions on which one's the best. If I remember correctly rpm had gpg signing and multi-arch way before debs/apt for example. That's completely uninteresting to me. What's interesting are the technical merits that are here today (and how easy new funtionality can be put in). Is there a recent, well done (as in mostly unbiased) comparison, if so, where?

    2. Re:Two significant differences by BokLM · · Score: 1

      Think of it this way: FreeDOS could be improved. Linux could be improved as well. Which would you rather start with to make a modern OS?

      Your comparison between FreeDOS and a modern OS like Linux is ridiculous, this is not comparable to deb vs rpm.

      Think of it this way: FreeBSD could be improved. Linux could be improved as well. Which would you rather start with to make a modern OS?

      I guess some people would chose FreeBSD, while some others would chose Linux, for differents reasons. Same here, some chose dpkg/deb and some rpm. Both have good reasons, there is not ONE good choice.

      Also, for the big fundamental difference you're talking about, you obviously don't know what you're talking about. An rpm can depend on a file, but it can depends on packages or virtual packages too, including specific versions of a package.

  141. Re:I've got something to say! by JakusMinimus · · Score: 1

    The thing is, utilizing yum may not be the "most obvious way" to us old-timers that cut our teeth on RPM.

    --

    You can be an atheist and still not want to succumb to some weird cross-over sheep disease -- AC
  142. It's called apt/dpkg. by SanityInAnarchy · · Score: 1

    It's not universal, but neither is MSI. MSI works under Microsoft "distributions". Deb files work under apt/dpkg distros.

    --
    Don't thank God, thank a doctor!
  143. RPM, not Red Hat, Package Manager by Anonymous Coward · · Score: 0

    No, the RPM Package Manager. The acronym was made recursive when they realized it is used by more than just Red Hat.

  144. Re:I've got something to say! by SanityInAnarchy · · Score: 2, Interesting

    You are misunderstanding just a bit. The package manager isn't the problem, it's the distro. Specifically, dependencies.

    Consider: RPM doesn't depend on packages, it depends on files. That is, an RPM file will depend on /usr/bin/mozilla, not "web browser package".

    Most other systems work more sanely -- a package that needs a web browser can depend on "web browser" or even "Netscape-compatible browser", and those, in turn, could have lists of alternate packages that could fill that role. But even here, you have problems: Suppose a package depends on Firefox. Do we install the Ubuntu Firefox, the Debian Firefox, the RedHat Firefox, or the Gentoo Firefox? All of them could be slightly different, and have slightly different dependencies.

    I know you're saying "they should be the same" -- but consider Apache. On OS X, it'd be handled by launchd. On most systems, it'd be an init script -- /etc/init.d/apache -- but it might have different ways of running it, like "reload" vs "restart". On newer Ubuntu systems, it may be managed more directly by upstart. On a system by DJB, it might be handled by svscan. On Windows, it'd be a service.

    So, after we upgrade Apache, we want to automatically restart it. How does our universal package manager know what to do? Each package will know what to do -- on the distro it was designed for.

    And that's assuming coherent packages. For instance, on Gentoo, support for various things is controlled via USE flags -- for instance, mod_ssl might be part of the Apache package, assuming you have the "crypt" USE flag enabled. On Ubuntu, it'd probably be a separate package that depends on Apache. And you see this kind of thing all the time -- how do we split things into packages? What if I have a package that depends on xmms-plugins, but that's included in xmms?

    Now, if what you're talking about is a way to install packages from another system, we can sort of do that. Gentoo does it a lot -- it'll download an RPM or a DEB, unpack it into its files, and do some custom stuff to them. But you have to do that manually for every package -- figure out what it depends on -- which is why most other distros will just repackage it for you, unless you're going to end up doing it yourself manually.

    Because, you see, it's not the package type or the file format. What you're asking is roughly equivalent to asking Slashdot to combine with Wikipedia.

    --
    Don't thank God, thank a doctor!
  145. Re:fuck dependency hell by minus_273 · · Score: 1

    the libpng link was just to show that the transition from libpng2-libpng3 was not in 1999 like someone claimed. I've used all the major distros other than gentoo and none just work.

    >Not as much as software maintenance on OS X. Consider: I can do "apt-get update && apt-get dist-upgrade", or I can follow the GUI prompts when Ubuntu automatically >finds updates for me. You have to spend a couple hours looking through every single app you have installed, comparing the version you have with the version online.

    Where on a Mac do you have to look through every app? seems you have never used software update or mac update.

    >I am not making this up, by the way. VLC's Universal Binary for OS X is a solid 22.7 megs. The VLC deb file (Ubuntu, i386) is 1.1 megs, because the rest of it is in shared >libraries -- most of which I'd already have.

    Excellent comparison, one day you may want to install a new app thats not in ubuntu's repository that needs a different version of wxWindows than the one you have. You upgrade it and may break VLC.
    I install the other app and it works independently of VLC. How much does it cost? 20 mb. Since you used an example of a program that was not written in cocoa or carbon, let me show you my strawman.
    I have photoshop which runs natively with the existing libraries in OSX. I dont need to install every obscure package. For you to use photoshop you need to install wine. Fine.
    Then i use dreamweaver, great native version. You want to use dreamweaver, same thing, no dependency hell. However, you might need a separate version or configuration of wine. If it is a different version, thats gonna be a bitch isnt it?

    Also, nearly all OSX software use built in functions provided by the OS and are written in either carbon or cocoa. This could easily be replicated with one version of gnome and one version of kde on a version of a distro.

    Roll my own distro? why bother duplicating OSX when it already does everything I need it to do. Thats my whole point actually, in linux you need to focus on getting you OS work right rather than doing the task you set out to do. Its a time sink.

    --
    The war with islam is a war on the beast
    The war on terror is a war for peace
  146. Re:I've got something to say! by davidkv · · Score: 1

    The thing is, utilizing yum may not be the "most obvious way" to us old-timers that cut our teeth on RPM. Well, yum has been around for a few years at least. Before that there was up2date and apt-rpm, to name a few (that could accomplish more or less the same thing with more or less the same command).

    Trying to resolve dependencies manually, well it can certainly be done (been there), but really. I honestly thought that most people involved would have heard about dependecy solving package managers by now. Those who haven't, rejoice, they're here!
  147. use at your own risk =) by doti · · Score: 1

    #!/bin/bash

    date=`date +%Y%m%d`
    name="`basename $PWD`"
    [ "$name" == "src" ] && name="`basename $(cd ..; echo $PWD)`"

    if test -d 'CVS'; then
        args="--pkgversion=cvs.$date"
    elif test -d '.svn'; then
        args="--pkgversion=svn.$date"
    elif test -d '.git'; then
        args="--pkgversion=git.$date"
    else
        name="`echo "$name" | cut -d - -f 1`"
    fi

    if test -f SConstruct -o -f Sconstruct -o -f sconstruct; then
        cmd="scons install"
    else
        cmd="make install"
    fi

    if test -e /etc/slackware-version; then
        t=slackware
    elif test -e /etc/debian_version; then
        t=debian
    elif true #TODO: proper test for redhat
        t=rpm
    fi

    cmd="sudo checkinstall --type=$t --nodoc --pkgname=\"$name\" $args $cmd"
    echo "$cmd"
    read -p "proceed ([y]/n)? " answer
    test "$answer" == "y" -o "$answer" == "" || return
    $cmd

    --
    factor 966971: 966971
  148. Re:fuck dependency hell by SanityInAnarchy · · Score: 1

    Where on a Mac do you have to look through every app? seems you have never used software update or mac update.

    I did use Software Update -- only works for Apple products, certainly not for (say) VLC. A quick glance at Mac Update shows a huge list of software downloads, but certainly no update software to automatically check -- so in that case, I still have to go through every app and check it against the macupdate version.

    Oh wait... there it is, an app to check your actual installed software against MacUpdate... That's actually pretty fucking buried, and it costs money.

    Excellent comparison, one day you may want to install a new app thats not in ubuntu's repository

    Not too likely. Most apps provide an Ubuntu version, at least -- so even if it's not in the main repository, they'll have their own repository or at least a .deb file.

    that needs a different version of wxWindows than the one you have.

    I'm guessing that by "different", you mean "newer".

    You upgrade it and may break VLC.

    You're assuming the same behavior as your libpng-dev example. VLC, on Ubuntu, doesn't need dev libraries, which means that you can have multiple versions of that library, if you really need to.

    Assuming it's something not in the Ubuntu repository, it may make sense for people to package it that way. It seems much more likely that it'd simply depend on the library that's in the repository -- which, by the way, won't be updated by Ubuntu unless it already works with VLC.

    I install the other app and it works independently of VLC. How much does it cost? 20 mb.

    And if your way was the standard, it would be absolute hell on older machines. When you have 64 megs of RAM, you start looking at that 20 megs a bit differently -- especially considering it's a single app. VLC will take 20 megs of RAM anyway, but now VLC + some other app = 40 megs.

    I haven't even mentioned cache coherency yet. The cache is 1 meg at most, so the more redundant crap you have, the slower your apps run, even if you're swimming in RAM.

    And what does it buy you? Less chance for someone to screw up, in one particular way. Dependencies allow less chance to screw up in several other ways -- for instance, you may upgrade wxWindows and find it fixes what you thought was a bug in VLC. Of course, it might introduce a bug, but you'd have gotten that when you upgraded VLC anyway.

    Since you used an example of a program that was not written in cocoa or carbon

    Again, that distinction between system libraries and other libraries. Suppose Apple patches Cocoa or Carbon in such a way that new apps need the new version, and old apps need the old version? Is there even a provision for multiple versions of these libraries?

    And this has happened. Just about every OS X upgrade breaks apps from a version or two ago, and introduces a ton of new stuff that means new apps won't work with a version or two ago of OS X. And somehow, users seem to cope.

    All of this is theoretical, anyway. You have one example of a development library having some resolvable issue. Boo fuckin' hoo. Do you have any real examples, that actually impact users?

    Because I haven't seen or heard anything about dependency hell for years, on Gentoo or Ubuntu.

    let me show you my strawman. I have photoshop which runs natively with the existing libraries in OSX. I dont need to install every obscure package. For you to use photoshop you need to install wine. Fine.

    Actually, I'd use the Gimp, but alright...

    Oh, and it also runs in Windows. What makes you think Photoshop doesn't have a cross-platform library of their own? The only difference with the VLC example is, wxWindows is public and can be shared between apps, whereas Photoshop doesn't give us their cr

    --
    Don't thank God, thank a doctor!
  149. Re:I've got something to say! by larry+bagina · · Score: 1

    Maybe Red Hat should try on a different type of hat, like a brown hat.

    you know who wears a brown hat? Dirty Old Ike. But I'm guessing you already knew that...

    --
    Do you even lift?

    These aren't the 'roids you're looking for.

  150. what about RPM and APT via PCLinuxOS by enmane · · Score: 1

    Hey gang, using PCLinuxOS via Synaptic pretty much gets rid of the dependency hell - synaptic takes care of the dependency issues when installing. Uninstalling is another issue - just like Windows programs typically do, uninstalling doesn't leave you with the same footprint that was there before installing (i.e. some of the packages stay on the system that aren't needed). Anyhow, I've long forgotten about the RPM dependency hell and leave it to synaptic to figure it out and Redhat would be wise to follow the same format and improve synaptic for install/uninstall functionality while improving RPM.

  151. apt-cache apt-file by gottabeme · · Score: 1

    Maybe you need:

    $ apt-cache search keyword
    $ apt-file find filename

    Those will show you the package you need. No need to switch distros and do everything by hand. :)

    --
    "Those who consume the bulk of goods are those who make them. We must never forget this secret of our prosperity."
    1. Re:apt-cache apt-file by doti · · Score: 1

      The point is not the ability to install packages by hand. The point is that's that the system doesn't force package dependency on you; and the package system will never get messed up to a point where you can't do any operation, caused by of a fault on the dependency scheme, because there's no dependency scheme at all.

      --
      factor 966971: 966971
  152. Re:I've got something to say! by liliafan · · Score: 1

    I personally use gentoo because I actually like having that much control over my system http://web.archive.org/web/20060513022941/http://w ww.funroll-loops.org/ Nice anonymous post. I love the fact that when you express a personal opinion, there is always someone that wants to knock it, but doesn't have the courage to do so without being anonymous, could it possibly be because they realise what they are saying is going to cause them a major karma hit?
    --
    GeekServ Unix Consulting Services (http://www.geekserv.com)
  153. Re:I've got something to say! by cortana · · Score: 1

    At the end of the day, Linux is just a kernel.

    The Debian platform has such a universal packaging system (dpkg) and a set of standards that developers use to correctly integrate their software into the Debian System.

    Other distributions (one would hope) have their own standards. The problem is that everyone wants "Linux" to be a platform when it is only a component. And everyone wants "Linux" to be a platform/operating system when really the platforms are Debian, Fedora, etc.

  154. Fix the embarrassing bug by cortana · · Score: 1

    Now, if only they would fix the embarrassing bug in RPM. :)

  155. Re:dpkg/deb rpm in at least one important regard by cortana · · Score: 1

    Since dpkg maintainer scripts are idempotent, reinstalling all the packages should have been a very straightforward way to get everything back.

    But the easiest way to get everything back would have been to restore your backups... :)

  156. Re:dpkg/deb rpm in at least one important regard by myowntrueself · · Score: 1

    Since dpkg maintainer scripts are idempotent, reinstalling all the packages should have been a very straightforward way to get everything back.

    Are *supposed* to be idempotent.

    But the easiest way to get everything back would have been to restore your backups... :)

    Smartarse ;)

    Still, from the perspective of being able to validate the installed state of packages, rpm is miles ahead of deb.

    --
    In the free world the media isn't government run; the government is media run.