The PackMe page, the one about packaging methods.

Paragraphs in this page are:

Package Mechanisms
Package Types



Package Mechanisms


Packages are mostly precompiled binary sets that include:
   The binaries
   Libraries if needed
   Instructions for placement in the directory tree
   Configuration files install or update method.

The packaging method in Linux is to do dependency checks against the
rest of the system, therefore, if, for example, a library incompatibility
is detected, or "something" is missing, the package handler exits with warnings.

This behaviour seems annoying, but I find by experience that it grants stability.

Remember, that in *nix, with very very few package exceptions, a package is
compressed data and NOT an executable.

And, also, "package" does not mean a program set only.


The Standard C library can be a package.
The kernel (or other) source can be one, too.
An entire suite (like OpenOffice.org) can be a package.
Kde suite is split among many packages.
A Graphics package does need X installed.
A game or emulator package may depend on the SDL Library package.
A program based on kde needs the kde base and kde lib packages.
A program source for kde needs the kde devel package to compile.



This method may look difficult and complicated but it is functional.

Everyone can make a package. For example, I can compile a project from source and then make a Slackware package that is not included in the Slackware distro.
I can even make a Debian package, in my Slackware box.

Just remember that a source can be universal, but a package may be localized,
because systems among distros may be very different.

Kde, for example is located in /opt in Slackware distro, but in /usr in Mandrake.
So, packaging is useful and easy, but depended on distro in most cases.

Configuration files can be very different, too, so:
Be very careful in installing a Debian 3.0 .deb package in a Slackware distro

Have no fear in installing a Mandrake (7-9.x) .rpm in Mandrake 9.1

Always check compatibility
  
And, of course, Only If You Trust The Packager!





Package Types

There are two major package types that are used from many distros:

Rpm from Redhat (a Company)
Deb from Debian (a Community)

These two packaging systems can upgrade from the internet from a single library to your entire system!

Other distros may use their own, but you can easily compile and install every package system you want if not included in your Distro.

And there are many distros based on Slackware of course.

Distributions that depend on another distro's packaging system are also based in that distro's philosophy, so a distro based on Slackware would definetly have a more "manual" approach than others based on Redhat for example.

For the Slackware packaging mechanism goto the SlackMe page or directly here.