[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: freedom of debian



kmark@pipeline.com wrote:

On Sat, 4 Oct 2003, Jason Housewright wrote:

[snip]

Using Debian, is it fair to say that one has more
freedom regarding the software
installed...specifically, I mean that my experience
with GNU/Linux thus far has been that if you want to
install an upgraded version of something...say mozilla
for example, or KDE, that you have to overcome the
older packages...

While Debian does have a great package management system. it doesn't always do what you want and it is possible to end up breaking things by trying stuff like pinning apt, but that is usually only because you aren't trying to do things the right way.

As Kevin says apt-get does a good job of dependancies. dselect and aptitude do an even better job because (along with other good reasons) they tell you about suggested packges as well. If all you are trying to do is install the stable version of some package on Debian Stable, you can just type "aptitude install <package>" and away it goes. No searching for the rpm that provides libxyz. (I've heard the graphical rpm manager in RH8 was much better at this than older versions.)

The greatest "freedom" (and most work) of installing new versions of software is to build it from source. The reason why RPM (and deb) based packages have dependancy issues is that they link at run time to some specific version of a library. Newer libraries come out and the newer software is packaged linked to the newer libraries. You don't have all the newer libraries on your older system, and have a dependancy issue.

You can build packages from source using dpkg, or you can search apt-get.org for backports to Debian stable. Stable is a good place to start or to use on servers or if you don't want to update 300MB of files every month ;). If you really wanted to "roll your own" on everything with even greater freedom (and work), you could try Gentoo.

>>I've been using an rpm distro if that
clarifies a bit. Anyway, I want to be able to put what
I want on my computer without having to go through a
song and a dance so to speak just to get it. Perhaps
I'm just lazy. You all have been great and this list
is really informative. Thanks for your help. You are
greatly appreciated.

As I said above, building from source will generally give you the greatest freedom (flexibility), but it is not a "lazy' process. I have an aquaintance who builds KDE from source. It's not something that I like to do for fun. I appreciate the packages.

Unless the new software's source code _requires_ newer libraries that are not on your system, you could build the new mozilla and run it out of $HOME/bin or even /usr/local/bin. It's preferable to put non-distro programs in those locations rather then replacing the distro managed files in /usr. Even if it did require the newer libraries, you could build them from source as well and install them into $HOME/lib or /usr/local/lib, or possibly give the build process a flag to statically link the libraries. You just need to compile the libraries first, letting them know where they will reside, and then tell the program where the libraries will be when you compile it. It's work, but you can learn a lot (or spend a lot of time pulling hair and hating your system.)

Debian can still give you a song-and-dance (or hours of head pounding) if you are trying to install some package with lots of depenancies out of testing/unstable into stable. With both the Debian and the RPM based distro's you have the choice of compiling your own version, or using a back-ported package.

<snip>

Hi Jason,
rpm based distro work like this:
find the new package yourself,
find the dependencies yourself,
pray that eveything works ok.
Althought with Ximian red carpet express,
this is much simplifed.
And now there is an APT for rpm which is being improved with the new
Fedora Redhat project.

But Debian has (almost) always used apt-get which figures dependencies for
you (most of the time).

I would like to again point out dselect or aptitude. If you don't like dselect because of the ncurses (menu) interface, you can run aptitude from the command line almost as if it were apt-get, and you can run aptitude as though it were some type of dselect.


With debian, the files come to you whereas the old rpm system required you
to find packages and fix things yourself.

And isn't it just better this way? Thanks goes to all the hard working package mantainers! :)


Also with apt-get you can get a source package if you want, to a freshly
minted app. Redhat has srpms but again you have to do all the work.


I've used rpm with srpms many times. Once I understood the process it wasn't a big deal to re-compile a package with some flags or patches I wanted. I've used dpkg to build a package from the debian source once and I can't remember now why I did. I think it was to try a newer version of lmsensors.

For both package systems there are rules that have to be followed in order to turn a source directory into a package. Until I become better aquainted with building Debian packages from source, the rpm version is easier but only because I have already invested the time to learn how to use it. Both seemed like work to me if I was doing anything more than: get source package, unpack, recompile (with flags for my processor or libraries), repackage, install.

--
Jacob




Reply to: