Re: Which Has The Best Package Control System? nntp wrote:
> When I say "control system" I mean easy to search, install, upgrade,
> uninstall.
>
> I tried FreeBSD package system. I think it is better than its port system,
> because it is quite easy to do pkg_delete, or pkg_add to the most recent
> stable.
Packages are just precompiled ports on FreeBSD. Any port you install is
listed in the package database just as a binary package would be.
pkg_info, pkg_delete work on installed ports. The only advantage to
packages over ports is no wait on comiling. This can be great for
things like openoffice, xorg, mozilla, etc. Ports, however, let you
pick compile-time options like whether you want SSL support included in
your application and other useful things that you cannot choose when
installing binary packages.
Ports also does an excellent job of upgrading (make deinstall reinstall,
or portupgrade tool) and keeping track of dependencies, old config
files, etc.
I find FreeBSD package management to be elegantly simple, flexible, and
time saving in my system administration experience. Unfortunately, I
cannot really compare it to most linux package management tools, except
to say that i greatly prefer it to RPM. No experience with deb's.
Gentoo's portage is like a clone of BSD ports trees, allowing linux
users the same ability to quickly compile (well, quick time at keyboard,
the compile may take a while) an app and all its dependencies on your
local system without bothering to waste time on checking what order to
install dependencies, what ./configure arguments are needed, etc.
Gentoo users I've known seem pretty happy with it.
>
> I did Debian aptitude, I was able to install package, but I can not find
> them in shell. I installed PHP and Apache, but I can not find PHP or HTTPD.
This is usually OS specific. Most package management systems will let
you see what files were installed by a package. For instance, on
FreeBSD, pkg_info -L packagename will list all files it installed. Some
OS's put things in weird places like /var/http/ and since almost any
app's ./configure could have it install various components to different
locations, one should find a way to check where things are installed on
their system, and get a feel for the basic hier the package system uses.
On FreeBSD, for instance, I can expect by now that any package I install
will put everything in /usr/local (unless maybe qmail still tries
/var/qmail), I can expect config files in /usr/local/etc, I can expect
various shared stuff like vim syntax files in /usr/local/share, I can
expect a startup script for any daemon I install in
/usr/local/etc/rc.d/, etc. And if I can't find what I'm looking for,
pkg_info -L comes to the rescue.
Lots of packages may be installed somewhere that's not in your path.
Lots of packages will never need to be in the path, so long as startup
scripts properly run the daemon.
Find out how to see the list of files a package installs, and you will
never have to rely upon it being installed to your path to start using
it right away.
> What about CentOS's package system? Do they use RPM? I heard it is very bad.
No clue about Cent, but my redhat rpm experience was a headache.
> What about Gentoo? My VMware can not start the installation, so I did not
> try it.
aside from what i said about portage concepts above, i have no clue. |