Compatibility Issues Across Linux Distributions?
CarrotLord asks: "Looking at the recent release of IBM's Small Business Suite for Linux got me wondering about distribution compatibility and standards. Personally, I run
Debian, and am considering a move to
Progeny. However, I am concerned by the fact that many products (particularly commercial ones) are available for only a particular subset of distributions (usually RedHat,
Mandrake,
SuSE,
TurboLinux and
Caldera, but rarely
Debian-based distributions or the BSDs). What is the current state of play, particularly in regards to tools for developers to enable them to create and test installation packages for various distributions?" Such a tool would go a long way in removing the force behind the "Linux fragmentation" argument that most of Linux's detractors often refer to.
"How are the LSB and the FSSTND affecting consistency between distros? What about RPM and APT? What tools are there available for developers of software to ensure that their software runs on the widest variety of systems? Is there some software development or packaging tool to assist developers in making distribution-independant software, so they can create files in dpkg, RPM and tgz formats for any distribution without much additional effort on their part? What about tools to test their software installation on individual distributions, and assist with the resolution of problems? Should this be up to the individual distributions, or should be have a unified approach?"
Redhat was one of the first Linux distros to come out, and alot of other Distros are based on it, or are atleast using RPMs.
.rpm packages are nice, but again don't come close to .deb packages. There are many reasons for this, but I won't go into that or some moron will vote this as a "troll" (which it is not!) Anyway I believe the reason why most distros are based on RPM is because of Red Hat Linux and it's ease of install. There isn't anything wrong with that, RPM is ok. However it would be really nice if some of the distros would spent some time on agreeing where files should be located. Debian has policies saying where files are to be located. If a package fails to meet these policies, it gets fixed or it won't be part of the stable release. I for one really like this. I don't enjoy searching all over my disks looking for some config file when they should all be in /etc and /usr/local should never be touched by a package!
So was Debian. "Debian Linux" (as it was called then) was first publically released in January 1994. By your comment, every distro should be just like slackware as it predates most distros. So that comment is not valid.
Debian has always been the "for the community by the community" distro. Red Hat has always been a little more of the "newbie" or "easy to install" distro.
RPM is nice, but it doesn't come close to DPKG. The
Enough ranting...
I get irritated every time this pops up
OK, so you run a, for example, Red Hat system. And you're looking for a piece of softweare, but the only thing you can find is a SuSE RPM for it. Download, install, complains about 800 missing RPM's because SuSE and RH use completely different naming schemas.
So you go over to rpmfind.net. enter the name of the various SuSE RPM's, see what's in them. "rpm -q -f filename" on your system, and see that they are all there. Install RPM. Done.
These "Runs on RedHat" things that everyone sees are really meant for the not-so-technical of us who can't figure out how to track down what libraries in particular aren't there. There are so many variations of Linux installations out there that it would be almost impossibleto know how to fix every problem with every one. So they pick one or two, and that's that.
If you're spart enough to figure out how to resolve your own cross-distro dependencies, then install it and be done with it. But realize this isn't a technical, won't-run-on-distro-X notice, but a technical, we-can't-support-every-variation notice.
This space for rent. Call 1-800-STEAK4U
convert packages to/from slack, rpm, deb
http://kitenet.net/programs/alien/
Distros and their package managers need to somehow find a way to hide all the distro-specific features and script-dependent software install settings behind some form of abstraction layer.
Rather than a "Red Hat RPM" or a "SuSE RPM" we could just have "RPMs" that would abstract all the details. The specifics on file placement that are inherent to the current situation [above] and to the package files themselves must be standardized and abstracted before linux will get that support and enthusiasm from both commercial software vendors and endusers alike. Same goes for APT and tgz (as well as other package types) as well.
Most RPMs can simply be converted to deb format with 'alien', and a little bit of elbow grease figuring out what libs need to be installed. I've dealt with numerous packages including win4lin (can't think of any others at the moment, but there have been lots).
--dave
anyone that has bought a loki game in the recent passed will know of there installer. It is a shell script which unzips and installs the game. It runs on any linux distro, and also installs an uninstall app (the app serves all loki games).
something like that, imho, would be the best way to approach a cross-platform installation..
talk to loki (or but a game or two) for more info on it.
stuff
I hear the new Linux 8.0 [sic] features a feature just like WindowsUpdate. Praise the Lord!
There are a huge number of yeast infections in this county. Probably because we're downriver from the bread factory.
I prefer to grab the .tar.gz or bz2 of the source and compile it myself. No incompatibilities yet. :-)
So long as I know whbat the package requirements are I have had no trouble installing quite a few RedHat (ick) .RPMs. Even Win4Lin went in without a hitch. It's just a matter of reading the documentation. Needs PAM, glibc2.2, bash2.17. no problem. Sometimes there's some path altering and whatnot but it's generally not a problem.
Writing installers for multiple distributions is relatively easy. The killer for a commercial software product is testing. Proper testing takes a great deal of time and money. There is a big difference between "it should run" on distribution X and "tested and supported" on distribution X.
Mea navis aericumbens anguillis abundat
This is not a troll! .deb file once.
But, it seems to me as if the companys are trying to pick a standard. Redhat was one of the first Linux distros to come out, and alot of other Distros are based on it, or are atleast using RPMs. And, most likely, there are more people using it. Out of all the stuff I have ever downloaded for Linux, I have only seen a selection for a