Slashdot Mirror


The Future of Packaging Software in Linux

michuk writes "There are currently at least five popular ways of installing software in GNU/Linux. None of them are widely accepted throughout the popular distributions. This situation is not a problem for experienced users — they can make decisions for themselves. However, for a newcomer in the GNU/Linux world, installing new software is always pretty confusing. The article tries to sum up some of the recent efforts to fix this problem and examine the possible future of packaging software in GNU/Linux."

595 comments

  1. The solution! by Stormie · · Score: 4, Insightful

    Why do I have a sneaking suspicion that the solution will be to create a sixth way of installing software, which will also not be widely accepted throughout the popular distributions?

    1. Re:The solution! by tigerflag · · Score: 3, Informative

      PCLinuxOS uses a combination of Synaptic with RPMs from the PCLOS repository. Easiest package management I've ever used.

    2. Re:The solution! by SnowZero · · Score: 3, Funny

      Don't worry, a seventh way will come along to wrap those first six which don't solve the problem, and it will be the ultimate meta-universal generic packaging system.

    3. Re:The solution! by Anonymous Coward · · Score: 1, Interesting

      Fat binary; all dependencies complied into it.

    4. Re:The solution! by Max+Littlemore · · Score: 5, Informative

      Using multiple package formats is great idea, IMO. I use alien on Ubuntu for those situations where the software I want is only avaliable in RPM, but as it says in the summary, new users can be a bit confused by this and building from sources is often too much. I would like to see GUI tools get the smarts to automatically figure out dependencies across all formats, allowing all distros to become package agnostic. Perhaps Linspire's CNR interace would be a good candidate for this.

      Also, the option to resolve dependencies and install as a statically linked blob would be awesome for legacy stuff. I've lost count of the number of times I've wanted to install an app, only to find that it relies on some obscure version of xyz.so and won't work, so I find the source for the old version of xyz, only to find it depends on some older version of abc.so. If I could get this xyz.so, etc without conflicting with that xyz.so, create a static binary and put it somewhere under /opt, I'd be happy. I know it's not elegant, and that it uses more storage, but as a work around for difficult to support stuff, it ain't so bad when storage is cheap. Some apps I always install as blobs anyway, such as blender.

      BTW, from TFA: Network Access Message: The page cannot be displayed
      Slashdotted :-(

      --
      I don't therefore I'm not.
    5. Re:The solution! by Jessta · · Score: 1

      Portage is your solution.
      That is all.

      --
      ...and that is all I have to say about that.
      http://jessta.id.au
    6. Re:The solution! by Anpheus · · Score: 1

      Ooh, no. Good guess though. It'll actually be version 7 of that seventh way. Unfortunately, each upgrade will not be backwards compatible with the previous one, and end up causing only more problems.

    7. Re:The solution! by M.+Baranczak · · Score: 4, Insightful

      I would like to see GUI tools get the smarts to automatically figure out dependencies across all formats, allowing all distros to become package agnostic.

      The package formats are easy. The real bastard is that each distro has subtle differences in how the packages and the dependencies are organized. The only way that I can see to fix that is to design a universal package tree, and convince all the major distros to conform to it. Which is not impossible, but it aint easy, either. And it might cause other problems.

    8. Re:The solution! by PWill · · Score: 0

      where the software I want is only avaliable in RPM Use the source, Luke!
      --
      A black cat crossing your path signifies that the animal is going somewhere.
    9. Re:The solution! by cheater512 · · Score: 1

      It would be good if the universal package tree managed source and binary packages side by side as well.
      That way you could mix and match to a certain extent.

      I know Gentoo has the capability to do this but its not used at all.

    10. Re:The solution! by EugeneK · · Score: 0

      awesome! looking forward to 500 megabyte gaim updates.

    11. Re:The solution! by Anonymous Coward · · Score: 3, Interesting

      A great idea??? Are you serious?

      Choice is good - until the point where it becomes totally overwhelming. On linux there are dozens of distros to chose from (different versions of the said distros too - running on different versions of the kernel), different window managers to chose from, different installers (apt get or whatever, applies to both the command line and the graphical installers), different package formats, different shells, too many different text editors (vi/emacs/...) and such.

      Most users appreciate SOME choice. Like when you go to the dealership, you pick the car model, the engine, color and such. The linux way, you'd be forced to hand pick things like the actual metal alloy used for the pistons' segments and such intricate things most people couldn't care less about. Yes, you could have a totally custom car, but it would take 6 months to pick all the parts by hand, and comparing the cars to another would be so complicated and overwhelming...

      Too many confusing choices to make, often over stuff one doesn't really understand. And when searching for information about them (to make the choice), often all one finds is heated debates (like kde/gnome or emacs/vi) without much real information.

      When I use my PC at home, at work, on the road, at friends or relatives' places, it's always the same interface (plain old WinXP), same way to do things, stuff located in the same places, most apps are the same, etc. Predictable, consistent and simple. Most people truly appreciate that.

      If we were all running linux, I'd be using say, KDE or gnome, work might be using fluxbox, a friend would use something like xfce... All on different distros that work differently and have different apps installed by default (likely not the ones you're used to). I'd be lost.

    12. Re:The solution! by dotgain · · Score: 1

      I know Gentoo has the capability to do this but its not used at all.
      Says you.
    13. Re:The solution! by aonic · · Score: 1

      "Why do I have a sneaking suspicion that the solution will be to create a sixth way of installing software"...

      that's the problem with the current approach. the mentality in the linux community is to create a "way" of installing software. to standardize it. deb packages and RPMs are an attempt to standardize the software installation process (and make it easier, but that doesn't seem like the original goal.)

      when I double click a "setup.exe" in windows, do i care if it's an MSI? how about installshield? no? oh. it's a nullsoft installer.

      watch me not care.

      that's why it's so easy to install software in windows. now granted, there are consequences, like each installer's different method of handling DLLs, leaving junk when the software is uninstalled, etc, but it's still easier than trying to install software on linux. granted, there were issues back in windows 95 with dll conflicts, but they've mostly been ironed out, and .NET is helping with that (in theory, though there are two versions of that now, too).

      normal users don't care if there are leftover dlls (or in linux's case, dependencies) on their computer when they uninstall software. they don't WANT to know if the software they're trying to install depends on a different version of the dependency. they just want to click a button and have it work, and it has to work with EVERYTHING, not just what's in your repository. not just the versions that have been hand-picked by redhat enterprise support for the EXACT version/build installed on your system.

    14. Re:The solution! by Jesapoo · · Score: 1

      You know one of the easiest ways to make life simpler for people new to GNU/Linux? Just calling it fucking *Linux* rather than being pedantic.

      When someone who doesn't know much about computers asks you, "What does your computer run?" do you answer simply with "Windows" or "Apple Mac" or perhaps "Linux" - which they would understand - or do you go into geek-mode and say, "A custom hybrid GNU/Linux slackware-ubuntu distribution running the 2.6 kernel with KDE and WindowMaker"?

      Leave the GNU/ part out of it. We all know what you mean, and those that don't, well - they just don't give a crap.

    15. Re:The solution! by Sillygates · · Score: 1

      gentoo? mixing and matching? Unfortunately, gentooers don't use RPM or DEB, the two most major ones, and you still have the issue of dependancies being packaged differently, and being installed in different paths.

      The only real way to have a universal format is for the world to only use one distribution, because really, packaging is the most major part of a distribution's job.

      --
      I fear the Y2038 bug
    16. Re:The solution! by kripkenstein · · Score: 2, Insightful

      The package formats are easy. The real bastard is that each distro has subtle differences in how the packages and the dependencies are organized. The only way that I can see to fix that is to design a universal package tree, and convince all the major distros to conform to it. Which is not impossible, but it aint easy, either. And it might cause other problems.
      Regarding the issue of dependencies, they might just be ignored completely for desktop applications (the focus of TFA). For server apps, you want to rely on shared libraries in your distro's repositories, but for the odd desktop app, the simplest solution may be to just include all dependencies inside it. Yes, this creates some security issues (patching the included dependences), so it isn't a perfect solution. Also it can waste some RAM. Still, if a new user has to have some brand-new desktop app, this might be the easy way to do that.

      Other related issues of installing in various distros with various directory setups can be solved (partially, at least) with app virtualization. I believe Klik is doing something along those lines.
    17. Re:The solution! by nmb3000 · · Score: 5, Interesting

      The real bastard is that each distro has subtle differences in how the packages and the dependencies are organized. The only way that I can see to fix that is to design a universal package tree, and convince all the major distros to conform to it. Which is not impossible, but it aint easy, either. And it might cause other problems.

      Which is why, as it currently stands, this year will not be Year Of The Linux Desktop. Consumers won't just accept that they can't install software X because it's an RPM and alien doesn't work (this is of course after looking online for half an hour to figure out that alien is the tool to use). Manually compiling from source is simply not an option for standard users. Sure it's a dandy idea, and if you get a "fullproof" GUI that handles the compilation and installation then maybe, but I can't count the number of times make/make install has failed for some obscure reason. The first time grandma needs to go download dependencies means Linux has failed on the consumer desktop.

      This is one place that Microsoft and Apple have it right. By having a standardized method of installing and storing program information they make getting new software many times easier than on Linux (excluding the "normal" packages. I'm thinking more along the lines of tools and apps you download from the web). This is also one reason people are willing to pay for an operating system that has a standardized and dependable way of doing things.

      Microsoft even released the WiX toolkit that allows anyone to create MSI installer packages. MSIs are one of the best ideas for Windows in a while: No more dealing with poorly-written homebrew installers or 10-year old, 16-bit InstallShield programs. Instead you have a fully scriptable installer that's transaction-based and has near 100% support coverage.

      I like apt, but downloading a gzipped file of source or a deb that complains about dependencies still can't compare to an MSI package. Even if a solution was developed that worked as well as or better than MSI, as you say, it would take significant effort (and maybe not even then) to get it supported by all the major distributions. Some people seem to think that the fact that Debian does things differently from Mandriva that does it different than Fedora is what makes the distribution "special". Be that as it may, I think it's only hurting Linux users as a whole.

      --
      "What do you despise? By this are you truly known." --Princess Irulan, Manual of Muad'Dib
      /)
    18. Re:The solution! by shmlco · · Score: 1

      If it was "JFL" (just fucking Linux) you could get away with that. Unfortunately, you can't call it JFL because it's not JFL. Hundreds of distros each different in some significant way or another.

      Heck, you forgot to mention that you can't figure out what works with what without mention which point version you have...

      --
      Any sect, cult, or religion will legislate its creed into law if it acquires the political power to do so.
    19. Re:The solution! by ozmanjusri · · Score: 1
      The only way that I can see to fix that is to design a universal package tree, and convince all the major distros to conform to it.

      Um, no. The great strength Linux has is its diversity. Every distro was formed because someone had an itch to scratch, and open source gave them the power to do so.

      The correct answer is to create a package tree descriptor and include it with each distro. The packaging tool/GUI could then parse the descriptor file to work out where everything should go. That would allow even radically different tree structures such as Plan 9's to be used if the distro developer wanted to.

      Using something like this, along with Alien, would mean Linux could handle multiple package formats, and could easily adapt to new ones if needed.

      --
      "I've got more toys than Teruhisa Kitahara."
    20. Re:The solution! by Yvanhoe · · Score: 1

      Maybe I spend too much time on semantic-web-related pages, butmy vision of the solution would be a file containing meta-datas about the files to be installed, allowing it to be usable in a wide range of environments.

      --
      The Wise adapts himself to the world. The Fool adapts the world to himself. Therefore, all progress depends on the Fool.
    21. Re:The solution! by Yvanhoe · · Score: 1

      Hmmmm... Did I just propose to make another package format ? I just shouldn't post on monday morning...

      --
      The Wise adapts himself to the world. The Fool adapts the world to himself. Therefore, all progress depends on the Fool.
    22. Re:The solution! by muuh-gnu · · Score: 2, Insightful

      > Like when you go to the dealership, you pick the car model, the engine, color and such.

      When youre a newbie, and searchig for a Linus distro to check out, it isnt any different. You then either just pick the one you saw somwhere work nicely, or go with one of the widely recommended biggies: Fedora, Ubuntu, Suse. They mostly provide sane and easy to learn defaults, and do not confront the newbie with stuff like vi/emacs, kernels, shells and window managers unless he _deliberately_ looks after them.

      Saying that the sole existance of some obscure sourcebased distro or window manager he wouldnt even be able to install is making the first choice to a newbie _SO_ difficult, that he shuns Linux alltogether, is like saying people would stop driving and buying automobiles, because of the existance of limousines, sport cars, monster trucks, forklifts, lawn tractors, and so on. You do not get confronted with those in a car dealership. You also dont get confronted with advanced level distros and apps wheny youre a newbie.

    23. Re:The solution! by LoRdTAW · · Score: 1

      I'm sure your referring to the package manager that comes with GNU/Hurd.

    24. Re:The solution! by baldass_newbie · · Score: 1

      The only real way to have a universal format is for the world to only use one distribution

      You must be new here.

      --
      The opposite of progress is congress
    25. Re:The solution! by spellraiser · · Score: 1

      Yeah ... seven's the key number here. Think about it. Seven-Elevens. Seven doors. Seven, man, that's the number. Seven chipmunks twirlin' on a branch, eatin' lots of sunflowers on my uncle's ranch. You know that old children's tale from the sea? It's like you're dreamin' about Gorgonzola cheese when it's clearly Brie time, baby. Step into my office.

      --
      I hear there's rumors on the Slashdots
    26. Re:The solution! by sick_soul · · Score: 1

      > You know one of the easiest ways to make life simpler
      > for people new to GNU/Linux?
      > Just calling it fucking *Linux* rather than being pedantic.

      You say pedantic, I say correct.
      Most Free operating systems are different in that they are less monolithic,
      and more a sum of parts.

      What will you say the Nexenta distro is/will be, for example?

      http://www.gnusolaris.org/

      It is very similar to Ubuntu GNU/Linux, but guess what? No Linux there.
      It is Nexenta GNU/Solaris.
      As I see it, the name most suitable for the 'masses' is the name of the distribution.

    27. Re:The solution! by msobkow · · Score: 1

      Having been burned by a recursive dependancy in an RPM stream more than once, I'm a big fan of the tarball extracted to /opt and doing a "make install".

      --
      I do not fail; I succeed at finding out what does not work.
    28. Re:The solution! by petermgreen · · Score: 2, Informative

      MSIs are one of the best ideas for Windows in a while
      note that MSIs are nothing new, office was using that system (with a stub exe to make sure the microsoft installer was installed first) from office 2000 onwards and i think win2k shipped with it as standard.

      Some people seem to think that the fact that Debian does things differently from Mandriva that does it different than Fedora is what makes the distribution "special". Be that as it may, I think it's only hurting Linux users as a whole.
      It is certainly a problem, trouble is the moment you get standards bodies involved progress slows to a glacial pace, distros understandablly want to be able to improve the way thier libraries are packaged to meet thier users needs.

      In many ways windows represents the opposite extreme, they are only just now (with the 64 bit versions) dropping support for win16 apps, windows contains a huge ammount of cruft for backwards compatibility.

      another problem is that library authors act in ways that make it very hard to build binaries on a newer system that will run correctly on an older system.

      a final problem is that menu systems vary so even once you get a binary on the system in a way it will run (though i belive freedesktop.org is trying to work on getting this standardised)

      tools like autopackage try to work arround theese problems but doing so is easier said than done.

      --
      note: i'm known as plugwash most places but i screwd up registering that here somehow in the past and now can't register
    29. Re:The solution! by erikdalen · · Score: 1

      note that MSIs are nothing new, office was using that system (with a stub exe to make sure the microsoft installer was installed first) from office 2000 onwards and i think win2k shipped with it as standard.

      And at that point AmigaOS had already had the feature for > 10 years.

      --
      Erik Dalén
    30. Re:The solution! by mikiN · · Score: 0, Flamebait

      I hope your post was not meant as flamebait, because otherwise I am tempted to munch on it bait hook and sinker.

      How does an MSI installer handle dependencies? Somewhat like: "If this DLL is not ours, just overwrite it 'cause our version is better?"
      How does an MSI installer handle updates? Somewhat like: "No need to, the user will know it's time to go look for an update when the next worm or Trojan hits?"
      Etcetera, etcetera.

      If you like apt and get dependency hell, enter the 21st century and use aptitude or synaptic. Both offer you ways of resolving dependency problems, aptitude currently being the most sophisticated.
      Need to know about software updates? Install update-manager or kpackage.

      --
      The Hacker's Guide To The Kernel: Don't panic()!
    31. Re:The solution! by juergen · · Score: 2, Insightful

      Now that's one of my pet peeves.

      Why the fsck do some users insist on installing software outside their own distributions?

      1. They have a weird distro. Switch. All modern distros include virtually everything a common uswer needs.

      2. Common users should stay away from bleeding edge versions. Treat them as non existant, like you don't see half finished products in the MS world. (Well, ...)

      3. They have more than basic or intermediary needs. They are not common users and should be able to cope with the current situation.

      4. They just are not educated they can get all they want from their own distro, and stupidly follow instructions on a product's webpage more directed at packagers. No wonder they are frustrated.

      Another *unified* approach will not work in a world where distros mainly distinguish themself by doing (package) management different. It'll create more fragmentation, like another LSB failure.

      Few users expect to be able to install Windows software on Macs either. And nowadays it is even the same hardware. The key to winning this is education, and letting distro's compete on their core bussiness, not forcing a one for all solution on everyone.

      -Jürgen

    32. Re:The solution! by Ash+Vince · · Score: 1

      Gentoo is not meant for inexperienced Linux users and the full article definately refers to them as who the current situation is awkward for. If you find using portage awkward, then give up and use ubuntu or fedora as the rest of the distribution can be even more complicated (I find portage the easiest bit to deal with).

      The documentation on the web is great but I have never heard anyone recommend gentoo as great distribution for new linux users unless they like the sink or swim approach.

      --
      I dont read /. to RTFA, I read /. to offend people in ignorance.
    33. Re:The solution! by juergen · · Score: 1

      The correct answer is to create a package tree descriptor and include it with each distro. The packaging tool/GUI could then parse the descriptor file to work out where everything should go. That would allow even radically different tree structures such as Plan 9's to be used if the distro developer wanted to.

      Using something like this, along with Alien, would mean Linux could handle multiple package formats, and could easily adapt to new ones if needed.


      Wouldn't solve it. Package names are just names. Every distro may put something else inside it, make different assumptions. Really, you would need an elaborate meta data matrix describing every package from every vendor/distro in way of dependencies, incompatibilities, etc to every other vendor/distro.

      That would be a major waste of time even attempting.

      And what's the point? Meta data about meta data? And who is going to keep it up to date? There has to be a vendor right? It'll be easier to create yet another distro including all these packages directly.

      -Jürgen
    34. Re:The solution! by trianglman · · Score: 2, Insightful

      and do not confront the newbie with stuff like vi/emacs, kernels, shells and window managers unless he _deliberately_ looks after them.

      Unless, of course, the newbie does want to install a software package that doesn't come pre-installed with the distro chosen. Once that happens it is a crap shoot at best whether it is even possible to install the new software, which is what this article is all about. What needs to happen is for the core Linux user base to get over their egos (I know I am going to get an "Are you new here?" for that) and realize that ease of use for the general public is more important than doing things they way they have always been done. Windows has gone far past the opposite extreme and made everything so easy to do that one can't do anything, but there is a middle ground. Doing things in an inter-operable manner wouldn't preclude custom, build it yourself, distros, it would simply make it easier for a newcomer to start and get the software they want to use.

      --
      Clones are people two.
    35. Re:The solution! by TheRaven64 · · Score: 1

      On OS X, when I install UNIX software I tend to put it in /opt/{packagename}. This is fairly close to the OS X / NeXT way of doing things. I have a little loop in my shell rc file that adds /opt/*/bin to my path (wildcards in PATH variables would make this unnecessary), so it looks like it's installed. When I want to uninstall something, I just rm -rf its directory. If I want multiple versions installed, I can just put them in /opt/{packagename}-{version} (I tend to only need to do this with libraries, not apps, so I haven't come across issues with the path here). The only problem is that I often need to add loads of command-line options to configure to specify library versions.

      Once I have something installed like this, however, I can just tar up the directory and copy it to another machine. It is a lot easier to manage than most 'real' package management systems. Adding automatic dependency information would be all that is needed to turn it into one; and then binary packages could be distributed as simple tarballs that were extracted into /opt.

      --
      I am TheRaven on Soylent News
    36. Re:The solution! by VoltageX · · Score: 1

      I wonder if they're counting Automatix (debian based distros) or the Ubuntu Add/Remove control panel... both of which require little package management from the *user*

      --
      "Anonymous could not immediately be reached for further comment." - International Business Times
    37. Re:The solution! by Anonymous Coward · · Score: 0

      QNX does a good job of this, its package manager gui and package format get the job done quite well. Dependencies are handled and it can connect to multiple repositories, local or remote. I think its model could be well applied to a standardised Linux packaging strategy.

      http://www.qnx.com/developers/docs/momentics621_do cs/neutrino/utilities/q/installer.jpg
      http://www.qnx.com/developers/docs/momentics621_do cs/neutrino/utilities/q/qnxinstall.html
      http://www.qnx.com/developers/articles/article_883 _1.html

      Latest Docs:
      http://www.qnx.com/developers/docs/6.3.0SP3/moment ics/bookset.html
      (registration required)

    38. Re:The solution! by trianglman · · Score: 3, Insightful

      packaging is the most major part of a distribution's job.

      This is one of the places Linux gets it wrong. My operating system should not be responsible for all the software I might at some point want to install. Windows messes this up too at times (IE), but MS is much less of an offender than Linux is. It should be responsible for making it easy to install new software, among many other things, but it should not be responsible for every software program out on the web.

      An operating system should be responsible for the kernel, file system, and the nuts and bolts of keeping the system running in general. The program creators should be responsible for packaging so that it can be installed (with the help of the operating system) and should also be responsible for dependencies. It should not be my job to spend three hours searching the web for some obscure package that the program creators just couldn't do without. If they see it as necessary, and they know its not readily available, they should package it with their own program (GPL and BSD licenses both support this and is one of the strengths of these licenses).

      --
      Clones are people two.
    39. Re:The solution! by penix1 · · Score: 2, Informative

      the simplest solution may be to just include all dependencies inside it.


      That's exactly how Microsoft tried to solve it and why their distributed software is huge. It also has led to problems of competing dlls which are often incompatible. If you think you have dependency problems now, just wait until you implement your idea! Imagine installing 16 applications each having a dependency on 16 different versions of the same lib.

      B.
      --
      This is a sig. This is only a sig. Had this been an actual sig you would have been informed where to tune for more sigs.
    40. Re:The solution! by Enderandrew · · Score: 2, Informative

      His point was not that everyone should use Gentoo, but rather that Portage was designed as a repository that handled binaries and source easily side-by-side.

      And I agree, the solution really is to have one major package repository. How you package it isn't horribly important.

      The problem is that each major distro is built using different versions of libraries with completely different toolchains, and they use different patches, etc.

      That is why most repository systems won't work.

      However, here is why Portage would work for all distros. Keywords.

      By using "SUSE" as a keyword, it could pull the binary compiled using the SUSE toolchain if that is what you needed.

      The world won't start using one distro. And SUSE can have their binary packaged in their format, and Ubuntu can have it packaged in their format, but we really, really do need one repository.

      --
      http://blindscribblings.com - Tasty pop-culture in conceptual fashion.
    41. Re:The solution! by StormReaver · · Score: 1

      "Consumers won't just accept that they can't install software X because it's an RPM and alien doesn't work (this is of course after looking online for half an hour to figure out that alien is the tool to use)."

      Agreed. Multiple package formats are a non-starter, and shouldn't even be a consideration. The LSB has standardized on a subset of RPM, and that should be the universal package format. The Debian-based distros are harming the package standardization processes, and should learn to play with the other children. Debian's strength is not in the .deb package format, but in the package management tools. Those same tools will still be available upon switching the the LSB RPM format, so I don't see Debian's hangup about cooperating with the LSB.

      "The first time grandma needs to go download dependencies means Linux has failed on the consumer desktop."

      On which planet is this mythical grandma that downloads her own software? I've never seen one. Not on Linux, and not on Windows. Grandma gets her son or grandson to install all of her software for her. That, however, does not invalidate your premise. Software installation needs to be simple as: click on package, enter password to authorize installation, use newly installed software.

      Microsoft does NOT have a single, standardized installation method. There's setup.exe, *.msi, and the ever-enjoyable add/remove programs. The latter has multiple user requirements that depend on the type of software being installed. USB device drivers are particularly painful to install because you have to plug in the device at the precisely correct moment in the install process or the device just won't work.

    42. Re:The solution! by Serious+Callers+Only · · Score: 2, Insightful

      That's exactly how Microsoft tried to solve it and why their distributed software is huge. It also has led to problems of competing dlls which are often incompatible. If you think you have dependency problems now, just wait until you implement your idea! Imagine installing 16 applications each having a dependency on 16 different versions of the same lib.


      The idea of the post you're replying to was to package dependencies inside the application. That way, you can indeed install 16 applications each having a dependency on 16 different versions of the same library, with no problems whatsoever.

      OS X does it this way just now, and it works very well; apps are sometimes a few MB bigger (not a huge amount for most apps), but it's a huge saving in convenience for the user, who shouldn't even have to know what a dll/shared library is, let alone worry about it. As the grandparent pointed out, packaging applications should be a job for developers, not the OS.

    43. Re:The solution! by trianglman · · Score: 2, Insightful

      Why do Linux fundamentalists believe that all users are idiots and they should go somewhere else? Until the majority of Linux users and developers get past this mentality we will never see Linux accepted into the main stream desktop market. Yes, most general users can find all the software they need in a single distro, but most users don't know Ubuntu from Fedora from SUSE. If they pick a distro that doesn't include a software package that they want it shouldn't require uninstalling the OS and installing a new one. Distros shouldn't have to include every single piece of software that a user might want also. If they stopped doing this distros wouldn't require 5+ CDs or a DVD or two. Now, don't get me wrong, I appreciate having most of the programs I will need available on a set of five CDs, but this shouldn't be a requirement of distros. MS took that mentality with lots of things (specifically IE and the media player) and got slammed with anti-trust lawsuits. The non-system required software should be independent of the operating system, making the other software easily available is a feature of the different distros, but you shouldn't have to pick a distro based on the software that will come prepackaged.

      --
      Clones are people two.
    44. Re:The solution! by ElleyKitten · · Score: 1

      The first time grandma needs to go download dependencies means Linux has failed on the consumer desktop.
      Why would "grandma" need to install a program outside of her package manager anyways? Assuming Grandma is not some former UNIX programmer who likes to tweak everything under the sun (there's a few grandmas like that), but just some basic user with basic user needs of email, word processing, simple games, etc, then installing stuff on Linux will actually be easier for her than installing on Windows. Most repositories have thousands of programs, and I can't imagine anything a newbie would need that's not in the repositories of the major distros. I'm a geek and I don't even install that many packages outside repositories. With CNR coming to a variety of distros, even RPM distros, that just means more programs available for people without compiling from source and hunting down things over the internet. "The Year of the Linux Desktop" is just a silly catchphrase, but Linux is getting easier and easier for people.
      --
      "What is Internet Explorer 7? Are you saying we can't access the normal internet?" - I love tech support. Really.
    45. Re:The solution! by mrsbrisby · · Score: 4, Insightful

      Which is why, as it currently stands, this year will not be Year Of The Linux Desktop. Consumers won't just accept that they can't install software X because it's an RPM and alien doesn't work
      Now my daughter just received a "game" on Windows- brand new (2007) game that insisted on running in some "compatability" mode in Windows, and in a resolution that her LCD display couldn't cope with. The fact is that Windows users have run into this problem attempting to install software that isn't for their particular operating system, and failed on the Internet for a few hours. They just assume that Linux users have run into the same problem.

      They don't. Linux users install software out of their software catalog. Occasionally the brave ones go to the author's website, and download the software from there.

      This is also one reason people are willing to pay for an operating system that has a standardized and dependable way of doing things.
      Bzzt. Wrong. Nobody is willing to pay for Windows, that's why Microsoft doesn't let OEM's give you a choice. Duh, I'll use the Windows I already bought. And don't spread that Lie about how I don't have a License to.

      Microsoft even released the WiX toolkit that allows anyone to create MSI installer packages.
      But not the MSI format specification. That would allow me to cross-compiler into an installable package. As it stands, my users who run Windows have to deal with no installer.

      MSIs are one of the best ideas for Windows in a while ... No more dealing with poorly-written homebrew installers or 10-year old, 16-bit InstallShield programs.
      You're wrong, and you want proof? Look how many programs- nay, look how many programs come from Microsoft that are still distributed as exe files. That shiny new Zune's software comes in exe-form.

      Once that 16-bit installshield program was written, it's forever supported. You can't put the setup.exe genie back in the bottle, and you have to live with that. With Free Software, we can take our software library with us, which is why Free Software always gets better, and non-Free software atrophies.

      Instead you have a fully scriptable installer that's transaction-based and has near 100% support coverage.
      You are wrong on all counts. Pull the power plug while installing and you'll see just how transactional it is. I don't even think you know what coverage means: Microsoft Support will tell you to reinstall your operating system if a broken/corrupt/poorly-written MSI breaks your system. Even if they make it.

      I like apt, but downloading a gzipped file of source or a deb that complains about dependencies still can't compare to an MSI package.
      No of course not, but that's why you used a straw man. MSI is an executable, and just made Microsoft's security problem worse: it introduced yet another executable file format. Nobody downloads "gzipped file of source or a deb that complains about dependencies" ever. They say "apt-get install xyz" and it goes and figures out the dependancies itself.

      It doesn't have to- Linux users could waste disk space by including the dependencies with every program- and some Linux distributions even do this(!), but it makes upgrades very difficult. For example, when libz had a vulnerability discovered, only one copy needed to be upgraded on most Linux systems. On Windows, almost every program that dealt with gzip or deflate-compressed data (like png or zipfiles) needed to be upgraded. Worse still, that library or program can be anywhere on your hard drive, and you might never know it.
    46. Re:The solution! by DuckDodgers · · Score: 1

      Agreed. If you have some system in place that lists every package and its dependencies, and continually updates that database of information each time you update, install, or remove enything... you're 75% of the way towards having a package management system.

      Including something like that plus an .rpm, .deb, or portage package system and keeping the two (or three, of four) all in sync with each other is a tremendous amount of needless work.

    47. Re:The solution! by ElleyKitten · · Score: 3, Informative

      Why do Linux fundamentalists believe that all users are idiots and they should go somewhere else? Until the majority of Linux users and developers get past this mentality we will never see Linux accepted into the main stream desktop market. Yes, most general users can find all the software they need in a single distro, but most users don't know Ubuntu from Fedora from SUSE. If they pick a distro that doesn't include a software package that they want it shouldn't require uninstalling the OS and installing a new one.
      If a user picks Fedora or Ubuntu or SuSe, then they should be able to find just about anything they need in their distro's package manager. They all include alternative web browsers, chat clients, games, KDE/GNOME/XFCE, programming tools, image editing software (as best as it gets in Linux), wine, and even different file managers and shells and stuff that average users would never care about switching from the default. If a newbie picks Slackware or DSL or FreeBSD and figure out what to do or how to install programs, then yes, they should switch to a more mainstream and newbie-friendly distro. But there's not that much differences in what's in the repositories of the main distros, so they shouldn't need to switch from Fedora to Ubuntu because of what packages are available.

      Distros shouldn't have to include every single piece of software that a user might want also. If they stopped doing this distros wouldn't require 5+ CDs or a DVD or two. Now, don't get me wrong, I appreciate having most of the programs I will need available on a set of five CDs, but this shouldn't be a requirement of distros.
      It's not a requirement of distros. Ubuntu and other distros are available on single CDs, with all of the rest of their programs available in the repositories, so you only have to download multiple CD or DVDs if you're installing to a computer without internet or if you just like having all that stuff offline.
      --
      "What is Internet Explorer 7? Are you saying we can't access the normal internet?" - I love tech support. Really.
    48. Re:The solution! by Ulric · · Score: 1

      That's a remarkably stupid question. Because Networker or Oracle, for example, are not included with their distributions, perhaps? No distribution includes any replacement for those.

    49. Re:The solution! by ElleyKitten · · Score: 2, Informative

      Agreed. Multiple package formats are a non-starter, and shouldn't even be a consideration. The LSB has standardized on a subset of RPM, and that should be the universal package format. The Debian-based distros are harming the package standardization processes, and should learn to play with the other children. Debian's strength is not in the .deb package format, but in the package management tools. Those same tools will still be available upon switching the the LSB RPM format, so I don't see Debian's hangup about cooperating with the LSB.
      Why should the Debian-based distros scrap their package format? There's just as many if not more users of Debian-based distros than there are Red Hat based distros, so why is it that the Debian distros have to do all the work to change? Couldn't you just as easily accuse the Red Hat distros of not playing with the other children because they don't want to switch to .deb?

      Software installation needs to be simple as: click on package, enter password to authorize installation, use newly installed software.
      If you use a package manager, that is how installing programs on Linux is.
      --
      "What is Internet Explorer 7? Are you saying we can't access the normal internet?" - I love tech support. Really.
    50. Re:The solution! by Jesus_666 · · Score: 2, Insightful

      It should not be my job to spend three hours searching the web for some obscure package that the program creators just couldn't do without.

      Hence package management. You either distribute everything statically-linked (which means that if a critical bug is found in a library all programs using that library need to be updated) or you make the programs and the libraries they use separate packages, which allows fixes to be distributed more easily. With a good package repository you should not need to hunt down anything, ever.

      Linking everything statically would mean no problems - provided that all programs come with an auto-update routine, the auto-update routine is implemented in a way that makes sense to be deployed in a sensitive network, all authors keep up to date regarding the libraries they use, fixed builds are made available as soon as possible.
      As long as that scenario is not reality package managers are useful.

      --
      USE HOT GRITS WITH STATUE OF NATALIE PORTMAN (NAKED AND PETRIFIED)
    51. Re:The solution! by ElleyKitten · · Score: 1

      That's a remarkably stupid question. Because Networker or Oracle, for example, are not included with their distributions, perhaps? No distribution includes any replacement for those.
      That comes under #3 in the GP post. No, repositories can't have absolutely everything, but they maintain almost every application for desktop use and a basic user shouldn't need to install things outside the repository. If you're installing Networker and/or Oracle, you're well beyond a basic desktop user and should be able to install things not provided by your distro. If those programs are still too difficult to install, then you should contact the makers of them and tell them that.
      --
      "What is Internet Explorer 7? Are you saying we can't access the normal internet?" - I love tech support. Really.
    52. Re:The solution! by ichimunki · · Score: 0, Troll

      The idea of the post you're replying to was to package dependencies inside the application. That way, you can indeed install 16 applications each having a dependency on 16 different versions of the same library, with no problems whatsoever.

      In your example... every application for Mac OS X is entirely statically compiled? They don't even link to system libraries that one can reasonably assume an Mac OS X install has?

      --
      I do not have a signature
    53. Re:The solution! by ElleyKitten · · Score: 2, Funny

      Nobody is willing to pay for Windows
      I actually know a guy who purchased a brand-new copy of Vista for the computer he just built. Of course, he also unplugged all his fans when he was afraid that his power supply wasn't strong enough, so he's not exactly bright.
      --
      "What is Internet Explorer 7? Are you saying we can't access the normal internet?" - I love tech support. Really.
    54. Re:The solution! by radtea · · Score: 1

      Why do I have a sneaking suspicion that the solution will be to create a sixth way of installing software, which will also not be widely accepted throughout the popular distributions?

      Because you're familiar with the history of printer management on Linux?

      --
      Blasphemy is a human right. Blasphemophobia kills.
    55. Re:The solution! by ozmanjusri · · Score: 1

      You're missing the point. Each distro only needs to describe itself. As long as the description is in a standard format, the package manager can work out where each component in the package needs to go as an offset to the distro the package was originally targetted for.

      --
      "I've got more toys than Teruhisa Kitahara."
    56. Re:The solution! by ElleyKitten · · Score: 1

      and do not confront the newbie with stuff like vi/emacs, kernels, shells and window managers unless he _deliberately_ looks after them.
      Unless, of course, the newbie does want to install a software package that doesn't come pre-installed with the distro chosen.
      In Ubuntu (the distro I'm most familar with) to install new programs a newbie would go to Applications->Add New Programs and that would open a simplified version of Synaptic (they can go to the full version of Synaptic by clicking Advanced) that only had the basic programs for a newbie. Games, chat clients, extra email clients and web browser, divided into basic categories like Games and Internet. There's no alternative kernels, shells, desktop environments, etc (those you have to go to Synaptic for). Even once you go in Synaptic, you don't have to pick a new kernel, it still has categories so they can just click the categories like Games and Web Development and stuff they understand, or just search for specifically what they want. So, no, newbies don't have to worry about the nuts and bolts of their distro.
      --
      "What is Internet Explorer 7? Are you saying we can't access the normal internet?" - I love tech support. Really.
    57. Re:The solution! by _xeno_ · · Score: 2, Interesting

      But not the MSI format specification. That would allow me to cross-compiler into an installable package. As it stands, my users who run Windows have to deal with no installer.

      WiX is fully open source, so if you wanted, you should be able to figure out how to create MSIs from that. In any case, you could try running it under Mono, maybe it'll work under Linux...

      MSIs are one of the best ideas for Windows in a while ... No more dealing with poorly-written homebrew installers or 10-year old, 16-bit InstallShield programs.
      You're wrong, and you want proof? Look how many programs- nay, look how many programs come from Microsoft that are still distributed as exe files. That shiny new Zune's software comes in exe-form.

      Most of those EXEs are actually MSIs wrapped with a stub installer that can install the Windows Installer if it's missing.

      No of course not, but that's why you used a straw man. MSI is an executable, and just made Microsoft's security problem worse: it introduced yet another executable file format.

      Well..... yes. It is. Sort of. It allows arbitrary binary code to be run - but then again, it's an installer. It could run arbitrary code anyway. Complaining that MSI is "another executable format" would be like complaining that RPM is "another executable format" - it's equally true. (Although I think RPM generally runs shell scripts, not direct binary code. Although I could be wrong.)

      Nobody downloads "gzipped file of source or a deb that complains about dependencies" ever. They say "apt-get install xyz" and it goes and figures out the dependancies itself.

      Right, nobody does that because it's practically impossible to get it working. Instead they discover that it's not in the apt repository and give up. That's the problem with the Linux packaging system - if it's not there already, it's basically impossible to install unless you're a Linux expert. Now you might say that "any software you'd ever need" is going to be available, but you're guaranteed to be wrong at some point. Some new game, some new app, something will become available that someone will want to install - and won't be able to, because it's not in the distribution repository.

      Worse, from the developer point of view, they might create some great new software that they want to release in an easy to install form - and, really, can't. Maybe they'll generate an RPM or a DEB for their own installed Linux distro, but beyond that, it's just too much effort to try and make an installer for everyone.

      Oh, and MSI is horrendously overcomplicated compared to RPM and DEB, in case you wanted to know. Nothing like having to generate a GUID for every single file you might want to install. (Although to be fair, that's likely because most Windows programs don't contain all too many files.)

      --
      You are in a maze of twisty little relative jumps, all alike.
    58. Re:The solution! by Ulric · · Score: 1

      If you (and juergen) define "basic or intermediary needs" as "web, mail and a word processor" then you're right, but I don't think that's a valid definition. For many desktop users, the applications they would like to use are not available *at all* on Linux. Pet breeding software. Cheese making software. On Linux, you probably need to tinker with Wine and Windows applications that certainly do not come with the distribution any more than Oracle and Networker do. And for servers, installing Oracle or Networker is certainly "basic or intermediary needs".

    59. Re:The solution! by Deliveranc3 · · Score: 1

      Not really, just map the various package trees and modify the install accordingly.

    60. Re:The solution! by M.+Baranczak · · Score: 2, Informative

      The difference between OS X and Linux is that the base OS X installation is huge, and already includes many shared libraries. For example, you can assume that libcurl will be always available on OS X - not so on Linux. You seem to be saying that OS X apps don't depend on shared libraries, which is just not true.

    61. Re:The solution! by Anonymous Coward · · Score: 1, Interesting

      Boy do I disagree with this statement.

      If you make it too easy to run such that no OS is responsible for the software that is installed from anywhere on the internet. What's the difference from this and malware that runs rampant on Windows -- where it is pretty painless to install anything from anywhere.

    62. Re:The solution! by ElleyKitten · · Score: 2, Informative

      Wine is in the repositories of pretty much every distribution that has repositories (and actually, Oracle is in Ubuntu's repository). As for the specific Windows applications, the discussion is package management, not what programs are available for Linux. If you are very attached to Windows apps that don't work with Wine, then unfortunetly Linux is not for you. We should continue to complain to software developers to make Linux ports and make our own equivalant programs, but that's a seperate issue from the best ways for users to install the software that is for Linux.

      --
      "What is Internet Explorer 7? Are you saying we can't access the normal internet?" - I love tech support. Really.
    63. Re:The solution! by swillden · · Score: 1

      Also, the option to resolve dependencies and install as a statically linked blob would be awesome for legacy stuff. I've lost count of the number of times I've wanted to install an app, only to find that it relies on some obscure version of xyz.so and won't work, so I find the source for the old version of xyz, only to find it depends on some older version of abc.so. If I could get this xyz.so, etc without conflicting with that xyz.so, create a static binary and put it somewhere under /opt, I'd be happy.

      Static linking isn't necessary. This is why we have library versioning. Assuming the library creators did their stuff right (and they nearly always do), you can install multiple versions of libraries side by side, and the app will link to the right version when it starts up.

      All you really need is a convenient way to chase down and install the library versions that the app needs. That way it's not quite as inelegant and may not waste quite as much space (if you install other apps that need those same old versions).

      --
      Note to ACs: I usually delete AC replies without reading them. If you want to talk to me, log in.
    64. Re:The solution! by MBGMorden · · Score: 2, Insightful

      Last time I tried Ubuntu apt-get package_i_want failed to locate the program more than half the time. I use Gentoo and while portage has the largest selection of "packages" available that I've seen, even it does not contain everything.

      Relying on distros for your software has lead to the sad state we're in now. I don't rely on Microsoft to hand stamp and prepare every piece of software I used on Windows, and I certainly shouldn't have to do the same on my Linux machine. Until we get a method by which I download a file, click on it, and install a program (regardless of which distro I'm running or which version of GTK I'm running), Linux will lag behind. SEVERELY.

      --
      "People who think they know everything are very annoying to those of us who do."-Mark Twain
    65. Re:The solution! by Phred+T.+Magnificent · · Score: 1

      If a newbie picks Slackware or DSL or FreeBSD and figure out what to do or how to install programs, then yes, they should switch to a more mainstream and newbie-friendly distro.

      I haven't tried installing anything on Slackware for several years now, so I have no idea of the current state of their package management. Last I heard, though, DSL was based on Debian and could be configured to use the same apt repositories. As for FreeBSD, you're unlikely to find a better package and dependency management system than portupgrade on any Linux system.

      --
      Where is the wisdom we have lost in knowledge?
      Where is the knowledge we have lost in information?
    66. Re:The solution! by ElleyKitten · · Score: 4, Informative

      Last time I tried Ubuntu apt-get package_i_want failed to locate the program more than half the time.
      When you use the command line you have to make sure you spell the package name exactly right, for example "sudo apt-get install flash" won't work, but "sudo apt-get install flash-nonfree" does. Synaptic has a really good search feature that I use when i don't know the exact name. If Ubuntu really doesn't have half the programs you want, then what programs do you use and how do you normally get them?

      Relying on distros for your software has lead to the sad state we're in now. I don't rely on Microsoft to hand stamp and prepare every piece of software I used on Windows, and I certainly shouldn't have to do the same on my Linux machine. Until we get a method by which I download a file, click on it, and install a program (regardless of which distro I'm running or which version of GTK I'm running), Linux will lag behind. SEVERELY.
      I personally like the package management system. I like having one place to look for software for my system, software that I know has been tested with the programs I likely have on my system, software that I know will update with the rest of my system, software I know isn't spyware. It sounds like it wouldn't work too well, but it really works rather well since there are so many programs in the repositories. Even for the programs that don't want/can't be in the repositories, there's ways for people to install those easily as well. There's java programs that install easily regardless of your Linux, there's autopackage, and some developers just put the program and all the files in a zip file that you can extract and then run where ever you want. There are solutions, they probably need better development, but they're not in terrible shape and that's not the most pressing issue for Linux. Much more important is getting the software people really want on Linux (or at least working really well and easy with wine) and making really good oss equivalents to proprietary software (we need something better than gimp to compare to photoshop) and we also need more device drivers, especially wireless. Those are much more important than package management.
      --
      "What is Internet Explorer 7? Are you saying we can't access the normal internet?" - I love tech support. Really.
    67. Re:The solution! by ElleyKitten · · Score: 1

      I haven't tried installing anything on Slackware for several years now, so I have no idea of the current state of their package management. Last I heard, though, DSL was based on Debian and could be configured to use the same apt repositories. As for FreeBSD, you're unlikely to find a better package and dependency management system than portupgrade on any Linux system.
      I was meaning for newbies. A newbie on DSL will likely not be able to find the command line and figure out how to apt-get install, as opposed to on Ubuntu where installing is done in a GUI by default. I should have phrased that wrong, I didn't mean to imply they suck, I meant that if a newbie was on them and couldn't understand what to do then they should switch to a more newbie-friendly distro.
      --
      "What is Internet Explorer 7? Are you saying we can't access the normal internet?" - I love tech support. Really.
    68. Re:The solution! by gr8dude · · Score: 1

      MSIs are one of the best ideas for Windows in a while: No more dealing with poorly-written homebrew installers or 10-year old, 16-bit InstallShield programs. Instead you have a fully scriptable installer that's transaction-based and has near 100% support coverage.
      MSI is not the best thing since sliced bread; you cannot install a newer version of a program unless you also have the .MSI file of the older version, otherwise it won't update.

      I am not sure this is a global problem, but it definitely happened to me with at least four different programs, one of them being PDFCreator.

      I think it is counter-intuitive that I should keep the MSI of a program I installed a long time ago.
    69. Re:The solution! by Phisbut · · Score: 1

      That's exactly how Microsoft tried to solve it and why their distributed software is huge. It also has led to problems of competing dlls which are often incompatible. If you think you have dependency problems now, just wait until you implement your idea!

      I do believe Firefox is being distributed that way, and it seems to work for them. From their site, you download one .tar.gz file, extract it anywhere on your system, and bingo. The package includes all the binary libraries that it requires, and I've never seen dependency problems arising from it. Sure it makes the download bigger, but there's a price to pay for simplicity.

      --
      After 3 days without programming, life becomes meaningless
      - The Tao of Programming
    70. Re:The solution! by trianglman · · Score: 1

      It makes no sense to make software difficult to install so that users can't install malware, but still expect them to use Linux. There is a trade off and at some point you have to trust your users. Also, malware isn't so prevalent now just because users will download and install anything they find on the internet, Windows, and many programs running on Windows, have very large security holes that allow for this.

      --
      Clones are people two.
    71. Re:The solution! by Phisbut · · Score: 1

      If you are very attached to Windows apps that don't work with Wine, then unfortunetly Linux is not for you. We should continue to complain to software developers to make Linux ports and make our own equivalant programs, but that's a seperate issue from the best ways for users to install the software that is for Linux.

      So, while you complain to software developers that they should make a Linux port, you also want the same software developer to :

      • Support RPM for Fedora, SuSE and Mandriva
      • Support DEB for Debian, Ubuntu, et al.
      • Support god-knows-what for every other obscure distro
      Because God forbid we try and work towards a unified packaging system. Did it ever occur to you that one reason why independent software vendors don't port their application on Linux is because it's simply too much work to get it working with every single distro there is. Unified packaging is the way to go for vendors.
      --
      After 3 days without programming, life becomes meaningless
      - The Tao of Programming
    72. Re:The solution! by misleb · · Score: 1

      Using multiple package formats is great idea, IMO.


      That is until you find that all the apps you used alien to install break when you do apt-get dist-upgrade.

      I dunno, I always found that the biggest advantage of using Linux was sticking to a single package system with all apps linked to a single (or small group) of repositories that are kept up to date and provide a relatively smooth upgrade path. Once you start installing packages from other distribution and compiling your own, things become a pain in the ass real quick. This is one of the reasons I always hated using proprietary *nix systems like Solaris (well, Solaris 6/7 anyway). You'd build this great system with all kinds of custom compiled packages (because the base system was virtually useless on its own) then 2 or 3 years later you just wept at the prospect of remembering all the obscure options you used to build stuff and all the interdependencies.

      And then there are security updates. If you're not linked to a managed repository, you coudl easily end up with an out of date system that is full of security holes.

      -matthew

      --
      "THERE IS NO JUSTICE, THERE IS ONLY ME." -Death
    73. Re:The solution! by ElleyKitten · · Score: 1

      There's a number of ways that software developers can make their programs installable on as many distros as possible without having as many installers. Some use autopackage, some use klik, some wrote their program in java and put it in a .jar file, some skip installing and just put the program and the files in a zip file so the user can extract it and run it where ever they want. Different solutions work for different people.

      --
      "What is Internet Explorer 7? Are you saying we can't access the normal internet?" - I love tech support. Really.
    74. Re:The solution! by mrsbrisby · · Score: 1

      WiX is fully open source, so if you wanted, you should be able to figure out how to create MSIs from that. In any case, you could try running it under Mono, maybe it'll work under Linux...

      You should, but you can't. That's because WiX uses DLL-calls into a non-open-source component to make the MSI.

      Most of those EXEs are actually MSIs wrapped with a stub installer that can install the Windows Installer if it's missing.

      Except in the case of the examples I gave, the software doesn't run on machines that didn't come shipped with the Windows Installer, so exactly why would Microsoft do that?

      Well..... yes. It is. Sort of. It allows arbitrary binary code to be run - but then again, it's an installer. It could run arbitrary code anyway. Complaining that MSI is "another executable format" would be like complaining that RPM is "another executable format" - it's equally true. (Although I think RPM generally runs shell scripts, not direct binary code. Although I could be wrong.)

      No it wouldn't be equally true. I can install RPMs into a system besides the one that I am running. I can run them on a system that isn't fully installed yet, or I can install them into a system over the network. No, MSI isn't even remotely as capable as RPM, and it only goes to further demonstrate that it isn't just those singing the praises of MSI that don't understand the problems.

      Right, nobody does that because it's practically impossible to get it working. Instead they discover that it's not in the apt repository and give up. That's the problem with the Linux packaging system - if it's not there already, it's basically impossible to install unless you're a Linux expert.

      In your mind, how exactly does this differ from the Windows world? If it hasn't been ported to Windows XP SP 2 yet, or patched or whatnot, how exactly is a non-expert to get it to work?

      Worse, from the developer point of view, they might create some great new software that they want to release in an easy to install form - and, really, can't. Maybe they'll generate an RPM or a DEB for their own installed Linux distro, but beyond that, it's just too much effort to try and make an installer for everyone.

      People don't make "their own" RPMs for distribution, they make RPMs so that they can track the package in the rpmdb. This makes things easier from the developer's point of view because the developer doesn't have to worry about distribution or collision tracking and dependent upgrades.

      Oh, and MSI is horrendously overcomplicated compared to RPM and DEB, in case you wanted to know. Nothing like having to generate a GUID for every single file you might want to install. (Although to be fair, that's likely because most Windows programs don't contain all too many files.)

      MSI doesn't solve any problems. Microsoft introduced it because every Linux show they go to people rave about how awesome APT and YUM and that there simply aren't any version maintenance nightmares. Microsoft doesn't realize that the power of APT and YUM is in the distributions that use them, and has nothing to do with third-parties actually distributing software.

      As you've noticed, software developers can't reasonably target each distribution in each distribution's native format. The few that try (Opera) end up making things very difficult by comparison for Linux users. They don't really understand the issues either.

      Because the debian group is spending their efforts minimizing conflicts and recording overlap, I can merge in and merge out software on any debian system- even when the system isn't running, or do it over a network. Its painless- and it doesn't really matter what other software might be wanted/needed on that system. Installing flash is downright painful because Adobe insists on doing all the distribution themselves. It causes a degree of discomfort that Windo

    75. Re:The solution! by Ambassador+Kosh · · Score: 1

      Software installation needs to be simple as: click on package, enter password to authorize installation, use newly installed software. Hmm on kde on debian based systems I have been doing this for years. You can click on a deb file, the system will prompt for the root password and then install it, this should also work for rpm based systems but I have not used one in a long time.
      --
      Computer modeling for biotech drug manufacturing is HARD! :)
    76. Re:The solution! by Anonymous Coward · · Score: 0

      But linux does have it right. Linux (the kernel) handles the kernel (obviously), the filesystem, communicating with hardware etc. A distribution such as ubuntu is a layer on top of that which includes package management.

    77. Re:The solution! by Procyon101 · · Score: 1

      It's not generally an issue of "can it be done?" It's often an issue of doing it cleanly and conveniently. For instance, on my Gentoo box, I can do a source install, which leaves the /usr, /usr/local, and sometimes /var trees in a state that is not cleanly managed by portage. Installing to my home directory is not always appropriate.. the "right" way to do it is to use an overlay, which is generally way more work and takes more specialized knowledge on my part than I am willing to expend.

    78. Re:The solution! by Procyon101 · · Score: 1

      Portage isn't obscure you insensitive clod!! ;)

      Perhaps it's not a unified packaging system, but rather, a unified repository of meta packages with build transforms to DEB, RPM, Portage, etc packages. The software authors release to this repository, similar to the unified virus database all the antivirus vendors use. The distros pull from the repository and transform it into their native packaging system, making binary builds, changing paths, or whatever. The meta-package would describe what kinds of transforms might be illegal, etc. End distros could filter certain packages as unstable if they cause problems on their particular system, but in general, once software is released into the repository it gets pulled automatically into all the distros.

      One can dream...

    79. Re:The solution! by gbjbaanb · · Score: 1

      Right, nobody does that because it's practically impossible to get it working. Instead they discover that it's not in the apt repository and give up. Hey! that's what I do, and I do consider myself at least a linux power user. (well, my distrouses Yum, but its the same difference).

      The biggest issue for packaged apps though, is not the app (that comes in both yum or apt repos generally) but the directories the app installs to. This is where the LSB is such an important project to the Linux community - only most people don't recognise the subtle fact.
    80. Re:The solution! by AeroIllini · · Score: 2, Interesting

      Ok, so the binary package capability of Gentoo may not be completely unused, but it is used sparsely, if that. A very few select programs have binary equivalents (OpenOffice, Firefox, and Azureus come to mind), but what I think the GP is looking for is a way to specify "all binary, all the time" as a build option. I'm certainly looking for that. Combine that option with the newly-introduced graphical installer, and voila! Gentoo can be used as a Grandma System, too.

      What the Gentoo devs need to do is to add arches like x86-bin, amd64-bin, etc. to the Portage tree, and these arches would not compile anything--just install binary packages. Every time this is brought up, many Gentoo devs jump to the defense of building from scratch, saying "if you don't want to build from scratch, what the hell are you doing using Gentoo?" And I usually respond with something along the lines of "but isn't Gentoo all about choice? And shouldn't I have the choice to install binary packages?"

      The binary packages would be standardized on a certain set of USE variables, and only compiled for each arch/CHOST combination (to reduce storage costs at the repositories). If someone needs a specific set of USE variables for a particular package, they can build from source by specifying a non-binary arch in their /etc/portage/package.keywords.

      The beauty of Gentoo is scalability; the system can be tailored to be anything you want it to be. This will add one more option: Gentoo can also be a binary distro, suitable for non-hardcore users. If Debian can do it, why can't Gentoo?

      --
      For security, the MD5 hash of this message and sig is 09f911029d74e35bd84156c5635688c0.
    81. Re:The solution! by mstone · · Score: 2, Insightful

      ---- Why the fsck do some users insist on installing software outside their own distributions?

      Uh.. because they want to?

      Because they think the software might do something they want?

      Because they think an OS should be able to.. oh, I dunno.. run software?

      Because they want to choose software for themselves, not leave the decision to some central committee that will tell them what options they're allowed to have? [1]

      Because you've got the question precisely backwards, and the one that really matters is the user's question of, "does this OS/distro let me do what I want?"

      Let's face it, if the answer to that question is, "no," you can pretty well forget about the world beating a path to your door. But that's okay, because apparently you don't want them there, anyway.

      Stupid damn users.. thinking they should be allowed to choose software..

      [1] - Seriously dude.. drop the "why can't they just do what we tell them to" meme.. NOW. Friends don't let friends evolve into spokesmen for the RIAA/MPAA.

    82. Re:The solution! by billycongo · · Score: 1

      The solution is KISS. The more they try to simplify the process of installing rpms, the more you realize how stupid it is in the first place. There are a number of distributions which use pacman, including Arch Linux. It's so easy, even I can do it.

    83. Re:The solution! by mstone · · Score: 1

      ---- Software installation needs to be simple as: click on package, enter password to authorize installation, use newly installed software.

      No, software installation needs to be as simple as: copy the file/directory from the install media to the hard drive, use newly installed software.

      Installer packages and authentication make it too damned easy for developers to feel casual about installing things in places the 'inexperienced user' (which IMO includes about 60% of developers) shouldn't go.

      I should not need admin-level authentication to install an image viewer that will only be run at regular-user privileges, simply because the developer thinks he's doing me a favor by 'updating' all my libraries. Damn thing should default to running inside a chroot jail, as far as I'm concerned.

      I don't buy the idea that dynamic libraries make it fast and easy to do a system-wide upgrade if a critical bug is found. They make it equally easy to do a system-wide downgrade the next time I install something from an old package, to hose the system royally if two installers want incompatible versions of some dependency, and to create segmented, "the program itself is small, but look at that dependency chain" bloatware.

      Let's get the distros to agree on a set of dynamic libraries they're all willing to support, and leave the business of keeping those libraries updated to the distros. Developers can then rely on those libraries being available on any distro or flavor of Linux/BSD/whatever. If a developer wants something outside that list, let him link it statically.

      Bottom line, though, I want developers to ship software that works, not sitting around deciding what's "good" for me.

    84. Re:The solution! by 51mon · · Score: 1

      Probably a misconception from a recent comparison that said by compiling more code into the applications, MacOS depends on less shared libraries, which it does. Of course that is why you need 15GB of disk space to install it, and twice as much RAM to make it run as quickly as GNU/Linux (and I assume regular BSDs would be faster than MacOSX in this regard as well), and the security updates are huge.

      Everyone seems to have forgotten why we create libraries in the first place, and why we use shared libraries (I mean we do have a choice, well sort of, no one seems to use libraries that aren't shared out of choice these days).

    85. Re:The solution! by martinkb · · Score: 0

      The only way that I can see to fix that is to design a universal package tree, and convince all the major distros to conform to it.

      Which is why I use FreeBSD...

      For example, say I want to install Inkscape:

      1. Log in as root.
      2. cd to /usr/ports/graphics/inkscape
      3. make install clean
      4. Log in to my normal user account.
      5. Add the command inkscape to my menu.
      6. Click on it and run inkscape.

      Or I coupd eleminate steps 2 and 3 and just type pkg_add -r inkscape... but then it wouldn't be compiled.

      And it all comes from one big central respotory.. the FreeBSD ports collection.

      --
      :: Martin
    86. Re:The solution! by Max+Littlemore · · Score: 1

      Why the fsck do some users insist on installing software outside their own distributions?

      Scenario:

      I want v1 of package x
      I want v1.3 of package y
      Umbootie Linux has v1 of x and v0.4b of y
      Newbspire Linux has v0.7 ox x and v1.3 of y
      No other distro has either version.

      My options are simple. Bitch and moan about how Linux doesn't have the software I want, is too difficult to manage and is not ready for the desktop, or install packages from Newbspire on my Umbootie system.

      Why the fsck do some geeks insist they know what is best for every user? It was stupid when a deaf Thomas Edison made all the decisions about the talent signed to his record company too.

      --
      I don't therefore I'm not.
    87. Re:The solution! by Max+Littlemore · · Score: 1

      Using multiple package formats is great idea, IMO.
      That is until you find that all the apps you used alien to install break when you do apt-get dist-upgrade.

      So far I've found that every package I've used alien for has worked and at least last time I attempted an upgrade, I didn't do a dist-upgrade, I installed from an ISO to a different partition, but then I was going from Dapper Drake to Edgy Eft ;-)

      The reason alien works for me so nicely might be because I avoid using it unless it seems the easiest path. In one example linuxsampler worked fine when I installed the RPM (for SuSE, IIRC) but the deb doesn't work for me at all and building from source is too much hassle. (I get very lazy sometimes)

      Apart from the shit fight that was/is dist-upgrade from Dapper to Edgy, I avoid them for the sake of my wife. She's happier with the system if I install the new version in parallel and figure out what I need to do to get it as nice as possible before switching.

      The single package system works well if the repositories have (almost) every version of every package ever written. I find that our home PC is a multi function thing that does graphics, desktop publishing, music production, 3D modelling and animation and development. So far I haven't been happy just leaving my options in the hands of the various repository mantainers. It's not that they don't do a stirling job, it's just I occasionally want do do something they didn't forsee or install a version of something they don't yet support. It's not that I can't get the software I want working, in fact the system is very functional and stable. I could be easier to manage though.

      An alien like tool that could automagically figure out the dependency tree and maintain the local database well would be absolutely brilliant. Allowing me to run bleeding edge audio alongside the stable and supported graphics with the ease of a tool like Synaptic would make life a lot easier. I do think it's possible, but it's not easy and whether anyone would bother to do it for free is another matter and I think the commercial distros have a disincentive.

      --
      I don't therefore I'm not.
    88. Re:The solution! by Ulric · · Score: 1

      That looks like a bunch of packages that use Oracle, a database which does not come in .deb packages, is not included with Ubuntu and tries to resist attempts to install it on Ubuntu. I used the cheesemaking and pet breeding examples not because they are unavailable for Linux but because if they were, they would be closed source (as are the Windows versions) and hence not included with many distributions. An operating system which cannot accomodate any third-party applications is virtually useless. And no, I'm not saying that Linux is useless, precisely because Linux does accomodate third-party applications, and not by bundling everything in the vendor's preferred proprietary packaging format.

    89. Re:The solution! by Mr+Chund+Man · · Score: 1

      Seven Doors?

      You mean Dwarves, surely?

    90. Re:The solution! by rts008 · · Score: 1

      You have a very valid point.
      'make' and 'make install' only works when the source code and makefiles are available. This is the big chasm between the different types of software licenses.

      If it was an ideal world....I could (for example) write original code for some software app, provide the source code to compile for any OS, and still sell it to make a living writing software code. For this to work, human nature would have to change drastically from the present. I don't see this happening soon.

      I have some issues with the whole IP, copyright, and patent situation; but I have no good solution.
      On one hand, you have those professionals that devote a lot of time, training. and energy to give us stuff like Doom, Halo, Battlefield 1942, etc.- if they didn't get paid to do this....imagine the loss. (insert favorite games/app's here)

      On the other hand...the propriatary market (not providing source to compile) inhibits ease of installing no matter what OS.
      For example:
      I want Duke Nukem Forever for my Kubunto Drapper box and my wife's Win XP box- I either buy the game cd/dvd which has the source (one cd/dvd for each box), download the source and compile (for each box), or whatever (for each box), but:
        1.Don't need the cd/dvd to play run the app after install.
        2.Has no restrictions or distinctions between hardware or virtual machines.
        3.Is fair to the writer/developer of the app, and a setup that encourages more, more, more!
        4.Is user friendly, and has good man pages/documentation.
        5.It all works with standard or +standard hardware; and freely available drivers for hardware. (I'm talking to you ATI!)

      Yeah, I'll keep dreaming....but in a perfect world........

      --
      Down With Slashdot BETA!!! I've been around the corner and seen the oliphant; you can only abuse me from your perspecti
    91. Re:The solution! by Bungie · · Score: 1

      Usually the MSI installers are copied to C:\Windows\Installer so that they can be accessed through Add/Remove programs and also for repairing the installation if a component is missing. If a program is asking for the old MSI file, it is probably trying to uninstall the older version rather than upgrade it. Either way, the installer should be in the C:\Windows\Installer folder under a GUID.

      --
      The clash of honour calls, to stand when others fall.
    92. Re:The solution! by bh_doc · · Score: 1

      You seem to have confused "distribution" and "operating system" as synonymous. A distribution consists of the operating system plus applications. Why is it not then up to the distribution to take care of the interoperability of both?

    93. Re:The solution! by nikster · · Score: 1

      I think here's where developers that think of developers first are really shooting themselves in the foot.

      The requirement is simple: I want to install any software on any distro. It shall work like it does and has done forever on the Mac. Because that's a superior system - apps are largely contained in their folders. Most Mac apps you can drag install to another machine/hard disk. That's the way it should be. Windows is kind of stupid with the central registry but still way better than Linux!

      The task for developers is not to whine and moan and say how that's too much to ask - as they do even here in this discussion - the task for developers is to find a way to do it. Don't tell me it can't be done - of course it can be done. Anything can be done.

      For example, it could work like a JVM - a mapper that maps all the packages on all different distributions to a common standard so programs can find whatever system libraries they need. Bundle it with a system that allows multiple parallel versions of the same framework - like OS X does, you can just steal it from there - and you have a solution.
      Then, all you have to do is write X different mappers for X different distributions, e.g. do the work only once instead of a thousand times.

      I don't really understand how anyone can defend a system whereby software installation is dependent on the underlying flavor of the OS one uses - that's just totally retarded, sorry. I am saying that even as a developer. It's not acceptable.

      I have a feeling though that the reasons that this isn't already implemented in all distris is not technological but rather political. Looking at the other comments, it appears that not everyone is convinced that this is needed.

    94. Re:The solution! by Yorkshire+Tyke · · Score: 1

      You can still do "sudo apt-cache search flash" if you don't know the package name, although the list can get quite long depending on the term! Ian.

    95. Re:The solution! by trianglman · · Score: 1

      When you use the command line you have to make sure you spell the package name exactly right, for example "sudo apt-get install flash" won't work, but "sudo apt-get install flash-nonfree" does.

      Which is a major impediment to install a software package unless you know exactly what it is called. But if you just go to Google, or SourceForge or something, you can do a close search and find exactly what you need, but good luck getting it installed if you can't then find it in your package manager's repositories...

      I personally like the package management system. I like having one place to look for software for my system, software that I know has been tested with the programs I likely have on my system...

      And there is no reason to take it away, but the difficulty in installing anything else, and the incompatibility of all the different package management systems is a major hang-up for Linux.

      --
      Clones are people two.
    96. Re:The solution! by juergen · · Score: 1

      The non-system required software should be independent of the operating system, making the other software easily available is a feature of the different distros, but you shouldn't have to pick a distro based on the software that will come prepackaged.


      But non-system software IS independent. It just is not easy to install, not least *because* it is very general and plattform independent, and *lacks* any system dependent managing code.

      Non-distro provided software is incomplete from the common user's point of view. Installing incomplete software is for experts only.

      Linux is about choice. There is easy for use software (distros) and there are expert ways of doing about everything in customized ways too. Don't complain about complexity, just stay away from the expert and custom installs and there won't be as much. And don't cry wolf and try to take away expert things from the experts, you would have no Linux at all without them.

      Regarding multi CD distros. Almost every modern distro just requires one installer CD, if at all, and has online repositories. For multi PC installs, it is very easy to have a local repository cache server yourself, and that's the preferred way of doing it for most. Multiple CDs are so yesterday, but I've seen it gives some people a cozy feeling. Just get over it and move with the time.

      -Jürgen
    97. Re:The solution! by Anonymous Coward · · Score: 0

      And now you know why us Microsoft devs will only consider Linux geeks to be nothing but hobbyists living in their parents' basement.

      All this banter over--how to install software. Linux enthusiasts (or Lice, as I like to say) would rather spend their time doing things for their computer, while my camp prefers to actually make the computer do something useful for us. I guess it's just a matter of whether you use the tool, or the tool uses you.

    98. Re:The solution! by nyghtraven · · Score: 1

      I have to agree with many others.. I love Linux but the fact it is not easy to install applications as Windows or Mac makes it a non-user friendly system. Some of you may argue, but it would be pointless. Trying to install an app only to get dependancy requirements, NEARLY EVERYTIME, is not acceptable. Having a large number of apps that require you to compile them to work is just stupid. I think the Linux community, a large portion anyway, like Linux being more obscure and difficult than Windows because it sets it apart, but that doesnt help it to get adopted by regular users. What we need is a standardized installer, like Installshield is for windows.

    99. Re:The solution! by Anonymous Coward · · Score: 0

      Right said, but you'll need a tool which keeps track of packet splits and joins. A two year old xyz package is possibly split into libxyz xyz-client xyz-server and xyz-doc in recent packages. I'd appreciate if GNU would propagate a consistent naming and versioning scheme instead of pushing GPLv3.

    100. Re:The solution! by G+Morgan · · Score: 1

      No HURD will use 2 mutually recursive package systems. Think of deb and rpm. HURD will store debs inside rpms and rpms inside debs. As a result no software will ever finish installing on the OS that will never finish alpha development.

    101. Re:The solution! by Raenex · · Score: 1

      If they see it as necessary, and they know its not readily available, they should package it with their own program (GPL and BSD licenses both support this and is one of the strengths of these licenses).

      GPL does not support that unless you want to make your program GPL or unless the third party code is LGPL.

    102. Re:The solution! by Theatetus · · Score: 1

      I do believe Firefox is being distributed that way, and it seems to work for them. From their site, you download one .tar.gz file, extract it anywhere on your system, and bingo. The package includes all the binary libraries that it requires, and I've never seen dependency problems arising from it.

      Negative! Not only does firefox have unincluded requirements, it has obsolete unincluded requirements, specifically, libpangoxft which has been deprecated for like 3 minor versions of Gnome now. The latest Gnome versions offer compat libs for pangoxft for just this situation, but you have to bring pango, atk, and IDL if you want mozilla to run (to say nothing of X11).

      --
      All's true that is mistrusted
    103. Re:The solution! by aug24 · · Score: 1
      Firstly, perhaps you should try "apt-get install package_i_want" ;-)

      Secondly, you can do what you ask: it's a .deb file. You just download it (see openoffice.org for one, for example) and then install with dpkg (which is actually what apt-get calls).

      In fact, Ubuntu may even be clever enough to open .deb files with dpkg for you by clicking, which would be exactly analogous to downloading an installshield packaged file or similar.

      What was your most recent problem package_i_want? Perhaps the programs you want aren't made available as .deb files? Please give me an example and I'll try and point you in the right direction.

      Justin.

      --
      You're only jealous cos the little penguins are talking to me.
    104. Re:The solution! by Max+Littlemore · · Score: 1

      The only real way to have a universal format is for the world to only use one distribution, because really, packaging is the most major part of a distribution's job.

      Hmmmm. Maybe the whole world should just use Vista. Monoculture is obviously better.

      --
      I don't therefore I'm not.
    105. Re:The solution! by Alchemar · · Score: 1

      I personally feel that the "sixth" method is to include detailed instructions on how to do the installation. If step by step instructions are given, then it usually doesn't matter what method. If the computer needs specific pachages, make sure that they are listed and also include step by step instructions if they are not. If the package does not play well with a particular distribution, note it in the instructions instead of leaving someone to spend hours searching knowledge bases and chat room archives that include the helpfull replies that solved a problem in an earlier version, but no version numbers to let you know it is not for the version you have now. Also include details on how to wipe the program and configuration files so you can rerun the install from the beging if things go wrong. It can be a nightmare if you enter a question wrong on the installation, but the program stores your answer instead of asking again if you rerun the install.

    106. Re:The solution! by Sillygates · · Score: 1

      I'm not saying it probable, I'm saying thats what it would take.

      --
      I fear the Y2038 bug
  2. Applications Packages by SultanCemil · · Score: 5, Interesting
    If only major linux distros would use Application Packages like OS X, the world would be a better place.

    Seriously, drag-n-drop installation rocks.

    --
    Cemil.
    1. Re:Applications Packages by Whiney+Mac+Fanboy · · Score: 1, Interesting

      If only OS X users would stop whining about OS X in linux stories, the world would be a better place.

      Seriously, being able to read a linux story without inevitable, (innaccurate & irrelevant) OS X comparisons would rock.

      --
      There are shills on slashdot. Apparently, I'm one of them.
    2. Re:Applications Packages by SnowZero · · Score: 1

      As does clicking on a checkbox. Seriously, I don't need it to be any easier.

      What we do need now are better guides telling people what they need to install for a given problem, since the link from task to program/package name is not always obvious. I know I can use google for that, but a more centralized and guided way would be nice for less technical people. That's why I think that click-n-run has its place.

    3. Re:Applications Packages by BW_Nuprin · · Score: 1

      Yes, I would love to see the OS X install methodology on more systems. I dunno what else to say, just that there are at least two people out there who think it's a good idea.

    4. Re:Applications Packages by croddy · · Score: 5, Insightful

      The reason Linux distributions have not been trembling to adopt the OS X style of package management, if you can call it that, is that it would be a poor fit for the Linux software ecosystem.

      The vast majority of software used on Linux systems is licensed under the GPL; what is not is almost always under another license permitting free redistribution. This gives Linux distributors great freedom in selecting and assembling a compatible collection of versions, tested and working with the same versions of dependent libraries. In a larger distribution (such as Gentoo, Debian, or Fedora), most of the software you will ever need is already a part of the OS -- you just need to use the built-in package management tools to summon it from the distributor's repository.

      OS X-style package management is best suited for a software ecosystem in which users draw software from a large number of heterogenous third-party sources, while the core OS and iLife suite are maintained and updated by Apple. A third-party distributor who wishes to distribute something that must link against a particular version of a library can include it in the application bundle, knowing that the exact version needed will be available. This can lead to many copies of the same libraries being installed, facilitating compatibility with applications that require different versions, but consuming (small amounts of) disk space unnecessarily and increasing the attack surface when multiple copies of an exploitable library are installed on the system. A system such as APT does not need to provide a facility for private copies of libraries, since it does all of the dependency computation, and all software in the repository is built and linked against the libraries in the repository.

      Certainly, once you have resigned yourself to visiting a third-party distributor's web page, manually downloading a binary package, and then manually installing the binary package, drag-and-drop installation is very convenient. But the Linux software ecosystem does not require this concession from the user -- the Linux distributor is free to provide a repository and tools for finding, installing, and updating software, without the need for manual installation.

    5. Re:Applications Packages by Ash-Fox · · Score: 2, Informative

      If only major linux distros would use Application Packages like OS X, the world would be a better place.
      Because you can't install RPMs on DEB syste.. Oh wait, you can.

      Most distributions let you convert&install/install other package formats, this article's problem is a non-issue in my opinion.

      And no, I don't think drag and drop is easier. I just want to type the application name I was to install and that's it. Not having to worry about updates etc.

      The OS X method:

      Find website of program
      Download program
      Open disk image that contains program
      Open applications folder
      Drag and drop the application folder from the disk image
      Create new icon in dock
      Have to recheck the site periodically to check for a update for a specific program

      Debian package system:
      sudo apt-get install firefox thunderbird seamonkey

      (you can choose multiple applications if you want even)

      or graphically,

      Open Adept
      Type in program name
      Click "request install" (you can choose multiple applications if you want even)
      click install

      Updates -- I wake up in the morning and see Adept telling me there are updates available for some of the software I use.
      --
      Change is certain; progress is not obligatory.
    6. Re:Applications Packages by AKAImBatman · · Score: 5, Insightful

      As does clicking on a checkbox. Seriously, I don't need it to be any easier.

      Unless the software you want isn't in the Synaptic repository. Then it's hell on earth for the average user. The only response they get from support and developers is, "Why would you want to use software that isn't in the repository?"

      Actually, that's not true. There are plenty of other fun responses:

      "You should compile it from source."
      "The vendor should spend his time getting his software added to our respository!"
      "Use RPMFind. I'm a developer and I've never had a problem installing binary packages on the distro I work on." (Conveniently ignoring that when something breaks, the "developer" fixes it himself.)

      Not that there's much point in harping on this again. I'll just get the same, "U R STUPID", "You need to try distro XYZ", and "Everything is in my distro's repository!" answers I've gotten before.

      Blinders on, and full speed ahead cap'n!
    7. Re:Applications Packages by SultanCemil · · Score: 1
      The trouble is, its *true*. I don't believe that this is inaccurate or irrelevant. The largest problem linux has is that there is no defined standard base. If I'm writing an application, I have no way to know that all target computers will have the correct libraries. Sure, dependencies exist and can be satisfied - if you want to go through dependency hell.

      What I'm trying to say is that Linux needs a standard library base that is cross-distro. That way a distro can claim to be "Linux Standard 12 Compatible" - and the user knows that it will work. Linux Standard 12 would of course mean you have to include certain libraries. This means drag and drop installation WOULD work.

      --
      Cemil.
    8. Re:Applications Packages by Climate+Shill · · Score: 1

      That's all very well if I want a package that's in the repository, but if I want one that isn't ? Or a version that's newer than the one in my distribution ? Then unix installation is sheer hell.

    9. Re:Applications Packages by Whiney+Mac+Fanboy · · Score: 1

      Waaaah! Waaah! Waaaah!

      Linux apps could be D&D install already - all they have to do is statically compile.

      Noone in the linux world wants OS X style bloat tho' (I mean, running FF, MS Office and Illustrator concurrently appears to require 4GB of ram unless you want an almost constant beach ball).

      --
      There are shills on slashdot. Apparently, I'm one of them.
    10. Re:Applications Packages by croddy · · Score: 1

      Forgive me, but are you trolling, or did you simply not think to search for linux standard base?

    11. Re:Applications Packages by Trelane · · Score: 1

      That's all very well if I want a package that's in the repository, but if I want one that isn't ? Or a version that's newer than the one in my distribution ?
      Then you do the same thing that you do on Mac or Windows. You download the package and build the package yourself. Often, there will be a package you can install on your system, but this need not be the case. Unless you're talking about proprietary software like Photoshop or something, in which case you do the same thing as in Windows--you run the installer. This is what InstallShield or Autopackage are for.

      Then unix installation is sheer hell.
      I don't see how it's unique to unix.
      --

      --
      Given enough personal experience, all stereotypes are shallow.
    12. Re:Applications Packages by Anonymous Coward · · Score: 1, Interesting

      like when I was trying to create a deb for personal use (and creating it the right way, not this checkinstall bs) I got hassled by ubuntu universe devs why do I want to create such a package and I should just be happy with the version they provide. I told them why (the version back then, and the one that still stands still doesnt support my HW, only the cvs version does, I understand why they dont include it, but I was merely asking for advice) and they ripped me apart telling me to sell my hardware or get my money back on it somehow or to just wait and stop bitching and be happy with what's in the repository.

      In the end the debian folks were much kinder, and helped me out.

    13. Re:Applications Packages by DoubleRing · · Score: 1

      Well, I'd have to say that with most software projects, they provide a makefile. Yes, I know that it's a little bit steeper of a learning curve, but come on, it's not THAT much more work. Now, if the user is not savvy enough to go through the make process (which is usually only 2 commands long), then I don't think that they should be installing that stuff anyways. Just think, the stuff that's in the repositories are the packages least likely to cause problems with the installation. I've found most everything I've ever wanted in the repositories. The stuff that's not in there usually shouldn't be there. The amount of hassle that I have with make pre-installation (library problems, etc.) is usually indicative of the amount of trouble I'll have post-installation. Once the package is massaged enough by the repo managers to fit, then it is both more accessible and less likely to cough up errors. I'd say that it's not so much the vendor's job to get into a repository so much as to provide a suitable makefile from which a user could install their program, and thus a base from which a repo manager could work.

      Personally, I think the repository system is brilliant. It sure beats running to the story to buy software, and being able to just randomly do a search for packages is great. I can do a search for "video editor," and it brings up Kino, Cinelerra, MPlayer, and a myriad of other things. That's how I found inkscape. One day, I needed a vector illustrator, and I did a search. You can't beat the convenience of that. It's a lot better that what you'd get if you went up to Wal Mart complaining they didn't have something. Their response would be, "Why would you want software that isn't in the store?" The thing is, most people don't even know software outside the store exists. They live in the Windows Bubble. But the Linuxen are different, which is what makes us harder to please. It's like when a doctor gets sick--it's hard for them to step back and become the patient again.

      --
      Before you die, you see DoubleRing...
    14. Re:Applications Packages by Overly+Critical+Guy · · Score: 2, Insightful

      OS X style bloat? How about Linux style bloat. If you run Firefox, OpenOffice, GIMP, and KIllustrator, that's four entire windowing libraries and widget sets loaded into memory including libraries from two different desktop environments.

      I love your evidence though. "Appears to require 4GB of ram." Right, dude. Right.

      --
      "Sufferin' succotash."
    15. Re:Applications Packages by Overly+Critical+Guy · · Score: 1

      It's not inaccurate or irrelevant to point to a better package solution that happens to be implemented in another UNIX operating system called OS X (and NeXTStep before it). Why isn't someone allowed to bring up that Linux hasn't caught onto a package implementation that's been around for 20 fucking years?

      --
      "Sufferin' succotash."
    16. Re:Applications Packages by KayosIII · · Score: 1

      One Word klik http://klik.atekon.de/ you have to install and set it up initially but after that it is easier than an OSX install

    17. Re:Applications Packages by jrockway · · Score: 2, Funny

      But wait, if you run Firefox, OpenOffice, GIMP, and KIllustrator on OS X, it requires *5* entire windowing libraries.

      --
      My other car is first.
    18. Re:Applications Packages by YGingras · · Score: 1

      What do you suggest? A distribution is nothing more than a set software repackaged so that they will work together. Most packages are nothing more than the compiled binaries and a machine parsable list of dependencies. But, many packages are hacked by the distro maintainers to ensure that they will work according to the distro guidelines. The job of the developper is to code, the job of the maintainer is to integrate and this is good.

      Distros are different because they have different target markets and different priorities. There are distros made to fit on a floppy, distros made for desktops, distros for server and there are several niche markets well served by their own distros. If a developper want to ensure that his code works well on all those environment, he will have to run them all. He shouldn't. He may well try a few popular systems and you can be sure that on his target market the README in his tarball will be accurate. Yes, that's not easy for the average user, thats the price that we pay for the flexibility of being able to make all those distros.

      I don't know how to solve the installation problem. So far, relying on distribution maintainers to do the integration is what works the best. There could be some sort of source package for a typical distro; in fact, there are a few of those. The problem, I think, is to define what is typical distro is.

    19. Re:Applications Packages by Climate+Shill · · Score: 1

      You download the package and build the package yourself. Building a package is almost exactly not what I mean by easy installation - and the fact that software authors so rarely provide packages on their websites suggests that they don't feel it's a trivial amount of work either.

      Then you do the same thing that you do on Mac or Windows. I don't think I've ever seen a Windows program that didn't run within a couple of mouse clicks.
    20. Re:Applications Packages by tonywestonuk · · Score: 1

      Have you ever used Application Packages?.... Its not just drag/drop install.... But drag drop copy/backup/ etc. For instance, the other day I needed a copy of Epson CD creator (it comes on the driver disk supplied with my R300, but this had long since disappeared), but since I had upgraded to a new Mac, this wasn't installed. Epson didn't want to help as they claimed this software was no longer supported, and no downloads exist for it on their website. In other words, I was buggered....

      HOWEVER, Finding an old backup from the old mac, I just mounted it, copied Epson CD creator over, and it WORKED. In any other scenario, using Win, or Linux, this would not have worked out this way.

      Why not include all the dependent libraries with the app anyhow? Disk space is well cheap, and there is nothing stopping a process moving/deleting duplicate libraries from the application when the system detects a new app in the apps folder, and invisibly copying them back to the application before copying the app elsewhere. Applications in OS x are as easy to manage as mp3's or jpegs... Why cant linux be like this?

    21. Re:Applications Packages by Braino420 · · Score: 1

      If only major linux distros would use Application Packages like OS X, the world would be a better place.

      Seriously, drag-n-drop installation rocks.
      While it may be a good option to have in some cases, how are you going to drag-n-drop with no gui? I personally love package management in the major linux distros (specifically apt in my case). I have a wide selection of apps to choose from, I can find them all in ONE centralized place, and I can update ALL of my apps with a simple "sudo apt-get upgrade". I find the situation completely satisfactory.
      --
      They call me the wookie man, I guess that's what I am
    22. Re:Applications Packages by SultanCemil · · Score: 1

      It was pseudo-subtle troll combined with an attempt at humour which (clearly) failed.

      --
      Cemil.
    23. Re:Applications Packages by SultanCemil · · Score: 1
      When you say "OS X style bloat" - I'm not sure what you mean at all. I have about a bazillion (metric) applications running right now on a machine without a ton of RAM and it performs beautifully. I haven't ever seen it swapping in fact. OO.org is the single biggest RAM hog, and on linux its even worse.

      I'm sorry but no one who says that OS X is bloated while implying that linux is not is sane. Sure, it is *possible* to run a lean-and-mean linux desktop but standard distros are *not* lean-and-mean and the software is just crap (in terms of bloat). Compare OO.org to Office and see. Also your suggestion of statically compiling would just lead to MORE bloat as every piece of software would come with a different version of a library linked in - defeating the purpose of having standard libraries.

      --
      Cemil.
    24. Re:Applications Packages by SultanCemil · · Score: 1
      How am I going to do drag-n-drop with no gui?

      Umm, how about cp -R myapp.app /Applications ? If you really want, I could include steps like the wget, diskutil mount but really, if you want command line, its just as doable. My point is that for the 95% of users who *don't* want to use the command line, satisfy dependencies, compile applications, etc, OS X style applications bundles are the go.

      --
      Cemil.
    25. Re:Applications Packages by MrZaius · · Score: 2, Interesting

      To put it all in perspective, on my 400mhz g3 q/196mb ram, OOo in Linux w/gnome runs at a comparable speed to neooffice in OSX.

    26. Re:Applications Packages by pandrijeczko · · Score: 1
      I've spent 25+ years working with computers but never once owned an Apple machine - best I've ever done is played with one occasionally.

      Apples might well be good machines for certain types of people who want ease of use and that's fine.

      But please do not make them sound like the "be all and end all" of computing because I personally have never found the justification to buy one - and bearing in mind that I'm surrounded at work and socially by hordes of computer users, I know of just one person who owns or uses a Mac. Sure, he likes it a lot and good luck to him but they're still a minority choice.

      --
      Gentoo Linux - another day, another USE flag.
    27. Re:Applications Packages by Americano · · Score: 1

      Red herring... the point he's trying to make is that including dependencies in the app so you don't have to track 90-odd dependencies independently. No GUI? Here's the equivalent of "drag & drop":

      $ cp app.tar /usr/local
      $ cd /usr/local
      $ tar -xf app.tar
      $ export PATH=/usr/local/bin:${PATH}
      $ app

      It's not necessarily a bad idea on a desktop system, and is certainly easily implemented via command line cp/mv rather than "drag & drop".

      I've worked with Fedora Core, Gentoo, and Ubuntu, and -- at least in the past -- I've been frustrated by package managers on Linux that either don't allow me to update to the latest/greatest because it's not in the repository, or that force me to stop using the package managers and begin installing by hand because I needed to upgrade a managed package to a newer version that wasn't in the repo, which then raised hell with all my dependency chains because I had to upgrade dependencies outside the tool, as well. It can be frustrating, and at this point, once I tend towards the "install minimal desktop functionality from the installer, build anything else you need from raw source after." It's possible that the dependency chains have become better managed, but I was frustrated by the slow rate of new versions being made available in the repository, and the problems I ran into as soon as I tried upgrading a previously managed package outside the manager.

    28. Re:Applications Packages by Anonymous Coward · · Score: 1, Insightful

      You make some good points, but then:

      Certainly, once you have resigned yourself to visiting a third-party distributor's web page, manually downloading a binary package, and then manually installing the binary package, drag-and-drop installation is very convenient. But the Linux software ecosystem does not require this concession from the user -- the Linux distributor is free to provide a repository and tools for finding, installing, and updating software, without the need for manual installation.

      Most people would not consider being able to download a program from the web and just run it a "concession".

      Many of the great innovations I've seen have been some variant of "this can fail in way X ... instead of pretending this is a rare case, admit that it's common, and design around that". Heck, open-source has been described as just that: "Open-source software has fewer bugs because it admits the possibility of bugs".

      Why do so many open-source system designers pretend that any program you will ever want to use will be in the distro's repository? It's not true today, and it will probably never be true. Pretending that it is will only serve to distance you from the needs of real people.

      I use Debian and apt is pretty neat (and RPM sounds decent too), but why can't we have a system where I can click on a "some-app.source" file on a web page, which contains source code and dependencies, and it automatically installs the deps, compiles the source, and installs that using my native packaging system (so it can check this same webpage for updates later)? Would that really kill you?

    29. Re:Applications Packages by Kjella · · Score: 1

      The vast majority of software used on Linux systems is licensed under the GPL; what is not is almost always under another license permitting free redistribution.

      Cause, meet effect. How easy is it for someone to create a closed-source application (Tool of the devil, I know) they charge money for (Anti-Christ! Burn!) and distribute it in a way that's easily installable on most linux systems? Most of the closed source software is there just to sell other things, they're not sustainable by themselves. Where is all the various shareware you see on Windows? Don't tell me everything is covered by FLOSS software, because it's not. Where are all the big commercial applications? Granted, many probably wouldn't come anyway but if you had an unified way to distribute to and charge the whole Linux user base using one system, then maybe.

      The current way is a great way if you're on an ideological crusade, and think that everything on Linux should be RMS/free or at least gratis. But if you think that there should be real competition between what you can get for free and what you can pay for, the current system is not good. Running everything through the distributions which don't deal with payment essentially amounts to protectionism of FLOSS software, as if it wasn't up to the competition. At this point the fanatics usually go "LALALA I can't hear you, what could commercial software possibly have to offer us?" and you just have to wonder what planet they're on. I mean, it's one thing to be proud of everything FLOSS offers and for free, it's another to go over the top and say "You couldn't buy software better than this". With no standard packaging and distros not handling payment, well they certainly make that happen. But perhaps not in the sense that you have a choice...

      --
      Live today, because you never know what tomorrow brings
    30. Re:Applications Packages by be-fan · · Score: 1

      Your example is wrong on two fronts:

      1) It's not terribly usual for GNOME users to use KDE apps, so you're down to 3 widget sets there.
      2) Firefox and OpenOffice define their own widget sets on every system they run on. If you use Camino and NeoOffice, there's still XUL and VCL under the hood.
      3) There is no way to get an OS X desktop with only one widget set either. Carbon and Cocoa are always there.

      --
      A deep unwavering belief is a sure sign you're missing something...
    31. Re:Applications Packages by donaldm · · Score: 1

      The problem here is what install mechanism is best? What works well for one may not be good enough or flexible enough for others. As many are aware there are many Linux distributions and each one has its installers that have their own advantages and disadvantages. I have always said that Mac's are excellent application machines while MS Windows is more general purpose (this is not to say this is best) because that is what most developers support, however Linux distributions give the user IMHO a greater degree of flexibility and freedom.

      Personally I like Fedora Core 6 and find the "yum" (this does download rpm packages) facility excellent in that you can access the main FC6 repos with a simple "yum update" command or if you need to install something (providing the repo has it) with "yum install package_name" with "package_name' being the package name you want (wild cards accepted). Of course RTFM does still apply, but for those that don't like the command line you can easily use the graphical interface to yum which allows you to use drag and drop.

      There are other sites (livna comes to mind) that have separate repos which can be very useful so you can specifically target that repo instead of going though all repos with "yum install --enablerepo=livna package_name". If I put on extra repos I normally prevent them from being used by default unless I explicitly require them. Again you have great flexibility and control but it is slightly more complex.

      With yum I can install or update thousands of packages and yum will find the dependencies for me and install them appropriately. This is very important to me if I install a new kernel since I have a Nvidia graphical card that requires updates tailor-made for the kernel version and the command "yum update --enablerepo=livna nvida*" does this.

      Still what works for me may not work for you, since I am very comfortable with the command line and I don't mind the odd Google search or RTFM if I find a problem. I also consider my machine every bit as functional (probably more so IMHO) as a Mac or MS Windows machine.

      --
      There ain't no such thing as proprietary standards only proprietary formats. Standards are by definition open.
    32. Re:Applications Packages by be-fan · · Score: 3, Interesting

      There are substantial deficiencies with OS X-style packages, which would only be amplified in the Linux world. In general, OS X packages have to bundle libraries that are not included by default in the OS. This leads to anywhere from a little to a lot of wasted disk space and memory. The problem is limited in OS X, because there is a standard set of frameworks Apple ships with, but this is not true on Linux. As a result, app bundles would have to include things like GNOME as well.

      --
      A deep unwavering belief is a sure sign you're missing something...
    33. Re:Applications Packages by Anonymous Coward · · Score: 1, Interesting

      Installing software that's not in the repository is hell on earth for a user?

      Pleeeeaase. Where else would I get up-to-date software, when the Ubuntu guys don't provide it?

      Seamonkey 1.1 installed just fine. Java 6 installed just fine. JEdit (dev version) installed just fine. Eclipse installed just fine. NetBeans (dev version) installed just fine.

      The only problem might be that many developers don't provide installers in addition to RPMs or DEBs. But that's really THEIR problem. A sensible developer would provide a general-purpose installer for any Linux.

    34. Re:Applications Packages by be-fan · · Score: 2, Interesting

      There is also another strength of package managers that the app-bundle system lacks. In OS X, apps will pester you to update them. Colloquy, which releases several times a month, gets really annoying in this regard. In OS X, apps have to do this because there is no way to update all apps automatically. A package-managed system doesn't have this problem.

      --
      A deep unwavering belief is a sure sign you're missing something...
    35. Re:Applications Packages by value_added · · Score: 2, Insightful
      OS X-style package management is best suited for a software ecosystem in which users draw software from a large number of heterogenous third-party sources, while the core OS and iLife suite are maintained and updated by Apple.

      Reading the above (which, incidentally, is little different than the traditional Windows ecosystem) raises the question whether this defines what end users demand and expect of package management, which is that they can install anything and everything when and how and from wherever they want.

      The article presents the issue as follows:

      Mike Hearn ... claims that the project did not gain enough popularity ... because of the dominating doctrine which states that it's the distributor who should be responsible for the whole operating system. It is kind of similar to another popular opinion: that the administrator (root) should be responsible for the whole machine, and all the administrative operations should be preformed from a separate root account. These kinds of centralized management systems fit to the server market, but they don't really reflect the desktop reality that well. On desktops, the administration is only one of the roles the user plays and waiting for half a year for a new version of an application is often unacceptable. It is often a decade in the free software world! So if the "desktop reality" conflicts with the "server reality", then there may be a problem. I'm inclined to believe that, ignoring the comfortable niche of OS X, the above is mostly rubbish and the problem lies in the desktop reality itself. For example, I doubt anyone could disagree that the prevalent desktop reality of the Windows ecosystem has led to an unending stream of security issues facilitated in part by the bad habits of their users who are encouraged to be just that, desktop users, and similarly encouraged to be oblivious to the underlying reality that administration is a fact of life, irrespective of patience, laziness, or knowledge.

      Personally, I don't see a problem with single or multiple centralised management systems, and I certainly don't see a problem with a root account. To say that what's good for the server is good for the desktop is simply redundant, ignoring the questionable premise that there exists such a distinction.

      People are free to choose a distribution based on their particular needs and preferences. Perhaps they need to be reminded from time to time of the tremendous effort made on their part by the maintainers and settle for a less than perfect or ideal world?
    36. Re:Applications Packages by jimicus · · Score: 1

      Any by requiring precisely nothing specific of the user, the net result is that almost every Linux distribution sooner rather than later requires a degree of knowledge because you've been given the hammer, nails, screwdriver, power drill, jigsaw, timber and plans and it's now your problem to build the house.

      But at least you're free to build the house however you like, using whatever materials you want, unlike with an Apple!

    37. Re:Applications Packages by tfeserver · · Score: 1

      Thats true only for new users: not for geeks.

    38. Re:Applications Packages by slux · · Score: 1

      Yes, but there are considerable benefits from package management also: one-click upgrades to everything ever installed, a easy place to find new software for any need, possibility to use shared libraries for everything that needs it etc.

      This is *wonderful* when all you need is neatly packaged and coming up with a magic new Windows or Mac-like application packaging format will certainly not stop the problem of not always having software readily packaged for your distribution on Linux. The secret to these working on all Windows/Mac machines is simply that they are all controlled by a single entity and you will never have that with GNU/Linux. Switching to the same formula will not really do much more than introduce new problems.

    39. Re:Applications Packages by taragui · · Score: 1

      Building a package is almost exactly not what I mean by easy installation - and the fact that software authors so rarely provide packages on their websites suggests that they don't feel it's a trivial amount of work either.

      I think you're missing the point. There are many reasons why developers may not wish to provide binary packages for different platforms; except for some traditional *NIX-style utilities, binaries tend to depend on the presence and version of a good many libraries and tools. Developers do not necessrily know which are available on every possible platform and distribution, which would be necessary for them to provide packages for them all; or even less have access to said for compiling. Most of the time they just limit themselves to the ones they're personally acquainted with or develop on.

      Now, the beauty of ./configure scripts is that you don't have to know too much about versions and locations either; you just throw an environment at them, and detection proceeds automagically. Instead of a single group of developers having to account for every possible configuration, it can be safely determined at compile-time. Typing ./configure && make && sudo make install is all it often takes. Of course, this isn't necessarily true for complex pieces of software (I shudder at the thought of compiling XFree86 again), but it is actually unusual that any of these not be available in prepackaged form.

      I don't think I've ever seen a Windows program that didn't run within a couple of mouse clicks.

      That may be true if all goes well, which is a fairly weighty assumption. I have seen my share of mispackaged MSIs, not to mention old-style applications that can only be installed with Administrator rights, yet refuse to run for any user other than the installer (a situation you cannot circumvent with Run As); fixing these installations is far more painful than compiling your average program from source, even if only because there is no guidance whatsoever as to what may be wrong (there are many software publishers out there that havent heard of install logs). Other installation packages are known to aggressively overwrite Registry settings (Norton Internet Security comes to mind).

      With that said, I am not advocating for source compilation as a general method for software distribution. I strongly support the Debian paradigm of having everything under the sun in their repository tree and doing away with inconsistencies. Except for portage, which is intended to address a wholly different situation, I fail to see what can actually be improved in that system.

      --
      Jesus saves. Real gods just upload their important stuff on ftp, and let the rest of the deities mirror it
    40. Re:Applications Packages by Braino420 · · Score: 1

      Actually, my post was not only in response to the op but also to the article (shocking I know). In the article, there is a link that addresses your EXACT concerns with the current mainstream package managers.

      --
      They call me the wookie man, I guess that's what I am
    41. Re:Applications Packages by cibyr · · Score: 1

      This is one of the reasons I like Gentoo (there are plenty of reasons not to like it) - since you build everything yourself anyway, installing something from sources is usually very easy because you already have the toolchain set up and ready to go. If there are some dependencies that you don't have, chances are that typing "emerge [your dependencies]" will fix that :)

      --
      It's not exactly rocket surgery.
    42. Re:Applications Packages by slux · · Score: 1

      And to further put it to perspective, on my 300MHz G3 iBook with 192MB NeoOffice was totally unusable and Ooo 1.x worked really well. When I upgraded to 2.x it was still better than Neo but also became pretty bad. However, most of the time OS X was a painfully slow since 192 seemed to really be too little for it while GNOME worked nicely.

      No-one really forces one to use QT and GTK apps simultaneously.

    43. Re:Applications Packages by cortana · · Score: 1

      Because you are fucked when one of the bundled libraries has a security vulnerability. You might as well statically link everything!

    44. Re:Applications Packages by Ash-Fox · · Score: 1

      That's all very well if I want a package that's in the repository, but if I want one that isn't ?
      Since you used the word 'package', we'll assume you meant the software in question has already been packaged in some form. You can...

      add the repository that has it.

      or

      add the source repository that has it and apt-build install it

      If there are no repositories (would be unusual if they already went to the step of making the deb), open the deb (or rpm) file downloaded from the site and the package manager should attempt to install it.

      Or a version that's newer than the one in my distribution ?
      See above

      Then unix installation is sheer hell.
      I don't think Debian based packaging is a Unix thing.
      --
      Change is certain; progress is not obligatory.
    45. Re:Applications Packages by Braino420 · · Score: 1

      I would have actually loved for you to write out all of the steps, wget and all, to get your app installed with no gui. All that rubbish instead of a simple "apt-get install foo". Instead of pulling some random percentage out my ass, I can tell you that the _majority_ of linux machines out there aren't run with pretty gui interfaces. If you like the way OS X does it, stick with OS X, it has its place, but for the majority of linux machines out there, it isn't preferable.

      --
      They call me the wookie man, I guess that's what I am
    46. Re:Applications Packages by Whiney+Mac+Fanboy · · Score: 1

      But wait, if you run Firefox, OpenOffice, GIMP, and KIllustrator on OS X, it requires *5* entire windowing libraries.

      Hahahahaha, Indeed :-)

      But, you should make that six libraries! (You forgot cocoa).

      --
      There are shills on slashdot. Apparently, I'm one of them.
    47. Re:Applications Packages by Whiney+Mac+Fanboy · · Score: 1

      Are you on crack? You've clearly never used linux.

      that's four entire windowing libraries and widget sets loaded into memory

      Four windowing libraries/widgets sets? Care to name them?

      including libraries from two different desktop environments.

      All the apps you mention are not tied to a "desktop environment". You don't need libraries from any desktop environments to run them (were you dropped on your head as a child?)

      --
      There are shills on slashdot. Apparently, I'm one of them.
    48. Re:Applications Packages by theCoder · · Score: 1

      Saying "copy this directory to your hard drive -- it contains all the apps and libraries you will need" may be a fine way of installing software. But it's no more a package management system than saying "run this setup.exe -- it will copy all the apps and libraries you will need". Package management involves managing packages and (implicitly) their dependencies.

      There's certainly no reason why someone couldn't ship software for Linux in the OS X way. Just have a shell script that sets the PATH, LD_LIBRARY_PATH, etc to the application's directory (maybe plus a "bin" or a "lib" where necessary) and then run the main app. Mozilla has been doing that sort of thing for a while, though most people choose to install their distro's version of the software. There are disadvantages, however, as be-fan pointed out. Either the program assumes certain libraries are installed (like Gnome or KDE) or it ships them with it (causing bloat and perhaps other incompatibilities).

      Package management is something that Linux is superior in compared to most proprietary operating systems like Windows and OS X. There are still problems and ways to make it better, but no one who uses Linux really wants to go back to the "setup.exe" way of installing applications.

      --
      "Save the whales, feed the hungry, free the mallocs" -- author unknown
    49. Re:Applications Packages by supermank17 · · Score: 1

      Actually, I think he might be right. Firefox has its own toolkit (XUL I think), OpenOffice has its own toolkit, Gimp uses GTK, and KIllustrator uses QT. And I'm pretty sure that KIllustrator at least depends on KDE libraries to run.

    50. Re:Applications Packages by Blakey+Rat · · Score: 1

      A third-party distributor who wishes to distribute something that must link against a particular version of a library can include it in the application bundle, knowing that the exact version needed will be available. This can lead to many copies of the same libraries being installed, facilitating compatibility with applications that require different versions, but consuming (small amounts of) disk space unnecessarily and increasing the attack surface when multiple copies of an exploitable library are installed on the system ... so? Macintosh has always operated this way, and it's always had a reputation for quality software, and it hasn't had a security problem in a decade. Sure it takes up a little bit of extra disk space, but you completely and forever eliminate the problem of DLL-hell (Macintosh has never had this problem), and if KDE/GNOME are worth their salt they should include 90% of the shared libraries applications actually need to use anyway.

      A system such as APT does not need to provide a facility for private copies of libraries, since it does all of the dependency computation, and all software in the repository is built and linked against the libraries in the repository.

      It also frequently fails, and is incapable of detecting a user's manual upgrading of some component. It also takes ten times longer than it should to do ANYTHING, as the 50k icon maker program requires downloading and compiling 20 different libraries from 14 projects. If the icon program was 150k, but included everything it needed in one file, things would be a lot easier.

      But the Linux software ecosystem does not require this concession from the user -- the Linux distributor is free to provide a repository and tools for finding, installing, and updating software, without the need for manual installation.

      What stops the distro maker from setting up their own website, or something like a package manager, to install the software from? (Hell, even Apple does this: http://www.apple.com/downloads/macosx/ )

      The real problem is that Apple's package system is already well-established, has a reputation as being easy to use, and Linux users hate things that are easy for normal people to use. They'd rather be the "high priesthood of technology" and keep only "worthy" people on their OS. (Of course, they'll never admit this. But take one look at GIMP and it's obvious.)

    51. Re:Applications Packages by Trelane · · Score: 1

      Building a package is almost exactly not what I mean by easy installation
      I never claimed that it was. Building a package from source by yourself is non-trivial for the casual user. This is true on Linux, *BSD, MacOS, and Windows.

      he fact that software authors so rarely provide packages on their websites suggests that they don't feel it's a trivial amount of work either.
      Then they should provide an installer, like the rest of the world--if they don't want to take advantage of the distribution system. This is true of just about any proprietary piece of software.

      I don't think I've ever seen a Windows program that didn't run within a couple of mouse clicks.
      I've not seen a Linux installer that didn't run within a couple of mouse clicks--provided the developer was using an installer. I would susggest that the same thing is true of Windows, too, but your Windows experience is limited to those pieces of software that have a point-n-click installer, while your Linux experience does not. Just because you can build from source does not mean that you must.
      --

      --
      Given enough personal experience, all stereotypes are shallow.
    52. Re:Applications Packages by Jesus_666 · · Score: 1

      Plus, if the installation of the software is somewhat straightforward so is creating a custom ebuild. From then on installing a new version is no more complex than renaming and redigesting the ebuild and running emerge -u [packagename]. While that's non-trivial it is not very complicated.

      --
      USE HOT GRITS WITH STATUE OF NATALIE PORTMAN (NAKED AND PETRIFIED)
    53. Re:Applications Packages by Anonymous Coward · · Score: 0

      The installation program could compare the files in other already installed packages with those in the new package. If a duplicate is found, then a hard link can be created for the library instead of installing duplicate files. The filesystem would be responsible for keeping the library available until the last one of the programs using it is deleted. The process of comparing files can be made very efficient by storing the hashes of every installed file and comparing the hashes first in the way 'fdupes' does.

    54. Re:Applications Packages by Overly+Critical+Guy · · Score: 1

      1.) If we're going to remove things from the list because you deem them "not terribly useful," why can't we do the same on OS X?
      2.) I don't get your point here. Camino and NeoOffice using XUL and VCL is somehow different from FireFox and OpenOffice defining their own widget sets?
      3.) Cocoa and Carbon call the same widget APIs (on top of the same foundation, Core Foundation). A lot of Cocoa's API is Objective-C code wrapping standard Carbon functions, like application menus.

      --
      "Sufferin' succotash."
    55. Re:Applications Packages by Ambassador+Kosh · · Score: 1

      You could look at how opera does it. They provide packages for dang near everything and they even provide repositories so I can have my system use that and always have the most updated version of opera.

      --
      Computer modeling for biotech drug manufacturing is HARD! :)
    56. Re:Applications Packages by ElleyKitten · · Score: 2, Insightful

      Cause, meet effect. How easy is it for someone to create a closed-source application (Tool of the devil, I know) they charge money for (Anti-Christ! Burn!) and distribute it in a way that's easily installable on most linux systems?
      Stick a deb and an rpm on a CD. Charge for the CD. You could also put it in a commercial repository. Linspire's CNR will soon be available for all the major distros, and it handles payment.
      --
      "What is Internet Explorer 7? Are you saying we can't access the normal internet?" - I love tech support. Really.
    57. Re:Applications Packages by bcrowell · · Score: 2, Insightful

      The reason Linux distributions have not been trembling to adopt the OS X style of package management, if you can call it that, is that it would be a poor fit for the Linux software ecosystem.
      In addition to the reasons you mention, there are at least two other reasons why it's a poor fit to Linux.

      One reason is that the typical Linux user is running 90+% OSS, while the typical Mac user is running 90+% proprietary software. The individuals and organizations distributing OSS are generally giving it away for free on the internet (although of course some people do pay money for free-as-in-speech software); since they don't have a revenue stream from the software itself, they have to keep their bandwidth costs low, and that means they don't want to serve up a 30 Mb binary, of which 28 Mb is someone else's libraries. Also, users who are downloading OSS don't want to download 30 Mb when they could download 2 Mb.

      The other reason has to do with security. The standard Linux security model is that when a buffer overflow is found in a library, you just update the library, and the problem is solved. That doesn't work with statically linked binaries.

    58. Re:Applications Packages by jmodule · · Score: 1

      Excellent post! If I had mod points...

      With apt I can add a link to my sources list and include anyone's program in the package manager. It could be made a little easier to add such a link, but the ability is there.

      I know it is a little harder on the developer's end. I've made a debian package before, but while it wasn't easy, I succeeded where I failed with RPM.

      --
      The jModule
    59. Re:Applications Packages by Kashif+Shaikh · · Score: 1

      "In general, OS X packages have to bundle libraries that are not included by default in the OS. This leads to anywhere from a little to a lot of wasted disk space and memory."

      First point, lots of people of have plenty of disk space...you can buy 500G hd under $300. Second, the total amount of disk space used by all of your applications (OS, msoffice, itunes, etc) is going to be 10G. Most of the space will be eaten up by your endless archive of pictures, movies, music, and porn. My windows OS, itunes, msn messenger, yahoo messenger, firefox, msoffice, nero, azureus + another 10 or so small shitty programs take up a mesealy 5.40GB of space.

      Finally how many programs do you have that ship with custom libraries? And even if they ship with 3rd party libraries, as long as all other applications ship with the same library, the OS should load only a single instance of that library.

    60. Re:Applications Packages by Tacvek · · Score: 1

      Have you ever used Application Packages?.... Its not just drag/drop install.... But drag drop copy/backup/ etc. For instance, the other day I needed a copy of Epson CD creator (it comes on the driver disk supplied with my R300, but this had long since disappeared), but since I had upgraded to a new Mac, this wasn't installed. Epson didn't want to help as they claimed this software was no longer supported, and no downloads exist for it on their website. In other words, I was buggered....

      HOWEVER, Finding an old backup from the old mac, I just mounted it, copied Epson CD creator over, and it WORKED. In any other scenario, using Win, or Linux, this would not have worked out this way.

      Why not include all the dependent libraries with the app anyhow? Disk space is well cheap, and there is nothing stopping a process moving/deleting duplicate libraries from the application when the system detects a new app in the apps folder, and invisibly copying them back to the application before copying the app elsewhere. Applications in OS x are as easy to manage as mp3's or jpegs... Why cant linux be like this?

      As a previous replier points out, this is roughly equivalent to statically linking libraries, rather than using shared libraries. It has a few downsides: larger packages (can be a pain especially if bandwidth is limited for some reason), and problems with security vulnerabilities in a library.

      If one is willing to concede that a larger package size is a reasonable price to pay for ease-of-use, then I believe the second problem can be alleviated. The idea: since Application Packages are just folders (marked as bundles, and/or having a magic file extension) it is entirely possible for a Package to contain another Package. So we introduce the idea of a Library Package. These would live in /Libraries/. An application would include the needed Library Packages inside it. When the application is run, the It (or the OS) checks that needed Library Packages already exist in /Libraries/, and that the versions in the Application Package are not newer than those in /Libraries/. The Library Packages in the Application Package are then extracted to /Libraries/ as needed. This helps with the security, as if a Library Package is updated (by whatever means, a Library package could even be installed by drag-and-drop, much like Application Packages) all Application Packages that use it benefit. One potential problem is that this sort-of breaks drag-and-drop uninstall. One could easily see /Libraries/ filling up with unused cruft.

      Theoretically, Mac Application packages can do this now, although the auto-installing of a Library Package might violate some Apple guideline.

      --
      Stylish sheet to fix many problems in Slashdot's D3: https://gist.github.com/801524
    61. Re:Applications Packages by tonywestonuk · · Score: 1

      Why not just keep the libraries in the application package?.... On the mac, the OS knows about the libraries contained within application packages, and if a newer version exists within an app, than exists within /library/, then it will start using that library for ALL apps that need it, not just the app that contained the library. check out this ars review of mac application packages: http://arstechnica.com/reviews/2q00/macos-x-dp4/ma cos-x-dp4-2.html

    62. Re:Applications Packages by be-fan · · Score: 1

      1) "Usual", not "useful". It's like how it's not "usual" for OS X users to use Java apps, so it's not really fair to throw that in there.

      2) You're missing the point. FireFox and OpenOffice use a custom toolkit on every platform. So they cancel out in the equation here.

      3) No they don't. Core Foundation is a very low level infrastructure library, not really a part of the toolkit. Both are being CF-ized, but that doesn't amount to much. Cocoa and Carbon are joined much lower than the widget level. As of 10.4, they're joined (mostly) at the HIView layer, which is conceptually a little bit higher up than X11 (an HIView "view" roughly corresponds to a nested X11 window, with a bit more functionality). Above that, they're still independent toolkits, with independent widgets (aside from window-level widgets like menus, dialogs, etc), independent behaviors, etc.

      You have to keep in mind that Cocoa and Carbon were originally completely separate toolkits. The former is OpenStep, while the latter is derived from the Quicktime for Windows portability layer. The former was built on DPS, and migrated to Quartz, while the latter was built on QuickDraw. Apple has been gradually been merging them from the bottom-up. Eventually, both will just be API wrappers over HIView/HIToolbox/Quartz, but that's some time away yet.

      --
      A deep unwavering belief is a sure sign you're missing something...
    63. Re:Applications Packages by be-fan · · Score: 1

      It's not the disk space, it's the memory usage. Loading only a single instance of a library would work, but if it was an automated system, you'd have to be conservative and basically only perform that optimization when the libraries were bit-for-bit identical. Without the organizational structure provided by packagers, it'd be very unlikely that this would ever be the case, since even changing the compiler flags slightly would create a separate library. And this would apply to almost every library, because in the Linux world, most libraries are third party libraries. It's not like OS X or Windows, where one company develops the whole stack.

      --
      A deep unwavering belief is a sure sign you're missing something...
    64. Re:Applications Packages by Sithgunner · · Score: 1

      Since when did console shell had the ability to 'drag-n-drop'?
      Debian or Gentoo would certainly be in trouble to install their X to start with if they had to install everything 'drag-n-drop'.

      That's the difference about Windows/Mac vs Linux, former always comes with a default GUI, Linux doesn't all the time, especially under server use, no X is even used.

  3. The five ways by Harmonious+Botch · · Score: 3, Informative

    For those who don't TFA: There are currently at least 5 popular ways of doing it:
    1) Installing directly from source code,
    2) Ports-based installation (where the source packages are held in a repository and can be automatically downloaded, compiled and installed), like BSDs ports of Gentoo's portage,
    3) Installing from distribution-specific packages like different versions of RPM, DEB, TGZ, and other packaging formats,
    4) Installing from distribution-independent binaries (most proprietary software is delivered this way),
    5) Using another distribution-independent system like autopackage, zero-install or klik -- none of them gained a significant market share so far.

    1. Re:The five ways by rm999 · · Score: 1

      It seems to me that this way is the best method for 90% of people (I'm a Linux n00b):
      4) Installing from distribution-independent binaries (most proprietary software is delivered this way),

      I apologize if the answer to this is obvious, but why isn't everything packaged that way?

    2. Re:The five ways by Nasarius · · Score: 1

      5) Using another distribution-independent system like autopackage, zero-install or klik -- none of them gained a significant market share so far.
      There are very good reasons why autopackage hasn't been accepted. It's hopelessly broken. Anyway, asking for one unified package format is like asking for exactly one Linux distro; it betrays a fundamental misunderstanding of the OSS community.
      --
      LOAD "SIG",8,1
    3. Re:The five ways by CaptnMArk · · Score: 1

      Installation must NOT involve any execution of the code from the package.

      If it does it is likely that uninstalls and upgrades will not work reliably.

    4. Re:The five ways by Anonymous Coward · · Score: 0

      2) Ports-based installation (where the source packages are held in a repository and can be automatically downloaded, compiled and installed), like BSDs ports of Gentoo's portage,

      BSD ports where first Gentoo's portage is the copycat

    5. Re:The five ways by cortana · · Score: 1

      It's impossible to implement upgrades cleanly without reimplementing half of dpkg. Also you have the usual problem that you must ship a private copy of all the libraries you want to use, etc.

    6. Re:The five ways by temcat · · Score: 1

      Anyway, asking for one unified package format is like asking for exactly one Linux distro

      Yeah sure, because God forbid we could have more than one package installation APIs, one of which would be compatible between distros.

    7. Re:The five ways by donscarletti · · Score: 1

      Your problem isn't that you are a Linux n00b but because you are an experienced Windows user. In Windows you need to find out what program you want, then you have to download it, then you have to install it, then you have to make sure that you keep it updated. In Linux (at least in most distros these days) you search for a name or purpose in a package manager, tell it to install and that's it. It will automatically download and install what you need and keep it up-to-date for security, functionality and compatibility. What could suit people (especially n00bs) more than one click system administration? Every tool I want (barring some very obscure developer tools) can be found on ubuntu's graphical package manager, it's awesome.

      Just because you're used to something in Windows doesn't make it the best or even the natural method.

      --
      When Argumentum ad Hominem falls short, try Argumentum ad Matrem
    8. Re:The five ways by temcat · · Score: 1

      Code execution has nothing to do with distro independence.

    9. Re:The five ways by temcat · · Score: 1

      Again - the wrong assumption that every app you need (or, for that matter, version of the app that you need) is in the repositories, and if it isn't (or can't be), then in fact you don't need it.

    10. Re:The five ways by Narishma · · Score: 1

      I think it's a typo in the article. He probably wanted to say "like BSD's ports or Gentoo's portage".

      --
      Mada mada dane.
    11. Re:The five ways by rm999 · · Score: 1

      "Just because you're used to something in Windows doesn't make it the best or even the natural method."

      Sorry, but I have used linux enough to know that the current system is no better than Windows for a lay user. Yeah, I am pretty advanced in Windows, but it is really damn easy to use for just about everybody.

      "In Windows you need to find out what program you want, then you have to download it, then you have to install it, then you have to make sure that you keep it updated"

      I fail to see how anything could possibly be different. Does Linux figure out what programs you want for you? ;)

  4. simple by jjeffries · · Score: 1

    I prefer a discreet brown paper bag...

  5. Nonissue by eklitzke · · Score: 1, Insightful

    The diversity of packaging formats is definitely a nonissue, because EVERYONE has the source code. Any software that is even moderately popular will be packaged by volunteers. If I need some software that isn't already packaged for me, I grab the source code and compile it. If it's something I plan on sharing with other people, I'll write a spec file and distribute the RPM I build.

    I understand that it would perhaps be more optimal if there was a single package format, but that just isn't going to happen. Debian based distros have an enormous time investment in the .deb format, RPM distros have a huge investment in the .rpm format. Likewise for Gentoo, Arch, Slack, and all the other distros with their own formats. There are legitimate reasons for sticking to native formats because of distributions' build infrastructures and installation backends. As long as the source code is available, everyone will be able to install your software, and everyone will be able to use the format of their preference.

    --
    #include ".signature"
    1. Re:Nonissue by rsmith-mac · · Score: 4, Insightful

      I understand that it would perhaps be more optimal if there was a single package format, but that just isn't going to happen

      Then realize you're basically accepting that Linux will never make a significant dent in the Microsoft+Apple consumer desktop market. You may be able to compile the source code, the rest of us either don't know or don't care. Either Linux is going to be a OS for users, or a OS for geeks. It can't be both because geeks will try to escape a OS too user-centric, and users will escape a OS that resembles the inconsistency caused by groups of splintered geeks.

    2. Re:Nonissue by oberondarksoul · · Score: 2, Insightful

      The diversity of packaging formats is definitely a nonissue, because EVERYONE has the source code... If I need some software that isn't already packaged for me, I grab the source code and compile it.

      Most users don't know what compiling software is, let alone how to do it. While having the source available is absolutely a good thing, there needs to be an easier way for new Linux users to install software. With so many different formats, some specific to some distributions, some to others, and so on, it's almost impossible to keep track - if Linux is to gain more share on the desktop it needs to be more accommodating to new users, and the current situation frankly isn't.

      --
      And tomorrow the stock exchange will be the human race
    3. Re:Nonissue by dotgain · · Score: 1
      The diversity of packaging formats is definitely a nonissue, because EVERYONE has the source code.

      ...for open-source software, yes. Say I want Adobe Acrobat Reader (OK, I most certainly do not, but just say..).
      Most of the time I can find an RPM, and rpm2tgz hasn't let me down yet.

    4. Re:Nonissue by spitzak · · Score: 1

      Though I don't agree with him, he quite clearly said he believed people who know how to compile the code would compile any popular program for each package format. He did not say that everybody would compile from source. Read a little more carefully next time.

    5. Re:Nonissue by bigstrat2003 · · Score: 1

      It's not a non-issue, because it keeps anyone who's new, or isn't sure what they're doing (like my parents, although they don't use Linux so this doesn't apply to them), won't know what to do. Are you seriously suggesting that people without technical knowledge go and compile the source themselves? Or that they should be able to figure out which version they need? I hate to be the one to point this out, but it won't matter if you explicitly label it according to which distro a format goes to, because to the uninitiated, Linux is Linux is Linux. Yes, Linux isn't an OS for the faint of heart, but if we truly believe in its superiority, we need to make it as accessible as possible to those without any technical knowledge.

      --
      "16MB (fuck off, MiB fascists)" - The Mighty Buzzard
    6. Re:Nonissue by croddy · · Score: 1, Interesting

      You may want to read this excellent essay, entitled Linux is not Windows. I think it will offer you some valuable perspective on the issues you're addressing.

    7. Re:Nonissue by TheDugong · · Score: 1

      "if we truly believe in its superiority, we need to make it as accessible as possible to those without any technical knowledge."

      So for something to be superior it has to pander to the LCD?

    8. Re:Nonissue by bigstrat2003 · · Score: 1

      Not at all, but if it's superior we should want to spread it as much as possible (well, unless you hate other people and wish an inferior product upon them... and that's fair, some of those other humans are jerks ;)). To spread it as far as possible, we need to make it accessible. That doesn't necessarily mean dumbing it down... it means ensuring that basic functionality is easily understood by all, while still retaining advanced functionality for those who choose to take advantage of it.

      --
      "16MB (fuck off, MiB fascists)" - The Mighty Buzzard
    9. Re:Nonissue by melikamp · · Score: 1

      Who rated this insightful? What does this have to do with "making a dent in the market"? Nothing prevents a hardware vendor from choosing a distro and sticking with it. Who cares if there are 12 other distros out there? The customer wants Firefox and OO to run, and they will run. GNU/Linux already has the best packaging system ever for an inexperienced user (deb), and any vendor is free to support it, or to relegate the support to a specialist company.

    10. Re:Nonissue by Lord+Kano · · Score: 2, Insightful

      Either Linux is going to be a OS for users, or a OS for geeks.

      Exactamundo!

      Maybe this makes me a heretic, but I don't think that Linux should ever try to become a mainstream user OS. A part of the allure of linux is that it is hard. The learning curve makes users feel like they've achieved something by becoming proficient.

      If you made a distro, how would you prefer to spend your time? Would you rather deal with "XYZ_lib_devel is out of date, we need a package for the new version." or "How do I get AIM, ICQ and Yahoo messenger to work?", "WTF is this GIMP thing? Is it like pulp fiction?" and "How do I install MS Office on this"?

      LK

      --
      "Hi. This is my friend, Jack Shit, and you don't know him." - Lord Kano
    11. Re:Nonissue by ady1 · · Score: 1

      Not really. It can be both at the same time. However it requires a bunch of geeks to sit together and make it usable for end users. Might not happen as fast as people want it to.

    12. Re:Nonissue by pandrijeczko · · Score: 1
      Not at all, but if it's superior we should want to spread it as much as possible.

      Why? If my 14-year-old niece is perfectly happy doing her homework in MS Word on a Windows PC, why do I need to force OpenOffice down her throat?

      OO will do everything she would need for her homework but the fact is she's using a tool she's accustomed to that gets the job she needs doing done at the speed she needs to do it in.

      If she comes and asks her old uncle about Linux, or has a problem that can be solved by Linux rather than using a pirated Windows application, then I'll happily show her how to use it.

      But otherwise, she's using her PC as a tool to get a job done and she's happy with it - leave her to it.

      --
      Gentoo Linux - another day, another USE flag.
    13. Re:Nonissue by zzatz · · Score: 5, Insightful

      "...never make a significant dent in the Microsoft+Apple consumer desktop market."

      Linux will never make a significant dent in the Microsoft+Apple market by doing the same things the same way as Microsoft and Apple.

      Look at markets where Linux has succeeded, such as servers and embedded systems. Linux succeeds *because* it doesn't follow the Microsoft license model, the Microsoft development model, the Microsoft business model, and so on. You can't win if you play by Microsoft rules.

      Linux can be, and is, an OS for users. It isn't an OS for third party closed source binary distribution. Don't read that as non-commercial; commercial software was distributed in source form before Microsoft and will be again. Distribution in binary form makes sense for games and art, but not for general purpose computing. The value of doing things in software rather than in hardware is that software is malleable. But you need the source to realize the full value; binary distribution removes value.

      So yes, Linux will not make a significant dent in the Microsoft+Apple consumer desktop market, if that means the closed binary sales market. If Microsoft played in the NFL, they'd be the Super Bowl winning Colts. But the Colts will never win the World Cup, which is worth more. Don't complain about Linux not hiring a bigger front line when the game Linux is playing is soccer, and doing rather well at it.

    14. Re:Nonissue by HBI · · Score: 2, Insightful

      Not very popular around here, apparently, but i'd much rather it stay a geek OS.

      It's nicer that way.

      --
      HBI's Law: Frequency of calling others Nazis is directly correlated with the likelihood of the accuser being Communist.
    15. Re:Nonissue by TheDugong · · Score: 1

      OO and pretty dresses with the money daddy saves, or word?

    16. Re:Nonissue by pedestrian+crossing · · Score: 1

      But the flip side of this is that if something on your system becomes b0rked, with Linux there is -always- a way to fix it. In the Windows world, the lack of transparency makes troubleshooting something of a black art, to say the least. The allure of Linux isn't that it is hard, it's that it is transparent.

      Also, can we get over the GIMP thing? It's called the GIMP, it will always be called the GIMP, if what it's called is the biggest problem you have, then I guess you are running out of problems.

      How do I install MS Office? You use crossover office if you are really so frigging desperate to run MS Office. But that is a square peg in a round hole...

      The bottom line is that Linux is not Windows. Until you get that through your head, you are better off staying with Windows.

      Really, your objections are so petty. You completely overlook the real *long-term* advantages of using an OS and a packaging system that is actually maintainable.

      --
      A house divided against itself cannot stand.
    17. Re:Nonissue by Anonymous Coward · · Score: 0

      That's not really the issue.
      And the standard catch-all FOSS "you have the source, build it yourself" reply isn't the answer.

      You shouldn't have to default to building the source (the option should, however, always be availible, mind you), the packages should be installable and managable in a convenient, non time-consuming manner, accross the board.

      A universal package format would indeed be optimal, I'dreckon it'd be easier to create one of those, than it would be to modify all the existing ones to interoperate nicely. A new format wouldn't even need to supplant the existing ones, it just needs to be supported, and leave the decision of which to use, to the user.

    18. Re:Nonissue by archen · · Score: 1

      I have similar feelings. Not so much that I want it to be a geek OS, but I want Linux to cater to ME, not some other bloke's grandmother. You know it's like people are running this rat race to become a MS clone at the end of the tunnel. Like all of the trial and work of the people who work on free software eventually culminates in a pile of junk the geeks that made it don't even want to use.

      I couldn't care less if Linux becomes a consumer grade OS, as long as it always improves things for me.

    19. Re:Nonissue by CuteAlien · · Score: 1

      > Distribution in binary form makes sense for games and art, but not for general purpose computing.

      You just described the 90% of the Desktopmarket for Home-PC's which are currently out of reach for linux.

    20. Re:Nonissue by vadim_t · · Score: 1

      Which is just fine, if you want Windows you know where to find it.

      You seem to miss an important point somewhat however: Normal users don't choose to run Windows as much as they go with the default, or use whatever the friendly geek installs on their box.

      In my case, I simply refuse to do any Windows support at all. There are no Office installs in my home, and if somebody wanted Office, I'd tell them "Sure, go and buy XP and Office", and then figure out how to set it up, because I'm just not going to touch it. So all documents still get written in KWord.

      Suddenly, once I'm not offering any assistance for Windows, using Linux becomes a lot easier.

    21. Re:Nonissue by Slithe · · Score: 1

      users will escape a OS that resembles the inconsistency caused by groups of splintered geeks. Even geeks do that on occasion. Why do the Ruby, Perl, and Python communities seem to be much more popular than the Lisp community?
      --
      ---- "XML is like violence. If it doesn't fix the problem, you aren't using enough."
    22. Re:Nonissue by Panzergheist · · Score: 1

      Of course, you and the GP are both missing the larger picture. You assume that packages that are popular to those with the skills to compile source are the same packages that will be popular with Joe User. That is not always the case, nor should you assume that all packages would or should have the source available.

    23. Re:Nonissue by zzatz · · Score: 1

      Yes, and I also described the market for prerecorded casette tapes.

      At one time, 78 RPM phonograph records owned the market, then LPs, then 8-track tapes, then casettes. But digital storage of music has overwhelming advantages over analog storage, so the switch was on. The companies who succeeded with analog music were able to transition to digital storage - the CD - while keeping the same distribution and business model. Companies who adapted to shifts in analog storage technology also adapted to the shift to digital storage.

      But the Internet allows digital distribution, and that shows signs of causing radical changes in the music business. The transitions between storage technologies certainly seemed significant to the record companies and retailers, but they pale in comparison to the changes due to new distribution technology. Digital distribution, of course, depends on digital storage. It is the combination of the two changes that shows signs of overturning the traditional business model.

      Microsoft succeeded because they were in the right place at the right time to take advantage of commodity hardware. By selling to all OEMs, they created a market for quasi-commodity software. A commodity is a product which is available from multiple suppliers and each supplier's product may be freely substituted for that from the other suppliers. In the DOS days, a computer/OS bundle looked to the end user like a commodity; the cost of the software was a fraction of the overall price, and one bundle could be replaced by a bundle from another supplier. The fact that the OS was sole-source was hidden by the fact that was available to, and from, all OEMs.

      But the cost of the hardware has dropped so far that the cost of the software can no longer be hidden. Also, Microsoft no longer offers a neutral platform for competing application vendors; they have taken over most of the application market themselves. Just as proprietary hardware has been largely displaced by commodity hardware, there is an opportunity for commodity software to displace proprietary software.

      The Internet has enabled a new method of software development, one which favors software as a commodity. It is a method that Microsoft cannot take advantage of, because it conflicts with their business model. Microsoft ruled when distribution of software was difficult, and distribution in source form was impractical. Now, distribution in source form costs so little that many don't even bother to measure it. The Internet has changed software development, and it has changed software distribution. Software is becoming a commodity. For those areas most closely related to the Internet, it already is: email clients and servers, web browsers and servers, file servers, routing, etc. The rest may take a decade or so, but software will become a commodity.

      Microsoft is huge, and won't disappear overnight, if ever. But if you think that a 90% market share is permanent, you are ignoring history.

      There will not be another Microsoft. Microsoft will be displaced by something completely unlike Microsoft. DEC owned the minicomputer market, and they were not displaced by a better VAX, a better VMS. The entire propietary minicomputer market itself, not just DEC, was displaced by commodity personal computers and commodity servers. The entire proprietary desktop market will be displaced, too. The only question is when, not if.

      It is a huge, huge mistake to think that Linux should be like Windows. People who want Windows use Windows. People who run Windows applications run Windows. They'll drop Windows when they realize that they no longer need it, when they no longer run closed proprietary software. They won't switch to Linux when Adobe ports Photoshop, they'll switch when they stop using Photoshop. For some. that's already happened. For others, it may not happen for years.

      Closed applications belong on closed platforms. Open applications belong on open platforms. Mixing open and closed provides the benefits of neither and the drawbacks of both.

    24. Re:Nonissue by pandrijeczko · · Score: 1
      In this case, neither.

      Word came with MS Works that came free with her PC.

      --
      Gentoo Linux - another day, another USE flag.
    25. Re:Nonissue by VENONA · · Score: 1

      Great link! While I don't agree with quite all of this essay (particularly bits under Problem #7: That FOSS thing.[1]), the vast majority is dead-on. It would take me many, many hours to write something that probably would not be as good. I've spent untold hours over the years explaining bit and pieces of what's contained in it.

      Dominic Humphries has placed it under a Creative Commons License: The URL http://linux.oneandoneis2.org/LNW.htm must be supplied in attribution. To answer many questions, I think I'll just redistribute under his license terms, and document where our opinions differ.

      [1] My perspective does *not* match that of many Slashdotters, who often seem to overwhelming post from the perspective of a home user. This article would be a good example, as my posts to it will prove. While I'm a home user, and currently admin a security lab environment, I've spent time in large commercial Unix and Linux installation environments, and contract into that environment for a living. I try to view things from both perspectives, but often fail.

      Even if I had a perfect success rate at this, I'd still be off base with some (many?) posts, because I have zero exposure to, say, the huge embedded space. I can try to extrapolate into that space, much like a programmer who knows many languages (that's not me--90% of my code is written in perhaps half a dozen languages) can often extrapolate into a language he/she has only read about (often only on the Web, USENET, etc., and there is something to be said for editorial review) but there's no real substitute for experience.

      And sometimes I'm just short on sleep and irritable, reading Slashdot while waiting for a client to get back to me, etc. After all, it's only Slashdot, and best not taken too seriously.

      In fact, I think I'll just pop this into my journal, and change my sig.

      --
      What you do with a computer does not constitute the whole of computing.
    26. Re:Nonissue by Dutch+Gun · · Score: 1

      Very few professional wordsmiths use MS Word Lol, is he kidding? MOST professional wordsmith uses MS Word (yes, I AM in fact a published author).

      He makes some good points (especially #7), but some others are just off the charts.
      --
      Irony: Agile development has too much intertia to be abandoned now.
    27. Re:Nonissue by Lord+Kano · · Score: 1

      The bottom line is that Linux is not Windows.

      Yes, and I use both.

      Really, your objections are so petty.

      Way to spectacularly miss my point. Trying to mainstream linux means answering all of these tiresome questions hundreds of thousands of times.

      You completely overlook the real *long-term* advantages of using an OS and a packaging system that is actually maintainable.

      It's not about that for most people. The sooner you get that through your head, the better off you'll be. Joe Sixpack doesn't care about anything other than "How easy is it for me to 'Do X'?"

      For the forseeable future, Windows is going to win that contest.

      LK

      --
      "Hi. This is my friend, Jack Shit, and you don't know him." - Lord Kano
    28. Re:Nonissue by pedestrian+crossing · · Score: 1

      It's not about that for most people. The sooner you get that through your head, the better off you'll be. Joe Sixpack doesn't care about anything other than "How easy is it for me to 'Do X'?"

      Yes, you are correct, all Joe Sixpack cares about is how easy things are. Does getting that through my head really make -me - better off?

      For the forseeable future, Windows is going to win that contest.

      And lose the security battle.

      But what is the contest, really? Market share? What do we really care about market share? We don't have any shareholders who are expecting a quarterly profit.

      While it might be nice to see more adoption by Joe Sixpack, it doesn't do anyone any good to compromise the good things about Linux on the altar of "market share". As you pointed out, Joe definitely doesn't care about security or long-term sustainability, but I do, it's the reason I run Debian.

      My family and I have been using it for quite a while, and I would say that usability is coming along quite nicely. It is not a race to reach the lowest common denominator, nor should it be. Microsoft will eventually be hung by their own petard, just like IBM was when they were the "bad guy" and Microsoft was the "good guy".

      Joe Sixpack cannot manage his dumbed-down Windows system effectively, what reason do we have to believe he is ever going to be able to manage a dumbed-down Linux system effectively?

      --
      A house divided against itself cannot stand.
  6. Commercialism by JPMaximilian · · Score: 1

    CNR seems very...business oriented. I don't see a lot of hardcore linux users adopting it.

    --
    "I'll see you next time." - LeVar Burton
    1. Re:Commercialism by Anonymous Coward · · Score: 0

      True, but CnR isn't aimed at us. Its aimed at your grandmother.

      Here is a real life story about a friend of mine (with 0 computer skill beyond word/excel/IE)
      It started with her machine crashing constantly. She called me to fix it. What ended up happening was the motherboard was dying (chipset actually) anyways, So she had to buy a new machine, and i talked her out of the Dell route and for me to build one for 1/2 the cost and have it running the same day.

      So i tried to install WinXP that came with her orginal dell (should work right? same drive, same type of processor) only issue was the CD key on her case was invalid. (Well, it IS a dell...) She didn't want Win2k because "it looked ugly". She opted for going with Ubuntu (with beryl as she had seen on my machine, lots of ooos and aaahhs from various non-tech people)

      So i installed, updated to 6.10, nvidia's video card drivers, beryl installed, secured, all the goodies easily accessable, etc etc.

      Then she asked me how to install something. So I opened up Synaptic for her. After 4 hours of showing how to use this, and how to install/find programs/remove them (i explained it very throughly ;) She still has trouble to this day 4 months later using synaptic and adept. No way shes going to use a command line. (Yeah 6.06 first, i updated last week :P)

      A few days ago, I had a Lindows system running, and showed her CnR. She knew exactly how to use it. It was well, non-tech proof. CnR has its place, to allow those of us with no tech skills (whom out number us btw by quite alot..) to easily install/run programs they want/need. Using a command line, or a description only package manager just won't work. People want to see it first. They want screenshots. They want, well, Click once, and be able to run it. (Aptly named program CnR ;)

      I see this as a good sign, and a great move towards the adoption of Linux to the masses. With vista costing money, lots of it.. People will be more likely to spend nothing or $29.99 for an off the shelf distro than $299 for vista if it has all the same abilities as Windows offers, namely installing programs. We already have the basics that 99% of normal people use, (Gamers excluded, bussiness first, home second, THEN games... we can do this the microsoft way ;) So all we need is the ease of use, which CnR does perfectly.

      Though.. the subscription thing needs to be dropped... that sucks...

    2. Re:Commercialism by temcat · · Score: 1

      WTF with moderation here?

  7. I always liked by iminplaya · · Score: 1

    I always liked those big, fat books that came with the CDs.

    --
    What?
  8. How about we take the easy way out? by khasim · · Score: 3, Interesting

    And that is ... define the requirements that the next generation package manager should have.

    That way there is no need to worry about "replacing" the existing systems. You can instead focus on evolving them to meet the requirements. Even if each distribution/project takes its own path to get there.

    #1. It must make installing new software as easy as it currently is with apt.

    #2. The same for upgrading the software.

    #3. The same for removing the software.

    #4. The same for handling dependencies. Including the order in which dependencies must be installed.

    #5. The same for validating the installed software against the original software (checksums or whatever).

    #6. The same for re-installing the software over the existing installation when you accidentally delete or over-write something.

    #7. The ability to point the updater at your own repository or multiple repositories.

    #8. The ability to recompile (automatically) any software that you install for your specific hardware.

    Anything else? Yeah, I know most of this is already handled with apt. But that's what I'm most familiar with. I keep seeing all the articles about "problems" but I don't seem to run into any problems on my server or workstations (and I'm running Feisty Fawn on my workstation).

    1. Re:How about we take the easy way out? by kernelpanicked · · Score: 1

      Congratulations, you just reinvented rpm and yum.

      --
      Ubuntu: If at first you don't succeed, blindly slap a sudo in front of it
    2. Re:How about we take the easy way out? by DoubleRing · · Score: 1

      Actually, rpm and yum are a reinvention of apt/deb and synaptic.

      --
      Before you die, you see DoubleRing...
    3. Re:How about we take the easy way out? by QuantumG · · Score: 4, Informative

      Apt rules, shame about dpkg. Even bigger shame that apt is built on dpkg, eh?

      What pisses me off is the 32 step process to making a deb (that's what dpkg calls a package btw.. just incase you're playing acronym bingo out there). So if you want to install something you built from source, and be able to remove it later, you need some freakin' magician to have made it into a source package.. cause there's no way in hell you're doing it yourself.

      What really depresses me is that debs, dpkg and apt, that's about the best anyone has done. Unless, of course, you actually like building everything from source.

      --
      How we know is more important than what we know.
    4. Re:How about we take the easy way out? by seifried · · Score: 2, Informative

      #1. It must make installing new software as easy as it currently is with apt.

      up2date -i [package name]

      "This package will require the installation of these additional packages, accept?" Yes/No

      #2. The same for upgrading the software.

      up2date -u [package name]

      "This package will require the installation of these additional packages, accept?" Yes/No

      #3. The same for removing the software.

      rpm -e [package name]

      #4. The same for handling dependencies. Including the order in which dependencies must be installed.

      Already done, see above. up2date will find dependancies, dependancies of dependancies, etc. until it is done, then present you the list and confirm to install all the packages, you hit "Y" and you're done.

      If you just want to check what would be a dependancy you can:

      up2date --solvedeps=[package name]

      which accepts a comma deliminated list of packages as well as a single package name

      #5. The same for validating the installed software against the original software (checksums or whatever).

      To verify packages installed (or package files not yet installed) you use the verify option:

      rpm --verify

      Which can check the GPG sig of the package file, the MD5 sigs of the files, etc. allowing you to detect any tampering or changes.

      #6. The same for re-installing the software over the existing installation when you accidentally delete or over-write something.

      up2date --force [package name]

      rpm --force [package name]

      #7. The ability to point the updater at your own repository or multiple repositories.

      /etc/sysconfig/rhn/up2date

      serverURL[comment]=Remote server URL serverURL=https://xmlrpc.rhn.redhat.com/XMLRPC serverURL[comment]=Remote server URL serverURL=https://www.centos.org/XMLRPC

      #8. The ability to recompile (automatically) any software that you install for your specific hardware.

      rpmbuild -ba

      But in general major vendors provide optimized packages for various architectures that rely on heavy math/etc (kernel and OpenSSL being two of the important ones)

    5. Re:How about we take the easy way out? by wizrd_nml · · Score: 4, Insightful

      #1. It must make installing new software as easy as it currently is with apt.
      #2. The same for upgrading the software.
      #3. The same for removing the software.
      #4. The same for handling dependencies. Including the order in which dependencies must be installed.
      #5. The same for validating the installed software against the original software (checksums or whatever).
      #6. The same for re-installing the software over the existing installation when you accidentally delete or over-write something.
      #7. The ability to point the updater at your own repository or multiple repositories.
      #8. The ability to recompile (automatically) any software that you install for your specific hardware.
      ...and it must do all of this without telling me what it's doing, because I don't care what it does as long as the software then works.
    6. Re:How about we take the easy way out? by Anonymous Coward · · Score: 0

      Sounds like Java Webstart to me. The only one I'm unsure it handles is #6 "re-installing the software over the existing installation".

    7. Re:How about we take the easy way out? by srealm · · Score: 2, Interesting

      One more thing.

      Make it easy to install software that has DIFFERENT dependencies.

      The classic example I always give is LDAP - you either want it or you don't. However why should I install LDAP because some application decided to link against LDAP? Or conversely, what if the application was NOT linked against LDAP and I want LDAP support in the app (which is available in the app itself).

      Unfortunately, the only real solution to this is source based installs or having a compile for every combination of dependencies. But possibly something that will allow you to specify dependencies, and if you break from the 'blessed' dependencies, still has the ability to compile the base version (with no extra steps required by the user apart from saying 'yes, OK, do the compile'). Without requiring it to recompile ALL packages involved (ie. if the LDAP is coming from some library used by the app you requested to be installed, it should only recompile that library, not everything or the final app (since its using shared code and not using LDAP directly).

      And as an addition to that, there should be a way to 'offshore' said building to a build server (or servers) - that will keep the package once built (with record of its dependencies) - so that if you are deploying on a large scale, you can use the SAME package manager that comes with the default distro on ALL your boxes, and install your package with custom dependencies (triggering a compile), and then when you install that package with the same dependencies later, it will just pick up the pre-built version, just as if it came from the official pipe.

      These kind of problems are rarely solved at all by packaging systems, and usually installing from a source archive for a single package on a binary distribution is a pain in the neck - especially if you want to actually build from a source archive with ALTERED dependencies. Right now, only completely source-based distributions allow you to change dependencies, but then you need to pay the penalty of building EVERYTING (yes, Gentoo and such have their pre-built packages for large modules like Gnome or KDE, but you still end up building a lot).

      Basically, I'm saying I could not really use a binary packaging system unless it had the ability to fall back to source altering its dependencies (which means the package needs to know HOW to compile disabling and enabling certain things (ie. configure flags), not just how to compile the same way the binary distro was made), and do so seamlessly and without forcing the user to go though 7000 additional steps or have intimate knowledge of how to compile an application. Remember, from the amdin's point of view, they just don't want to install LDAP unnecessarily, they don't specifically want to have to know how to recompile XYZ package to exclude LDAP support, or even if they know how to, want to have to do that for every package that is optionally supporting LDAP using manual procedures to disbale LDAP support.

      This, and the fact that getting 0-day releases for certain packages when a new version comes out (sometimes a new release fixes a specific bug you have been waiting to be fixed) without having to recompile it all myself and break the packaging system or have to get more intimate with the packaging system than I want are the reasons I switched back off of Ubuntu and back to Gentoo. I tried Ubuntu because I wanted to see what life would be like without having to compile all the time - but in the end found I could suffer the compile (especially with things like distcc) to have a system the way I like it without extra crap installed because it happened to be compiled with support I don't need, want and will never use.

      PreZ :)

    8. Re:How about we take the easy way out? by LesFerg · · Score: 3, Insightful

      You left out the parts that usually alienate new users;
      - Link it into the menu/desktop system
      - Also link in help or documentation, or at least a relevant URL

      Even somebody who has used Linux for many years and feels comfortable with apt, rpm etc, can still occassionally be annoyed as all hell when an application is installed, then you have to go searching all over the web to find some basic configuration guide, let alone finding how to start the app.

      In fact, maybe part of the packaging system could include linking in the wiki that everybody uses to tell others how they made the demmed thing work.

      --
      If I had a DeLorean... I would probably only drive it from time to time.
    9. Re:How about we take the easy way out? by ploss · · Score: 2, Insightful

      #10 - The ability for 3rd parties to create their own packages that have the same advantages as being in the repository. For example, I currently download xyz from SourceForge as a .deb, and have it install. Great. Why not provide some notification of a new version, like a link to an RSS feed inside the package file that is checked on every apt-get update? Why not list it in synaptic, adept, yumex, etc.? Also, make it easy for the developer.

      #11 - The ability to have a user install their own package easily and transparently, under their home-dir (not applicable to all packages, of course.) Then, when that package is installed on the base system, it should also remove the user package and symlinks (/home/user/bin.) It's not cool to need root to run yum or apt, or require sudo privs when I just want to get something simple. This is especially important in a multi-user system.

      Just some additional thoughts.

      --
      What are the odds that some idiot will name his mutex ether-rot-mutex!
    10. Re:How about we take the easy way out? by wordisms · · Score: 4, Insightful

      Dude, until I can click on setup.exe, and it just works, and then there is an "Unistall Program" menu in the program folder on the program menu... I just don't have the time. I've used all 5 methods, and they are great for server management, but for general desktop use, people need click and run. Maybe CNR will take off.

    11. Re:How about we take the easy way out? by QuoteMstr · · Score: 1

      Or you can simply not handle the recompilation bit at all and eliminate all the needless complexity you've described involving handling changed dependencies.

      Going with your lDAP example, just always install the LDAP libraries. What's the harm? A few kilobytes of disk space in exchange for a much-simplified package system is a perfectly acceptable tradeoff. If by installing LDAP you eliminate a huge headache involving recompiling half the distribution, you win --- and it's not as if this LDAP functionality is actually used unless specifically enabled, and as an admin, I save time.

      To carry the example to a silly extreme, why not have the distribution check what libc functions each application used and recompile it dynamically? After all, why include fchdir(2) if nobody uses it?

      For modules that can't be handled with the always-install approach, a plugin architecture is more appropriate, in which packages are detected and loaded at runtime, and specific small packages for each module exist. For example, Redhat-family distributions use this approach for cyrus-sasl authentication methods, and it works well.

      There's no need to introduce the needless complexity and computational expense of automatic recompilation.

    12. Re:How about we take the easy way out? by wirelessbuzzers · · Score: 1

      I'd like to see a package manager that allows any random user to install software privately, eg, in ~/bin. This would be good both for unprivileged or security-minded desktop users, and for server users where you usually don't have root.

      This would be especially nice if there were an integrated way to make sure that installing software (or, heck, even running it, to the degree possible) wouldn't damage your system. That is, if packages could be annotated with the appropriate systrace-style permissions, users could be sure that they were safe to run. That one is more of a security researcher's pipe dream, but it would be really cool, and would have the side effect of protecting against poorly-written software.

      --
      I hereby place the above post in the public domain.
    13. Re:How about we take the easy way out? by Chandon+Seldon · · Score: 2, Insightful

      Why is there this obsession with the awful Windows package system? Have you legitimately used a repository-based system with a GUI?

      Setup.exe + an Uninstall menu item is strictly worse than, say, the way packages work in Ubuntu. If you want to just distribute a package file and have the user double click to install, that works great. But... there's also a giant fully-supported package repository.

      I guess it basically comes down to one thing: As they would say on Fark.com... "No you can't have Linux be an exact copy of your favorite version of Windows. Not yours. (Picture of pony)"

      --
      -- The act of censorship is always worse than whatever is being censored. Always.
    14. Re:How about we take the easy way out? by jelle · · Score: 1

      32 steps? I always do 'sudo dh_make', then 'sudo debuild' and I end up with .debs that I can 'dpkg -i' and 'dpkg --purge'...

      --
      --- Hindsight is 20/20, but walking backwards is not the answer.
    15. Re:How about we take the easy way out? by Anonymous Coward · · Score: 0

      Going with your lDAP example, just always install the LDAP libraries. What's the harm?

      That's exactly the sort of crap cop-out I always expect to hear from Linux users. "Waaa, dependencies are hard! Just dump everything onto disk and pretend it's 'managed'!" Bah. Have you seen some of the huge dependency tries created by some packages these days? It's not unknown to have loops in those trees, damn it. And what happens when some tit adds a dependency on the X libraries for a command line application and you're installing on a headless server? "Just install X"? Brilliant.

    16. Re:How about we take the easy way out? by davmoo · · Score: 2, Insightful

      Why is there this obsession with the awful Windows package system?

      Because my 72 year old mother can, and does, install programs herself in Windows. If it requires anything more complex than "double click on setup.exe" or "double click on the program icon when you save it", you've lost her completely and I have to tunnel in to her machine or make a 125 mile drive.

      In the course of my work, I use Mandriva, Redhat, and Slackware distributions (I have never been able to get everyone elses' darling Ubuntu to install on any machine I own or control). I would not dare let my mother install something on any of the three. Hell will freeze over in ice multiple feet thick before she would understand things like "differences in the file tree", version dependencies, etc etc.

      --
      I want a new quote. One that won't spill. One that don't cost too much. Or come in a pill.
    17. Re:How about we take the easy way out? by dosquatch · · Score: 2, Interesting

      ...and it must do all of this without telling me what it's doing, because I don't care what it does as long as the software then works.

      Why is this funny? There's nothing evil about a silent mode. It's called "ease of use". In fact, I was kinda under the impression that ease of use was the point of this article. If you like screens of text, set a verbose flag. If you like pulling wires, you can still build from code.

      Or is the goal to continue to scare people away from widespread adoption?

      --
      "Hey, the third matrix movie would have been good except for the plot,story, and acting." --AC
    18. Re:How about we take the easy way out? by burner · · Score: 1

      #9 Allow users to install (non-setuid) software to their home directory without the need to gain administrative privileges

      #10 When a 3rd party package is installed, it should connect the packages manager up to the 3rd party's repository for updates

      #11 #9 and #10 should integrate.

      These should be reasonably possible with a complete enough platform and a guaranteed set of packages that 3rd parties can expect to depend upon.

      --
      MRSH-Recording device, corned beef sandwich with kraut, seafaring bird, and the foamy top of a beverage.
    19. Re:How about we take the easy way out? by Alioth · · Score: 1

      There is a method that does that. http://autopackage.org/ . It is designed explicitly for 3rd party software. RPM + yum or .deb + apt is fine for system packages (i.e. stuff directly supported by the distro), but for everything else, Autopackage is what people want.

    20. Re:How about we take the easy way out? by burner · · Score: 2, Insightful

      Sure, she can do the install, but what about getting updates and bug and security fixes? And what of spyware?

      I much prefer (as do my sister and mother) the simplicity of going to the Applications menu and clicking the entry for "Add/Remove...". You can browse around or search for a particular program by type or name. Click a checkbox, click OK, it's installed, unclick a checkbox, click OK, it's gone from your computer.

      --
      MRSH-Recording device, corned beef sandwich with kraut, seafaring bird, and the foamy top of a beverage.
    21. Re:How about we take the easy way out? by xtracto · · Score: 1

      Because my 72 year old mother can, and does, install programs herself in Windows. If it requires anything more complex than "double click on setup.exe" or "double click on the program icon when you save it", you've lost her completely and I have to tunnel in to her machine or make a 125 mile drive.

      The problem with current Windows installing system is that it is very difficult to upgrade software. At least, it depends on the software developers. If they have an update-friendly software it might be easy.

      Just recently I downloaed XAMP and after playing a bit with it (on windows... dont know if linux has that) I started to think, but what do I have to do if I want to upgrade it? and it means you must re-install it again. And some of your data would be lost, some wont.

      Thats the nice thing about deb's or rpm's (or YaST or Synaptic). They will *not only* upgrade your base OS but also every other software you have installed on your system.

      I think what we are looking for is a *standard* to link into applications. Imagine a standard meta-file which describes most of the info of the application and when a user opens it in ANY linux distribution, the distribution would proceed to find it in the enabled repositories. This metafile could even include self-repositories the major application deployment systems (deb, rpm, tgz, etc) which the distribution would use depending on its own kind of management system.

      That way your grandma will only have to click on the link and then click on "Yeah, install this POS on my computer" as she does in Windows. And, you will have the advantage of not having to hunt down to hunt down the updates for the application.

      Xtracto

      --
      Ubuntu is an African word meaning 'I can't configure Debian'
    22. Re:How about we take the easy way out? by bytesex · · Score: 1

      - The ability to say: look here, package manager, I've just downloaded, configured and compiled from source the apache tarball without your help. Here's where it's at on the filesystem. Can you pretend that you know about it now and not whine the next time you download something that is dependent on apache, or worse, download apache yourself and start building it according to specs that I don't have any influence on, thankyouverymuch !
      - The ability to say: hey rpm - emerge !
      - The ability to say: I want you to use /usr/local/APPNAME. Use /usr/local/APPNAME. No, use /usr/local/APPNAME. Symlink from /etc, /usr/bin and /usr/lib if you must, but USE /usr/local/APPNAME ! Why ? Because I say so. You're only software and you're on my system !
      - Automatic creation of the file /etc/removescripts/APPNAME.sh that not only is written comprehensively (a list of _all_ files created by the installer), but that invokes the installer to update its database, warns for broken dependencies, removes itself, and creates a files called /etc/installscripts/APPNAME.sh.
      - Proper transactions (but I guess that's more something for when all Linux filesystems are truly transactional (and for when the shell and/or the standard C library can do such transactions)).

      --
      Religion is what happens when nature strikes and groupthink goes wrong.
    23. Re:How about we take the easy way out? by Anonymous Coward · · Score: 0

      I would change following:

      #2 Upgrading will keep configuration files in VCS, so that I can do vdiff, etc. And so that the upgrade program can do vdiff and keep as much of my changes as possible. Apt is not capable of either of these.

      #3 The ability to undo. Suppose I install Foo, which, because of dependencies, install Bar. I should be able to do undo so that the system remembers what was added. Apt is not capable of this. VCS helps ...

    24. Re:How about we take the easy way out? by muuh-gnu · · Score: 1

      > If it requires anything more complex than "double click on setup.exe" or "double click on the program icon when you save it",
      > you've lost her completely and I have to tunnel in to her machine or make a 125 mile drive.

      But you're not mentioning that she first has to find out that a certain program exists, then find out the website, download the correct exe, then remember where she downloaded it, dive through the windows file tree in case she didnt download it onto the desktop. And how actually does she uninstall it, if shes lost with anything besides a click on a setup.exe, when there isnt a "uninstall" link provided in the start menu after the installation?

      In modern Linux:
      Installing: Fire up a package manager, scroll down to your app of choice, mark it for installation, apply, done.
      Uninstalling: Fire up a package manager, scroll down to your app of choice, mark it for uninstallation, apply, done.

      Apart from the fact that she obviously wouldnt be able to install some windows-only software, it really doesnt get easier and more intuitive than "scroll, mark, apply, done."

    25. Re:How about we take the easy way out? by isorox · · Score: 1

      If it requires anything more complex than "double click on setup.exe" or "double click on the program icon when you save it"

      Actaully it's:
      1) Go to shop and buy software
      or
      1) Find website of software, find download page, save it locally, find the server
      2) double click icon
      3) Click next/next/next

      In Linux it's
      1) Click "Add new software"
      2) Select the software you want
      3) Press install

    26. Re:How about we take the easy way out? by kiddygrinder · · Score: 1

      Both methods have their down sides, however i'd say synaptic's downside could easily be fixe by making it so you could click a link in a website which brings up that particular package in synaptic/yast. It could probably be extended (and made less secure ofc) to allow you to optionally allow it to add 3rd party repositories from the info in that link at the same time. I'd like that a lot, rather than borking around searching for the package and possibly finding it's not included in $linux_distro's repository.

      --
      This is a joke. I am joking. Joke joke joke.
    27. Re:How about we take the easy way out? by cortana · · Score: 1

      Is it really hard to run dpkg-deb --build? You can even build a deb with ar if you really want, you would just have to tweak the magic number at the top of the file once you're done.

    28. Re:How about we take the easy way out? by cortana · · Score: 1

      Unfortunately, the only real solution to this is source based installs or having a compile for every combination of dependencies.

      There is another alternative. Debian prefers to split the package up.

      For instance, you would have a foo package, containing /usr/bin/foo, and its LDAP-specific functionality would be in the foo-ldap package that contains /usr/lib/foo/plugins/libfoo-ldap.so.

      There is no need to compile the package multiple times with a different build configuration, unless the package doesn't use a shared library/plugin system. These days such packages are rare, and if the code base is of half-decent quality then modifying it and sending the patches upstream is not difficult.
    29. Re:How about we take the easy way out? by cortana · · Score: 3, Insightful

      Dear lord, no. Bad & outdated third-party documentation is the software world's biggest usability problem.

      Software packages should *include* the upstream documentation. That way, the user gets correct documentation that matches the version of the software they installed. If the documentation is very large, it can go into a separate foo-doc package.

      The other advantage is that people using the software offline can access its documentation. :)

    30. Re:How about we take the easy way out? by the_womble · · Score: 1

      Because my 72 year old mother can, and does, install programs herself in Windows.

      Much like my slightly older father does is Linux?

      I doubt he knows what a deb or rpm is. He opens synaptic, searches for what he needs and installs. All in fewer clicks than doing the same on Windows would require. There is also no need for him to try to judge whether its a safe download or malware.

      End users do not need to understand thinks like differences in the file tree. There are GUIs that do everything for them. Yes, there is software that is not in the repositories, but very little of this is likely to be of interest to end users.

    31. Re:How about we take the easy way out? by cortana · · Score: 1

      No, just install libx11-6 & the other X libraries that are depended on. The only reason you would need the whole of X, server and all, is if your distibution was shit and didn't package the different components of X as separate packages.

    32. Re:How about we take the easy way out? by strider44 · · Score: 1

      As long as it gives the option of debugging and actually finding out what it's doing, and maybe doing something a bit advanced when you happen to need to, then it is not evil. See the Gnome effect.

    33. Re:How about we take the easy way out? by nietsch · · Score: 1

      So basically you are saying that you have no experience with apt+ a gui for it? You might think that having your granny click on some file is the simplest thing possible, but that leaves out the complications how to get that file on your grannies computer. How can she recieve updates for it? How will dependencies be resolved for it?
      The windows way is not an end-all for software management. In fact, it is one of the worst solutions. Part of this stems from the fact that there are so many different providers that do not allow being distributed from a repository. Most software on linux does, which gives you a very big advantage to be able to create a repository with software that works just right with eachother. It's too bad that despite your Linux experience, you cannot see that advantage.
      That said, it would be cool if you could just send some type of link/scriptlett that made your apt-gui select for installation the current version from your preconfigured repository. Then you could send your granny a link that she could click on and click OK when the package manager asks her if she wants to install package XYZ and their dependencies libxyz and libsooperdooper. However, missing that functionality now does not weight up against all the advantages of a system that keeps all your software on your computer up to date without a problem.
      BTW: the granny argument is a bad argument as it treats users as if they were stupid. Do you like to be called stupid?

      --
      This space is intentionally staring blankly at you
    34. Re:How about we take the easy way out? by westlake · · Score: 1
      2) Select the software you want

      this assumes that grandma can "shop" through a catalog that adequately describes a program, it's intended audience, state of development, etc., etc.

      reviews are helpful, ratings are helpful. screenshots are helpful.

    35. Re:How about we take the easy way out? by Anonymous Coward · · Score: 0

      The integration of binary and source package trees would be nice.

      That is to say, the ability to not just build from source, or install pre-compiled binaries, but the ability to seemlessly mix andmatch, that is to say, for example, I don't feel like spending 6 hours building package Y, so I use the binary; but it uses libs I've previously built from source, as well as others installed via prebuilt binaries as dependencies, and vice versa; as they use a common database, and a common set of tools to manage them.

      As far as I can tell you can't do this on Linux yet, not consistently, anyway. I now Portage can handle pre-compiled binaries, but last I used it, said binaries didn't include headers (so you couldn't build source packages on top of them), and only a small suvset of less than current packages were made availible in binary form. This has beem done seemlessly and flawlessly in FreeBSD just about forever though.

      Weather you install via ports or from pkg_*, you can use remove/update/upgrade/downgrade/etc either via the pkg_* tools. You can update binary builds with source builds, source builds with binary builds, etc.

      Generally, I only install from source when a) no package isavailible, or b) feature I want isn't enabled by default, or c) feature I don't want is built into the availible package. Usually on linux, I've had to either build everything from source, or deal with the defaults. It's one of those features you don't fully appreciate until you have it, it'd be niceto have it in linux.

    36. Re:How about we take the easy way out? by davmoo · · Score: 1

      My mother has been instructed on how to get updates and fixes. She even updates her virus software every day. And in 15 years of having a PC, she's never had a virus or spyware, or even seen a bsod (or know what that term means) so obviously she is doing something right.

      Of course, what she also has besides her computer is a son who knows her limits who sat it up :-)

      --
      I want a new quote. One that won't spill. One that don't cost too much. Or come in a pill.
    37. Re:How about we take the easy way out? by temcat · · Score: 1

      1. Not all software exists in repositories - and even if it does, finding out that a certain program exists (by taking some task or function as a starting point) would be equally, if not more difficult in Synaptic for a grandmother. (Synaptic search function doesn't exactly shine.)

      2. A user should not know about package manager. The task a user faces in the real world is to "install this software", not to "manage packages". Therefore installation should not involve more than a click on the downloaded software packages (maybe with license acceptance and some initial setup). Moreover, if we talk about an apt-like system, the user shouldn't have to explicitly add sources - information about a third party repository should be included in the package itself and added automatically.

      3. There are various incompatibilities between distros where packaging is concerned. Package format, software placement (Suse's /opt), different choice of software that may affect package installation (in case of software that includes system services, that means for example init system). We need a unified packaging API that would be implemented in all (or most) distros alongside with their main API (rpm or dpkg on the low level, apt, yum or smart on the high level etc.)

    38. Re:How about we take the easy way out? by davmoo · · Score: 1

      My mother (and it is mother, not granny), will be the first to admit she is largely computer illiterate, and has used the word "stupid" herself numerous times. And she will also tell you that if its not an icon on her desktop or a link on a webpage, she usually does not know how to deal with it. She also does not care about the fact that Linux does a lot of things better than Windows, nor is she always desiring or installing new software. She simply wants her computer to work for email, web surfing, and letter writing, and do it the way she wants. And for that, Windows XP suits her fine (in fact, for her use Windows 98 was fine, but I upgraded her machine when Windows 98 security support was dropped). As I stated in another reply above, she knows how to update Windows and her virus software, and in 15 years of using a PC has never had a virus or spyware on her machine.

      --
      I want a new quote. One that won't spill. One that don't cost too much. Or come in a pill.
    39. Re:How about we take the easy way out? by vtcodger · · Score: 1
      ***Dude, until I can click on setup.exe, and it just works***

      Maybe it doesn't have to go that far. Most of us have lived for years with Windows where you click on SETUP.EXE and damn near anything can happen. Granted -- a usable installation is the most probable result -- but unusable installations are common, and sometimes other things get broken. In the worst case (thankfully rare), you may need to reinstall Windows. I don't know about anyone else, but I've spent months of my life (cumulative total) dealing with the consequences of clicking on SETUP.EXE.

      And as for clicking on UNINS000.EXE and its friends, it's better than not clicking on it I suppose. But leaving stuff behind seems awfully common.

      It'd be nice if Unix install/uninstall worked better than Windows. But just working as well as Windows seems not all that high a barrier.

      So, just get me something that works. And if it would tell me clearly about missing dependancies and give me a clue where to look for the stuff I need, that would be nice. Looking for missing libraries and packages is tedious if you are used to it and quite intimidating if you aren't.

      --
      You can't see ANYTHING from a car, You've got to get out of the goddamned contraption and walk...Edward Abbey
    40. Re:How about we take the easy way out? by eldepeche · · Score: 1

      1) Pretty much any program a basic user would want is in repositories. OpenOffice, audio/video players, mail clients, groupware, photo management, etc. 2) Ubuntu (don't know about other distros, haven't used them extensively) has an Add/Remove Programs menu entry. It looks pretty much like Synaptic, but it lists categories of applications, then has specific information on what an application does. The user can then install it, and it will pop up on the menu under the same category. I don't use it because I know what I'm going with apt-get or aptitude, but my brother (not a computer dude, just wants it to do) seems to do fine with it. 3) I agree. Every distro with a package manager has standard locations where files go. E.g. in Debian derivatives, system config files go in /etc, user config files go in ~/.foo/, programs go in /usr/bin, blah blah, I don't know all of it. Point is, there could be a list of "Categories of Files" associated with programs, and then each distro could supply environment variables or something associating filesystem locations with categories. I think the biggest problem is that each distribution uses a different set of versions of packages and they are all made to be interoperable, but I suppose someone supplying a binary meant to work cross-distro could list flexible dependencies.

    41. Re:How about we take the easy way out? by temcat · · Score: 1

      Pretty much any program a basic user would want is in repositories

      But we don't want Linux to be only for "basic users", now do we? :-) Moreover, a repository may well contain the needed software, but lag behind in version.

      Ubuntu (don't know about other distros, haven't used them extensively) has an Add/Remove Programs menu entry

      Yes, that is a step in the right direction (at least they don't confuse users with the foreign concept of "package management"). But again, it's based on the assumption that everything you need is in a repository, or that you know what a repository is and can add one if it exists for your software of choice. We should think about ISVs and software that can't be put in a repository.

    42. Re:How about we take the easy way out? by daveewart · · Score: 1

      I much prefer (as do my sister and mother) the simplicity of going to the Applications menu and clicking the entry for "Add/Remove...". You can browse around or search for a particular program by type or name. Click a checkbox, click OK, it's installed, unclick a checkbox, click OK, it's gone from your computer.

      Yes, that's all very well if every application you're ever likely to need is packaged by your chosen distro. If it's not, then you're out of luck.

      --
      "If you think the problem is bad now, just wait until we've solved it." --- Arthur Kasspe
    43. Re:How about we take the easy way out? by Anonymous Coward · · Score: 0

      So your solution to the problem is to pretend it doesn't exist and to insist that this somehow constitutes package "management" when it clearly does not? You do realise this behaviour is irrational, don't you?

    44. Re:How about we take the easy way out? by cortana · · Score: 1

      The packages *are* managed, by the *package manager*. What *is* the problem then?

    45. Re:How about we take the easy way out? by Kidbro · · Score: 1

      Because my 72 year old mother can, and does, install programs herself in Windows. If it requires anything more complex than "double click on setup.exe" or "double click on the program icon when you save it", you've lost her completely and I have to tunnel in to her machine or make a 125 mile drive.

      And this "setup.exe" icon magically appears on her desktop?
      I've never understood how trying to locate the right bloody installer on some potentially untrusted website can be considered easier than using a GUI on top of a package manager.

    46. Re:How about we take the easy way out? by Blakey+Rat · · Score: 2, Interesting

      No.

      Number 1 should be:

      Allow commercial and proprietary software the same distribution channels are open source software.

      Until that happens, there will be no commercial software on Linux. Not only do current Linux package managers not facilitate the installation of commercial or proprietary software, but they are also designed in such a way so that installing a commercial/proprietary package is likely to break the package manager, requiring an extensive repair process next time you run it.

      Linux will never have a strong software ecosystem unless commercial/proprietary software is allow to compete on an even keep with open source software.

    47. Re:How about we take the easy way out? by arose · · Score: 1

      1. Not all software exists in repositories - and even if it does, finding out that a certain program exists (by taking some task or function as a starting point) would be equally, if not more difficult in Synaptic for a grandmother.
      This isn't a problem that needs a new package managing system to solve. Distributions could create a system that allows application websites to provide one-click install initiation from the repositories.

      2. A user should not know about package manager. The task a user faces in the real world is to "install this software", not to "manage packages". Therefore installation should not involve more than a click on the downloaded software packages (maybe with license acceptance and some initial setup). Moreover, if we talk about an apt-like system, the user shouldn't have to explicitly add sources - information about a third party repository should be included in the package itself and added automatically.
      And remove it. And update it. The second is solved with existing architecture very well already. And I'm confident that the first task can be as well, Ubuntu is moving in that direction with the "Add/Remove..." menu item. Downloadable packages that provide repository information should be doable as well, with some sort of jailling to minimize the possibility of non-repository packages to tamper with the main system. This should be possible with current packaging systems.

      3. There are various incompatibilities between distros where packaging is concerned.
      That's because of the incorrect assumption that there is such a thing as as "Linux OS". Just like there are different packages for Windows (or Win9x, 2000/XP, XP x64...), Mac OS, OS X the software vendor is the one who has to provide specific (or not so specific) packages for the distribution(s) they choose to support... Or let the maintainers handle it if it fits, as it does with most FLOSS projects. Clever packaging should make it possible to handle a large variety of disrtibutions with few packages.
      --
      Analogies don't equal equalities, they are merely somewhat analogous.
    48. Re:How about we take the easy way out? by just_another_sean · · Score: 1


      My mother has been instructed on how to get updates and fixes. She even updates her virus software every day. And in 15 years of having a PC, she's never had a virus or spyware, or even seen a bsod (or know what that term means) so obviously she is doing something right.

      Of course, what she also has besides her computer is a son who knows her limits who sat it up :-)


      Then she is perfectly capable of using Synaptic. I love it when people come along and say "My old granny has to be able to do it." Like Granny is stupid or something and then go on to say "She can surf the internet, knows how to find all the cool setup.exe files she needs to load programs, set up her own printer, get pictures off her camera, keep anti spyware and anti virus up to date, write c compilers, balance the national debt, blah, blah, blah".

      Anyone who can a) decide they need some software that didn't come with their PC, b) find and download said software in the form of a "setup.exe", c) remember where they put it when they downloaded it! :-), d) click it, read whatever installer messages appear, complete it and then run the program should have no problem whatsoever pulling up Synaptic, finding the software they need and hitting install.

      It's always the same, people act like Windows is so easy the minute you get it. They forget that they've used it for years, got used to the dumb sh1t and quirks, it evolved (slowly, erratically) to become easier, there are a lot of people around to help, either intuitvley figure it out or they already know, etc...

      Windows has a lot going for it that Linux doesn't because of it's market share but being "easier to use" is a side effect not technical superiority.

      --
      Creationist Textbook Stickers Declared Unconstitutional by CowboyNeal
    49. Re:How about we take the easy way out? by TheRaven64 · · Score: 1
      I suggest you look at the BSD packaging systems. They all have the option of mixing binary and source installs easily, and all support the idea of 'flavors;' different versions of a package built with different options (e.g. MySQL, SQLite or PostgreSQL back-ends). On FreeBSD, for example, you can specify the -P option to portinstall, and it will install binaries if they exist, or build from source if they don't. Running 'make package' in the port directory will build the binary package, so it's pretty easy to maintain your own repository of the packages you want; you can even use distcc and set up an NFS packages directory if you want to do really fast builds and share the results amongst all the machines.

      The NetBSD packaging system, pkgsrc, runs quite happily on Linux (and Solaris, AIX, etc) if you want to try it.

      --
      I am TheRaven on Soylent News
    50. Re:How about we take the easy way out? by JoshJ · · Score: 1

      I can download Opera or GoogleEarth through my package manager now. In fact, there's hundreds of proprietary apps in my Ubuntu package manager. I refuse to use them (and will switch to Debian shortly-just have to get the time to install), but they're there.

    51. Re:How about we take the easy way out? by mikiN · · Score: 1

      Yep, and you can also build a kernel image with ed (if you figure out how to enter high-bit ASCII chars). Then you just need to update LILO or grub and you're done.

      --
      The Hacker's Guide To The Kernel: Don't panic()!
    52. Re:How about we take the easy way out? by burner · · Score: 1

      That wasn't quite my point. I was trying to get at the fact that, OK, double clicking setup.exe is easy, but the overhead of keeping up to date with all your 3rd party software is tedious and a significant administrative overhead. And I wasn't trying to say your mum's not capable of it either, I'm sure she's a fine and thoughtful lady. I was just suggesting that I'm sure both she and you would prefer it if she didn't have the headache of managing the updates herself for each application in which she's interested.

      --
      MRSH-Recording device, corned beef sandwich with kraut, seafaring bird, and the foamy top of a beverage.
    53. Re:How about we take the easy way out? by burner · · Score: 1

      Different problem, but yeah, I agree there's work yet to be done. I see two fronts for solving this (after the initial argument that everything worth having will get into the repository over time).

      1) Make it easier to turn a source release into a dpkg archive and make it trivial to create an apt repository

      This will make it really easy for third parties to get their packages out to Debian-based desktops.

      2) Improve gapti/gdebi and get the word out on their capabilities.

      These tools let the user click on a link at the third party's site, download and install software with a click of 1 or 2 buttons.

      Of course, IMHO, the best place to get the software is from the distributor whenever possible, since everything there has some quality check, there's a single place to get support.

      --
      MRSH-Recording device, corned beef sandwich with kraut, seafaring bird, and the foamy top of a beverage.
    54. Re:How about we take the easy way out? by Anonymous Coward · · Score: 0

      "Management" doesn't mean "Dump them all on the disk and remember I did it". They are not "managed" in the sense that dependencies are sensible and the user can control (Or if you prefer "Manage") what dependencies are installed. Is Linux now so far gone that people can't even grasp the basic concept of software management? Are you seriously advocating that I should give up control of my machine and just let some unknown package maintainer decide what software I must install to keep their package happy? Even if I don't require the features those dependencies support? Even if those dependencies could add up to hundreds of megabytes of useless data?

      Apparently, you would. What's worse, you can't even understand why that's a crap idea!

    55. Re:How about we take the easy way out? by IgnoramusMaximus · · Score: 1

      And he forgot:

      #9 and one that does NOT store all its data in a corruptable, binary-only database system because nobody sane would want to reinstall the whole system when that binary, unrepairable, single point of falure ... fails. (not to forget the dependency of the whole package management solution on the related database libraries)

      You: rp... up2... err... ugh...

    56. Re:How about we take the easy way out? by Cid+Highwind · · Score: 1

      If by installing LDAP you eliminate a huge headache involving recompiling half the distribution, you win --- and it's not as if this LDAP functionality is actually used unless specifically enabled, and as an admin, I save time.

      You save time until an app that no reasonable person would ever expect to link to OpenLDAP gets your system 0wned via a known vulnerability that you thought you were safe from because you don't use LDAP. Then you lose all that time and more, and possibly your job...

      "Figuring out what the user needs is HARD! Lets just compile in everything we possibly can." is not a valid approach to software packaging.

      --
      0 1 - just my two bits
    57. Re:How about we take the easy way out? by Deliveranc3 · · Score: 1

      How about a webservice that uses a database to correlate my hardware and software with my needs.

      Compiling proprietary blobs for my machine?

      It's not like the linux community doesn't have the API's documented....

    58. Re:How about we take the easy way out? by ElleyKitten · · Score: 1

      Your mother is just used to Windows, it's not that it's easy. Tell me, would it be easier to teach a complete newbie to click Applications->Add New Programs->Games (for example) and then choose among the ones that come up, or go to Google, type "games" and then figure out which ones are actual games, not spyware, and free? Then find the setup.exe, download it, remember where they downloaded it, then install?

      --
      "What is Internet Explorer 7? Are you saying we can't access the normal internet?" - I love tech support. Really.
    59. Re:How about we take the easy way out? by Blakey+Rat · · Score: 1

      Yes, but you can't buy a copy of (say) LinuxOffice on CD, install it from the CD, and expect it to work well (or at all) with your package manager. And if Google decided to charge for Google Earth, they wouldn't be able to as your package manager doesn't have any facility for taking payments, or requiring a serial number to download.

      So you're right that it supports proprietary software, in a very limited fashion. But it still doesn't support commercial software.

    60. Re:How about we take the easy way out? by benjonson · · Score: 1
      ..and it must do all of this without telling me what it's doing, because I don't care what it does as long as the software then works.


      Because you don't care no one else should? In this and all cases of simplifying the UI, I suggest making an optional "Show Details" check box. Some of us like to understand what is being done with the software.

      --
      =-+
    61. Re:How about we take the easy way out? by cortana · · Score: 1

      I really don't see what your problem is. You want to install a packag, that depends on the ldap client libraries. If you don't install those libraries then you won't be able to use the software... what would be the point of that?

      Most well-written software is modular and doesn't require every single dependency to be installed at the same time. For example, the Foo software could be split into multiple binary packages (.debs; I am using the Debian terminology since that is what I am most familiar with) such as 'foo' containing /usr/bin/foo and 'foo-ldap' containing /usr/lib/foo/plugins/libfoo-ldap.so. Thus, if you didn't want Foo's ldap functionality, you would not install foo-ldap and the depended-upon libldap2.

      It sounds like the software that you are trying to use is poorly written, or has been packaged in a way that does not allow what I described above. Perhaps you could give a specific example of a problem that you have run in to?

    62. Re:How about we take the easy way out? by Anonymous Coward · · Score: 0

      It would be pretty easy to have the executable file (i.e. the bit that sometimes might need to be updated or patched) part of the package management system but also have the rest of the software live elsewhere, outside the package management system. This bit can use its own installer which can require CD-keys or whatever.

      There's also no problem in having the software ask for a CD-key when it's first run, rather than on install (well, it makes piracy slightly easier, but frankly requiring a CD isn't much protection anyway).

      Ultimately, I don't think this is a big deal. Software developers have exactly the same freedom to install on Linux that they do on Windows, namely get some executable installer on to the system and run it. You might say that they have better competition on linux, but Macs have had similar package installers (fink) for a while and people still buy Mac software.

    63. Re:How about we take the easy way out? by marcosdumay · · Score: 1

      Maybe deb should use a new kind of dependecy that links to the documentation of the package being installed. This way, the package manager (apt, aptitude, synaptic) could install it automaticaly or not, depending of the local configuration.

      But the desktop shortcut should be there. Every program that has a GUI should install a desktop shortcut. It's amazing the number of them that don't.

    64. Re:How about we take the easy way out? by metamatic · · Score: 1

      Yes, but you can't buy a copy of (say) LinuxOffice on CD, install it from the CD, and expect it to work well (or at all) with your package manager.

      Have you ever actually used commercial Linux software? I have.

      IBM DB2 is commercial Linux software. Guess what? It comes in RPM files. There's a handy GUI installer that installs the RPMs.

      There's no reason why the same thing couldn't be done with .deb files.

      So current package managers support commercial and proprietary software just fine.

      --
      GCHQ Quantum Insert installed. If only our tongues were made of glass, how much more careful we would be when we speak
    65. Re:How about we take the easy way out? by VENONA · · Score: 1

      Someone please mod parent up. There is plenty of commercial software for Linux. Most of the posts from this article are from the perspective of people who sound very much like home users, or admins of small installations. I'm not knocking that--it's an important piece of the Linux world. But it's only one piece, not the whole of it.

      --
      What you do with a computer does not constitute the whole of computing.
    66. Re:How about we take the easy way out? by juhaz · · Score: 1

      Dude, until I can click on setup.exe
      You mean "I can click on setup.exe" after I've:
      a) spent few hours googling for it, chasing broken download links in dusty corners of the web, or banging my head to the wall because it's hosted on some thrice-cursed commercial download farm that gives you the alternative of throwing a bunch of money for them or waiting in queue until the other 10000 people in front of you are done
      b) successfully managed to evade all the crapware infested shit lurking in the same corners

      and it just works, and then there is an "Unistall Program" menu in the program folder on the program menu...

      You mean "it just works" as in:
      1) I've got to scan it with anti-scumware to make sure the part b) of the last phase was successful.
      2) Hope the installer works
      3) Answer bunch of pointless questions, remember to tell it to not install any scumware not caught in the previous steps.
      4) Hope the installer works
      5) Hope it didn't ruin your computer.
      6) Pray really hard the "hello world" you just installed doesn't require administrator privileges to run.
      7) Hope the uninstaller works.
      8) New version? Security update? Remember to keep checking manually, go to step a.)

      I just don't have the time.

      Me neither. Which is why I don't want to go through all that crap. Which is why I don't use Windows any more.

      Exaggerated? You bet. Does it happen? You bet. Running into at least few of those steps is hardly rare, but even in the optimal case, good package manager with easy frontend and comprehensive repository is arguably better.

    67. Re:How about we take the easy way out? by Grech · · Score: 1

      While I cannot be cretain about point #5, unless you are referring to something on the order of md5 sums for packages, I submit to you that portage (as used by Gentoo) does all these things.

      1. emerge [package-name]
      2. emerge [package-name] or emerge -u world
      3. emerge -C [package-name]
      4. This is automatic, and includes a system for aborting sequences of installations which would cause mutex conditions
      5. (see above)
      6. emerge [package-name]
      7. These settings are in /etc/make.conf
      8. These setting are also in /etc/make.conf, and is generally considered (though not actually completely) mandatory, that being the point of the distribution.
      --
      It may not be just, but it is fair, and that is more important.
    68. Re:How about we take the easy way out? by VENONA · · Score: 1

      "#11 - The ability to have a user install their own package easily and transparently, under their home-dir (not applicable to all packages, of course.) Then, when that package is installed on the base system, it should also remove the user package and symlinks (/home/user/bin.) It's not cool to need root to run yum or apt, or require sudo privs when I just want to get something simple. This is especially important in a multi-user system."

      A multi-user system is where you most need that root/unprivileged user separation. Users can do the oddest things. Such as sucking up all available disk space, CPU cycles, etc. You get wildly different results depending upon whether those multiple suers are simultaneous or not, etc.

      You could see an explosion of the workload the package system sees. How many users are on the system? If two versions of a package are installed in /home/alice and /home/bob, how are conflicts resolved by the package management software when an admin wants to install that package (possibly another version) at a system level?

      Is the admin now supposed to contact everyone involved (maybe waiting two weeks wile someone returns from vacation, etc.) before they can get their job done? Or maybe spend the time to analyze some mentally and/or physically absent user's environment, then perform some difficult to support hack (remember, a possibly large number of users) on their $PATH?

      Privilege separation is one of the basic principles of a Unixy OS. One of the main reasons that it's there is precisely to make multi-user systems possible. There's pretty much zero chance of this going away because some user says, "It's not cool to need root to run yum or apt." Admins have heard this since, well, forever. Very often from a user who wants to make *their* life easier, and doesn't consider *other* users or admins. Of course, this is the same sort of user who will install some stupid resource pig of an app, want the firewall punched out immediately for some obscure network app nobody's ever heard of, etc.

      "I just want to get something simple." Define simple. Some users are going to be deeply knowledgeable, some far less so. The forkbomb (`$0 & $0 &`) is simple. Go ahead and run it from a bash prompt--but make sure your system resources are well controlled first. There can be a vast chasm between simple and benign. I know admins that won't allow an executable bit set for a user's files (let alone cron access, binding a network app to high ports, etc.) until they have some idea of the user's competence. They aren't Nazis; they're protecting a system with dozens of users.

      --
      What you do with a computer does not constitute the whole of computing.
    69. Re:How about we take the easy way out? by Anonymous Coward · · Score: 0

      Why do you say the software won't work? How do you know? The package may contain multiple binaries, and only one of those may rely on LDAP, or X, or whatever. Perhaps I know I'll never use that binary.

      It sounds like the software that you are trying to use is poorly written, or has been packaged in a way that does not allow what I described above. Perhaps you could give a specific example of a problem that you have run in to?

      Yes, and it's far, far too common. In the five years I've been admining various Linux servers I've seen it time and time again. vim packages that "depend" on X. Packages that depend on their own -devel packages (I always love to see that one). It's so mind numbingly boring now I can't even find the energy to rant about it properly.

    70. Re:How about we take the easy way out? by physicsnick · · Score: 1

      I still don't understand why people make this argument. Look:

      http://img503.imageshack.us/my.php?image=installde bxj7.png

      How is this any more complicated than "double click on setup.exe"? Seems a hell of a lot simpler; you don't do the NextNextFinish dance, you don't have to agree to any license, it doesn't ask you where you want it installed...

    71. Re:How about we take the easy way out? by cortana · · Score: 1

      If the package contains multiple binaries and only one depends on LDAP/X then it is a perfect candidate to be split into multiple binary packages.

      The same applies to vim. Debian builds multiple variants of vim depending on what you want: vim-tiny, vim, vim-gtk, vim-gnome, vim-full and a few others.

      It really sounds like you should just use Debian ;)

    72. Re:How about we take the easy way out? by AeroIllini · · Score: 1

      Linux will never have a strong software ecosystem unless commercial/proprietary software is allow to compete on an even keep with open source software.


      Portage can, and does, handle closed-source binary software, proprietary or otherwise. Nvidia drivers and Acrobat Reader come to mind as examples. Lots of proprietary software is distributed as RPMs, including enterprise-level software.

      I know there is an air of open-source evangelism surrounding most Linux distros, but commercial/proprietary software is alive and well in the marketplace, and used extensively on Linux installations. What's missing is commercial/proprietary software in the home market, and I agree with you there. The capability exists, but there are too many devs who preach "down with binary blobs!" for it to gain any traction. The greater Linux community needs to accept that while Open Source is awesome, and good for the user in the long run, until we dominate the desktop we have to play by the commercial software industry's rules, and that means including proprietary stuff in our repositories, using local caches to prevent having to use DRM.*

      -----

      *Example: Portage allows ebuilds to exist in a local overlay directory, usually /usr/local/portage. Paid-for, commercial software could come with a CD that automatically copies the ebuild and associated tarballs to /usr/local/portage and /usr/local/portage/distfiles, and then runs an emerge command to install the software. This would be no different, from the user's perspective, than a Windows Installer, but the installer would be able to use the power of the Portage system to maintain the software and its dependencies. CD-key nonsense is, of course, optional. (See MacOSX for reference.)
      --
      For security, the MD5 hash of this message and sig is 09f911029d74e35bd84156c5635688c0.
    73. Re:How about we take the easy way out? by arodland · · Score: 1

      Er? The documentation is in the package, except in the rare case where you have a very large system that's already split up into several packages, and it includes a very large manual as well. Then the manual goes into the foo-doc package, and will be Suggested by the foo package, so aptitude, synaptic, whatever will already show it to you and you're one click/keystroke away from having it.

    74. Re:How about we take the easy way out? by BKX · · Score: 1

      What about gentoo's ebuild system? It has support for building from source (duh!). You can build binary packages with a single switch. You could (or anyone else for that matter) build a full set of binary packages from gentoo's ebuild system. You can do things manually if you want (like applying or making patches). You can make your own ebuilds from scratch and have them compile source packages for you with relative ease (for most packages that aren't already in portage, that is). And of course (by virtue of sandboxing) it automatically generates a full manifest for each installed package so it can be uninstalled correctly later. If someone were to make a full complement of binary packages (with appropriate use flags and decent CFLAGS), it would make one bad-ass binary distro.

    75. Re:How about we take the easy way out? by Anonymous Coward · · Score: 0

      #1. Installing software in Gentoo using Portage is about a million times easier than in Apt (assuming no compile errors).

      #2. Same as 1.

      #3. Same as 1.

      #4. As long as you're not installing "masked" versions of software, same was #1.

      #5. Good idea.

      #6. Something like sfc.exe in Windows but with all software?

      #7. You can set that in make.conf in Gentoo and sources.list in Ubuntu.

      #8. Set compile flags in make.conf.

      I really love the customizability in Gentoo, but I know it's not perfect. I especially dislike having to compile the entire system on my laptops. I'd like to install binaries using portage, but there are no official mirrors for that, and I'm not that trusting with software I install on my computers. Distcc is one option, but it's not a complete solution for me.

      I don't really like Apt, but it does a good job most of the time; but I'm in love with Portage ;)

    76. Re:How about we take the easy way out? by fatalGlory · · Score: 1

      I'm a fan of the job that Autopackage has done. It's actually enabled me to convince some friends to try linux. The familiarity of downloading and double clicking a single installer file from the creator's website was enough to make them wonder why it had taken them so long to switch.

      --
      Censorship is the opposite of education. If neo-darwinism were defensible, people would not need to try and censor ID.
    77. Re:How about we take the easy way out? by Anonymous Coward · · Score: 0

      How about scrolling through a list and typing in a '+' or a '-' by the software you like? Is easy enough? Use aptitude in debian style systems which lets you do this plus various searches and everything. Install / reinstall / deinstall / many other things all in one place. No way in hell will proprietary code bases support this very useful mechanism without a cost per program or dependency. Although it could certainly be prettied up regardless.

    78. Re:How about we take the easy way out? by Muramasa · · Score: 1

      Agreed. Apt is a really great way to manage software. But the Debian package format is needlessly complex. Even though the format is essentially just an Ar archive, you are forced to jump through a thousand different hoops to actually create a package.

      I use Arch Linux these days which has one of the most sane ways to build packages I've seen yet. To build packages you need to create shell script, called a PKGBUILD, which has a certain number of required variables (pkgname, pkversion, dependencies etc.) and a build function. Once you have a PKGBUILD all you have to do is run makepkg to build a binary package for distribution. This is the way it should be IMO. Arch packages are distributed as gzipped tarballs (with a pkg.tar.gz extension). I only wish the package manager (pacman) were as nice as apt.

    79. Re:How about we take the easy way out? by rafa · · Score: 1

      Lots of good ideas in this thread.

      It's possible to re-package an installed package with deb-repack (or similar, can't remember the exact name right now). When doing that it'll include the local configuration changes you've made, which is pretty convenient. It would however be even more convenient to be able to transform packages without having to either repackage them from an installed version - or producing local debs the traditional way.

      Some way of merging the repository debs with local modifications for installation to various local machines perhaps. Maybe a directory structure or something one could keep in svn. That way new versions would automatically be infused with my desired changes.

      --
      [Science] is one of the very few things that raises human life a little above farce and gives it the grace of tragedy.
    80. Re:How about we take the easy way out? by head_dunce · · Score: 1

      I've jumped between a few different Linux flavors and the first thing I do now is set up YUM at prompt with as many repositories as I can find at the time I set it up (because once I set it up, I don't have time to bother with it again.) When I switched to SuSE on this laptop, it was the first time I met YaST which appears to be the "Control Panel" knock off, and I still haven't figured out how to make it work correctly... and why is it so slow?

      All I know now is I can go to prompt, type in:
      yum install inkscape
      Then I watch all the work spew across the screen, it asks me if it's okay to install a bunch of stuff I've never heard of and I press "y" then it spews a bunch more stuff... then it gives me a completed message . Done. The best part about the whole thing is that when I find a new open source application that I'm interested in, all I have to do is type in one line at prompt, and it's installed.

      The problem is to install yum with all the repositories you'll want will take you reading through a bunch of half written blog instructions written by NASA engineers.

      The answer to how to install software easily has been figured out. The problem is installing and setting up the application that then installs applications.

    81. Re:How about we take the easy way out? by marcosdumay · · Score: 1

      The way we do now? No, thank you. People are separating documentation from the program because the leading one tends to be even bigger than the last, and it is a problem because you must remember to manualy install the docs if you want them.

      Just using a name convetion doesn't do it, because it is not consistent. There are packages foo that have foo-doc, others have the documentation on themselves, other are named foo-dev or foo-dbg, and are also documented by foo-doc, there are packages where documentation doesn't make sense, and probably other cases I didn't tought now.

      The package foo recommending foo-doc also doesn't do it. Recomendations and documentation simply aren't the same stuf. As I am not trying to make a compact system on my home desktop, I want documentation of all packages I use. But I simply don't wat all recomendations, I'm not even able to install all of them, since they often conflict with each other. If there is some new kind of dependency for documentation, I can just make my package manager get them all of the time, like it does for some kinds of recomendations (Debian has a few of them).

  9. I have a feeling by true_hacker · · Score: 0, Funny

    I bet RMS would be jumping around with joy reading this article, the author uses "GNU/Linux".

  10. RPM gets a nod but.... by westyvw · · Score: 3, Insightful

    Debian and Ubuntu don't even get a mention on what they DO use? This article makes it sound like RPM is THE package management system. Give me a break, at least a mention that a similar package approach (and more successful IMHO) is used by the Debian etc.

    1. Re:RPM gets a nod but.... by bendodge · · Score: 1

      I started tinkering with Windows 95 at ~8 years of age, and have been a computer junky ever since. About a month ago I installed Kubuntu on a blank machine while I waited for parts, and loved it.

      But I almost gave up when I was trying to install nForce drivers, and it kept failing after I restarted. After hours of trying and Googling for information, I finally found a list of required "packages". I thought, "Aha! This must be the problem!"

      So I diligently searched the internet for these "packages". Many hours later, I was on the verge of giving up, when I noticed a "Package Manager" utility. Shazam! It all worked.

      Just think how much time I could have saved if every website I found had not assumed I knew what a package was! Another assumption was that I knew how to use makefile and install. People who write Linux software manuals shouldn't assume the user knows what terms mean! (Esp. since many of them are very similar to Windows terms, and people just assume they are the same thing.) Basically, all the instructions for the free distros assume you know the jargon. Fix that, and Linux will suddenly be more much more "user-friendly".

      --
      The government can't save you.
    2. Re:RPM gets a nod but.... by Deb-fanboy · · Score: 1
      When I first decided to try Linux I did the basic research and decided that I had a choice of going the rpm, apt, or source compile route when deciding a distribution.

      Having discovered that source compiling was going to very time consuming on my old PII, and that rpm had dependency problems, I went the apt way and installed Debian. :-)

      It appears to me that apt is a natural objective choice for a package manager, and I can also understand the attraction of compiling source code to create binaries matched to your computer, but I cannot understand the benifet of rpm.

      However the VSA (very short article) did mention Linspire's CNR (Click and Run) which does appear to fit the slot as a disto agnostic package source, although this will be built upon your distrobutions native package manager rather than replacing it.

      In reality I don't think that the rpm / apt argument is so important to newbies as long as they have a well designed gui package manager (eg Synaptic / Adept) built upon it.

  11. Hasn't explored other packaging methods by shermozle · · Score: 5, Informative
    (while discussing RPM)

    Still, a lot of other systems like Ubuntu, Debian, Slackware, Gentoo or Linspire do not use the RPM format and do not plan to incorporate it. What that means is he hasn't used any other packaging formats. Common mistake that people think RPM is somehow "best" because it's used by a few distros. Do some searches for "circular dependency RPM" to see why that's just not true.
    1. Re:Hasn't explored other packaging methods by DoubleRing · · Score: 5, Informative

      Hear hear! I have mod points, but I'd rather post.

      Circular dependencies, aka RPM hell, is what actually prompted me to make the switch from the Red Hat family to the Debian family. I used to be a pretty die hard Red Hat user. It used to be that Fedora was the cutting edge, back in the core 2 and 3 days. I would have those days when I would wrestle with the packages, but I just took my hits and moved on. Then Ubuntu came along, and I realized how much time I was wasting with that stuff. It "just works." APT is great (it's a pity POSIX decided to go for RPM). Gentoo's portage is really cool too, but IALAB (I'm a lazy bum--if you can't reconcile the acronym, then you probably shouldn't know what the missing word is).

      --
      Before you die, you see DoubleRing...
    2. Re:Hasn't explored other packaging methods by Soko · · Score: 1

      What that means is he hasn't used any other packaging formats. Common mistake that people think RPM is somehow "best" because it's used by a few distros. Do some searches for "circular dependency RPM" to see why that's just not true.

      The vast majority of people who aren't Linux geeks, or rely on a commercially supported distro get RedHat or Suse. Guess what package format they use?

      I agree that RPM isn't the best, but in an enterprise setting it's what you get. I'm hoping Canonical can make inroads to that market with Ubuntu supplemented by Click'n'run, myself. If that proves commercially strong, the others just might follow suit and use the .DEB format in order to access C'n'R.

      Soko

      --
      "Depression is merely anger without enthusiasm." - Anonymous
    3. Re:Hasn't explored other packaging methods by TheDugong · · Score: 1

      "APT is great" Grrr!! Sorry, but my pet hate! apt ~= yum i.e. go and find the packages I need dpkg ~= rpm i.e. install or remove the package All the package managers do is copy, move and delete files, keep a list of what files/packages are installed and keep a list of where packages can be obtained. The reason why Ubuntu "just works" is because: 1) The Ubuntu team keep a tight(er) reign on the repositories, so there is very little need (if any "need") to use 3rd party repos. 2) More stuff that people need it in the repositories so you do not get A. Newbie trying to install an ancient RPM on a modern system and having it screw wverything up.

    4. Re:Hasn't explored other packaging methods by DoubleRing · · Score: 1

      All the package managers do is copy, move and delete files, keep a list of what files/packages are installed and keep a list of where packages can be obtained. The reason why Ubuntu "just works" is because: 1) The Ubuntu team keep a tight(er) reign on the repositories, so there is very little need (if any "need") to use 3rd party repos. 2) More stuff that people need it in the repositories so you do not get A. Newbie trying to install an ancient RPM on a modern system and having it screw wverything up.
      Um, I missed the part where this is a bad thing. Is this not a good thing?
      --
      Before you die, you see DoubleRing...
    5. Re:Hasn't explored other packaging methods by mackyrae · · Score: 1

      Apt > yum on the basis of yum taking like 3x longer to do the job.

      --
      look! it's a bird, it's a plane, it's....a girl? yes, a girl browsing Slashdot on Linux
    6. Re:Hasn't explored other packaging methods by norton_I · · Score: 1

      apt-get does more complicated depenency resolution than yum. I do not know whether this is intrinsic to the tool, or pratices of package maintainers.

      The problem that has been annoying me recently is that yum will not remove packages to install a conflicting package. Admittedly, whether this is a good thing is up to debate, but I have frequently run into situations where one (or many!) packages depend on a file provided by two packages, which conflict with each other. If I want to switch from one to the other, I have to temporarily uninstall all packages that depend on the mutual file, or use --force to override dependency analysis and hope that the alternate actually provides all the necessary files.

      If anyone knows of a way to get yum to solve this problem, I would love to hear it, but apt-get (usually) does it automatically.

    7. Re:Hasn't explored other packaging methods by gwbennett · · Score: 0

      i am lazy a bum? or dyslexic a one maybe? ;)

      --
      Where is this free beer everyone on Slashdot keeps talking about?
    8. Re:Hasn't explored other packaging methods by Alioth · · Score: 3, Informative

      Circular dependency hell?

      So package foo depends on package bar, and package bar depends on foo.

      All you do is:

      rpm -Uvh foo.rpm bar.rpm

      Circular dependency solved. The circular dependency 'problem' (it never actually really existed) was more of a problem of lack of good documentation than a problem with the actual 'rpm' program. However, this is a problem that was solved years ago - I haven't used a distro in the last 5 years that hasn't had a system like yum, up2date or apt which does all the dependency resolution for you.

    9. Re:Hasn't explored other packaging methods by Anonymous Coward · · Score: 0

      apt is available for Fedora too, I use it all the time.
      http://apt-rpm.org/

    10. Re:Hasn't explored other packaging methods by TheDugong · · Score: 1

      Nothing to miss. My point was that RPM hell is not intrinsic to the RPM package manager. You could easily get into deb hell if it were not for the tighter control that the Debian and Ubuntu repository people have and the more pragmatic approach to what repositories exist and what is in them.

    11. Re:Hasn't explored other packaging methods by Anonymous Coward · · Score: 1, Informative

      Perhaps you should have followed his advice and Googled it instead. He's talking about huge circular dependency trees like these that thwart your attempts to install a single small package. Or would your advice be to install all five of those packages at once? If you follow the thread it turns out that some of the dependencies are bogus: an all too common problem with RPM's where the spec writer either doesn't know what the dependencies really are, or doesn't care, or doesn't understand the spec file format.

    12. Re:Hasn't explored other packaging methods by cortana · · Score: 2, Insightful

      Not to mention https://bugzilla.redhat.com/bugzilla/show_bug.cgi? id=119185 which is still not really fixed.

    13. Re:Hasn't explored other packaging methods by Dretep · · Score: 0

      And then along came YUM, which eliminated RPM dependency hell. Greatest update/software manager since Redhat's up2date.

    14. Re:Hasn't explored other packaging methods by Spudds · · Score: 1

      Oh please. It's the same tired old crap I hear all the time about rpm.

        Guess what? You get the same thing in deb and in sources!!! Rarely do you actually use rpm directly. You use yum or up2date or whatever your fancy. Same thing with deb, you use apt. If you try to install something from source that needs a library or two, you still have to download and install thoes libraries. Dependencies exist everywhere. However yum takes care of them, much like apt.

        I guess I have to say it again.

        Dependency hell has been a non-issue for red hat for a very long time. Stop Spreading Retarded FUD. /me applauds Grand Parent Post.

        The problem with these comments is that they always come out of phanboi-ism. You like Debian... I got it. Guess what? I'm a long time RedHat/Fedora fan; I've been using it all the way back since 5.x days when it was still called Red Hat... and I'll STILL concede to liking apt better than yum (mainly due to it being faster) because I have this crazy ability to speak objectively about a subject after I've actually experimented with or researched it.

          Enough stupid FUD already.
          Debian is a great Distro.
          Fedora is a great Distro.
          Both distros have pros and cons and various differences that make them strong and weak.
          Done.

    15. Re:Hasn't explored other packaging methods by _xeno_ · · Score: 1

      I can't remember the exact details, but I remember at one point having a scenario that worked out to a dependency of a dependency conflicting with the dependency of another dependency, making it essentially impossible to install the original RPM.

      I think I switched to Gentoo over that, until I got sick and tired of compiling, after which I moved to Debian and finally Ubuntu.

      --
      You are in a maze of twisty little relative jumps, all alike.
    16. Re:Hasn't explored other packaging methods by MobyTurbo · · Score: 1

      it's a pity POSIX decided to go for RPM

      I think you mean the "Linux Standard Base" (LSB), which has nothing to do with POSIX. There *is* a standard System V packaging format, used by Solaris (which I'm posting from) and it isn't so great either, though I think there are some changes that are being made concerning it.

  12. goddammit by scenestar · · Score: 4, Insightful

    We have apt and *.debs

    I'm not in the mood for a holy war right now, but for fucks sake, Debian perfected package management a decade ago.

    --
    perpetually dwelling in the -1 pits
    1. Re:goddammit by croddy · · Score: 1

      Don't forget about Debconf! The ability of the OS to centrally manage configuration for a variety of applications is one of the most important advantages of the Debian style of package management.

    2. Re:goddammit by Salsaman · · Score: 2, Informative

      Well, the system may be perfect, but the packagers certainly are not. It's next to impossible to get a new package into their repositories (I've been asking for over 2 years now !), which is I why I have to rely on the good people at getdeb.net (Ubuntu), and debian-multimedia.org (debian).

    3. Re:goddammit by Anonymous Coward · · Score: 0

      Really? So Debian package management has garbage collection, i.e. if you remove one package, it removes all packages it depends on which aren't used by anything else and weren't manually installed by the user?

      That'd be (good) news for me, because uninstalling on any system always pisses me off because it leaves all those stupid libraries lying around.

      There was another feature I need even more, but I forgot what it was.

      Anyway, Debian might have solved it best, but it is far from perfect - and it will never be for there is no such thing as perfection.

    4. Re:goddammit by cortana · · Score: 1

      If you have to rely on debian-multimedia.org then the problem is probably a legal one rather than a technical/social one.

    5. Re:goddammit by eggz128 · · Score: 1

      Aptitude can remove orphaned packages IIRC.

    6. Re:goddammit by Anonymous Coward · · Score: 0

      Yes, it does.

    7. Re:goddammit by r00tman · · Score: 1

      Werd. Automatic dependency resolution for the win!

    8. Re:goddammit by Ambassador+Kosh · · Score: 1

      Actually that feature has been in apt now for about a year now. I see it come up fairly often in my kubuntu system when I remove stuff I don't need anymore and it offers to remove a bunch of the things that where installed only to meet the requirements and nothing else needs.

      --
      Computer modeling for biotech drug manufacturing is HARD! :)
    9. Re:goddammit by Salsaman · · Score: 1

      No, if that is the problem then it is down to Debian misunderstanding. A couple of people in Debian suggested that since my project is dependant on mplayer, there must be legal problems with it. This has been proven not to be the case several times - mplayer no longer contains patented code, at least in the default build. In fact there are even debian packages of mplayer in main.

    10. Re:goddammit by cortana · · Score: 1

      If the software depended on mplayer then it did have legal problems as far as the project was concerned, unless someone wanted to hire a lawyer to prove that it did not. Unfortunatly, the project has to be boundby the laws of the countries in which it operates, and those laws (copyright & trademark) have very expensive consequences for those who violate them. But anyway, now that mplayer has been cleaned up and accepted into main, that is all in the past.

      From reading your WNPP bug and your project's Download page, it seems that you already have functional packages. You just want to get them accepted into Debian. To do this, you need to find a Debian Developer who is willing to sponsor uploads of the package.

      You already have the package in the debian-multimedia.org repository, which is run by Chris Marillat & a few other DDs (IIRC), one of them may be willing to help you out. If not, post an RFS (Request For Sponsor) message to the debian-mentors mailing list and see if that generates any interest.

      There may also be a collaborative maintenence project for multimedia packages that would help with the maintenence of the package & manage uploads to the Debian archive; similar ones exist for other types of packages, for instance the Debian Games project.

      I do agree that getting software included in Debian that no DD takes an interest in can be a pain in the arse. A few of my packages are in the same state that yours is in. :(

    11. Re:goddammit by cortana · · Score: 1

      Wait a second, I just realied the mistake I made. I guess the problem is that your package encodes video (or depends on another program that encodes video), and so can't go into Debian because of the patents that Debian would then be violating.

      Until the patents expire, I guess that you'll be stuck in the debian-multimedia.org repository.

      I do think that Debian should link users looking for updated software and multimedia software to http://backports.org/ and http://debian-multimedia.org/ more prominently (or even at all).

    12. Re:goddammit by Blakey+Rat · · Score: 1

      The discussion should be at a higher level. Not 'what feature do we want from package managers' but 'why do we need package managers?'

      After-all, Mac OS and Windows don't have package managers and they seem to do quite well... so what's wrong with the Linux way of doing things?

      If you're talking about package managers, then the discussion is already lost because you're not even bothering to attempt to step back and look at the bigger picture.

    13. Re:goddammit by Salsaman · · Score: 1

      Nope, my application doesn't rely on any encoders. All encoders are _optional_, and it is perfectly possible to use a version which will encode only to ogg theora, dirac, snow, gif and mng for example. In fact, I even offered to prepare a version for debian which used only free codecs.

      It seems like you are jumping to the same conclusions as every other debian maintainer.

      I also have statements on record from both the mplayer developers and debian legal that mplayer no longer contains patented code. In spite of this, I even altered my program so it could run alone without mplayer (you can't do very much with it, except edit generated content and images...)

    14. Re:goddammit by cortana · · Score: 1

      Right, so without mplayer/mencoder the app is kind of crippled. If someone installed it from Debian's main archive and then tried to use it, would they really find it useful, or would they get frustrated and think the app was broken somehow? A lot of video software is in the same boat--in order to make it suitable for main, so much significant functionality has to be removed from the software as to make it pointless including it.

    15. Re:goddammit by Salsaman · · Score: 1

      No, you are not reading what I wrote. Yes, the app is crippled without mplayer (but you can run it that way if you want), but a plain build of mplayer no longer contains patented code. The same for mencoder.

    16. Re:goddammit by cortana · · Score: 1

      You're not reading what I wrote. I said that mplayer had problems in the past, but that it has been cleaned up and is now in Debian main. But the version that is there has to be built without mencoder or any other encoding features, because of stupid software patent laws in the US, Japan, various European countries and possibly others.

    17. Re:goddammit by Muramasa · · Score: 1

      Apt is a great tool. Debian packages are needlessly complex. Apt-for-rpm is actually nicer imo.

    18. Re:goddammit by Salsaman · · Score: 1

      Well, perhaps I didn't make myself clear then. Mencoder is required for most encoding formats, but not if you only want to encode to ogg theora, gif, or mng.

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

      Well if you feel that a package of your software with such reduced functionality would still be useful, and if you don't mind being inundated with support requests from users who install it from Debian's archive without realising its limitations then I would speak to M. Marillat (who I see is actually the maintainer of the package in the debian-multimedia.org repository) about getting such a package put together and uploaded into Debian proper. Anyway, this is really a discussion for the debian-mentors list. ;)

    20. Re:goddammit by G+Morgan · · Score: 1

      Yeah and I've seen Ubuntu tell me that I no longer need applications as well. The system doesn't work properly yet, at least in Ubuntu it doesn't and they have a much easier job to manage than Debian generally.

  13. The hard part... by PornMaster · · Score: 3, Interesting

    The hard part, as I see it, is dependency management for upgrading software.

    Eventually, with RPMs, for example, I end up getting to the point that I have to force something, which shouldn't ever really have to happen... but it does.

    1. Re:The hard part... by schotty · · Score: 1

      The apt and rpm solutions are both phenomenal and work great. When they stop working great is with poorly made packages. Having used both, RPM and DEB, I can say when a competent packager gets a package rolled out, no matter how complex, the package works fine. It's the complete puds that are either too green in making packages, or people who refuse to read the documentation on how to create a proper package for the target distro. I have also seen problems with applications that convert from one to another format not translate correctly for one reason or another. one major one is dependency package names. I have seen discrepencies personally with respect to one system using blah as the package name, and blah4 to refer to the same thing. Obviously there will be a problem here, since as far as the db can tell, that is two different programs.

      In short, dont blame RPM or APT, its the packagers that need to step up. And with what I have seen recently -- they have. Dependency hell is an ancient thing for my customers, friends, and myself. It is only the occasional badly done package that I can repack into whatever target format that has been the problem for anyone I have dealt with for a few years now. Right around FC2 and the earlier releases of Ubuntu is when I saw a notable shift in quality of packages and the considerable lessening of dep-hell instances.

      The only gripe I have had with RPMs was on Red Hat Linux 8 & 9 and the DB corruption days ... I am very glad that issue got fixed ... that was a bad time ... /me has evil falshbacks

      --
      Sigs are nice guns ...
    2. Re:The hard part... by Dr.+Jest · · Score: 1

      RPM has deeper problems than that. There have been a few times that I have had to back up the /var/lib/rpm directory, restore the packagelist file, and rebuild the database after RPM stopped responding entirely. The database would not budge when I tried rebuilding it otherwise. I think I actually let it attempt to rebuild for a day once. Nasty. And that was on a recent version of Fedora.

    3. Re:The hard part... by POPE+Mad+Mitch · · Score: 1

      that can happen if you go 'off piste' and start using repositories and packages that werent built for that distribution.

      if you really cant find the package you want from one of the versioned repositories like freshrpms.net or rpmforge.net then you really should be looking for the source-rpms instead, sometimse i have to use rpmfind or pbone to find a package, grab the srpm and 'rpmbuild --rebuild' it, or grab the tarball and see if it has a *.spec file in it and then build that (rpmbuild -tb) into an rpm

      in the majority of cases that works just fine, but there are always corner cases, like mandrake srpms, which have extra non-standard spec macros, they are a pain and you have to start to understand whats going on to fix them, but thankfully its pretty rare to need to go that far.

  14. How about we take the easy way out?-Fallback. by Anonymous Coward · · Score: 0

    I've noticed that no one does roll-backs.

    "I keep seeing all the articles about "problems" but I don't seem to run into any problems on my server or workstations (and I'm running Feisty Fawn on my workstation)."

    Kinky! I'm running the BBB* on mine.

    Breasty Babe Beaver.

    1. Re:How about we take the easy way out?-Fallback. by seifried · · Score: 2, Informative

      up2date (front end for RPM) includes the option ("5. enableRollbacks yes/no"). RPM supports rollbacks, config files would be saved as [filename].rpmsave or [filename].rpmnew depending on exactly what you are doing.

  15. not really by ArbitraryConstant · · Score: 2, Interesting

    The problem is not that everyone is willing to accept a solution that sucks, the problem is that the current solution of integrated package management rocks.

    All I need to do is search for something in the package manager GUI, click the its checkbox, click "apply", and I'm done. It's even easier than downloading a dmg, because you've got to go out and find that dmg on the publisher's website, or versiontracker or whatever. I simply express a desire for that program to be available, and then downloads, installations, updates, etc are all handled by the package manager. This even works for proprietary software (eg I have Nvidia's binary drivers, Adobe's Flash and PDF reader, VMWare Player, etc installed through my distro's package manager).

    The best solution is for the vendor to supply whatever they're going to supply in a tarball, and then let the maintainers figure out what the dependencies and so forth are.

    --
    I rarely criticize things I don't care about.
    1. Re:not really by kiddygrinder · · Score: 1

      I agree that package managment does in fact rock, however i in general will use google to find out about a program then go to the package manager to install it, since the package manager in general doesn't give you much idea on the actual quality or usefulness to your purpose the program will have until you actually install the little bugger. Not that it's that hard, but it can be annoying to for example use 4 different 3d modellers before finding one you actually like.

      --
      This is a joke. I am joking. Joke joke joke.
    2. Re:not really by DogDude · · Score: 1

      You forgot that once you "install" this software, you often can't launch it. Last time I played with Ubuntu, I think it was Thunderbird I was trying to install. I went through the steps to "install" it with the "package manager", but then there was no way that I could find to run the thing. I think that "rocks" is a bit over the top at this point.

      --
      I don't respond to AC's.
    3. Re:not really by Anonymous Coward · · Score: 0

      Sure, because if you can't figure it out, Ubuntu must suck. Troll.

  16. "Roll-backs" or "back-rev'ing" would be good. by khasim · · Score: 3, Insightful

    #9. Good point. Being able to easily roll-back an "upgrade" that didn't work would be a very nice feature. So I've marked this as number nine.

    In fact, Ubuntu might be switching to the Smart Package Manager http://labix.org/smart/faq which seems to support this functionality.

    I also left out ...

    #10. Mark packages so that they will NOT be upgraded. The same as I can do with apt.

    1. Re:"Roll-backs" or "back-rev'ing" would be good. by TheRaven64 · · Score: 1

      You know, this is trivial if you just install packages in /opt/{package}-{version}. If it doesn't work, you just rm -rf the package directory, if it does, you do the same to the old version. Alternatively, move /opt/{package}-{oldversion} into /opt/old when you install, and remove it when you are confident things are working. This is what I do when I manually install packages and I generally have fewer headaches than with packages installed via a package management system.

      --
      I am TheRaven on Soylent News
  17. They don't care about the file ext., fix the list by BillX · · Score: 2

    Well, they all involve a long list of available programs you could choose to install (plus dependencies, etc.) Granted, some have meta-package choices, e.g. "workstation collection", but past that, it comes down to a dumfounding-to-newbies long list of packages whose developers tried really hard to come up with a clever acronym, name it after their favorite band/old Norse god/tropical fish's Latin name, etc., rather than something that gives some clue as to what the program actually does. Personally, probably the most off-putting thing my first time installing a Linux distro (besides hardware configuration, which has gotten much better since then) was a package selection dialog with thousands of entries like:

    GRAPPLE - GNU Remote Authenticated Potato Peeler Library for Emacs

    If the chosen package manager cleans that up, or at least moves it from Big Long List to the more fine-grained categories a la download.com, the first-time user isn't going to care whether the package is a tarball, .deb, or what-have-you (provided the installation doesn't barf)

    --
    Caveat Emptor is not a business model.
  18. thirdsies by Anonymous Coward · · Score: 0

    make that three people. Shared libraries had their day back when hard drives were measured in like single megabytes and if you had a full meg of RAM you were rich or at work, but today? With good broadband on top of it? And the speeds of CPUs? Who cares? Go to town, live a little, take a walk on the *wild* side and buy another stick of RAM. Put the dependencies inside the application and just be done with it, heck, run your serious major apps in their own virtual sandboxed off space with their own stripped and tweaked kernel for that matter.

    1. Re:thirdsies by Achromatic1978 · · Score: 1

      buy another stick of RAM

      And yet when this seems a possibility for Vista, cue the "Who wants to pay hundreds of dollars for upgrades for functionality I have now?!?!"

    2. Re:thirdsies by Anonymous Coward · · Score: 0

      and when a included library has a security hole or a bug in it. Just redownload/recompile/reinstall your entire program. Brilliant idea.

    3. Re:thirdsies by dotgain · · Score: 1

      I'm sure that'll scale quite nicely for machines with thousands of processes.

  19. argggg.... by zx-15 · · Score: 1

    . Still, a lot of other systems like Ubuntu, Debian, Slackware, Gentoo or Linspire do not use the RPM format and do not plan to incorporate it

    Oh God, not again. The article provides one sided view on rpm vs. deb war. In fact this article sucks, whoever wrote it never did the homework on the matter and just thrown in some info on few packaging systems picked at random. If this was a decent article it would talk about the most current packaging formats like gentoo/bsd ports, would talk a lot about difference between deb/rpm, get some overview about most popular packaging systems: apt-get, rpm, urpmi, yast, emerge, pacman for Christ sake, but Nooo... it basically says that rpm is the only working format and whoever is not using it is gay.

    Now this thing get linked here. Way to go, Slashdot!

    1. Re:argggg.... by leozh · · Score: 1

      To me it seems like the best solution is a combination of both. If you use apt-get on top of RPM, the solution is a system that works great with dependency resolution and management, while making package building far simpler than with Debian Packaging.

      --
      __________________
      Leo
      webmaster@007sdomain.com
    2. Re:argggg.... by Anonymous Coward · · Score: 0

      If would be so great why does Fedora use Yum rather than Apt-get? Apt-get was adapted to work with rpms years ago and was used with Fedora for a while, then Yum came along and now Yum is preferred. I don't know the reason behind and I don't use Fedora so it never concerned me, but there must be a reason. So what you suggest clearly isn't the great idea you think it is.

    3. Re:argggg.... by zx-15 · · Score: 1

      Not really. Deb is better. I used fedora and apt-rpm is still many times slower that apt-get under any other distro. Also rpm doesn't have notion of virtual packages, which causes breakage more often.

    4. Re:argggg.... by leozh · · Score: 1

      I am not sure what their rationale was but with YUM, it stores all the package metadata in xml files which are processed when you issue a yum command. However, this is slow and not as efficient as apt-get, which has a database of dependencies and such.

      --
      __________________
      Leo
      webmaster@007sdomain.com
  20. The hard part...the bits. by Anonymous Coward · · Score: 0

    I like the way squeak handles it. Point to a repository. Pick what you want, and it downloads*, compiles, and integrates into a running system without any noticable effect(1), say having additional functionality. Even handles dependencies.

    *Usually the code isn't very big, compared to some binaries.

    (1) Save your image first, because bad code can cause issues. That's why some only run code that's ready.

  21. Hell Yeah! by Anonymous Coward · · Score: 1, Interesting

    Absolutely right, never mind the inconsistencies as they don't affect the normal user.

    For example, all my wife needs to know is: open Synaptic when she needs some software. Or even (gosh, how difficult) look for software on the Internet, open Synaptic and type the name in.

    I believe the article is missing/trying to say that regardless of the package method used CNR will provide a wrapper for all of them. So the solution is not to create yet another method (that will never work), but embrace all the existing ones in an easy-to-use interface.

    That interface will be provided in both Freespire and Ubuntu Feisty. It should be good for newbies, hardcore Linux people will hate it (although that doesn't matter: it's not aimed at them).

    1. Re:Hell Yeah! by Ikester8 · · Score: 1

      That's a good point. There's no need to fight over this. I think the reason CNR hasn't taken off is simply that no distro has bothered to make it their primary package installer, except maybe Linspire (IIRC). The reason that APT and RPM are both so popular is that so many other distros are based on Debian or Red Hat. What else is based on Linspire? Packaging it with Feisty might help speed acceptance. As long as I don't have to lose my precious APT, I'll be happy to have CNR as an option.

      --
      That's the last time I run code posted in somebody's sig...
  22. This issue MUST be solved by bogaboga · · Score: 0, Flamebait
    There are many ways software is packaged in the Linux world, I agree 100% on this issue. But I also know that until software becomes portable *across* distributions, chances of Linux gaining a foothold in Joe User's mind and on hid desktop will be continue to be illusive at best. This is not good enough.

    I have always wondered why bright minds, working for "free" and able to produce an OS that is giving corporations with big budgets a run for their money, cannot agree on how best to package software. To many users, we in the Linux world are still a bunch of jokes.

    Sadly, it appears that because of bigotry, selfishness and ego, it will be a few more years before those that command authority in the Linux world wake up. I hope we'll still be relevant by then.

    This reminds me to digress a bit...Joe User asks for an improvement in GNOME's file dialog, which is still very wanting and is instead met with the poisonous "I know it all" attitude.

    1. Re:This issue MUST be solved by pandrijeczko · · Score: 2, Insightful
      There are many ways software is packaged in the Linux world, I agree 100% on this issue. But I also know that until software becomes portable *across* distributions, chances of Linux gaining a foothold in Joe User's mind and on hid desktop will be continue to be illusive at best. This is not good enough.

      You're making the somewhat dangerous assumption that a general policy of "one sizs fits all" is what the Linux user base both wants and needs - this is entirely incorrect.

      For example, as an experienced Linux user, the last thing that I want is a single, binary-packaged method of distribution of software. I use a source-code based distro called Gentoo which means that I get to compile the stuff I run my way on the basis that, if something goes wrong with compilation (as it does sometimes) then it's up to me to try to work out why. But the advantage is that I get to optimize all my applications the way I want to, all of them (hopefully) linked nicely to system libraries as they should be.

      Sure, this isn't the way Joe Public wants it but then if he wants something simpler then, great, good luck to him - use something simpler. I've used Ubuntu a couple of times and this seems to heve a pretty good package management mechanism which I guess is based on the Debian system. (Please don't flame me if I'm wrong here, BTW, but Gentoo is the only Linux I really use these days so I fully admit to not being up to speed on other package management methods.)

      I have always wondered why bright minds, working for "free" and able to produce an OS that is giving corporations with big budgets a run for their money, cannot agree on how best to package software. To many users, we in the Linux world are still a bunch of jokes.

      This has absolutely *NOTHING* to do with "agreeing" to anything and you have totally missed the point of Open Source. Open Source is about a single or bunch of programmers thinking that they have a neat way of doing something with software and then making that software available for others to improve. Ultimately, if you're looking for Open Source software to achieve a specific task, then you probably have a number of different applications to choose from which will achieve at least some of what you want. This view of the world is typified by Vi and Emacs, for example, both of which at their heart are text editors but can be extended in certain ways to do a whole lot more. Consequently, some people prefer Vi, others prefer Emacs, that's just what happens when people get choices.

      Unfortunately, as things stand currently, you cannot come into the OSS world with a "Windows mindset". In the OSS world, you do not hand over some money and have a piece of shrinkwrapped software fall into your lap. Instead, you have to take some responsibility for your computer and what you run on it and there's an expectation that you take the time to research what's out there and decide what you're going to use and how you're going to use it. Nobody's forcing you to use Open Source - it's there if you want it but if you don't, then stick with Windows and enjoy it.

      Linux and OSS is *NOT* a fashion statement - it's not about being "cool" or different. If you use either, then be an adult and accept the ramifications of that decision. OSS will not come to you, you need to go to it.

      Sadly, it appears that because of bigotry, selfishness and ego, it will be a few more years before those that command authority in the Linux world wake up. I hope we'll still be relevant by then.

      Sorry, but now it is quite clear you've lost it - you're now sounding like a bitter little man who's frustrated with Linux and/or OSS but is not prepared to put in some effort to helping himself.

      "Bigotry"? Where? If you mean that certain people have rejected the Windows way of doing things and have decided to do things a different way, then surely that's their choice, isn't it? I really can't see how it's impacted Windows users in any way - apart from in a good way where OSS surel

      --
      Gentoo Linux - another day, another USE flag.
    2. Re:This issue MUST be solved by temcat · · Score: 1

      a single, binary-packaged method of distribution of software

      And having such a method as an addition to your preferred packaging method for the 3rd software that is not available in repositories is against your religion? :-)

    3. Re:This issue MUST be solved by pandrijeczko · · Score: 1
      And having such a method as an addition to your preferred packaging method for the 3rd software that is not available in repositories is against your religion? :-)

      Ah, c'mon... that's a *lame* attack, man.

      I'm just saying that if people want binary packages then let them have it and let them argue the toss about which one's the best.

      Me? I prefer source packages and Gentoo's portage and me seem to play pretty well together.

      I just don't want everyone on here assuming that Linux packages start with "RPMs" and end with "Debs", that's all.

      And stop with the "religion" stuff, okay? I get a buzz from using Linux but if people prefer Windows over Linux, Emacs over vi or Postfix over Sendmail then I say good luck to them...

      --
      Gentoo Linux - another day, another USE flag.
  23. Even Bigger Issue by SlantyBard · · Score: 1

    I find that this is really a moot point because of the even bigger issue of trying to get on-line access via your network. Network access is very simple given Windows or OS X but for some reason, always seems to be a hassle with Linux. Just look at the Linux forums for various packages for evidence.

    1. Re:Even Bigger Issue by pandrijeczko · · Score: 1
      And if you look in those forums deeply enough, I'm sure you'll find an answer to whatever networking problems you have.

      Sure, it can be tricky (and sometimes impossible) to set up some wireless stuff on Linux - but then the solution is to carefully choose your hardware and do some research into what is and isn't supported by Linux before you make the commitment to use it.

      And as for wired networking, pretty much every distro in the past five years has supported DHCP out of the box such that by the time you've booted it the first time, the network connectivity is there.

      Beyond that, it's a case of understanding the network characteristics which you would have to configure into your OS whether you were using Linux or Windows.

      --
      Gentoo Linux - another day, another USE flag.
    2. Re:Even Bigger Issue by Anonymous Coward · · Score: 0

      Absolutely untrue, in Windows you have to install the drivers of your network hardware and configure the network manually, while In Linux the driver is already present in the kernel and only the module has to be loaded (done by auto-detection anyway most of the time). For evidence, try any Knoppix/Debian/Gentoo/... boot cdrom and observe your network card works immediately when you get the prompt. You can also access the internet because per default DHCP is used. Try that in Windows...

      Please don't pull your 'facts' out of your ass, thanks.

    3. Re:Even Bigger Issue by temcat · · Score: 1

      And if you look in those forums deeply enough

      That is, if you have net access to begin with. Which is, sadly, in many instances not the case for a newly installed Linux distro. AltLinux could automatically recognize and autoconfigure my Lucent winmodem years ago. Ubuntu still can't (though it claimed to support it in Dapper and Edgy). The driver does not even work on Ubuntu when built from source. Thanks God I'm on a not-so-broadband now.

    4. Re:Even Bigger Issue by temcat · · Score: 1

      Yes, and of course the kernel has modules for all existing hardware.

    5. Re:Even Bigger Issue by Anonymous Coward · · Score: 0

      Are you kidding? Wireless for windows doesn't freaking work half the time either.

      Ethernet works just fine on both.

      Don't bitch at linux or windows, bitch at the companies who make all these wireless cards without standards or caring about their customers.

    6. Re:Even Bigger Issue by pandrijeczko · · Score: 1

      Good point - I must admit I'd forgotten about "good old" WinModems...

      --
      Gentoo Linux - another day, another USE flag.
  24. Nonissue-One HELL of an issue. by Anonymous Coward · · Score: 0

    There's two problems I ran into with the source code package method. One it consumes CPU resources which can be significent (try doing KDE for an example). It also eats up hard-drive like no one's business. The main package, and a whole host of packages that have even the remotest connection with it, and their connections, and so forth and so on. And heaven help you if you can find the particular version the maintainer used. Maybe on the net, maybe in CVS somewhere (and that brings it's own problems). It'll drive you crazy.

  25. The future to my past.... by Nitroadict · · Score: 1
    ...experiences with Linux:

    The assortment of such being the usual numerous live cd's tried and the numerous excersions into linux forums, bombarded by "advice", I can safely say (IMO) the future looks questionable in terms of linux becoming popular (mainstream), let alone the way linux packages software. Linux just isn't lazy enough; and yet no one wants to admit it when most who use it are programmers/non-lazy people/engineers/whatever that most average users are not, and may never be. Admitelly, when Im very hyped on coffee on the odd ocassion, getting onto Knoppix can be fun/rewarding, but as soon as I'm sober and/or I begin messing around with the CMD, I sigh and boot back into Xp, knowing I can get stuff done more efficiently since it's easier to navigate.

    Of course, thats until I get the umpteenth BSOD because my fucking wireless adapter somehow messes shit up or i get the damn IRQL's again. Luckily, due to my perseverance in saving money, I'll be riding myself of this problem by purchasing a 20 inch IMAC around the time Leopard comes out. IF XP sucks balls then Id imagine Vista more or less swallowing; despite the usefulness in gaming vista might be, id rather stick with XP, buy a PS3 when the price goes down, and even wait around for gaming on the mac to pickup.

    For now, Linux remains an odd curiosity; to me, it will remain the high school japanese class that stresses learning vocabulary and getting you the grade instead of the SVO and punctuation structure until a new teacher and/or class appears, finally showing the light to those who just don't seem to get it.

    I do have hopes for Linux though, but honestly, I think the Google OS, er, Haiku looks interesting ;D.

    1. Re:The future to my past.... by fabs64 · · Score: 1

      ick, one of the worst comments I've ever read, programmers not lazy? uh, why do you think most of us started writing programs? Because it's better to make the computer do it than do it ourselves.
      You've confused lazy with simple, the reason programmers like *nix based OS's is because they can do most ANYTHING quicker than it can be done on Windows, the fact that it's not simple just doesn't worry people whose laziness doesn't extend to learning.
      If you're not a technical person, don't bother using linux, you're fighting an uphill battle, it's designed by programmers for programmers.

    2. Re:The future to my past.... by Nitroadict · · Score: 1

      yea it was a pretty horrible comment, shows what i know aye? i meant to say "by programmers for programmers" as an afterthought but yea couldn't edit it. my comment was probably further proof that I won't ever "get it". I apologize for making anyone's head hurt :\.

    3. Re:The future to my past.... by Stevecrox · · Score: 1

      Somethings wrong with your PC, I haven't had a single BSOD on a 'good' PC since before SP1, I have had them when faulty motherboards, sound cards, video cards, crap ram and in one case an underclocked CPU. Before doing the usual idiot thing of 'blaming windows' for all your woes why not try and track down the problem. To use a awfull car annalogy you have a hole in your exhuast which is causing the car to lose torque and acceleration, rather than blame the crappy exhuast your blaming Ford because they made the car your solution is to buy a new car made by anouther company.

      Yes I have this highly annoying Vista installation problem which results in BSODS but i've figured out the problem and made a workaround. I hope nvidia get around to making a driver which doesn't cause it. Vista and Xp are very very stable, sure once you load up Xp with spyware and rubbish it will start working crap, but then thats not really the computers fault its yours.

      Sometimes the problem is OSX/Windows/Linux itself most of the time it is something else its usually not hard to figure out what.

  26. Jar files by Anonymous Coward · · Score: 0

    Just use Java and avoid all the distro differences.

    1. Re:Jar files by cortana · · Score: 1

      Also avoid all that pesky OS integration! Who needs applications to integrade with their desktop anyway?

    2. Re:Jar files by Anonymous Coward · · Score: 0

      "Java's not worth building in. Nobody uses Java anymore. It's this big heavyweight ball and chain." - Steve Jobs, 2007

    3. Re:Jar files by Anonymous Coward · · Score: 0

      "Steve Jobs is an idiot."
          - Me, 2007

  27. Article for lazies... by Anonymous Coward · · Score: 0

    GNU/Linux is known for its diversity and freedom of choice. There are multiple window managers and desktop environments, many competing systems for handling sound, graphics and hardware autodetection. This diversity is the power and weakness of free software. Exactly the same problem concerns installing software in GNU/Linux. There are currently at least 5 popular ways of doing it:

    * Installing directly from source code,
    * Ports-based installation (where the source packages are held in a repository and can be automatically downloaded, compiled and installed), like BSDs ports of Gentoo's portage,
    * Installing from distribution-specific packages like different versions of RPM, DEB, TGZ, and other packaging formats,
    * Installing from distribution-independent binaries (most proprietary software is delivered this way),
    * Using another distribution-independent system like autopackage, zero-install or klik -- none of them gained a significant market share so far.

    This situation is not a problem for experienced users -- they can make decisions about choosing the best way of installing software themselves. However, for a newcomer in the GNU/Linux world, this situation is pretty confusing. In this article I am going to sum up some of the recent efforts to fix this problem and examine the possible future of packaging software in GNU/Linux.
    Package formats wars

    The war of packaging formats in the GNU/Linux world is reaching its peak. The developers of competing formats are doing their best to convert as many distributions as possible to their products. Here is a short summary of the latest activities in this area.
    RPM unites

    Red Hat Magazine has published an article called The Story of RPM about the history of RPM package manager. It used to be a very strange product. Its ancestors: RPP, PMS and PM were separate projects with similar goals. When RPM arrived, replacing the former standards, it was first being developed under the same name by many GNU/Linux distributors independently, causing a lot of confusion and interoperability problems. Recently, this situation has changed and the major distros (those basing on Red Hat and using RPM) decided to unite and work together on the development of RPM. It's great news for the distributions like Fedora, PCLinuxOS, Mandriva or openSUSE. Still, a lot of other systems like Ubuntu, Debian, Slackware, Gentoo or Linspire do not use the RPM format and do not plan to incorporate it.
    Autopackage slowly vanishes

    Autopackage, one of the recent efforts of developers to standardize packaging in GNU/Linux has not been very successful. Despite a promising debut and even providing a stable 1.0 release (the most recent version is 1.2.1, Autopackage is dying. The programmers (actually only one is actively working on the project) believe that the lack of success of the project is caused by the reluctance of Linux vendors who are well accustomed to the current status of distro-dependent package systems and don't want any change.

    It may also be that Mike Hearn -- the project founder, now a Google employee -- is right. He claims that the project did not gain enough popularity (and none of the distribution-independent packaging efforts did, actually) because of the dominating doctrine which states that it's the distributor who should be responsible for the whole operating system. It is kind of similar to another popular opinion: that the administrator (root) should be responsible for the whole machine, and all the administrative operations should be preformed from a separate root account. These kinds of centralized management systems fit to the server market, but they don't really reflect the desktop reality that well. On desktops, the administration is only one of the roles the user plays and waiting for half a year for a new version of an application is often unacceptable. It is often a decade in the free

  28. It doesn't matter. by khasim · · Score: 1

    Who has the longest or most distinguished genealogy doesn't matter. We all borrow from each other now, anyway. :)

    Once the requirements can be hammered down ... we can start looking at the MINIMUM lines of code that would have to be included with the source code to turn that source code into an application that can be installed and maintained (to some minimum degree) by the next generation of rpm or apt or dpkg or yum or whatever.

    I believe that all these articles focus on the wrong issue. It isn't about which package manager is "best" or which method of installing software is "best". The "best" is different for each admin. What is "best" for someone managing 5,000 boxes at Google may not be the "best" for someone managing 100 boxes at some other company. Nor would either of those ways be "best" for someone running his/her own box at home. Nor would any of those ways be "best" for someone doing development work at IBM.

    Instead, let's look at everything that could possibly be needed ... and then make it easiest for the most commonly encountered issues.

    If one of the issues is getting unpackaged code onto your machines, what is the minimum information needed, in what format, which can be handled (safely) by the main package management systems?

    1. Re:It doesn't matter. by RobertLTux · · Score: 1

      also one of the "standards" should be
      during a ./config make cycle a bare make should
      detect libs and guis installed (kde > Gnome > bare X) and then use them to build that ap ie ./config --window-system-kde=enabled --sound-system-arts-enable=3.67859 --foo-level14 --bar=mixed-drikeds
      should not be needed (btw foo and bar should be in the settings file not the source compile)
      and then $apname should invoke apname with the gui set for the current WM

      also $apname --dump-settings should create in ~/apname/main.conf the various settings (to provide some guidance as to what does what)

      --
      Any person using FTFY or editing my postings agrees to a US$50.00 charge
  29. Ubuntu by burntsigil · · Score: 1
    From TFA:

    ...since most of the distributions are Debian, Fedora, Ubuntu, Mandriva or SUSE-based anyway.
    Why is Ubuntu in that list? I may be misinformed, but it was my understanding that Ubuntu was based off of Debian.
    1. Re:Ubuntu by deek · · Score: 3, Informative

      Why is Ubuntu in that list? I may be misinformed, but it was my understanding that Ubuntu was based off of Debian.


        You're not misinformed, although the author may still have a point of including it on the list of base distributions. There's a slew of Linux distributions based on Ubuntu. Still, you're right. The grandpappy of them all is Debian.

        Here's a fairly comprehensive list of these distributions.
    2. Re:Ubuntu by burntsigil · · Score: 0, Redundant

      Ah. Cool.

  30. Re:They don't care about the file ext., fix the li by TheDugong · · Score: 1
  31. sigh... by element-o.p. · · Score: 2, Insightful

    Why, oh why does everyone always have to gripe that "distro x doesn't do things the same way as distro y?"

    Linux, unlike proprietary, closed source software is about choice. That's what I LIKE about Linux--I can choose the way that I prefer, be that how to install packages, which desktop environment to use, which CLI shell to use, if Linux boots into a CLI shell or if it goes straight to X-Windows, etc.

    --
    MCSE? No, sir...I don't do Windows. Yes, I am an idealist. What's your point?
    1. Re:sigh... by temcat · · Score: 1

      ...Except it removes an important choice - a choice to have a binary package that will install on most Linux distros. This doesn't even require that all distros be based on a single packaging system - they need only to support it as an addition to their preferred packaging method.

    2. Re:sigh... by element-o.p. · · Score: 1

      To some degree, you are correct, but:
      1) I suspect the most popular methods of installing packages are commonly supported. I have yet to use a distro that couldn't handle tarballs and both Slack and Gentoo (the two distros I am most familiar with) have tools to allow the user to use an RPM to install a binary. I would be very surprised to learn that other common distributions didn't have an rpm2tar tool as well.

      2) It's open source. If your distro of choice doesn't include your preferred package management tool, then you could conceivably port it (or find someone who would be willing to port it for you). For example, Gentoo's Portage is written in Python, just about the most readable language I have ever used. And anyone with a smidgeon of clue and the tar and gunzip utilities could install a Slackware package manually, although you would have to manually handle dependencies (yuck...).

      Having said that, for my money, package management is one of the biggest reasons to choose one distro over another. I am in the process of moving away from Slack in favor of Gentoo because I like Portage so much. If you don't like the package management features of your distro, I have to wonder why you are sticking with it in favor of a distro with better package management tools :)

      --
      MCSE? No, sir...I don't do Windows. Yes, I am an idealist. What's your point?
  32. Applications Paperwork. by Anonymous Coward · · Score: 0

    "Well, I'd have to say that with most software projects, they provide a makefile. Yes, I know that it's a little bit steeper of a learning curve, but come on, it's not THAT much more work. Now, if the user is not savvy enough to go through the make process (which is usually only 2 commands long), then I don't think that they should be installing that stuff anyways."

    Interestingly enough this is similiar to the answer prospective computer geeks get. If you don't meet [insert requirements here] then you're not allowed to play in our sandbox. Go back to Windows and "doing it for money, not love".

    1. Re:Applications Paperwork. by Anonymous Coward · · Score: 0

      If you can't meet the qualifications for a drivers license, you're not allowed to drive either

    2. Re:Applications Paperwork. by Anonymous Coward · · Score: 0

      ... because of course, someone who doesn't know that they must type "./configure --with-x11 --with-pthreads & make & make install" followed by changing some lines in ~/.foo/foo.conf, is as much a menace to his fellow human beings as someone who doesn't know that the red light means "stop the car and wait until the light turns green".

      With friends like you, the free software movement doesn't need enemies.

  33. *BIG sigh* Why not ask the mainstream users? by NeuroManson · · Score: 2, Insightful

    Look. If you want mainstream acceptance, then appeal to the mainstream. THAT is what will determine the best distro.

    One of the previous episodes of Drawn Together put it best:
    Spanky (to the TV Reviewer): No wonder you hate the show so much. You're everything we make fun of! You're a Jewish, conservative, pro-life, born again, overweight, Asian, homophobic lesbian broad who cuts herself!
    Reviewer: So?
    Spanky: So, maybe someone who doesn't happen to be a Jewish, conservative, pro-life, born again, overweight, Indian, homophobic lesbian broad who cuts herself might not be offended by our show.
    Reviewer: I have every right to tell people what I think of your show.
    Spanky: Yes! But people should know you're not our audience, asshole!

    You aren't making an OS to appeal to the guy in the cubibicle next to you in the CS class in college. You're making an OS, by your own claims basically, to overthrow the evil overlords (AKA Microsoft, if you ain't got it yet). So why is this STILL a debate today?

    Keerhist, I'm a furry artist, and even I recognize the concept of a limited market margin, but I don't spend my time in debates and having epileptic fits or Tourettes outbreaks in order to try forcing non furry fans to accept what I draw. Jeeze.

    --
    Just because you can mod me down, doesn't mean you're right. Shoes for industry!
    1. Re:*BIG sigh* Why not ask the mainstream users? by pandrijeczko · · Score: 1
      Look. If you want mainstream acceptance, then appeal to the mainstream. THAT is what will determine the best distro.

      Who's looking for "acceptance"??? I'm just looking for neat ways of doing stuff with computers...

      --
      Gentoo Linux - another day, another USE flag.
  34. You want "checkinstall". by khasim · · Score: 4, Informative

    What pisses me off is the 32 step process to making a deb (that's what dpkg calls a package btw.. just incase you're playing acronym bingo out there). So if you want to install something you built from source, and be able to remove it later, you need some freakin' magician to have made it into a source package.. cause there's no way in hell you're doing it yourself.

    Checkinstall http://www.debian-administration.org/articles/147

    It's not the answer to all issues regarding installing from source ... but it does handle some of them.

    What really depresses me is that debs, dpkg and apt, that's about the best anyone has done.

    Any suggestions on what would make them even better?
    1. Re:You want "checkinstall". by Anonymous Coward · · Score: 1, Insightful

      Any suggestions on what would make them even better?

      How about making it easy to install packages for yourself, without having any special permissions? I did that with .tar.gz's 10 years ago (./configure && make), but I don't know if it's even possible with a .deb, short of ripping apart the archive with ar and setting up an elaborate environment for the binary.

    2. Re:You want "checkinstall". by QuantumG · · Score: 1

      Thanks, checkinstall looks sweet.

      As for suggestions, sure..

      there should be a standard way to update the source of a debian source package to the latest CVS (or whatever) version. I shouldn't have to go to the project's web site and figure out how they do source code management. I know some people are already working on this one with bazaar.

      Once that's done, there should be a nice gui way to temporarily upgrade to the latest version of the software and then downgrade back to stable.. that way when I find a bug in a program I can quickly find out if it is fixed or not. This, of course, is a lot of different problems rolled into one.

      Friend of mine hates the way Ubuntu seperates things into a main package, a -dev package, a -docs package, etc.. There should be a --fat-packages option that he can use to combine all them together.. and yeah, this should be in the gui package installers too.

      Adding new repositories and setting your level of trust in them or preference over other repositories is still a pain.

      Can't think of any others at the moment.

      --
      How we know is more important than what we know.
    3. Re:You want "checkinstall". by fireboy1919 · · Score: 1

      I feel like you're approaching this from the wrong side.

      IMHO, the best binary installer is apt. It's got the most features that work.
      Similarly, the best source installer is Portage. So what I think we really need is something that works a bit like both.

      Bearing that in mind, you must also consider that portage was basically designed as an improvement of ports and apt. It's got a lot of the same features. Here's the deal, though: a source installer needs to be able to do everything that a binary installer can, and it must also be able to do a lot more. It needs to check for variables dependencies, and handle package compile options, downloading code from repositories, and sometimes dynamic dependency resolution. Of course, it also has to handle exactly the same things that apt does - installing binary packages, because not all packages are going to come in the form of source code.

      So portage is a much more complicated project than apt. Therefore, the easier way of going about what you're talking about is finding an easy way to address any problems with portage until it works as well as apt does.

      Trouble is, though, that portage was written in a rather slow bytecode-oriented language, and it's built up quite a bit of cruft. Its a system utility; it should be written in C.

      So while we're designing the perfect system, probably the fastest way to get there is to rewrite something that uses a lot of the same algorithms as portage, but is optimized and addresses any common complaints that have arisen. Then we just need to start maintaining a compiled code repository for it.

      Progress is being made on both the compile code and the optimization fronts. I hope to see great things by next year.

      Oh...and to aid in an upgrade path to such a thing, it should probably be able to use apt or rpm repositories and convert the packages therein into its own kind of packages (such a utility already exists to convert CPAN packages - why not others?)

      --
      Mod me down and I will become more powerful than you can possibly imagine!
    4. Re:You want "checkinstall". by Chandon+Seldon · · Score: 1

      Friend of mine hates the way Ubuntu seperates things into a main package, a -dev package, a -docs package, etc.. There should be a --fat-packages option that he can use to combine all them together.. and yeah, this should be in the gui package installers too.

      No, no, and oh god no. There should not be an utterly insignificant feature added that clutters up the UI unnecessarily and complicates the package system simply because your friend has an irrational dislike of having to check 3 boxes in the package manager. It's *possible* that there should be a "consider suggested packages as dependencies" checkbox in Synaptic next to "consider recommended packages as dependencies", but there shouldn't be a modification in the handling of packages nor a major UI complication as the result of some guy's arbitrary preference.

      --
      -- The act of censorship is always worse than whatever is being censored. Always.
    5. Re:You want "checkinstall". by cortana · · Score: 2, Informative

      dpkg --root=$HOME --install foo.deb

      That option also makes it easy to set up chroots.

    6. Re:You want "checkinstall". by QuantumG · · Score: 1

      Yes, because you can setup chroots as a normal user.

      --
      How we know is more important than what we know.
    7. Re:You want "checkinstall". by cortana · · Score: 1

      I suggest you re-read my post. Pay particular attention to the third word of the second line.

    8. Re:You want "checkinstall". by QuantumG · · Score: 1

      'also'? Just trying to see the relevance of your post.. we know you can extract the contents of a deb.. the problem is that you can't run it because the program assumes you have installed it..

      --
      How we know is more important than what we know.
    9. Re:You want "checkinstall". by cortana · · Score: 1

      Well that is really a failing of the program. I wouldn't assume that all programs act like that though. These days, many programs are written to be 'relocatable' as the buzzwords go--i.e. they will run from anywhere that you extract them to. This was traditionally Not Done on unixoid systems because there was no (good) way for a process to discover the location of its executable file. On Linux, however, a process can examine the symlink at /proc/self/exe to discover where its executable is in the filesystem; from there it can find its data files. Other modern operating systems have a similar mechanism.

    10. Re:You want "checkinstall". by QuantumG · · Score: 1

      Worse yet is the case when you have a program installed on the system already and you want to override it with a user copy.. and it goes and reads the system wide configuration file instead of the local one. But yes, that's a failing of the program.

      --
      How we know is more important than what we know.
    11. Re:You want "checkinstall". by QuantumG · · Score: 1

      One more thing about this.. how do I get the package? Is there an apt-get command I can use as a normal user?

      --
      How we know is more important than what we know.
    12. Re:You want "checkinstall". by cortana · · Score: 1

      You can use the web interface at http://packages.debian.org/ or run 'aptitude download'. Other apt-based software may also have an option to download packages instead of installing them.

    13. Re:You want "checkinstall". by QuantumG · · Score: 1

      I ended up doing this:

      wget http://archive.ubuntu.com/ubuntu/`apt-cache show netris | grep Filename | awk '{print $2}'`
      dpkg --extract netris_0.52-5_i386.deb netris

      Just a random package I chose there.

      --
      How we know is more important than what we know.
    14. Re:You want "checkinstall". by Muramasa · · Score: 1

      Checkinstall is a useful tool for trying out a piece of software that doesn't have a binary package. It is not a good way to actually create packages for distribution though. If you install a package with checkinstall, it's actual dependencies will not be added to your package database. You essentially have a broken package. If you have a bunch of checkinstall packages on your system, come upgrade time you will run into all sorts of problems because of your busted package db.

  35. A total load of bullshit, and here's why by Overly+Critical+Guy · · Score: 5, Informative
    My favorite thing in package discussions is when someone with an agenda towards a particular implementation writes out a list of steps. The alternative is always padded with extra steps to make it more difficult-looking while their favored implementation is reduced to look squeaky clean and easy.

    You padded the Mac list with the following:
    • "Open disk image that contains the program." - DMGs are auto-mounted by Safari.
    • "Open Applications folder." - There's already an Applications shortcut on the Finder, so you just drag to that when the disk image window automatically opens.
    • "Create new icon in dock." - The fuck? You don't have to do this
    • "Have to recheck the site periodically to check for a update for a specific program" - Bullshit. This doesn't even have to do with package management, and it's an OS X convention for apps to auto-check for updates when they're run. You don't have to recheck any websites.

    Your Debian list conveniently leaves out having to click the KDE start menu, fire up a Terminal window, type in the root password, waiting while the package manager goes through dependencies, etc. What a phony comparison of steps. I could just have easily reduced OS X's step to one line of "Drag app icon to Applications shortcut" in the same the way you reduced Debian's steps.
    --
    "Sufferin' succotash."
    1. Re:A total load of bullshit, and here's why by blofeld42 · · Score: 1

      The basic problem is that Linux installs spew a zillion freakin' files across the filesystem, and keeping track of them and their interactions is a mess.

      OS X has applications (drag & drop, self-contained) and system-level frameworks for shared stuff. All nicely compartmentalized. If you want auto-update you can just retrofit an rss feed to the system.

    2. Re:A total load of bullshit, and here's why by TERdON · · Score: 1

      # "Have to recheck the site periodically to check for a update for a specific program" - Bullshit. This doesn't even have to do with package management, and it's an OS X convention for apps to auto-check for updates when they're run. You don't have to recheck any websites.

      In my experience, it's only a very small minority of the programs that in reality do it though, so IMHO that point is very valid, on both Windows and Mac OS X, and the main reason I prefer the Gentoo/Debian package management approaches.

      The OS X way would be more or less perfect, if updates for third party products could be searched for automagically, just as with the Apple software (through the system updater).

      --
      I have a really elegant proof for Fermat's last theorem. If this sig was only a bit longer...
    3. Re:A total load of bullshit, and here's why by cortana · · Score: 1

      Except for the programs that don't use application bundles, precicely *because* they want to drop other files into other places on the filesystem.

      What is the Mac OS X equivalent of dpkg --listfiles packagename? See, dpkg tracks all the files that are part of a package _for_ you. Nothing difficult about it.

      How about apt-get upgrade? How about apt-get source?

    4. Re:A total load of bullshit, and here's why by Ash-Fox · · Score: 1

      Open disk image that contains the program." - DMGs are auto-mounted by Safari.
      Believe it or not, I don't use Safari on OS X. I like tabs.

      "Open Applications folder." - There's already an Applications shortcut on the Finder, so you just drag to that when the disk image window automatically opens.
      Except for the fact that you get weird web-folder crap often in those mounted drive images that popup that don't have the applications shortcut in finder. I should probably of said this point with "open another finder window or use a existing one other than this one to drag and drop"

      Bullshit. This doesn't even have to do with package management, and it's an OS X convention for apps to auto-check for updates when they're run. You don't have to recheck any websites.
      Too bad so many Mac applications don't follow OS X's conventions then, isn't it?

      Except Linux package management does this, and it's my opinion it's a good system, a feature that OS X lacks.

      Your Debian list conveniently leaves out having to click the KDE start menu, fire up a Terminal window, type in the root password, waiting while the package manager goes through dependencies, etc. What a phony comparison of steps. I could just have easily reduced OS X's step to one line of "Drag app icon to Applications shortcut" in the same the way you reduced Debian's steps.
      I rarely use the start menu, I usually do alt + f2 -> program name.

      As for the command line, I wasn't referring to being in X at that point.

      You get a point on the root password and reminded me that most package management on Linux does not permit so much user-specific installations as nicely.
      --
      Change is certain; progress is not obligatory.
    5. Re:A total load of bullshit, and here's why by Ash-Fox · · Score: 1
      Seems seems of my points didn't make it into the other post...

      Your Debian list conveniently leaves out having to click the KDE start menu
      I also 'conveniently' skipped opening a webbrowser on OS X too. Do you see a pattern here?

      "Create new icon in dock." - The fuck? You don't have to do this
      No, you don't, but if you want fast access to the application from the dock... (I tend to have nothing but the trash and applications folder in my dock -- But that's only because I got tired of adding each application).
      --
      Change is certain; progress is not obligatory.
    6. Re:A total load of bullshit, and here's why by IamTheRealMike · · Score: 1

      Too bad so many Mac applications don't follow OS X's conventions then, isn't it?

      You only get auto-update for software in the repositories. Some software is not. You might say, it does not follow the Linux conventions. So, why are you blaming OS X for apps that don't follow the conventions, when Linux has the same problem?

      Note also that fixing this for the developers on MacOS is pretty easy, just include the Sparkle library. Fixing it on Linux is really hard, and it's out of the developers hands. Basically if you are included correctly and kept up to date in a distro, it's a matter of luck.

    7. Re:A total load of bullshit, and here's why by FishWithAHammer · · Score: 1

      GAIM seems to do it pretty well, and that's just an example off the top of my head. There are many others.

      It's fairly trivial on Linux to at least alert the user that there's a new update.

      --
      "You can either have software quality or you can have pointer arithmetic, but you cannot have both at the same time."
    8. Re:A total load of bullshit, and here's why by IamTheRealMike · · Score: 1

      Gaim will tell you but it won't actually do the update. If your distro hasn't updated yet, you are hosed.

    9. Re:A total load of bullshit, and here's why by Ash-Fox · · Score: 1

      You only get auto-update for software in the repositories. Some software is not. You might say, it does not follow the Linux conventions. So, why are you blaming OS X for apps that don't follow the conventions, when Linux has the same problem?
      I can't even remember the last time I had this issue on Linux, definately isn't common in my experience.

      Note also that fixing this for the developers on MacOS is pretty easy, just include the Sparkle library. Fixing it on Linux is really hard, and it's out of the developers hands.
      Eh? I don't see the problem. Let's take Skype for example.

      Does it work with my package manager? Yes.

      Do I have to to download individual packages in a webbrowser then install them? No.

      Will my package manager get the latest version of Skype in their repositories? Yes.

      Basically if you are included correctly and kept up to date in a distro, it's a matter of luck.
      Or the developers could provide their own repositories. Or even submit their own packages to various distributions.

      In my opinion, if developers provide a program that is already setup to be packaged for RPM, DEB, that's probably the best way to go. Adding it to online source repositories -- even better. That way, even if your distribution/architecture doesn't have a binary package built specifically for it. You can just use one of the automated source building tools.

      Myself, I provide some source repositories for some small projects I work on. compiling, packaging and installing anything from them is just as simple as typing 'apt-build install programname'.

      As for included correctly -- Feel free to show me some verifiable statistics, such as in Ubuntu repositories, where things aren't included correctly. Most official and original developer's repositories have high standards.
      --
      Change is certain; progress is not obligatory.
    10. Re:A total load of bullshit, and here's why by Overly+Critical+Guy · · Score: 1

      I also 'conveniently' skipped opening a webbrowser on OS X too. Do you see a pattern here?

      No, you didn't. It was the first step you listed--"Find website of program."

      No, you don't, but if you want fast access to the application from the dock... (I tend to have nothing but the trash and applications folder in my dock -- But that's only because I got tired of adding each application).

      Fast access from the Dock has nothing to do with package management. I could say the same thing about creating a desktop shortcut in Debian. It's padding you stuffed into the list.
      --
      "Sufferin' succotash."
    11. Re:A total load of bullshit, and here's why by Overly+Critical+Guy · · Score: 1

      Believe it or not, I don't use Safari on OS X. I like tabs.
      ...Safari has tabs.

      Except for the fact that you get weird web-folder crap often in those mounted drive images that popup that don't have the applications shortcut in finder.

      Web-folder? Are you talking about customized Finder windows with background images and such? That's not a web page; you can customize any Finder window like that.

      I should probably of said this point with "open another finder window or use a existing one other than this one to drag and drop"

      Click the little pill button on the upper-right of the window to get the metal sidebar again. Most DMGs contain a symlink to the Applications folder right in the window anyway.

      Too bad so many Mac applications don't follow OS X's conventions then, isn't it?

      Be honest--have you even used a Mac? Mac apps have an application menu where the "Check for Updates..." item goes below the "About" item. Every app I know of has that option, and many auto-check on startup.

      Except Linux package management does this, and it's my opinion it's a good system, a feature that OS X lacks.

      I prefer a standardized menu item to a command-line package manager for program updates.
      --
      "Sufferin' succotash."
    12. Re:A total load of bullshit, and here's why by Ash-Fox · · Score: 1

      No, you didn't. It was the first step you listed--"Find website of program."
      Sorry, I consider searching for the correct website another step.

      Fast access from the Dock has nothing to do with package management.
      Perhaps I should of phrased it as "menu creation".

      I could say the same thing about creating a desktop shortcut in Debian.
      Desktop shortcuts for what?

      I certainly can see the use in having installed programs in a menu, but scattered on your desktop which you can't even scroll through when it's full is pointless. Hell, it isn't even organized unlike proper menu structures.

      It's padding you stuffed into the list.

      You have a point and I didn't realize it. OS X doesn't really use menus in the first place -- In this particular point it was my personal problems with the OS design, since I have 'workarounds' (applications folder in dock, and applications under proper categorical folder under that) -- my mind was set on that train of thought about dock items in OS X.
      --
      Change is certain; progress is not obligatory.
    13. Re:A total load of bullshit, and here's why by IamTheRealMike · · Score: 1

      I don't have statistics, only my own experiences as an upstream software developer. I have spent a significant number of hours, days, weeks, whatever, on fixing bugs introduced by packagers who did not understand the software they were packaging. Debian was particularly bad at this because it was nearly impossible to get the packages fixed. But at other times Red Hat, Gentoo, Slackware and Mandrake were also affected by packaging related bugs. This is not news to people who have developed complex software packages for Linux.

    14. Re:A total load of bullshit, and here's why by Ash-Fox · · Score: 1

      ...Safari has tabs.
      Well that's embarrassing. I honestly never noticed the tab support, and I've been using OS X since around the 9/11 event.

      Web-folder? Are you talking about customized Finder windows with background images and such? That's not a web page; you can customize any Finder window like that.
      That's what the folder customizations were called in win98, and more people are familiar with that term.

      Click the little pill button on the upper-right of the window to get the metal sidebar again.
      Heh, that crashes finder with Tinkertool's DMG, excellent.

      Most DMGs contain a symlink to the Applications folder right in the window anyway.
      Smaller utilities often don't.

      Be honest--have you even used a Mac?
      For many years. Been using Apple products since classic 7. However, OS X is something I rarely boot into anymore unless I want to test things in it (I personally get very irritated at the entire UI -- I don't want shadows, I don't want anti-aliasing, I don't want to use broken utilities that only manage to fix part of those problems etc.).

      Mac apps have an application menu where the "Check for Updates..."
      A very common thing I experience:

      AUS: Connection Refused
      (funny thing is if I extract the URL from the package, it works in the browser -- replicable with any mac on my network). So I can't really rely on the broken updater to tell me anything.

      I prefer a standardized menu item to a command-line package manager for program updates.
      Depends on what the computer is for. For my desktop systems, I like Adept to notify me by just popping up in my tray and update the system when I tell it to.
      --
      Change is certain; progress is not obligatory.
    15. Re:A total load of bullshit, and here's why by Blakey+Rat · · Score: 1

      Minority? We must be running very different software.

      Of the programs in my dock, exactly two (out of 19) don't auto-update themselves in some way. Those are Microsoft Remote Desktop and Cisco VPN Client. The rest either have their own auto-updater, or hook into the Apple Software Update program.

      The OS X way would be more or less perfect, if updates for third party products could be searched for automagically, just as with the Apple software (through the system updater).

      That will never happen on OS X, as it won't on Windows or Linux, because of legal and administrative reasons. Apple did used to offer the service, IIRC, and no third parties ever took them up on it.

    16. Re:A total load of bullshit, and here's why by Blakey+Rat · · Score: 1

      I'm guessing that you're either not a Mac user pretending to be one for some reason, or you've never actually looked at your expensive Macintosh.

      Believe it or not, I don't use Safari on OS X. I like tabs.

      Browser preferences are browser preferences, but, uh, Safari HAS tabs. I'm pretty sure it's always had tabs.

      Except for the fact that you get weird web-folder crap often in those mounted drive images that popup

      What are you talking about? What is "weird web-folder crap?" (Your technical terminology is excellent, BTW.)

      that don't have the applications shortcut in finder. I should probably of said this point with "open another finder window or use a existing one other than this one to drag and drop"

      4 points here:

      1) Click the weird oval thing on the title bar to show the toolbar, if that's what you're ranting about.

      2) I agree that it's moronic for software to instruct you to drag it into the Applications folder, and then hide the toolbar by default. Unfortunately, Apple can't do anything to fix moronic third-party software. (Some packages hide the toolbar, but put a shortcut to the Applications folder in the disk image window, which works well. Why all Mac developers don't do it, who the hell knows?)

      3) Many applications run just fine out of the disk image. In theory, all applications would run just fine from a disk image, but there are a lot of applications that require installation because they hook into the OS in some way, and there are a lot of applications written by programmers with a Linux or Windows background, so that ideal is a bit off.

      4) All that said, Finder does, indeed, suck ass.

      The UI design for Macintosh is basically based around the concept that "installation" doesn't exist, other than on the OS level. That is, if you see a .app file, whereever it is, you can double-click it and it'll run. This worked probably 90% of the time in Mac Classic, and it works maybe 75% of the time in OS X. It should be 100% with only extremely rare exceptions. Even Microsoft got this one correct: Office 98 for Classic would automagically re-install any support files it needed if it found they were missing and run without a hitch once finished. "Uninstallation" consists of dragging the application to the trash-- sure this leaves behind a harmless under 50k preferences file, but that's a lot less left-around junk than the average Windows uninstaller.

      If Linux emulated the "installation doesn't exist, just run the app" ideal, it'd be a hell of a lot easier to use, just as most people find Macintosh easier to use than Windows.

      And really, why SHOULD "installation" exist? You have a program, you run it. You're done with it, you can either keep it in a folder, or on your desktop, or even in a disk image if you want, or you can drag it to the trash. Easy, simple. The entire concept of "installation" needs to go away. One thing Apple had spot-on from day one.

      Too bad so many Mac applications don't follow OS X's conventions then, isn't it?

      Except Linux package management does this, and it's my opinion it's a good system, a feature that OS X lacks.


      What about all of the Linux applications that aren't in repositories? I guess they don't follow Linux's conventions, right? How is that any different?

      No OS is going to get perfect support from third party software developers. Hell, look at Windows: how many decades have they been telling software developers to write software so that it runs correctly for limited-access users, and how many Windows programs still require administrative access to run? The fact is, the vast majority of software developers don't know what the hell they're doing, don't give a crap about the quality of their software, and don't give a flying crap about following the approval process that OS makers like Microsoft and Apple have set up to ensure quality software. No system can fix that problem.

      I rarely use the start menu, I usually do alt

  36. That crap in Suse 10.1 sucks monkey nuts by pair-a-noyd · · Score: 0

    I upgraded from Suse 10.0 to 10.1 and I was PISSED at the total piece of shit, I think it was called "Smart" or something like that. What a pile of monkey shit that was. I found it to be so broken and so unusable that I wiped my disk clean and reinstalled Suse 10.0.

    I have no intentions of even looking into 10.2 because I'm in the process of backing up everything so I can wipe Suse (for their sins) from my system and replace it with Gentoo. 2007.0 should be out soon but I'm going to go ahead and load up with 2006.1 for now.

    1. Re:That crap in Suse 10.1 sucks monkey nuts by Hal_Porter · · Score: 1

      Gentoo will never be mainstream until it supports a user friendly installation method like Vista's MSI files.

      --
      echo -e 'global _start\n _start:\n mov eax, 2\n int 80h\n jmp _start' > a.asm; nasm a.asm -f elf; ld a.o -o a;
    2. Re:That crap in Suse 10.1 sucks monkey nuts by gbobeck · · Score: 2, Insightful

      Gentoo will never be mainstream until it supports a user friendly installation method like Vista's MSI files.

      I respectfully disagree with your statement.

      1. Gentoo already has a (somewhat) user friendly installation method. For packages, it happens to be called 'emerge'. For the Gentoo install itself, there is a graphical installer. Now, if someone out there would like to create a GUI interface to emerge, that would be cool.

      2. Gentoo doesn't really care about being mainstream. There happens to be a fairly large group of users who like bleeding edge. Gentoo is bleeding edge. Some people want to rice out their make.conf. Gentoo makes it easy for you to annoy everyone by ricing out your make.conf. (Hey, don't laugh, but all of my ricer settings in my make.conf file have really improved my server's performance by a whopping 0.0003%. That increase in performance makes doing absolutely nothing at idle go so damn fast!)

      By the way, .MSI is a (poorly) reversed engineered version of the InstallShield Installer.
      --
      Navicula hydraulica plena anguilarum est. Omnes castelli tuus nostri sunt. Ed elli avea del cul fatto trombetta.
    3. Re:That crap in Suse 10.1 sucks monkey nuts by pandrijeczko · · Score: 2, Informative
      2007.0 should be out soon but I'm going to go ahead and load up with 2006.1 for now.

      With all respect, making statements like the above only indicates that you don't fully understand what Gentoo versioning is about.

      "200x.x" just applies to the downloadable fixed distribution of Gentoo and is really only relevant if you have brand spanking new hardware that you need to work at the point of installation - then, possibly, you might wait for 2007.0 to come out because that would boot from a later Linux kernel that supported that hardware.

      Perhaps another reason might be that in building your Gentoo apps from source, 2007.0 will probably have a pretty recent GCC compiler version on it - whereas with 2006.1 you'd need to update the GCC and the toolchain first to get to what 2007.0 offers.

      But otherwise, once you get Gentoo installed and start updating your system with Portage, you'll use one single portage tree no matter what version of Gentoo you originally installed with so at that point, the version you originally installed with becomes pretty much irrelevant.

      --
      Gentoo Linux - another day, another USE flag.
    4. Re:That crap in Suse 10.1 sucks monkey nuts by pandrijeczko · · Score: 1
      Gentoo will never be mainstream until it supports a user friendly installation method like Vista's MSI files.

      And as a Gentoo user who has used it for a few years and can find absolutely no reason not to continue using it at the moment, your point is???

      Please excuse me but I'd lived my life up to this point assuming that an operating system and its associated applications enabled a computer to do the things you want it to do in the ways you want them done. I wasn't aware that there was now a requirement that one's operating system of choice had to be in "this Autumn's colour scheme".

      --
      Gentoo Linux - another day, another USE flag.
    5. Re:That crap in Suse 10.1 sucks monkey nuts by Anonymous Coward · · Score: 0

      10.2 /is/ worth a look, assuming you liked 10.0

      They fixed the broken package stuff...

    6. Re:That crap in Suse 10.1 sucks monkey nuts by massysett · · Score: 1

      Now, if someone out there would like to create a GUI interface to emerge, that would be cool.

      Kuroo for kdelibs
      Porthole for gtk+

    7. Re:That crap in Suse 10.1 sucks monkey nuts by gbobeck · · Score: 1

      Excellent!

      Thank you, kind Massysett. I have spread this information to my research lab's mailing list.

      --
      Navicula hydraulica plena anguilarum est. Omnes castelli tuus nostri sunt. Ed elli avea del cul fatto trombetta.
    8. Re:That crap in Suse 10.1 sucks monkey nuts by cecom · · Score: 1

      By the way, .MSI is a (poorly) reversed engineered version of the InstallShield Installer.

      For the record, this is completely false. I agree with your other points, though. Only the last sentence is misinformation which detracts from the valid points you are making.

    9. Re:That crap in Suse 10.1 sucks monkey nuts by gbobeck · · Score: 1

      Fair enough.

      I happen to be friends of a few former InstallShield employees, and that happened to be their statement.

      --
      Navicula hydraulica plena anguilarum est. Omnes castelli tuus nostri sunt. Ed elli avea del cul fatto trombetta.
  37. There are only 3 methods by bug1 · · Score: 1


    1) using your distro's tools and packages.
    If this doesnt work change distro's

    2) from source code.
    This should be fine as long as the user knows what hes doing and doesnt overwrite distro's files.

    3) using 3rd party tools or packages.
    Dont expect it to work, its a totally flawed concept, this method is for people who dont understand what a distro is, if it did there would be only 1 distribution. This is why LSB packages are doomed.

  38. #11. Fail gracefully. by khasim · · Score: 1

    Assuming that you can find the source code with a partial configuration file for the new requirements, the system should identify what functionality has been included and what has not been included and offer to try to guess what acceptable entries would be (or allow you to enter your own).

  39. No one really cares... by aero6dof · · Score: 2, Insightful

    I'm only exaggerating a little here, but no one really cares about the packaging format per se. They care that the can find, download, install, and run a package without hassles. Most formats take care of the mechanics of that process, but still need a community of people to track down and fix issues - mostly inter-package issues. Rpm and deb both have that kind of community behind them (both with sub-groups). If there is any technology to be improved here, it should be making package repositories better and reducing the workload of the supporting communities.

    1. Re:No one really cares... by pandrijeczko · · Score: 1
      They care that the can find, download, install, and run a package without hassles.

      This is exactly why I use Gentoo Linux, have converted a few Linux users to Gentoo, and even started a few Windows people off with Linux because they liked what they saw in Gentoo.

      Sure, it's not without the occasional compilation problem but you use one command, "emerge", to find the package you are looking for and then use "emerge" again to download and compile it (and dependencies if you've set it up correctly with a few "USE" flags). Then just leave it to it.

      --
      Gentoo Linux - another day, another USE flag.
  40. Been thinking about this problem for a long time by overbored · · Score: 1

    A lot of the focus is on rpms, debs, epkgs, etc., but there's a large body software specific to certain development platforms - think CPAN, PyPI, Gems, ASDF, HackageDB, etc. Many dependencies exist in these repositories, so it's important that they be unified as well. This might not be as straightforward (or possible) as I hope; perhaps one must first think (much harder than I care to ATM) about how the modules across all these platforms should interface/bind to each other.

    Furthermore, there would ideally be smooth integration with non-snapshot versions of software (e.g. from local source files or source repositories like CVS/SVN/Darcs). This would particularly be useful for developers to actually run/debug their work.

    Until we can completely unify everything - which won't happen anytime soon - I feel the community should refrain from trying to come up with half-way solutions. IMO things like DJB's /package are hurting more than they're helping.

    I don't know much about it aside from a quick glance many years ago, but I remember .NET's package system being pretty well thought-out. Strongly named, signed assemblies are critical to preventing versioning hell (just experienced this with the Twill + BeautifulSoup combo in Python). I think the concepts there are simple and should be learned from.

    Anyway, until we have a unified software system, I highly recommend a little-known program named Toast for managing software that lies outside your distro's native package management system. It's a complete hack, but it's damned effective.

  41. We're all trying to be hero's by Grinin · · Score: 1

    I think what is happening is that developers all want to be the one to come up with THE best method and they want it to be in THEIR distribution of choice. This leads to many people working on the same task all around the world, and coming to several different conclusions. It goes entirely against the original ideas of Linux. Linux was the result of many people from all over the world coming together to work with Linus's kernel code in order to create a stable and open source operating system. What ensued was marvelous, until the programmers decided to create more and more specialized distributions.

    Don't get me wrong, each distribution has its own pro's and con's but ultimately, for the sake of the operating system as a whole, you want to standardize the important components. The most important, in my opinion, is software distribution and software installation. If you're trying to convince a standard user to switch from Windows to Linux, and they go ahead and give it a try, I promise you that when they ask you "OK, so how do I install AIM? or how do I install this..." they will stop listening or paying attention when you've gone through the first couple steps.

    Linux by nature requires the end user to have extensive knowledge of the inner workings of the distribution itself. The original idea behind Linspire (formerly Lindows -- thanks for the lawsuit MS :( ) was to make Linux look and feel as much like Windows as possible, so that the end user is practically unaware that they aren't in Windows. This is why they are the creators of CNR and the driving force behind standardizing the distribution method.

    Naturally they are a company that is trying to profit from Linux, but then again, capitalism is what this country was based on, and if thats what it takes to get Linux to compete against Windows Vista, than thats fine by me.

    1. Re:We're all trying to be hero's by jmauro · · Score: 1

      It goes entirely against the original ideas of Linux. Linux was the result of many people from all over the world coming together to work with Linus's kernel code in order to create a stable and open source operating system. What ensued was marvelous, until the programmers decided to create more and more specialized distributions.

      You're kind of new to this whole "Linux" thing. I think you should go lookup the early Linux flame wars, the initial 4 sets of distrubitions, how the userland was stolen from GNU/HURD since the whole "world coming together" quite frankly wasn't in that case. OSS software is all about different ideas, different approaches. What works is accepted, what doesn't gets dropped. There has never been a unified approach to Linux from day 1.

      If you want a homogeneous architecture, where everything is done for you, buy a Mac.

  42. I hadn't thought of those. Good points! by khasim · · Score: 1

    With apt, your #10 is as easy as putting a line in your /etc/apt/sources.list file. But there should be some way of identifying all the packages (and everything should be a package) on your system and where to find the updates for them.

    Maybe even some way of running a report to find all the packages who's upgrade sites have not shown any activity in X days/months/years. And some means of pointing that package to a new site. Or even a way of identifying what packages were NOT checked for updates during a check.

    Thanks!

  43. Grass is dead on the other side of the fence. by Anonymous Coward · · Score: 0

    "There are many ways software is packaged in the Linux world, I agree 100% on this issue. But I also know that until software becomes portable *across* distributions, chances of Linux gaining a foothold in Joe User's mind and on hid desktop will be continue to be illusive at best. This is not good enough.

    You're making the somewhat dangerous assumption that a general policy of "one sizs fits all" is what the Linux user base both wants and needs - this is entirely incorrect.

    For example, as an experienced Linux user, the last thing that I want is a single, binary-packaged method of distribution of software."

    And I don't have to go any farther than that. Welcome to the KDE vs Gnome debate, except it's now Linux package managers vs everybody else. Care to guess how this battle is going to turn out?

    1. Re:Grass is dead on the other side of the fence. by pandrijeczko · · Score: 1
      Welcome to the KDE vs Gnome debate

      Actually, I mostly use XFCE4 though have one box running Gnome.

      But, once again, you've fallen into the "one size fits all" mentality trap.

      KDE is very pretty and a great "ambassador" application for Linux on the desktop. Friends of mine love it and I help them to set it up and use it - but I cannot personally bear it's bloat on any of my machines. But that's fine because whereas my friends prefer GUI usage, I'm more of a command-line person anyhow.

      But they like Linux their way, I like it mine. So what's the problem?

      --
      Gentoo Linux - another day, another USE flag.
    2. Re:Grass is dead on the other side of the fence. by Anonymous Coward · · Score: 0

      The "trap" as you put it is "control". In KDE you have control. When one uses Gnome someone else has control. This is reflected in Linux package manager wars as well. If you don't feel "in control" then you're not a real man. That's why there's such resistance to solving the problem. It's not technological, but psychological. What's the problem? Ask me in five years when that too is the "year of...". Maybe someone will come along and show you all that infinite choice isn't better than no choice, even if it makes you feel like a man.

    3. Re:Grass is dead on the other side of the fence. by swillden · · Score: 1

      Ask me in five years when that too is the "year of...".

      This contains the core of your misunderstanding... which is that Linux users and developers care about that. Oh, there are a few who do, and they're certainly welcome to work on variants that lead in that direction, but lots of us like the fact that we can make Linux look and act the way we want it to. That is why we use it. That is why Windows and OS X aren't as useful to us -- and never will be.

      To many (most?) Linux users, making the changes needed to reduce choice so that the Windows and OS X worlds are comfortable in Linux would just mean that we have to go find another OS. Except, of course, that Linux and all the rest of the software we use is open source, so we can simply ignore those change it in ways we don't like. We just won't use their versions of the software.

      --
      Note to ACs: I usually delete AC replies without reading them. If you want to talk to me, log in.
    4. Re:Grass is dead on the other side of the fence. by Anonymous Coward · · Score: 0

      "That is why Windows and OS X aren't as useful to us -- and never will be."

      Thankfully not all are so shortsighted.

    5. Re:Grass is dead on the other side of the fence. by pandrijeczko · · Score: 1
      The "trap" as you put it is "control". In KDE you have control. When one uses Gnome someone else has control.

      What in *GOD'S NAME* are you talking about??? What do you mean "someone else has control"??? KDE is one view of what a desktop environment should be, Gnome is another. Maybe you prefer KDE. So what? Have I not already stated that Linux is about choice??? As are package managers??? So what's your point???

      If you don't feel "in control" then you're not a real man.

      I'm sorry, but are you on some kind of mind altering drug??? Did you read my original posting???

      When I have a choice, I choose what I want to use, therefore I am in control of what I am using.

      But what the hell has this to do with being a "real man"??? I can't say my wife has noticed any impotence in me as a result of my Linux usage! And I'm sure there are single men, married men, homosexual men, anything men out there who like choice on the desktop.

      That's why there's such resistance to solving the problem.

      No. There is NO problem.

      What's the problem? Ask me in five years when that too is the "year of...". Maybe someone will come along and show you all that infinite choice isn't better than no choice, even if it makes you feel like a man.

      Please stop with the mushrooms, okay? Now you're blathering... go have a strong coffee and come down a bit. Then we'll have a discussion - when I know what it is you're actually talking about.

      --
      Gentoo Linux - another day, another USE flag.
    6. Re:Grass is dead on the other side of the fence. by swillden · · Score: 1

      "That is why Windows and OS X aren't as useful to us -- and never will be."

      Thankfully not all are so shortsighted.

      You need to read that link. Linus Torvalds has not switched to OS X.

      --
      Note to ACs: I usually delete AC replies without reading them. If you want to talk to me, log in.
  44. Basically all we need is a script that checks what package manager you're using, and adds the 3rd party repository to it and then instructs the package manager to install the package. Someone could whip this up over a weekend. This is hardly worth worrying about.

    Face it people, Microsoft has never come close to Linux on software installation.

    1. Re:ok by pandrijeczko · · Score: 1

      Basically all we need is a script that asks the user if they're too damned lazy to expend any effort into their computing and want everything handed on a plate to them.

      --
      Gentoo Linux - another day, another USE flag.
    2. Re:ok by tftp · · Score: 1

      99.9% of non-geeks are confused enough to believe that they are paid to use software applications, not to waste time installing them.

  45. A prediction and some thoughts to follow it by Raul654 · · Score: 1

    "You're making the somewhat dangerous assumption that a general policy of "one sizs fits all" is what the Linux user base both wants and needs - this is entirely incorrect."

    A one-size-fits-all solution is an absolute requirement if Linux is to gain any mainstream popularity. A balkanization of ways to do things is inherently harmful to a market with non-experts - e.g, the mainstream public. So, is one area where Windows gets it almost exactly right - compared to most Linux distros, installing software on Windows is a breeze. As I have previously commented here on slashdot, I think Ubuntu's decision to remove the compiler was at the same time both shocking and a huge step in the right direction towards more usability. (See my comment and subsequent reply for further explanation). In fact, if I had to pick the 3 things holding Linux back from becoming mainstream, I'd say it would be the inferior usability vis-a-vis Windows (especially where package management systems are concerned), lack of support for .doc files (OpenOffice is getting there, but is not there yet), and lack of drivers for cutting edge hardware.

    Problems 2 and 3 are distro-neutral (a solution to those problems would carry over to all distros equally) So, I think ultimately if any distribution of Linux is to succeed in becoming mainstream, it will be the one that makes the correct decisions where usability is concerned - especially package management systems. And if I had to place a wager today, I'd say Ubuntu, because aside from some irritating initial configuration issues, I think their package management system is the closest to Windows in terms of ease-of-use (They took a hard-line with their default system configuration excludes packages containing non-free software; a case of deferring to the philisophical rather than usability concerns).

    Assume this prediction comes to pass - that one distro 'gets it right' and goes mainstream. I think the effect on other distros would be mixed. Manufacturers would support hardware for the one popular distribution, so other distributions would benefit where drivers are concerned. Ditto for open-source apps (like openoffice) that would also become mainstream and thus improve through popularity. On the other hand, other distros that do things differently (especially Gentoo) would immediately become niche markets with the Linux community - the same status BSD now has within the OpenSource community. (In a word - living dinosaurs).

    --


    To make laws that man cannot, and will not obey, serves to bring all law into contempt.
    --E.C. Stanton
    1. Re:A prediction and some thoughts to follow it by pandrijeczko · · Score: 1
      A one-size-fits-all solution is an absolute requirement if Linux is to gain any mainstream popularity.

      But I absolutely, 100% do NOT CARE about Linux's "mainstream popularity".

      I still use Windows XP for about 20% of my computing time because I enjoy a few games and like using a few Windows based apps. I'm not into political posturing or fashion - sorry.

      For me, a computer is a tool for getting jobs done and having fun with. If one OS catered for all of my needs 100% of the time, then, yes, I accept it would be less inconvenient to not have to switch between two OSes on occasions. But otherwise, I just use what I need to when I need to.

      --
      Gentoo Linux - another day, another USE flag.
    2. Re:A prediction and some thoughts to follow it by hitchhacker · · Score: 1

      A one-size-fits-all solution is an absolute requirement if Linux is to gain any mainstream popularity.

      There is an easy solution to this.
      Stop thinking of Linux as an operating system, because it isn't.
      This one-size-fits-all solution has already been embraced by individual Linux distributions. Why does Linux have to gain mainstream popularity when something like Debian with a Solaris kernel could do the trick?

      I'm beginning to see less relevance at the kernel level. Where the distro packaging systems are being ported to many different kernels. I like the idea of choosing which kernel you want when installing the distro. Be it a BSD, Linux, Darwin, HURD, OpenSolaris, Haiku, or even Windows with Cygwin.

      -metric

    3. Re:A prediction and some thoughts to follow it by Anonymous Coward · · Score: 0

      "A one-size-fits-all solution is an absolute requirement if Linux is to gain any mainstream popularity." ...and why does everyone care about this so much? Why must everything measure up to windows.

      "I think their package management system is the closest to Windows in terms of ease-of-use..."

      Last time I checked windows didn't have a package management.

      The last thing I want is for GNU/GPL Linux to become popular for idiots. Idiots don't help code, report bugs or help out in the forums. They cry, scream and compare Linux to Windows.

    4. Re:A prediction and some thoughts to follow it by hitchhacker · · Score: 1

      Last time I checked windows didn't have a package management.

      Actually, windows has MSI files now, which Installshield and WISE both use internally.
      I'm not sure if this qualifies as good package management... e.g., lack of dependency resolution.

      -metric

    5. Re:A prediction and some thoughts to follow it by jmauro · · Score: 1

      compared to most Linux distros, installing software on Windows is a breeze

      Spoken like someone who's never had a Windows install fail in 20 different ways on 20 machines that are imaged in exactly the same way. Or had a Windows app literally refuse to uninstall.

      Linux has it's problems in the package distributions, but the total lack of a real package distribution in Windows is a serious failing. Windows doesn't even have anything close to RPM, apt, or portage. You're at the mercy of each vendor to do the right thing (and they all do something completely different since they there are no "right way" to do it). And I've yet to see a Windows package un-install correctly, they all leave litter around the registry or the file system.

  46. Re:The 6th way by JPriest · · Score: 1
    Using something like Gobo Linux.


    Gobo installs applications into their own directories, like /programs/xmms, but it matters little which packaging system is used to place the applications there.

    I also tend to think something like this is a good idea. Perhaps creating a /programs/xmms/uninstall.xml with a list of files and file locations that were installed with the package would free from dependance on any specific method of installing software.

    Maybe /opt could be used for this? /opt/xmms, /opt/firefox etc.?

    --
    Saying Java is nice because it works on all OS's is like saying that anal sex is nice because it works on all genders.
  47. MOD PARENT UP by QuantumG · · Score: 2

    Yes, very good point. Forgot that one. Sometimes I actually think every user should have their own unionfs for / then they could write anywhere they want, change any configuration file they want, etc. Of course, when the su or sudo their unionfs goes away :)

    --
    How we know is more important than what we know.
  48. Why is this rocket science? by Alkonaut · · Score: 1
    What ideas other than the apt/rpm/portage ideas are there? They are all the same idea!

    The requirements are pretty obvious.

    1) A novice must be able to install any software, update it remove it etc.

    2) Upgrading, downgrading or using multiple versions of the same software must be easy.

    3) Finding where all files of an application is must be trivial. Unless absolutely necessary, nothing can be spread out, or arbitrarily placed! (/usr/local/bin anyone?)

    I think that the port/apt "dependency tree" is making it more difficult than it needs to be. Why even bother with dependencies? If application A needs B 2.0 and C 3.0 then why not bundle those dependencies with the application? The result of course would be that you have a zillion copies of the same low-level dependency, and that you can't update that dependency centrally. Applications that are today 1mb in download size would grow to 100mb with dependencies that I already have. But I wouldn't mind that. I have plenty of disk space and bandwidth, and I'd rather update all my applications to make use of a new version of a dependency, than worry about how my applications whould handle a central update of the dependency.

    1. Re:Why is this rocket science? by Anonymous Coward · · Score: 0

      The result of course would be that you have a zillion copies of the same low-level dependency, and that you can't update that dependency centrally. Applications that are today 1mb in download size would grow to 100mb with dependencies that I already have. But I wouldn't mind that. I have plenty of disk space and bandwidth, and I'd rather update all my applications to make use of a new version of a dependency, than worry about how my applications whould handle a central update of the dependency.

      it was done this way on purpose to make the OS less resource hungry. this way of doing things also uses up more memory, not just HD space. if you want to waste your resources like this, windows behaves this way exactly, with multiple copies of DLL's not just on your hard drive, but eating up your RAM too.

    2. Re:Why is this rocket science? by Anonymous Coward · · Score: 0

      Applications that are today 1mb in download size would grow to 100mb with dependencies that I already have. But I wouldn't mind that. I have plenty of disk space and bandwidth

      Because it's all about you, you, you.
    3. Re:Why is this rocket science? by wexsessa · · Score: 1

      Aha! So that's why Windows has such a miniscule market share.

    4. Re:Why is this rocket science? by Viceroy+Potatohead · · Score: 1

      Applications that are today 1mb in download size would grow to 100mb with dependencies that I already have. But I wouldn't mind that. I have plenty of disk space and bandwidth, and I'd rather update all my applications to make use of a new version of a dependency, than worry about how my applications whould handle a central update of the dependency.

      Yuck! Not me. Think of updating. As some core library update gets propagated throughout the various packages, I don't want my system churning away, wasting bandwidth, doing the same thing hundreds of times. Nor do I want my system bloated so unnecessarily. That solution would work, but it's kind of a cludge, and I'd prefer the current systems over that. It's all a matter of taste and available technology, I suppose.
    5. Re:Why is this rocket science? by ratboy666 · · Score: 1

      "1) A novice must be able to install any software, update it remove it etc.

      2) Upgrading, downgrading or using multiple versions of the same software must be easy.

      3) Finding where all files of an application is must be trivial. Unless absolutely necessary, nothing can be spread out, or arbitrarily placed! (/usr/local/bin anyone?)"

      In a word: NO.

      A novice must NOT be able to install any software. An absurd idea, at best. We can discuss this matter further, but this treads into the security area.

      I agree with point (2); Unix offers multiple shared object versions to assist with this.

      I think that with point )3) you are on the wrong track. Each of these directories does have a purpose. For example, a Linux (Unix -- I'll use Linux for here on) box can be booted WITHOUT having /usr available. A typical "full" distribution has several megabytes outside of /usr, and several gigabytes IN /usr. Specifically, /usr can be mounted over a LAN, allowing MOST of the OS to be shared. The corrollary of this is /usr can be mounted READ-ONLY. /usr/local are "local" additiona to /usr. Specifically stuff that is NOT in the standard distribution. Which is why /usr/local is automatically targetted by GNU autoconfig based "source software". If there is anything in /usr/local, you know the system is running "custom" applications. /etc is for configuration, and is per-machine. But it is NOT for application state information. That is in /var. Per-user customization and state is in the users home directory.

      Now, this stuff is probably not important for a single machine running at home. Apples OS X departs signficantly. But this stuff is important when trying to expand a system and network. There IS a reason its done this way. Bear in mind that even the "mainstream" Linux vedors occasionally screw up. For example, Redhat 9 Linux put the hardware detection code (used at bootup) into the /usr area. It could be removed (by disabling the hardware detect at boot), thus restoring /usr mount after boot functionality.

      --
      Just another "Cubible(sic) Joe" 2 17 3061
  49. Possibly. by khasim · · Score: 1

    Going with your lDAP example, just always install the LDAP libraries. What's the harm? A few kilobytes of disk space in exchange for a much-simplified package system is a perfectly acceptable tradeoff.

    But there are some incredibly bright people working on Linux. You never know whether one of them can come up with a simple and elegant solution to a problem such as this without asking.

    Such functionality would probably be beyond the basic options of installing an unpackaged app from source code. But there's no reason that additional information couldn't be included with packaged apps detailing the more common options.

    The fewer apps you're running, the fewer avenues of attack there are for you to be compromised. This could be a great feature for securing boxes.
    1. Re:Possibly. by QuoteMstr · · Score: 2, Informative

      Such functionality would probably be beyond the basic options of installing an unpackaged app from source code. But there's no reason that additional information couldn't be included with packaged apps detailing the more common options.


      At least in the RPM-speaking world, we already have this functionality in the SRPM, though not in a formalized sense. Often, compile-time options require only very small changes to the spec, or can be given on the command line. For example, the bytecode compiler option for most freetype RPM packages falls into this category.

      The fewer apps you're running, the fewer avenues of attack there are for you to be compromised. This could be a great feature for securing boxes.


      I believe that the set of people who want to go gung-ho securing their boxes, who know what they're doing, AND who can't be bothered to recompile packages from SRPM form is very small.
    2. Re:Possibly. by VENONA · · Score: 1

      "I believe that the set of people who want to go gung-ho securing their boxes, who know what they're doing, AND who can't be bothered to recompile packages from SRPM form is very small."

      From the perspective of a desktop user or admin of a small installation, you're likely correct. From the perspective of a large installation admin, probably not, at least in terms of end result.

      In the latter case the problem probably wouldn't be so much of a 'can't be bothered' thing, so much as time constraints brought on be either of two things: a) the need to push out a package upgrade quickly because of a pressing security issue, or someone higher on the corporate food chain clamoring for some new bit of functionality, or b) the systems group has innadequate resources to do more than push binaries.

      There can also be issues related to some sort of vendor support breakage if they leave the the world of standard packages. There are lots of apps out there that are supported by companies other than the Linux distributor. This sort of thing adds another possibility of something going wrong, and you being stuck between two vendors who each claim it's the other's problem.

      If there is a God, I suspect his name is Murphy.

      --
      What you do with a computer does not constitute the whole of computing.
  50. I'd modify numbers 7 and 8 by jd · · Score: 1
    On 7, when using multiple repositories, the packages should state the assumptions made at time of packaging. You should be able to reject a package on assumptions that are not valid for your system -or- your way of doing things. So that this actually works, you'd need a standard, common list of assumptions that could be tested against.

    For 8, There should be the ability to respond to optional software dependencies, as well as hardware dependencies. This should either be automagic or (at the user's discretion) from a picklist that the package manager can plug into the package's configuration mechanism.

    I'd also include four more:

    #9. It must be possible to dump and reload the database using a single command for each operation. Reloads should optimize seek times for frequently-accessed records.

    #10. There must be a way to validate the database's integrity and eliminate phantom and corrupt entries.

    #11. Some idiot package managers put the same file into multiple packages, making it impossible to install cleanly. When a file is already installed and the SHA1/MD5 checksums confirm the packaged file is identical, the database should simply increase the count on that file and not install it, rater than error out - unless the user flags that the package manager should do so.

    #12. Name clashes are beginning to get out of hand and not all major programs out there conform to LSB anyway. There should be two options - one to install software in a more robust way (for those installing many packages) and one to massage non-LSB software to conform to existing standards when this is the preferred option.

    Since all existing package managers can perform at least a subset of all of these, it should be possible to provide the necessary extra tools to provide them all. The "standard" package manager then becomes a wrapper over whatever actual package manager is installed. Eventually, if the wrapper is any good, people will migrate code to the wrapper and package managers as they exist today will be assimilated into the Borg Collective. If the wrapper is crap, then at least all package management systems will have some measure of interoperability and the stress over which to use will go down.

    --
    It's a small world and it smells funny; I'd buy another if it wasn't for the money; Take back what I paid (SoM)
  51. PC-BSD by Anonymous Coward · · Score: 0

    Its not linux, but pcbsd has download and install from single file. Unlike klik, you can download file while in windows.
    http://www.pcbsd.org/

    1. Re:PC-BSD by ynososiduts · · Score: 1

      Sorry for replying to my own comment, but felt it was necessary. I should have including the link. Here you go: http://www.pbidir.com/

      --
      622677120
  52. So... by God+of+Lemmings · · Score: 1

    Is anyone actually working on some kind of universal package installer that wraps around everything else yet?
    It would be nice to be able to use rpm, portage, apt, and so on under any other linux/bsd but with one single
    package database and a common interface.

    --
    Non sequitur: Your facts are uncoordinated.
    1. Re:So... by crimperman · · Score: 1

      Is anyone actually working on some kind of universal package installer that wraps around everything else yet?

      How would that work exactly. Packages are often built on and for a particular distro. consequently they expect certain things in certain places and things to work in particular ways. This goes beyond LSB stuff for location of libraries etc. Most daemon packages will include init start/stop scripts, a SuSE init script for mysqld is different to a Debian one.

      I would say that if you want some software that is not included in your chosen distro's package list, download the source, build and install a package of your own. That way you keep your package manager informed of what is going on.

      Package managers all have one thing in common, in order to work for you properly they must be able to manage what is and is not installed.
  53. Install in a user account by Willbur · · Score: 1

    A feature you missed is the ability to install into a user account.

    I don't have root access on every box I use. I want to install programs anyway. e.g. If I want to install a new version control system for my use, why should I need root access?

    This is possible if I build from source, but the packaging system should make it easy.

  54. rpm, deb -- pick one by oohshiny · · Score: 1

    RPM and Debian package formats are pretty much "it" when it comes to software distribution on Linux. They are lightyears ahead of anything either Windows or OS X offer. They are consistent for each distribution--everything you need can be installed with a single format and interface--and they work extremely well for keeping everything up to date.

    What is particularly evil is the "install on any distribution" or even worse "drag-and-drop" installations because they circumvent all the consistency checks and automated update features of the distributions and standard packaging systems. And "self-updating" distributions are evil because they bother the user with trivia ("Version 1.9.1.23.1 is available; may I waste your time now, or later?") and present a security hole.

    Pick one of rpm and deb and stick with it. Both formats can be improved incrementally, and maybe even integrated eventually, but we don't need anything new.

    1. Re:rpm, deb -- pick one by crimperman · · Score: 1

      What is particularly evil is the "install on any distribution" or even worse "drag-and-drop" installations because they circumvent all the consistency checks and automated update features of the distributions and standard packaging systems. And "self-updating" distributions are evil because they bother the user with trivia ("Version 1.9.1.23.1 is available; may I waste your time now, or later?") and present a security hole.


      Agreed. The real key issue (for me) with packages is not the package manager or the type of package (rpm/deb etc.) it's the repositories.
      Any software installation system that expects me to download packages from half a dozen different sites, manage dependencies myself and keep on top of security updates (for all software not just the OS) etc. is way behind the times. This includes Windows and some of the GNU/Linux distros.

      What I want/need is a system where pretty much everything I want is downloadable/updatable from a single command, two or three repositories (at the same remote location) and handles dependency properly.

      For me this system is apt on Debian. I will concede that others prefer rpms etc. but having been forced to use YUM (on a different system) recently I will stick with apt thank you very much (particularly with apt-listbugs as well). :o)
  55. Defective by design by Wiseman1024 · · Score: 2, Insightful

    The need for package managers in Linux is a consequence of a desgin defect. First, there's the "lol freedom" philosophy of not having one, two or even three different OS setups and layouts, but a gazillion of them, which causes trouble.

    Second, there's the FHS, which is the worst idea to ever make it to Unix. You spread your application files like you deal cards in some card games, being completely unable to copy or relocate them, pack and unpack them effectively, or install several versions of the same program, besides being illogocal and semantically wrong in many parts.

    Third, there's the defective LD_LIBRARY_PATH behaviour that makes "." mean the launch directory, not the application directory (holy retarded idea, Batman!). This means you can't rely on putting copies or hardlinks of the required libraries in the application executable directory to keep everything using the right libraries and versions and make them easy to distribute. This led Mozilla to find a workaround with a shell script. When you run Firefox or Thunderbird on Linux, what you're running is a shell script (requires an extra sh instance) that properly sets the environment for the software to be able to use its own libraries regardless of the crap you may have in your FHS "boxes of random crap". Consequently, software like Firefox and Thunderbird do not require a package manager (in fact, PMed versions of them are usually spoiled and crappy), and can be safely copied, relocated, or made to coexist with other versions.

    --
    I was about to say 13256278887989457651018865901401704640, but it appears this number is private property.
    1. Re:Defective by design by spitzak · · Score: 1

      There is a switch to the linker that makes it look in the same directory as the executable for shared libraries, before looking in LD_LIBRARY_PATH and then in the built-in path.

      Add this to gcc when linking the program: -Wl,--rpath,'$${ORIGIN}'

  56. There is a unified package format by ajs318 · · Score: 1, Troll

    There is a unified package format, and that is the source code tarball.

    People need to be disabused of the notion that there is anything bad about compiling on your own machine. Gentoo and FreeBSD prove that is not the case.

    --
    Je fume. Tu fumes. Nous fûmes!
    1. Re:There is a unified package format by Anonymous Coward · · Score: 0

      Yes there is, it is slow and redundant in most cases. It also doesn't work when the application isn't open source, plus it is dependent on the correct ebuild (and whatever FreeBSD uses) being available to build the package for you.

      I don't mean this to be a criticism of Gentoo/FreeBSD, it is just their system is not the universal solution you purport it to be. IMO the best solution is using a distros native package managament for most software and Autopackage for extras, though I don't know why it isn't better supported with more packages being made available in that format - maybe it isn't as good a solution as I think it is.

    2. Re:There is a unified package format by ajs318 · · Score: 1

      Please, don't use the "it's slow" argument. Anything worth doing is worth waiting for.

      Suppose you had some feature in your kernel that would only allow it to run binaries compiled on that machine -- say, a signing key embedded in the compiler and the corresponding key embedded in the kernel. Suppose also that the compiler is on a filing system that isn't normally mounted, requiring you to do something deliberate to enable it; or it will only accept source code that you have signed. The important thing in either case is a deliberate act on your part.

      Malware simply wouldn't have a chance to spread in such an environment. It couldn't spread as a compiled binary because binaries compiled on other machines won't run on your machine. It would have to spread as source code, thus exposing it to people on The Right Side Of The Fence. And it couldn't get itself compiled by accident, because enabling the compiler requires a deliberate act. Its propagation would stop with the first person who didn't just keep blindly clicking on "OK" without reading what the warnings said.

      --
      Je fume. Tu fumes. Nous fûmes!
    3. Re:There is a unified package format by Anonymous Coward · · Score: 0

      Yes, some things are worth putting in extra effort and waiting for. For example I prefer cooking most of my food rather than buying ready meals. However compiling my own software isn't worth it, not even in the scenario you give. This is because I don't have the time or knowledge required to verify all the source code myself, most other people are the same, so there would be no difference between running binaries someone else has signed and compiling yourself. Your scenario is only really worthwhile when you need to be absolutely sure your system is secure and have the time to verify all the source code you compile, this isn't the case for most people.

      I have done LFS and used Gentoo for several months so I know for most people (me included) that there is no real benefit to compiling everything therefore compiling everything is a lot slower that just getting the binaries and you will achieve the same result.

  57. GNU/* by mangu · · Score: 1
    the author uses "GNU/Linux"


    And that's one symptom that indicates his views will never become a consensus in the Linux community. This mania of prepending "GNU/" on the Linux name is considered obnoxious by a majority of the people who use and contribute to Linux.


    Yes, of course, having gcc and bash available helped the Linux expansion. But let's consider things from a balanced point of view. It's not so hard to write a compiler, linker, command interpreter, etc, which is what the GNU/ software does. Linux would still have existed without GNU/, but, without Linux, GNU/ would be where it was in 1991 and still is today, 16 years later: struggling to make their Operating System, the GNU/hurd, work. "Only a kernel" my ass!


    This "GNU/Linux" thing downgrades the perceived value of both GNU and Linux. They make an effort to claim that Linux is a more or less insignificant "kernel", but at the same time it gives the impression that GNU cannot survive alone, it depends on Linux to exist. Let GNU be GNU and Linux be Linux, they are both great by themselves, they don't need to step on each other's toes|


    1. Re:GNU/* by Anonymous Coward · · Score: 1, Insightful

      It's not so hard to write a compiler, linker, command interpreter, etc

      No? Which of them have you written?

    2. Re:GNU/* by cortana · · Score: 1

      "Not so hard"? Why does everyone use GCC instead of implementing their own compiler then?

    3. Re:GNU/* by Anonymous Coward · · Score: 0

      > And that's one symptom that indicates his views will never
      > become a consensus in the Linux community.
      > This mania of prepending "GNU/" on the Linux name is considered
      > obnoxious by a majority of the people who use and contribute to Linux.

      Speak for yourself. I do contribute, and like to call things as they are.
      *Flash* Big news for you: there are systems almost identical to
      GNU/Linux which do not happen to include Linux!

      See http://www.gnusolaris.org/ http://www.debian.org/ports/hurd/
      and get a clue.

    4. Re:GNU/* by Anonymous Coward · · Score: 0

      >>the author uses "GNU/Linux"
      >And that's one symptom that indicates his views will never become a consensus in the Linux community.

      ??

      >This mania of prepending "GNU/" on the Linux name is considered obnoxious by a majority of the people who use and contribute to Linux.

      No. Giving credit where credit is due is normal.

      >Yes, of course, having gcc and bash available helped the Linux expansion.

      Or, helped write Linux at all.

      >But let's consider things from a balanced point of view.
      > It's not so hard to write a compiler, linker, command interpreter, etc, which is what the GNU/ software does.

      It is very hard to write a compiler and mindbogglingly hard to write a linker that doesn't take 3 TB RAM to resolve dependencies / optimize out unused bits.

      Of course if you are thinking tcc instead...

      > Linux would still have existed without GNU/,

      Oh, he would have written a compiler? That's interesting...

      >This "GNU/Linux" thing downgrades the perceived value of both GNU and Linux. They make an effort to claim that Linux is a more or less insignificant "kernel", but at the same time it gives the impression that GNU cannot survive alone, it depends on Linux to exist. Let GNU be GNU and Linux be Linux, they are both great by themselves, they don't need to step on each other's toes|

      So remove GNU from Linux and see whether you can even boot to a prompt.

      (I know a way, but it's not common)

    5. Re:GNU/* by maestroX · · Score: 1

      Yes, of course, having gcc and bash available helped the Linux expansion. But let's consider things from a balanced point of view. It's not so hard to write a compiler, linker, command interpreter, etc, which is what the GNU/ software does.
      GNU/Linux accurately describes the symbiotic relationship between the GNU toolchain and Linux. Ever tried to compile a linux kernel with Visual C++? Ever tried GNU in a non-Linux environment? Both are possible, but most efficient when coupled.


      No, it is not hard to write a compiler or linker, but neither is it to write a kernel. It is hard to write a kernel or compiler that can compete with 10+-years evolving software if not only feature-wise.

    6. Re:GNU/* by mangu · · Score: 1
      Which of them have you written?


      All of them. As I said, it's not hard.


      I'm currently working on a compiler that transforms code from VAX-FORTRAN to a subset of Fortran that's compilable in a common Fortran-77 compiler. This compiler is for a very specific application, migrating a legacy software, about 400000 lines, from an old VAX computer to Linux. Although the end result will be compiled in gcc, most of the work I'm doing is in Perl, should I prepend "Perl/" to its name?

    7. Re:GNU/* by mangu · · Score: 1
      GNU/Linux accurately describes the symbiotic relationship between the GNU toolchain and Linux.


      No, it doesn't. If they were truly acknowledging such symbiosis, they would similarly attach a "Linux/" to all of the GNU software.


      As you say, GNU without Linux sucks, as anyone who ever tried to run Cygwin in a "GNU/Microsoft" system can tell. To see why Linux is so much more than just a kernel, try running a GNU/hurd system. After all, Linux is a kernel and hurd is a kernel, right, so why can't you replace one with the other?


      The way I see it, Linux is an Operating System. It includes many parts, one of them is the kernel, which was initially written by Linux Torvalds for a 386 CPU. Another important part in a system is the set of utilities that the GNU organization contributed. But to say that the whole system is GNU/Linux fails to acknowledge many other essential parts. How about the hardware? Device drivers? GUI? Applications?


      If I were to give equal time to everybody who contributed essential parts when naming my system, it would be a GNU/nVidia/Intel/Seagate/Philips/HP/ ... etc ... /Perl/Python/Java/Mozilla/Trolltech/KDE/ ... etc ... /Linux machine. It's true, GNU software was a very important part of Linux from the start but, if Linux is just a kernel then GNU is just a set of software.

    8. Re:GNU/* by Anonymous Coward · · Score: 0
      So remove GNU from Linux and see whether you can even boot to a prompt.

      1. Intel C Compiler and tool chain
      2. DietLibc or uClibc
      3. Zsh
      Not exactly hard. The rest of the CLI userland can be found from various sources (E.g. Busybox or *BSD) and X isn't GNU to begin with.
    9. Re:GNU/* by Anonymous Coward · · Score: 0

      As you say, GNU without Linux sucks, as anyone who ever tried to run Cygwin in a "GNU/Microsoft" system can tell.



      What's your beef with Cygwin? I think its pretty f'ing good. As good as having a Terminal in BSD/Mac OS X.

      I've moderated elsewhere, so I'm posting anonymously.
  58. Real problem is dependancy management! by anwyn · · Score: 0
    When someone complains about the various software package utilities, the problem usually boils down to:

    • A simple problem that can be easily fixed. OR:
    • A problem with dependancy management!

    The problems is that dependancy management is an essentially hard problem. Some problems of dependancy management can not be solved automaticly but require human judgement to find the best compromise. It is hard to write software that solves the easy cases, but welcomes human intervention to solve the hard problems. Joe Sixpack is not up to this in most cases. Most of the work in setting up a distro is designing a policy as to how dependancies are to be handled, that will allow the user to choose a subset of a given set of supported packages. No distro has come up with a perfect solution. It is unlikely that a "magic bullet" will be found that solves this problem.

  59. D&D by Savage-Rabbit · · Score: 1

    Because my 72 year old mother can, and does, install programs herself in Windows. If it requires anything more complex than "double click on setup.exe" or "double click on the program icon when you save it", you've lost her completely and I have to tunnel in to her machine or make a 125 mile drive. He does have a point you know. The Windows 'setup.exe' installation system is hardly the ultimate... it has been improved upon and I see no reason to copy it just because it is familiar to Windows users. Amazing as it may seem people actually have problems with the Windows setup process, simple as it seems to the average nerd. How about the OS.X model of dragging and dropping an Application bundle to the "Applications" folder but leaving the installation package option open for advanced users? I have yet to meet a Windows user who had problems with that concept. The only question they ever have is: 'Is it really that easy?' If Linux were to copy any installation method I would prefer it to be an improved version of the OS.X drag-and-drop application bundle.

    Regardless of the exact implementation details there should be an open Linux standard that all desktop suites and all Linux distros could implement on their own but that would provide inter-operability. It should be a system that makes provision for easy installation of GUI apps for novices (preferably drag-and-drop), and by packages for advanced users (both for GUI apps and command-line apps, drivers etc..). The standard should also require the ability to track any configuration files the app generates in standard system folders after installation. Of course the scheme would be a compromise that would sacrifice some functionality for standardization and there would always be distros that would recoil from it in disgust go the way their beliefs on OSS-puritanism dictate but at least it would give business oriented distro's like Suse and Red Hat some UI consistency.
    --
    Only to idiots, are orders laws.
    -- Henning von Tresckow
    1. Re:D&D by babbling · · Score: 1

      I think the OSX drag-and-drop method really stinks. It's not intuitive at all. I was using OSX for the first time on my girlfriend's laptop a bit over a year ago and couldn't figure out how to install Firefox on it until she told me I had to drag it into the Applications folder. It's easy once you know what to do, but what you have to do is not at all obvious to a first-time user.

      How about, you download this file, double click on it, and then a little window pops up with an "Install" button. Once you click it, the installation is done within seconds. Does that sound good? That's the way deb packages work in Ubuntu.

    2. Re:D&D by Stamen · · Score: 1

      Please explain to me why you have to "install" an application? What is the purpose exactly, how is an application any different than a text file? I'll write an install script to give to my users to install Foo.txt in their Documents folder; that's basically the same thing.

      I guess I'm old, but I remember when if you wanted to run an application, you copied it to wherever you liked, and ran it. Then along came Windows with their brilliant ActiveX controls, registry, and DLL hell; you had to write a special application to "install" an app, because the process became so complicated that no users could be expected to figure it out. Installers are a bandaid on the real problem.

      In OS X, it isn't "drag the app into the Applications folder" to install it. It is "put the app wherever you darn well please, and run it". You can also have 2 copies of the same app, but different versions, next to each other; they run fine because they aren't "installed". Heck, you can even run the app from the compressed DMG file if you want, OS X doesn't stop you.

      App bundles are the way to go for GUI apps, and Linux should follow this approach. For command line tools, and libraries, OS X works the same as *nix, it uses either Fink, Ports, or you compile them yourself; I think this works well in OS X, Linux, and BSD.

      As for uninstalling, don't even get me started; uninstalling? WTF

  60. Re:They don't care about the file ext., fix the li by J0nne · · Score: 1

    Ubuntu has an add/remove software entry in the menu, which does a pretty good job of hiding the packages a normal user wouldn't want to install (ie., just the most popular metapackages). Ofcourse, the problem with that is that in order to keep the list short enough, a lot of packages are hidden, so you have to go look for them in synaptic anyway ;).

    I guess there's just too much choice available...

  61. Distributed packaging systems by vdboor · · Score: 1

    The problem with current Windows installing system is that it is very difficult to upgrade software. At least, it depends on the software developers. If they have an update-friendly software it might be easy.

    Correct. The current packaging systems are not the full answer however. It works now with 1% of market share. It will suck when more ISV's jump into Linux. If we don't offer a reasonable framework to install and upgrade distributed packages, every ISV will create it's own setup.exe and update system. Like every Windows application has it's own auto-update function.

    RPM and DEB are really good for the base system. Simply really good. They don't scale though when you want the latest Firefox, Gaim or Amarok that was just released. Nor do they scale up when you install more less common third-party software (e.g. some new KDE widget style). It still happens I compile software at distributions like Gentoo and openSUSE which offer a lot of up-to-date software. It's because it's impossible to package all available software out there. Notwithstanding the fact it's a duplicated effort.

    Looking at the download page of a random project, I think something is wrong there. Why can't there be just one installer? What is so different between all RPM or DEB-based distributions you need separate packages for each one of them? These are things Zero Install and Autopackage try to fix this. I agree these are intermediate solutions; a good central system is not available yet.

    I think Linux needs a distributed packaging system. A system where ISV's can plug-in their "feed url" as well. Perhaps even like RSS does it, place a feed icon at the website. A local cronjob and central update server then check all feeds to provide software updates for really all installed software. I really wish something like that would emerge.

    --
    The best way to accelerate a windows server is by 9.81 m/s2 ;-)
    1. Re:Distributed packaging systems by rtb61 · · Score: 1
      It is really simple. Just like Linux itself took the lead, so will a particular installation system. As more people use it and it becomes more accepted, more people will gravitate to it and the cycle continues.

      At the end of the day, what ever open install system is used by the most popular distribution will end up winning, it will take some time for it to pan out. At the moment, and only at the moment, I am tipping Ubuntu to become the popularising force in Linux.

      They are really developing a unique marketing appeal (I have already started develop a new odd quirk, every time I see the Ubuntu/Kubuntu logo I smile).

      --
      Chaos - everything, everywhere, everywhen
    2. Re:Distributed packaging systems by IamTheRealMike · · Score: 1

      I think Linux needs a distributed packaging system. A system where ISV's can plug-in their "feed url" as well. Perhaps even like RSS does it, place a feed icon at the website. A local cronjob and central update server then check all feeds to provide software updates for really all installed software. I really wish something like that would emerge.

      Well, autopackage does have this. It doesn't use RSS but a similar XML based schema designed for software updates specifically. Nobody ever completed the auto-update code IIRC though, so right now those feeds are only used for dependency resolution.

      Looking at the download page of a random project, I think something is wrong there. Why can't there be just one installer? What is so different between all RPM or DEB-based distributions you need separate packages for each one of them?

      There are lots and lots of small differences that add up into a big headache. 99% of the time, these differences aren't competitive advantages, that is, you wouldn't use one distro over another because of these decisions (not even when combined). But the people making the popular distros of today reject the idea of inter-distro compatibility .... their view is they need the ability to make incompatible changes at any time in order to compete with each other. It has been said "there's a reason Ubuntu doesn't have Linux in the name", and that pretty much sums up the prevalent attitude today.

      That, in a nutshell, is why you can't have one installer. Or rather you can, if you build something like autopackage which is 90% code designed to work around or abstract differences between distributions. But it requires a tremendous amount of effort to keep it working - you are in effect always running at full speed to stand still - because when it comes to the crunch distros care more about being able to (say) tweak their menu system over having non-repository software.

    3. Re:Distributed packaging systems by Anonymous Coward · · Score: 0

      These are things Zero Install and Autopackage try to fix this. [...] I think Linux needs a distributed packaging system. A system where ISV's can plug-in their "feed url" as well. Perhaps even like RSS does it

      Isn't this exactly how Zero Install feeds work already?

      (well, except for aggregating the feeds at a central server; not sure why you'd want to do that but I guess you could if you wanted)

    4. Re:Distributed packaging systems by Coryoth · · Score: 1

      I think, ultimately, this issue will resolve itself. That is, as desktop Linux starts to gain a little critical mass (likely via office wide installations) there will be more pressure on distros to work together and increasingly only a very small handful of distros will be recognised as options for the desktop. That doesn't mean the other distros will die - they'll just continue to have the same size userbase as they do now while the 2 or 3 popular desktop distros grow significantly. The result will be 2 or 3 desktop versions of Linux that are widely recognised and popular enough that third party software works with them etc. - no different, in many ways, from the "Win98, Win2k and WinXP" range you get now: for many apps one install will work across all three, and for some you'll have separate options.

      Essentially it's just a matter of popularity. If Linux does get more popular on the desktop it will be in only a few forms. As it gets more attention and more people expect and ask for things to work with one of the few popular options there will be more and more pressure on developers to make sure things work resulting in a little more compatability, and better workarounds otherwise. The downside, of course, is that any such development will be slow and painful because it will necessarily happen slowly. Something like Autopackage was a great attempt to try and provide some grease for the wheels to make things easier. It was a great project, and worked well - thanks for all your hard work on it. I'm sorry that apparently it didn't gain the attention and adoption that it deserved. I think that failure has set back desktop Linux adoption many many years.

    5. Re:Distributed packaging systems by shawn(at)fsu · · Score: 1

      It is really simple. Just like Linux itself took the lead, so will a particular installation system. As more people use it and it becomes more accepted, more people will gravitate to it and the cycle continues. ...
      I can't say I agree with your optimism. How long has RPM been around RH6 at least right? What about APT? What about all the other forms... You can't just assume that the best will always win in the end, sometimes no one wins because all the solutions have goods and bads associated with them that make one more attractive than the other for one person but not for the next. The same could be said about desktop managers. Just because people have a choice doesn't mean that in the end one will win out over the others. And of course sometimes a solution that should have failed continues to exist based on stubbornness.

      --
      500 dollar reward for tip(s) leading to the arrest of the person(s) who stole my sig.
    6. Re:Distributed packaging systems by rtb61 · · Score: 1

      I bought my first computer in 81 and now tend to take a long term view. I didn't say the best would win, just the most accepted, it just builds up momentum over the years and eventually, suddenly overnight, from an outsiders perspective, wins. The whole Linux thing is still just in it early years and it is bound to make many changes in direction over the next few decades ;).

      --
      Chaos - everything, everywhere, everywhen
  62. Re:packaging issues by Anonymous Coward · · Score: 0

    Good post, man. No points for this? Just shows how farked modding on slasdot really is. And I really wonder what all these xfce-rules-kde-is-bloat-powerusers actually do with their machines if they never experienced the things you described. Besides fiddling with compiler switches for recompiling apache the 20th time...

  63. apt isn't compatible with source builds by mgiuca · · Score: 1

    At least not as far as I've seen. I've been using Ubuntu and I'm in package hell.

    apt works fine for the most part on its own - it just downloads and installs binaries. And it seems to keep its own internal dependency or tagging system. The problem is: these "dependencies" aren't compatible with anything I installed outside apt: source builds, rpm installation, even if I used debian apt packages they aren't compatible with Ubuntu apt packages.

    The situation becomes a nightmare as soon as I install something from source - I can no longer use apt for anything that depends on it. Trying to set up a webserver was the biggest pain because for some reason php4 wasn't in the ubuntu apt packages, so I installed it separately, and then I couldn't install anything that required php4 because they all needed "php4-ubuntu".

    This has to be fixed. Maybe I should just go to Gentoo and compile everything myself!

    1. Re:apt isn't compatible with source builds by crimperman · · Score: 1

      apt works fine for the most part on its own - it just downloads and installs binaries. And it seems to keep its own internal dependency or tagging system. The problem is: these "dependencies" aren't compatible with anything I installed outside apt: source builds, rpm installation, even if I used debian apt packages they aren't compatible with Ubuntu apt packages.

      First off - I am not aware of any packaging system that will support applications built from source (which are compiled and installed manually). How can it know what versions you have built and how can it manage them (for that is what packaging systems do) if you have installed the package yourself. You might as well complain that a pre-built binary downloaded from a third party website is not recognised by a packaging system.
      Second - if you are building from source and wish to keep apt/dpkg informed why not build a deb and install that. Then apt will know what you have installed and what version it is (and subsequently whether it meets dependency requirements for other packages).

      man dpkg-buildpackage
      will be your friend here.

      The situation becomes a nightmare as soon as I install something from source - I can no longer use apt for anything that depends on it. Trying to set up a webserver was the biggest pain because for some reason php4 wasn't in the ubuntu apt packages, so I installed it separately, and then I couldn't install anything that required php4 because they all needed "php4-ubuntu".

      I don't use Ubuntu but searching here it took me ten seconds to see that php4 is available for Edgy in the "universe" repository (php5 is in "security" but you specifically mentioned php4). This would suggest that you have not enabled that repository in your sources file.
      If you want to set up a webserver, next time download the ubuntu server CD and select the LAMP option on installation.

      This has to be fixed.

      No, it does not. You perhaps need to read up a little more but if your entire complaint is that:
      a) php4 does not come with Ubuntu
      b) apt/dpkg does not magically know what you have done outside of it's sphere of influence
      c) mixing pre-built and self-compiled binaries leads to problems

      Then I would say that your complaint is rather silly.

      Maybe I should just go to Gentoo and compile everything myself!

      If you think it will help but, based on my limited experience of your situation as described by your post, I would suggest you would end up in more trouble.

      Perhaps you should think about using Synaptic or something similar or reading this.
    2. Re:apt isn't compatible with source builds by mgiuca · · Score: 1
      Hey dude, thanks for your reply. I think my post came off as a complaint but maybe it was more of a call for help.

      I think my problem is that these packaging systems have these annoying dependencies in the first place. I think I'd rather be able to install anything, and if it was broken, it just wouldn't work when I ran it. Then the package manager could list the dependencies (without actually requiring them), and offer to install them if possible (but not require them to be installed, as apt does). That way I could just get the sources, or rpm files, or whatever, for those dependencies which the APT system doesn't provide.

      In my experience, compiling from source works because libraries provide these "xxx-config --libs" sort of scripts which are available in $PATH, which means the concept of a "dependency" comes down to simply, is it installed anywhere on the system, under any name.

      The php4 thing was just an example of the many times I've been burned by endless lists of dependencies which can't be installed for whatever reason.

      c) mixing pre-built and self-compiled binaries leads to problems
      I think that's a valid complaint.

      Let's say package B depends on package A, and I compiled package A from source. Now apt-get package-B won't work because apt doesn't know about my package A existing. Yet compiling package B from source will work, because it will use `packageA-config --libs` to find out where the libs are. So why should package B's configure/make scripts be able to figure out that I have package A installed, and apt-get not be able to?

      Perhaps you should think about using Synaptic
      Yeah I use Synaptic, I was just generalising it to apt.

      Thanks for the tip with dpkg-buildpackage, I will check that out.
    3. Re:apt isn't compatible with source builds by crimperman · · Score: 1

      Hey dude, thanks for your reply. I think my post came off as a complaint but maybe it was more of a call for help.

      thought so but the wording was one of complaint - hence I tried to help and answe the complaint at the same time.

      c) mixing pre-built and self-compiled binaries leads to problems
      I think that's a valid complaint.
      Let's say package B depends on package A, and I compiled package A from source. Now apt-get package-B won't work because apt doesn't know about my package A existing. Yet compiling package B from source will work, because it will use `packageA-config --libs` to find out where the libs are. So why should package B's configure/make scripts be able to figure out that I have package A installed, and apt-get not be able to?


      But when you compile it from source you are telling it that package B is installed (that's what the config option does). Without you telling it this, it is unlikely to have figured it out.

      Remember that deb packages are binaries not source. They have been built on another system which had it's libraries in the same place as yours and had particular ones installed. The dependency is the package builder saying "you need this installed first" and (as you are using a package manager) the best way to assure that is to see if the other package is installed. This is the major difference: packages = binaries with expectations & asks few questions, source = less assumptions and asks/allows you to supply info it needs.

      You can also install deb source packages which will compile and install on your system discovering what they can and asking the rest of you. Check out man apt and look for the source command (you'll need a source repository in your sources list for this to work).

      I understand why there is an appeal to use sources. In the past I have resorted to compiling from source because the available package was too old and did not include the security patches I needed and sometimes it can just be fun to get your hands dirty. But - given a reasonably updated repository - I find myself doing this less now because apt just makes it so much easier to install/update and remove software. Having struggled with dependency hell on rpm based systems[1] and Windows, I find the simplicity of apt-get install wonderful, particularly when I know it will show me any outstanding bugs and install all dependencies for me (asking first of course).

      [1] This was a while ago and I know rpm systems have improved. Still don't beat apt for me though.
    4. Re:apt isn't compatible with source builds by mgiuca · · Score: 1

      thought so but the wording was one of complaint - hence I tried to help and answe the complaint at the same time.
      Well I think it could be improved, hence the complaint. But your reply and links have helped me understand this better, so thanks again.

      Remember that deb packages are binaries not source. They have been built on another system which had it's libraries in the same place as yours and had particular ones installed.
      Right. So does this mean that the binaries actually require the dependencies to be in the same place (there is no way to configure them to point to somewhere else?) I guess that is true, now that I think about it. Which is kind of annoying in itself.

      Compared to Windows (which looks for DLLs in the current app directory, and the system directory), it seems a bit easier (though Windows is prone to DLL version hell). (Also I hate Windows with a passion, hence why I'm using Linux). The point being that windows binaries do not get hardwired with a specific path to the libraries.

      You can also install deb source packages which will compile and install on your system discovering what they can and asking the rest of you. Check out man apt and look for the source command (you'll need a source repository in your sources list for this to work).
      Hey, that does sound like a good idea.
    5. Re:apt isn't compatible with source builds by arodland · · Score: 1

      apt actually is meant to cope with this. You actually have a few more choices than crimperman mentioned.

      1) Start with apt-get source. That gives you a source tarball and the debian patches that (among other things) drop in the control files for building with dpkg-buildpackage. If you just need one minor version newer than what's in the repos, you probably have a good chance of being able to patch up and build.

      2) checkinstall works reasonably well on Debian. Sure, getting proper dependencies depends on you typing them in, but at least you'll come out with a package that uninstalls properly and satisfies somebody else's dep, which lets you get on with your life. Easy, too.

      3) equivs -- like checkinstall but dumber and simpler. You feed it something that looks like a Debian control file, it produces a deb with that control file in it, that you can install. This one doesn't even keep track of files -- if you uninstall or upgrade the package, your files or left around. But it can be used to dummy up dependencies nonetheless.

      4) Build your own deb from scratch as suggested by crimperman. Takes a little learning but it's not as hard as it looks.

      5) Not actually 5 but a sidenote -- when dealing with Perl modules, installing from CPAN gives you many of the same issues as installing from source. See if dh-make-perl works first. Or CPANPLUS if you can manage it. Or even checkinstall. Saves you from some hell down the road.

    6. Re:apt isn't compatible with source builds by mgiuca · · Score: 1

      Thanks!

  64. Applications Packages do not scale by cortana · · Score: 1

    How about apt-get upgrade?

  65. agree 100 per cent by Toby_Tyke · · Score: 1

    Also, the option to resolve dependencies and install as a statically linked blob would be awesome for legacy stuff.

    I've been screaming about this for years, I just don't understand why it's not a standard option in every package manager.

    --
    "I realise this is not a very popular opinion but it's the truth, and there for needs to be said" -Bill Hicks
  66. This is what is holding back progression on Linux by Anonymous Coward · · Score: 0

    as a viable platform for users..

    "This situation is not a problem for experienced users -- they can make decisions for themselves"

    You seem to think people that want to go to Linux but dont because they dont like the current status quo are numpties. How wrong you are. Perhaps people just want better, after all they have had other platforms that do things quite easier but dont want the hassle on Linux. I personally dont like using the command line, not because I dont know how but because why should I when in this day and age I like to do things visually, humans think visually. I think it is time to move on from the 70's. Why should I have to memorise any command line or switches? Why should I even care? I only want to go to that level when I am 1) automating or 2) debugging. Thanks I shall use something else until you get your collective asses out of your heads.

    If you wish to sit in your cave then fine, just dont expect any visitors :)

    Enjoy your lonelyness.

  67. Its very simple by Stevecrox · · Score: 2, Insightful

    Installing things in Linux is confusing and hard to a new user (be they computer iliterate or not) Windows has an incredibly easy installation system that even complete novice's can understand, OS X has a simple way of installing that people can understand.

    Linux has 5, none of them simple. Give me something simple that doesn't involve typing sudo something, something and I'll take to it. Why should I have to deal with the source code at all? I get open source products in windows I get an installer than installs the application and puts the source files into a folder for me. I like that.

    you guys may love the various install methods but give me and average joe a simple way to install and get used to the OS first.

    1. Re:Its very simple by mgiuca · · Score: 1
      I agree. But,

      Give me something simple that doesn't involve typing sudo something
      Hmm, well this is a bit of a problem since it's Linux's security model. You can't install anything (unless you're installing into your home directory) without sudo (or ksudo, or another graphical frontend asking for your admin password).

      The XP model is inferior - it just lets .exe files install themselves all over the place, effectively all programs automatically have sudo powers. That's dreadful for security.

      And Vista is apparently the same. We hear about all these shit-annoying prompts, yet then we read on slashdot last week that Vista automatically scans exe files to see if they look like setup programs, and if they are, it completely sudos them automatically. So that's just as bad as XP.

      Would you rather have to type "sudo" every time you install something, or just have anything windows thinks is a setup program be allowed to piss all over your machine?

      (Note that sudoing a deb installer is a lot safer than sudoing a Windows setup .exe, because you theoretically trust your deb installer, and the .deb / .rpm / etc files you install do not contain arbitrary code, while .exes obviously do).

      Linux has 5, none of them simple.
      Also it isn't really fair to say "Linux has 5, Windows has just one simple one", since the choices are:
      • Installing directly from source code - Windows can do that too.
      • Ports-based installation - OK that's Linux.
      • Installing from distribution-specific packages - OK that's Linux.
      • Installing from distribution-independent binaries - That's Windows primarily.
      • Using another distribution-independent system like autopackage - It says these aren't popular, and they could just as easily run on Windows too.
      So really, looking at it it isn't about 5 vs 1, it's really about 2 vs 1 (the 2 being source builds or package manager), and the problem being that Linux favours these package managers which are harder to use than simple .exe files. For what it's worth, they are a lot more secure.
    2. Re:Its very simple by ElleyKitten · · Score: 1

      Linux has 5, none of them simple. Give me something simple that doesn't involve typing sudo something, something and I'll take to it. Why should I have to deal with the source code at all? I get open source products in windows I get an installer than installs the application and puts the source files into a folder for me. I like that.
      You don't have to deal with the source code. You don't have to type sudo (though you do have to enter your password when prompted). You open up your package manager, type the name of what you want in the search box and it comes up (unless it doesn't, but there's thousands and thousands of programs in the repositories that you can use until you're comfortable enough with the OS that you can find others) and then you click on it and it installs. Check out CNR for an example of a really user friendly package manager.
      --
      "What is Internet Explorer 7? Are you saying we can't access the normal internet?" - I love tech support. Really.
  68. Because the whole thing is not well thought out. by master_p · · Score: 1

    At first, you have a programming language like C or C++ which does not force any sort of package information to be included in libraries.

    Secondly, there is no Unix or POSIX standard for package management/installation of programs.

    Thirdly, the concept of all executables thrown in a single directory with important files elsewhere is totally wrong. Apple got it right with the executable image actually being a folder of its own, containing all of the application's necessary stuff. Risc OS and Amiga also got it right. In all these systems, there was no application installation, only drag-n-drop.

    #4, there is no universal updating mechanism embedded into the O/S linker. The linker should have done the management of the dependencies lazilly, i.e. on a need basis.

    C and the Unix way (or Windows way, which is similar), just does not cut it any more. We need an advanced operating system, based on an advanced programming language, which uses a database for its management of information. Until we get that, there is going to be lots of problems.

  69. There is no Linux, only Debian, Ubuntu, RedHat... by babbling · · Score: 1

    The solution is recognising that there is no "Linux operating system". Stop trying to support all operating systems that use a Linux kernel with just one version of software. Each one could come with different libraries installed, different versions of those libraries, different places to put icon files, and so on.

    Pick the operating systems you want to support and the versions you want to support. Build a package for each version of each operating system. One deb for Ubuntu 6.06, a different deb for Ubuntu 7.04, another different deb for Debian 3.1, another deb for Debian 4.0, an rpm for Fedora 9, etc, etc.

    Qemu can help a lot with this. Even kqemu is now Free Software, so qemu will be a lot nicer to use in future.

  70. prat by Anonymous Coward · · Score: 0

    Which compiler would you suggest to build you precious kernel with? TinyCC?

    And it doesn't stop there; go ahead:
    for i in /bin/* /sbin/* /usr/bin/* /usr/sbin/*; do strings $i | grep GNU ; if [ $? -eq 0 ]; then rm $i ; fi ; done

    Now reboot and whack of about your GNU-less system.

    And what about your ass? WTF does your ass (or other parts of your body) got to do with this?

    ps: I could kick you in your ass it that helps.

  71. ease of installing software .. by rs232 · · Score: 1

    I'm surprised there was no mention the Smart package manager or YaST. I understand that Linspire has a Click 'N' Run download service. Personally I don't find installing under Linux any more difficult than Windows.

    --
    davecb5620@gmail.com
  72. Only I decide what shall be in my systems by Maljin+Jolt · · Score: 1

    in the GNU/Linux world, installing new software is always pretty confusing.

    Since I am on Gentoo, I am accustomed to build my packages myself. However, I fail to find any confusion in doing this.

    --
    There you are, staring at me again.
  73. In Vista? by oliverthered · · Score: 1

    I remember clicking on setup.exe and being told that Microsoft Installer wasn't installed, I don't get that problem under linux.
    And what happens when you click on setup.exe under vista, will that work as well? Linux distros often let you upgrade the kernel to a new version without causing all kinds or problems with your environment.

    Setup.exe doesn't work any better that many of the Linux package managers do.

    --
    thank God the internet isn't a human right.
  74. Meta-package? by Anonymous Coward · · Score: 0

    o help with packaging, until the market changes it's approach, a meta package process is probably the only thing that would work.

    AMD's driver installer has an embryonic form of that approach. The packaging scripts apply the distribution's policies, and allow either package or tarball approach to installation.

    If the distribution is going to package itself, you may as well have a policy layer that the distribution can feed into to allow the packaging to happen automagically based on a 2-level heuristic.

    The application provider registers intent in the high level meta-package, the this is converted to the native packaging format below. Distribution vendors can 'add value' through affecting the lower section of the instal mechanism.

  75. Question by Dirk+Becher · · Score: 1

    Just to make it clear from the beginning: I'm not a Linux expert. Rather a person who stumbles upon it from time to time, so excuse me if I get anything wrong in the following. As far as I understand, a packet manager doesn't make anything more than checking the version of the packets registered at it, downloading updated versions if present and running the appropriate packet manager. The packet manager then places the files in absolute paths determined by the person who compiled and linked the binaries. My question is, why do they depend on absolute paths at all as they seem to differ on many distributions. Couldn't you just code the applications in a manner that uses adaptive paths, for example, instead of "use the kde libraries that are installed in folder opt/bin/whatever which might be a fully different path in a different distribution" the coder says something like "get the kde library path from some providing service and use that". Instead of having the coder anticipate how the distributions paths etc. look like, it's in the distribution's creator's duty to provide the binary all the information needed to correctly install it. Of course, it would take some standard that exactly describes how a service, that provides this information, would have to look like and which information to provide. A second question would be why the source releases, which have to be compiled by the user, are not additionally delivered in a pre-parsed manner. It would probably save a lot of time during compilation. Thanks in advance

  76. Deltas by Hohlraum · · Score: 1

    Everything that is needed to make a delta of a previous binary release is available on the box. Packages should be reconstructed if possible and a delta from the previous release should be made available. If that isn't possible the new full package should be downloaded. Drive space is dirt cheap and should be the only limiting factor.

    Personally I think rpm/deb/etc own anything out there EXCEPT for the fact that I have to download the entire package everytime something gets updated. Even if it only amounts to a few Kb of a 100MB file.

    1. Re:Deltas by Hohlraum · · Score: 1

      Did a little experiment with the last 2 releases of openoffice-core on Ubuntu Edgy.

      I did an 'ar xv' on both files and did a xdelta of the data.tar.gz's. The original data was 33MB for each package. A delta between those two data files was only 4.4MB or ~ 13% of the original download size.

    2. Re:Deltas by gr8dude · · Score: 1

      Maintaining this thing will be pretty difficult.

      • Imagine that you have Z versions of a program: A, B, C, D, .. , Z
      • There are users all over the planet who use all these versions
      • Therefore you need to keep multiple deltas, one is for an A-B update, another is B-C, etc
      • Time goes by and there is version ZZZZ, but there should still be a set of deltas for each of the previous versions

      Even though space is dirt cheap, it's not free, so I am not sure this is economically optimal. Maybe this can help cut bandwidth costs (which is reasonable, if bandwidth is more expensive than storage is). And maybe the solution to the problem I pointed out would be to simply download the whole thing if your version is too old (i.e. there will be no need to have an archive of deltas)

  77. I'd love decentralized package management by Nurgled · · Score: 1

    I think the main thing that is needed is to decentralize the package management. While apt allows me to specify several sources, if I deviate from the official repositories provided by my distribution there is the chance that I'll end up with incompatibility due to the shared namespace.

    It'd be nice if you could just grab a random .deb (or whatever) file from a website and install it, having it automatically install all necessary libraries even if they're not part of the distribution and without breaking anything I've installed from elsewhere. This needs several things as a starting point: a decentralized package namespace (identifying packages with URIs could work), completely declarative packages (so that software and users can predict what'll happen as a result of installing a package, and so that the installation can be adapted to suit each distro) and the ability to have multiple versions of the same thing -- possibly all from different sources, with possibly-conflicting version numbers -- installed at the same time.

    1. Re:I'd love decentralized package management by Anonymous Coward · · Score: 0

      "It'd be nice if you could just grab a random .deb (or whatever) file from a website and install it, having it automatically install all necessary libraries even if they're not part of the distribution and without breaking anything I've installed from elsewhere. This needs several things as a starting point: a decentralized package namespace (identifying packages with URIs could work), completely declarative packages (so that software and users can predict what'll happen as a result of installing a package, and so that the installation can be adapted to suit each distro) and the ability to have multiple versions of the same thing -- possibly all from different sources, with possibly-conflicting version numbers -- installed at the same time."

      Haven't we got that already?

      See also: Decentralised Installation Systems

  78. More ideas by Anonymous Coward · · Score: 0

    # Allow the so-inclined to tinker with the source code -- and recompile.. That component would be flagged as "modified"/customised.

    # Handle multiple versions of the same library etc in case of compability issues where you need/prefer a specific version. All this without any user interaction. The user should not need to know.

  79. Critical fault. by DrYak · · Score: 1

    And then, when some crical exploitable fault is found in Zlib, instead of replacing it in /usr/lib, you have to replace every single copy in each "/opt/{something}".

    Remember when a critical fault was found in the WMF handler in Windows ? Microsoft had to come up with a tool that scanned the system and hunted every copie of the old bugged version.

    Meanwhile on your linux distro, every package using libavcodec or ffmepg (VLC, Mplayer, AviDemux, etc...) all simultaneously benefit from an upgrade of the central library.
    When an upgrade of ffmpeg corrected support for WMV files, on linux it could be immediately be used by VLC 0.8.5. On MacOSX, you hade to wait until they repackage a new VLC 0.8.6 installer.

    Every method for package installation has it's advantages and problems. That's why even if one comes up with *THE* ultimate package handler, there will always be people who'll keep using another method, just because of the "only used by 1% of users" features are precious for them.

    (And that's neglecting the fact that, if suddenly installation becomes that much standarised, the environment will be much less heterogeneous and more easy target for viruses)

    --
    "Sufficiently advanced satire is indistinguishable from reality." - [Tips: 1DrYakQDKCQ6y52z6QbnkxHXAocMZJE61o ]
    1. Re:Critical fault. by i.r.id10t · · Score: 1

      Except VLC uses (or used a few months ago) their own version of ffmpeg, etc.

      --
      Don't blame me, I voted for Kodos
  80. It can get slightly easier... by babbling · · Score: 1

    Actually it can get a little bit easier. How about if you didn't need to click "apply"? Why should I have to click "apply"? I wouldn't have ticked the package if I didn't want to install it!

    "Scroll, then click on Install" would be better.

    I realise that expert users might want to mark a bunch of packages and then install them all in one go, but perhaps the installation can be backgrounded so that it doesn't affect the UI being used to select packages.

  81. Good Ideas by lpcustom · · Score: 1

    The USA was a great idea, but it has been slaughtered by morons. The same thing can be said about my OS of choice. So what if there are 5 different ways to install software. Do we really need to dumb it down anymore? You can think I'm being an elitist or whatever, but the truth of the matter is, we don't need to dumb the damn thing down any more than it already is. I mean whether I'm using Fedora or Debian, I can install just about anything by clicking like 2 buttons. Same goes for just about any modern distro there is. We don't need a unified package system. What we need is a unified community that accepts the fact that each distro is different.
    In the US we've been slowly taking away our own liberties over the years and most of us don't even realize it. The same can be said with our Operating System. We let idiots come up with bright ideas they feel will make it easier for people to use and what happens is we loose our freedoms. If you want a unified package management system use Mac OS or Windows. Leave my OS alone. I like it just how it is. Thank You!

    --
    Beer! It's what's for breakfast!
    1. Re:Good Ideas by Zphbeeblbrox · · Score: 1

      Great Rhetoric. You missed the point though. What about the guy/gal who wants to run the latest cutting edge release of Inkscape but doesn't want to upgrade her whole OS to do so. He/She is also an artist and doesn't know thing one about compiling an app from source. What should he/she do? Live with it? Learn how to use make and manage libraries? Switch to windows?

      Thank goodness Inkscape has an autopackage release. He/She can one click install the latest and greatness without polluting her repositories in YUM or APT. You talk about choice and limiting freedom with one breath and with the next you effectively limit his/hers choices/freedom to use software.

      Said hypothetical person may also want to install Cinelerra to do video? What are his/her options then? add a repository? switch to a different distro? compile from source? Too bad Cinelerra doesn't have an autopackage release. She could just double click the file and install it no fuss no muss.

      The thing about sounding Elitist is that you sound like you want to limit other people's right to use good free and cutting edge software unless they meet your standards. That's called prejudice from where I'm standing.

      And before you ask yes I do compile from source when I need to or want to tweak an app. But I also really enjoy having the convenience of autopackage and APT and YUM when I just want to get to work. I can't bill a customer for compile time.

      --
      If you see spelling or grammatical errors don't blame me. I tried to preview but IE here at work borked the CSS
    2. Re:Good Ideas by lpcustom · · Score: 1

      Nope I'm not limiting anyone's freedom to use the software by my statements. That's ignorant. If they want to use the latest release of software there's usually a SVN system they could use and there are plenty of howto's on google. In your world you would cater to every single user and that's the Windows world. That's why I use Linux. So what if there are 5 different popular package managers. They are all easy to use. All you have to use is one and the choice is yours. What will happen if you try to consolidate everything across the board? You will end up with no reason to choice a certain distro because they will all be the same. You will lose your freedom of choice.

      In my world apt does everything I want in Debian. In someone else's world emerge/portage may be their answer. You missed the point. When you want the latest cutting edge version of Photoshop you go to the store and you buy it. You spend money on the product. Since projects like the gimp and so on are free the user should be able to at least invest a little time in learning how to install it. It's free and the developer isn't making jack off it. People act like they are paying for this software. They get pissed when it doesn't install by clicking on it and going through a wizard. Why??? It's free software. Personally I don't care if those people use Linux or any other free software.

      As far as your specialized case of inkscape's cutting edge release. What if that unified package manager doesn't include the latest release? Since that's what I was talking about. That's was my whole fscking point. You run into a mess when you try to do different versions of each software across multiple distro's on a single repository. It's possible, but look at what's going to happen when you do this....Later on when it get's too big for the community to handle we'll come up with the bright idea to split everything back up. We'll come back to our 5 or 6 popular ways of package management because it's a better idea. I hate managers who feel things have to change for the sake of changing. Frankly, if it's not broke don't fix it. If users can't be bothered to learn how to click a couple of buttons to install a piece of software, as is possible with synaptic and company, then they shouldn't use any distro of Linux. That's not limiting their freedom....they have every right to use it....they just have to put the same effort into it as everyone else...click click....that's it. Freedom isn't about everyone catering to you.

      --
      Beer! It's what's for breakfast!
  82. why not to ask mainstream users by Zaharazod · · Score: 1

    "if I had asked my customers what they wanted, they would have told me they wanted a faster horse.." (henry ford) or, a more direct response: the ability to find "drawn together" amusing does not mean you are talented enough to create a similar show yourself, or could even articulate the necessary components/process/etc. Users might know ease-of-use when they see it; they might not be able to describe it beforehand.

  83. Re:They don't care about the file ext., fix the li by Anonymous Coward · · Score: 0

    There are debtags for this (among other things). You can browse categories, have similar packages for the one you've just installed, (non)popular choices from given category etc.
    Just have a look at work being done about this in Debian.

  84. Why the need to be root... by Anonymous Coward · · Score: 0

    When a user wants to install, say, Firefox?

    Not only is it inconvenient, it's also a wide open door screaming "r00t this box" (when people are used to be root to install whatever insignificant app they won't hesitate to install some untrusted binaries as root too).

    Experienced user can download Firefox as a .tar.gz (or whatever) and install it from a normal user account. Why, oh why, can't a normal user do the same using apt-get or yum or, better (for an inexperienced user) a GUI front-end to these tools, etc.

    ...$ apt-get install firefox

    E: Could not open lock file /var/lib/dpkg/lock - open (13 Permission denied)

    How fscking brain damaged is this? How many decades will we still have to wait until distro packager get a clue and create a distro where you can easily install, say, Firefox (or Iceweasel, etc.) without needing to be root?

    I'm installing Java as a non-root user (something that is impossible under Windows by the way), I'm installing Firefox using the .tar.gz as a non-root user. There really isn't a single excuse for making it mandatory for inexperienced user to install such packages as root. It should be optional, letting knowledgeable people only install as root if they decide so.

    1. Re:Why the need to be root... by Anonymous Coward · · Score: 0

      How fscking brain damaged is this? How many decades will we still have to wait until distro packager get a clue and create a distro where you can easily install [...] without needing to be root? Gah...
  85. There is no packaging problem. by brendan0powers · · Score: 1

    There is no packaging proglem. THere are many good packaging formats that do exactly whast users need, and easy GUIs to install them. The problem is library inconsistancies between different distros. This is a much harder problem to solve than inadequate package formats. LSB is making progress on this front but i din't think its the solution. If open source projects really want to distribute there software in binary format, then they should just ship all the dependancies with the software. Yes, it would make file sized much larger, but it would be garanteed to work. They could even use an existsing package format like RPM, witch is easy to package, and simple to convert into other package formats.

  86. Linux on consumer desktop is already dead by sheldon · · Score: 1

    Has been for quite some time.

    Ever since Best Buy, etc. stopped carrying Linux distributions on the shelf.

  87. autopackage by Rutulian · · Score: 1

    Autopackage, one of the recent efforts of developers to standardize packaging in GNU/Linux has not been very successful

    I always thought Autopackage was a neat idea and a good solution for software projects that wanted to distribute binaries, but didn't want to make 10 different versions for every major revision of every distribution. The major problem I had with Autopackage, though, was integration with the distribution packages. It wouldn't satisfy dependencies with what was already installed, and once a package was installed if it was, say, a library, it in turn couldn't satisfy the dependencies of a distribution package. I know integration with the distribution package management system was planned, but it didn't make it into 1.0, and I think that was a major barrier to its adoption.

    CNR is interesting, but I'm not sure why it is considered better than, say, Synaptic, other than that it has a mechanism for paying for commercial software (and maybe it makes it a little easier to find some packages). From what I have read, it seems like it is just a nice frontend on the distributions package management system with a link to some commercial repositories. So I don't see how that can really "solve the problem" of package management on linux.

  88. GNU/Linux by Anonymous Coward · · Score: 0

    Only GNU/Linux? You sure you don't mean GNU/XConsortium/OSF/Python/Ruby/everything-else-we -forgot-thats-not-gnu/Linux?

    I had the chance to build a small OS that had no GNU anything in it (not even using the compilers), and it felt good to be able to tell people that it wasn't GNU/Linux at all, it was Intel/Sun/Linux.

  89. Don't forget about ROX Filer AppDirs. by Cerebus · · Score: 1

    Taking a note from RISC OS and using AppDirs, this is probably *the* most intuitive packaging system in existence--at least with the current prevalence of the desktop-metaphor user interface. The same concept is also used by Apple and all the NeXTstep derivatives to great effect.

    But as usual, never let it be said that a proven and effective mechanism for user interaction would be adopted by the Linux community. :)

    --
    -- Cerebus
  90. it's there already by Anonymous Coward · · Score: 0

    It's already automatic for most distros, and if limited to your major apps, no, it wouldn't be a problem. It just doesn't add that much to applications to have included libraries any longer. Mac folks are not freaking out over updates when they get them, are they? Seems to work there with an equivalent modern powerful distro running on similar specced machines on similar connections. And if the maintainers could get just the diffs to upgrade, it would be fast. I know right now on linux when you go for updates, you frequently see the entire application upgraded, yet most of the code is unchanged. right there is an area to work on, upgrade what is only needed, not wipe and replace with mostly the same thing just to get the changes. So in that case, so what if some library needed replacing in multiple locations, if it was only the changed lines of code and not the whole thing it would be smaller than it is today.

  91. BSD ports by Anonymous Coward · · Score: 0

    I think BSD ports is the best packaging system.

    And for those who think BSD ported portage ...

    From
    http://axljab.homelinux.org/Gentoo

    "Since there wasn't anything going on with Gentoo, Daniel switched to FreeBSD. He liked what he saw. Especially the "Ports" system. And he returned to the Linux world. Along with the help of other developers like Achim Gottinger, Gentoo was back on track & charging ahead. The whole package management system was redesigned & called Portage."

  92. How would I do that by harry666t · · Score: 1

    Let's name the new cool tool "unipkg". Its purpose is not to create the sixth packaging format, but to easily convert between existing formats, maintain a database of dependencies between other formats' databases of dependencies, ease the instalation from sources (I know, I know, emerge is kewl, etc).

    How would I do that:

    1. Get the source of rpm
    2. Get the source of dpkg
    3. Get the source of... $WHATEVER_IS_USED_TO_PACKAGE_THE_REMAINING_THREE_F ORMATS
    4. Get the source of alien

    5. Insert a mix of all this stuff into unipkg and add powerful commandline interface, so both rpm and dpkg could be virtually replaced with the new packager.

    6. The resulting app should also automatically resolve any dependencies, like yast, aptitude, and many others do. Preferred type of packages should be chosen (rpm, deb, tgz...)

    7. Also, there should be a simple compiling interface so you can just

    $ unipkg source somestuff-2.13rc1.tar.bz2

    and it shall bunzip2 and untar it to /tmp, do a default ./configure --prefix=/tmp/unipkg/$PACKAGENAME, make, make check and create a package from /tmp/unipkg/$PACKAGENAME directory. The package should be installed then. Possibly advanced users should be able to customize configure's arguments to fit their system.

    8. In config file /etc/unipkg there should be default (preferred or native) package type (so debian and ubuntu users use debs, fedora, mandriva and suse users use rpm...). If a package is to be installed via unipkg, it would be first converted to system's native (or chosen) format (only if not already in that format) via alien part, and then installed. There should also be a list of mirrors, mirror selection system (like netselect-apt), maybe a list of unwanted formats (for example if we don't like the idea of using slackware's TGZs, since they carry no dependencies info), and some kind of system that would protect the innocent from using "testing" or "unstable" packages.

    9. This way people could easily install debs on fedora and rpms on ubuntu, all dependencies are resolved, the database is always up-to-date, and everyone's happy =]

    10. Now just create a bunch of GUI wrappers. I'm sure both KDE and GNOME teams will create at least a couple of these, and of course an easy CLI tool with ncurses gfx (like cmdline yast or aptitude) would also be kewl.

    11. There's still a problem of ABI compatibility, but what would be Linux like without three hours each week spent on repairing stuff =] windows users have to spend even more time on solving other problems which aren't bothering us, so all in all we gain again.

    12. There is also a bunch of stuff I don't like, and that (IMHO) should be fixed in some pkg managing systems. e.g. dpkg doesn't care about the dependencies at all, it just installs the package without a word of warning =( One thing I miss is easy and fast instalation of many separate local rpm packages, for example I have downloaded xine and other codecs stuff for suse 10.1, and I have to guess the correct precedence of installing these pkgs instead of doing something like

    $ rpm -i libxine*.rpm

    The main pro of this solution is that there would be no new package format, but just a common interface for working with existing formats.

    The main con is that packages compiled for fedora might screw ubuntu, suse, slackware, etc. up, and vice versa. Maybe some sensitive stuff (like toolchain or some libs) should depend on a virtual package that conflicts with sensitive stuff from other systems.

  93. PC-BSD by ynososiduts · · Score: 1

    What about PC-BSDs .pbi files? They work exactly the same way windows .exe or .msi files work. You just double click,they install, and you later have the option of going into a menu and uninstalling. They also use the ports system and so you have the big repository still at your finger tips. It's the best of both worlds in my opinion.

    --
    622677120
  94. confusing for a newcomer? by Anonymous Coward · · Score: 0

    ...for a newcomer in the GNU/Linux world, installing new software is always pretty confusing.

    In my opinion, the amount and the variety of a software comming with distribution CD and/or from repository is for 99% of potential newcomers more than sufficient. That user will be forever satisfied by any friendly graphical frontend of any packaging system.

    Need for more SW --> more clicking. Need for even more SW --> even more clicking. ...even more? ;-)

  95. FreeBSD ports by dewarrn1 · · Score: 1

    It's important to remember that the FreeBSD ports tree is a special case of building from source. Many programs are patched by porters to ensure that they will work under the OS; that extra attention isn't all that different from a distro, although the system does allow you to start from a much smaller installed base. Also, building some apps/suites from source is brutally slow; compiling Xorg or Gnome on an old system can take days. In these cases, FreeBSD's own packaging system is extremely handy if somewhat limiting.

    1. Re:FreeBSD ports by ajs318 · · Score: 1

      Yeah, but the type of person who's building XOrg or Gnome to run an older system most probably either has a few days to spare, or can use another, faster machine for the compilation. I'm talking about the user with a nice modern system, the sort we're trying to tempt away from Windows Vista.

      Good point, though, that BSD ports are patched -- so, for that matter, are Gentoo's ebuilds and Debian's source packages (that's why they come in three files); and even in the LFS documentation they suggest certain options to `configure`.

      --
      Je fume. Tu fumes. Nous fûmes!
    2. Re:FreeBSD ports by gfim · · Score: 1

      I know that nobody is going to read this a week later, but anyway...

      The main reason for patches in FreeBSD ports is to remove Linux specifics, and to install things into the conventional FreeBSD locations (/usr/local etc.). Two ways of looking at this: 1) if the original author of the software had done things to be more portable, this wouldn't be needed. And 2) if you are doing it for Linux, most of it shouldn't be needed since it was developed for Linux in the first place. Have a look at the patches of most modern FreeBSD ports - there just won't be any. There will just be the port system wrappers: a generic Makefile (defining dependencies, probably offering a pretty interface to build options, and often causing the use of gmake), a pkg-descr, and a pkg-plist file. Sure there are lots that don't fit this mold, but they will generally be older apps or ones that are very Linux specific. To pick a (semi-)random example that I built the other day: try gaim-devel (gaim 2.0.0b6).

      --
      Graham
  96. Zero Install .. by rs232 · · Score: 1
    --
    davecb5620@gmail.com
    1. Re:Zero Install .. by nairb774 · · Score: 1

      In a similar manner SLAX has an intresting way of puting packages into the system. A compressed file that has no dependencies and has everything it needs. Then the system just "mounts" it into place and there it is. Ok so this is over simplified but it could get there.

      An extension is to have the "system installer" trim the packages down by removing duplicate files and caching deps from there. Yea the downloads would be larger - but then again no dependancy hell and in a way it is the other side of the dep hell spectrum.

      Needed to get that out...

  97. quick start guide by Anonymous Coward · · Score: 0

    The problem I read out from your experience is, that Ubuntu still lacks an intro/welcome screen or manual. Providing good software and a useful environment is pretty shallow, if they don't provide a help system with the minimum "getting start" guide. (I mean, even Windows95 had one!)

  98. Debian(.orig.tar.gz+dsc+diff) vs .src.rpm by Anonymous Coward · · Score: 0

    Is it possible to give Debian an equivalent of .src.rpm instead of what it has which is.
      1. original archive, with mandatory .orig.tar.gz name.
      2. dsc with some package meta data
      3. .diff file with is using "diff" as an "archive" other things:
        more debian package meta data, control files, build scripts
        separate diff files.

    Can't it be possible to create a .src.deb archive?
    or at least compile (2) and (3) in real archive format (not diff...).

  99. Use the source Luke by wiredlogic · · Score: 1

    I just compile from source when my preferred package flavor isn't available. With GNU Stow you can cleanly install to /usr/local and keep everything playing nice with existing and future package installs.

    --
    I am becoming gerund, destroyer of verbs.
  100. Easier solution! by booch · · Score: 1

    Actually, there's a much easier solution. I'm surprised nobody has yet mentioned it. Perhaps it's not well know.

    The easy solution is to have packages depend more on FILES, instead of on other packages. So instead of depending on the linux-libc-dev package (under Ubuntu) or the linux-kernel-headers package (under Debian) when I need /usr/include/linux/net.h, the package should just depend on the /usr/include/linux/net.h file that it actually needs. Or if a package needs Python to run, it should depend on a python binary existing in the path, not some python package. If the package requires Python 2.4 or higher, it shouldn't be difficult to check that either. (For example, running python -V will tell you what version you have; the version of the package containing the file should probably match the version of the binary.)

    I'm pretty certain that DEBs and RPMs can both be made to depend on files. But the feature needs to be used much more, especially for those creating packages to run cross-distro. It would also be helpful to add some other dependency types, like the Python scenario I mentioned about.

    --
    Software sucks. Open Source sucks less.
    1. Re:Easier solution! by Max+Littlemore · · Score: 1

      The easy solution is to have packages depend more on FILES, instead of on other packages.

      But what if a package depends on "uninstall.exe"? *ducks*

      --
      I don't therefore I'm not.
  101. A minority and some thoughts to follow it by Anonymous Coward · · Score: 0

    "But I absolutely, 100% do NOT CARE about Linux's "mainstream popularity"."

    Keep that in mind next time you all whine that the hardware/software makers aren't supporting you. e.g. wireless/Photoshop. Or that you can't get Linux into your place of employment. e.g. "You should use FOSS instead of that proprietary crap." You want to be a minority? Fine! But don't complain when you have to suffer like a minority.

    1. Re:A minority and some thoughts to follow it by pandrijeczko · · Score: 1
      A few points:

      1. I only use supported hardware - yes, I have to do some research before I buy any hardware on which to run Linux. That's especially true of wireless but I normally manage to get stuff working.

      2. Whenever there are discussions about Linux on the desktop, people always seem to use Photoshop as an example. That's fine, no doubt it's a flagship package but I personally have never needed to use it. For the minimal photo editing I do, GIMP does far more than I need. So Photoshop (and CAD) is an irrelevance to me on Linux though I accept it's important to some.

      3. At my place of work, Windows is the "corporate standard" for the desktop. However, working in a technical role for a telecoms company for whom the flagship products run on Linux, I pretty much get free reign with running Linux where and when I want to. If anything, because I'm one of the few people with excellent Linux skills, I'm actively encouraged to run Linux workshops for the techies who are more used to Windows. As long as I don't contravene corporate security & support my Linux boxes for myself (rather than expecting our official IT department to do it), I'm pretty much left alone.

      Sure, I'd like to have to run just one OS (Linux) purely for the convenience of it - but I like playing a few games occasionally and use MS Office because I can knock documents I need to knock out quickly by using it. Other than that, Linux fits around 80% of my computing requirements, XP the remaining 20% and it is of no interest to me when Linux is deemed mainstream.

      --
      Gentoo Linux - another day, another USE flag.
  102. dpkg vs rpm ... IMHO by josepha48 · · Score: 1
    Having been a big fan or RH and SUSE and been using RPM for a while now, I used to think that it was better than dpkg. I have used slackware, debian, suse, rh, since 5.0, and various other linux installs.
    Recently I decided to try debian again. After installing sarge, I noticed that the software was old ( sorry guys it just is [2005]). So I decided to try something radical. I decided to point my sarge install at ubuntu repositories. First I pointed it at hoary. I ran apt-get update and then apt-get dist-upgrade, and viola. My debian install was now ubuntu. Then I did the same thing moving the system to dapper and then edgy. It is now running xubuntu.
    When I had tried to upgrade my fc4 system to fc6 a few weeks ago, rpm couldn't not handle it. Packages did not get installed, the system was in a state of total flux. I had to reinstall FC6 from scratch. Luckily I had my home and important files on seperate filesystems and was able to install the system without loosing any important data. It was much more painful than the debian to ubuntu changes.

    So IMHO either dpkg is better or the guys at ubuntu are doing a better job than fedora guys. BTW: Try upgrading a fc system to an equivalant rh system. Last time I tried, you could not.

    Oh well. for now I will stick with my fc6 system and xubuntu on my 2 laptops and if in fc7 /fc8 I run into the same issues that I did with fc4-fc6 upgrade, I'll say bye bye fc and hello xubuntu!

    --

    Only 'flamers' flame!
    Does slashdot hate my posts?

    1. Re:dpkg vs rpm ... IMHO by Anonymous Coward · · Score: 0

      yum is the equivalent of apt-get. I have upgraded from RH9 to Fedora up to Fc6 using yum.

      And the equivalent of "rpmbuild" in debian/ubuntu is:
      "dpkg dpkg-genchanges dpkg-scanpackages
      dpkg-architecture dpkg-gencontrol dpkg-scansources
      dpkg-buildpackage dpkg-name dpkg-shlibdeps
      dpkg-checkbuilddeps dpkg-parsechangelog dpkg-source
      dpkg-deb dpkg-preconfigure dpkg-split
      dpkg-distaddfile dpkg-query dpkg-statoverride
      dpkg-divert dpkg-reconfigure"

      The equivalent of .src.rpm in debian/ubuntu is a pile of files.

      If you are making a judgement of package system based on how easy it is to change between Debian and Ubuntu or CentOS and Fedora, you are not judging the package design, but rather the current maintainers.

      RPM has problems too, but building Debian/Ubuntu packages is like making sausage.

  103. Include the libs, so what? by 0xABADC0DA · · Score: 1

    The problem is that there are 'applications' and there are 'system tools' and in linux these are the same. People want to install or use dozens of applications, but there are thousands of system tools (netcat for instance) that might be on a system. In linux these are one and the same, but they are not the same to the user.

    It wouldn't even take that much more space except that the linux toolchain is really, really bad at making anything stand-alone. Compile a stand-alone "hello world" with GNU libc and it's 700k+. The way libraries are stored in ELF makes it almost impossible to remove functions at link time that are not used; if you link to a library you may have to include the whole thing instead of only the 20% reachable from what your code uses. The build system is at fault too, since often compiling in a single step instead of lots of individual .o object files saves significant space.

    Basically what I am saying is that there has been virtually no effort at all in linux toward reducing the size of libraries and binaries, so just because a stand-alone program is really large now doesn't mean it would have to be so large. Besides, if the user has 100 applications each taking 10 Mb more from being self-contained, that's only 1gb. That's not a lot of space these days.

    1. Re:Include the libs, so what? by Guy+Harris · · Score: 1

      The way libraries are stored in ELF makes it almost impossible to remove functions at link time that are not used; if you link to a library you may have to include the whole thing instead of only the 20% reachable from what your code uses.

      Do you mean "the way shared (dynamically-linked) libraries are stored in ELF"? Static libraries are stored as archives, and if you link with a static library, you should get only the object modules reachable from what your code uses. Shared libraries were designed to be, err, umm, shared; it's not clear that it makes sense for a self-contained application package to include shared versions of libraries if only the application uses or will ever use the library.

      At least with Linux (and BSD) packaging mechanisms, the impression I have is that if you want to have a shared library as a package of its own - for use by more than one application - you can do that, and declare application packages that use it as dependent on it, so that at least some installers will, when installing the application, install the packages on which it depends.

    2. Re:Include the libs, so what? by Anonymous Coward · · Score: 0

      No I don't mean that, Guy.

      Non-shared libraries are basically just .zip's containing object files (elf or a.out). A lib.a is basically a zip file of all the .o files built when making the library. The gnu linker generally will include the entire object file if it is referenced for *any* reason, so if you have a 50k .o file in there and refer to one 100 byte function in it then your program grows by 50k. There are some hack options you can specify throughout the toolchain to only get (mostly) the 100 byte function but a) nobody knows about this and b) it makes the lib.a a lot larger.

      I pose you one question. If shared libraries are designed to be ', err, umm, shared' then why not also include a lot of extra information past the 'end' so that they can be used to make static binaries that are not huge? I mean if you only have one or a couple copies on disk anyway there's no excuse for not doing this. The reason these things I mentioned in my original post are not done is that a lot of these binutils programs have literally not even been touched for decades.

    3. Re:Include the libs, so what? by Guy+Harris · · Score: 1

      The gnu linker generally will include the entire object file if it is referenced for *any* reason, so if you have a 50k .o file in there and refer to one 100 byte function in it then your program grows by 50k.

      And how is this a function of "the way libraries are stored in ELF" rather than a function of the way code is stored in an object file?

      If shared libraries are designed to be ', err, umm, shared' then why not also include a lot of extra information past the 'end' so that they can be used to make static binaries that are not huge?

      Why do that rather than, for example, include extra information (if needed) in object files so that you can build with a static library and extract individual functions from the object files in the static library?

    4. Re:Include the libs, so what? by Anonymous Coward · · Score: 0

      And how is this a function of "the way libraries are stored in ELF" rather than a function of the way code is stored in an object file? Libraries are stored as a collection of ELF objects. ELF can support finer-grained formats for the code (although not very well), either as a single ELF file or a collection, but libraries do not currently do this. "The way libraries are stored in ELF makes it almost impossible to remove functions at link time that are not used." Maybe you could explain what part of that is confusing to you.

      Why do that rather than, for example, include extra information (if needed) in object files so that you can build with a static library and extract individual functions from the object files in the static library? * having two places the 'same' code is stored makes it possible for them to be out of sync
      * static libraries are not versioned in most current distro's (ldconfig only makes links for shared objects) making it difficult to build static binaries against specific versions.
      * mostly impossible to take a working binary and 'make it static'. Right now you can't say, ok, I have this working inkscape binary now I want to run it on another system. There's just no good way, and even if you could it would be much much larger than it needs to be.

      To name a few.
  104. Perfection? by LooseBrie · · Score: 1

    I want to install a package that depends on something I have compiled myself, and there's no force install option.

    I want to use mirrors to distribute load on the repository servers and have a fallback if one goes down. I can't do this automatically with apt.

    Granted, these aren't massive issues, but perfection is a high standard.

  105. Treat it like HD by QueePWNzor · · Score: 1

    I've seen two ways to handle the HD/blue war. a.To make a format that can be read both ways, and b. Make a reader for both. APT (dcpg/.deb) and URPMI (my favorite RPM manager) are both so similar, why doesn't somebody make a middleman manager like URPMI to manage between the two of them. Also, RPMs (I'm more familiar with them) are archives with a script, so somebody should make a package that is an executable, but can generate a primative DEB/RPM script? Two solutions.

  106. Ubuntu does not distribute Oracle by symbolset · · Score: 1

    The package you reference is actually the Common Lisp interface to the Oracle database.

    --
    Help stamp out iliturcy.
  107. Re:They don't care about the file ext., fix the li by businessnerd · · Score: 1

    I'm with you that it should be easier for the average user to find the software they are looking for, but I have a slightly different approach. I'm a big fan of Synaptic. The first thing I usually do when I open up Synaptic is click the search option and enter a keyword. This keyword is usually a word that describes the function I want the software to perform. For instance, if I was looking for a photo editor, I would type in "photo editor". This brings up a list of packages, sometimes a pretty long one depending on what I've typed in. Then I have the task of scanning through the description column looking for that key word again. The search has brought up packages that all relate to photo editing in some way, but which one is the the actually editor. I want to find the Gimp, not the printer plugin for the Gimp, or just an underly library for it and I certainly don't want just a photo viewer. If my search could then be broken down into categories, this would save me that step. These categories would be decided based on what the function of the package is, whether it is the main package (as in The Gimp) or is it a library, plugin, etc. So my search results now look like this...

    Search: "photo editor"

    Photo Editors
    - GIMP
    +Plugins...
    +Libraries...
    - [other editor]
    +Plugins...
    +Libraries...

    Image Viewers
    - ImageMagik
    +Plugins...
    +Libraries...
    - gThumb
    +Plugins...
    +Libraries...
    - kphoto
    +Plugins...
    +Libraries...
    - [other viewer]
    +Plugins...
    +Libraries...

    The preset categories already available when Synaptic (and others like Yumex) starts up are far too broad and require me to either sift through a long list within the category, or even continue drilling down. Worse, I sometimes don't know what category I'm looking for. Is it if I'm editing photos for the fun of it, would that be "Productivity" or "Entertainment"? Moving towards a more search oriented approach is the way to go. That's the way our desktops are now being organized thanks to tools like Google Desktop, Vistas desktop search, and Beagle. My proposed method would help make the search more meaningful. For most of us, we just want the main app, especially the beginners. So we can ignore the thousands of libraries that that app may use. However, for those that might be looking for a specific library, or want to see all of the plugins available for said, app, the list is there to be expanded.

    --
    "It's not whether you win or lose, it's how drunk you get." -- H. J. Simpson
  108. From the trenches of an upgrader by NorthWay · · Score: 1

    Last year I installed OpenSUSE 10.1 on my new home pc with the intention of having a new linux workhorse.
    All very fine and dandy. Except the updater that took several minutes of cpu time to figure out I was all up to date...

    Downloaded the 10.2 upgrade and intended to use that.
    First doh: You seem to be supposed to boot the dvd to do the upgrade.
    Second doh: Going to the 64bit version threw me into dependency handling hell. I could _not_ get the installer to shut up or remember my choices about ignoring, deleting, or whatnot for the 300-odd packages it complained about. Abort mission.
    Third doh: Boot the 32bit version. "Package so-and-so is locked" it said and showed a single name. Ok, I unlock. Then it repeats that 6-7 times (how about figuring them out all in one go?). Click next. Core dump. Repeatable.
    Fourth doh (mostly my own): I forced an install (from Yast I think?). It warned me about not being compatible. It wasn't. After a _lot_ of mucking about with a second install and copying back and forth it booted and thinks it is 10.2. I hope it is.
    Fifth doh: The install URLs from 10.1 are still in the list. It somehow let me install an older kernel than the 10.2 one. WTF?
    Sixth doh (my own?): I don't get the partitioning limits with primary and extended partitions and MBRs on PCs. I use IDE drives in my Pegasos and "it simply works". OpenSUSE 10.2 really messed with the booting setup. MBR or not, GRUB or not, a gazillion entries in the boot selection, most of them the same.
    Seventh doh: I tried upgrading from 32bit 10.2 to 64bit. The install did nothing at all. I guess it thinks that 10.2 is 10.2, no matter what cpu you have...
    Eigth doh: The OpenSUSE upgrader now uses more than an hour to check my upgrades. In pure cpu time.
    Nineth doh (I forgot this one): I looked for some backup utility to save my hide before I begun all this. What on earth are you supposed to use for a rescue install? Tar?

    So this probably shows I'm a bit of a noob in linux handing. Next time someone tests a distro I hope they test it as an _upgrade_ too.

    Oh, and to show the other side of the coin; I handle AIX systems at work.
    I use TSM SysBack to do a network bootable system backup before upgrades (mksysb to local dvd or tape works just as well).
    I transfer or just nfs mount the new filesets for all but the most major upgrades. I commit current filesets, install new ones as applied so I can roll back, do the install while running, and then just reboot.
    Painless and _remote_install_ friendly (the servers are 270 kilometers away so that kinda helps).
    IBM has even promised no-boot upgrades for the future. This is what I call enterprise class handling. Do not settle for less.

  109. Use Alien? by ljkopen · · Score: 1

    Just create a .tar.gz ... Then you can use alien to convert it to a .deb .

  110. Damn shame... by jamyskis · · Score: 1

    It's a crying shame that AutoPackage is now going the way of the dodo. Heck, if I had the time to learn it I'd package my games in that format. Hearn is right - also, most developers, being techie-minded are still too attached to the .tar.gz method of distribution and leaving binary distribution as an afterthought, usually just chucking out the odd rpm or deb file which is pretty soon horribly outdated. I've not seen many AutoPackaged programs but I updated my aMSN yesterday with it and I just loved it - the way it explains what it's doing, its look, everything. There's nothing fundamentally wrong with rpm and deb. I can't speak for Slack's TGZ or Gentoo's Emerge because I've never used them, but as I understand it they are frustratingly difficult for beginners to use. RPM and DEB, when implemented well, are extremely easy to use - double click, enter root or sudo password, click install - done. Even easier than Windows. The problem is that people tend to tie RPMs and DEBs to rather exotic dependencies which means that they only tend to work on one version of one distro. There's other methods too - BitRock (which is free of charge for GPL projects) and Loki Installer (which seems to be the exclusive domain of games, although I see no reason why it can't be applied to serious apps too) are two excellent efforts which really deserve more attention.

  111. Hear Here! by Max+Littlemore · · Score: 1

    Excellent point that

    --
    I don't therefore I'm not.