Originally posted by: Lufusol
Originally posted by: drag
But it ensures that everything actually works as the package maintainers intended, which ultimately saves a lot of work for you. With a very complex website the 'software stack' can get very deep. You have php version this, php-mod version that, apache version y, mysql database version x, kernel version x.y.z, built by gcc compiler a, and this or that version 2.0, and maybe a half of dozen other packages and php modules, or whatever bits of code you pull from whatever library.
You do a upgrade and any of those changes create a incompatability then at least a part of your website is hosed.
Then when you take into account that by compiling your own software from code, with different optimizations, make options, dependancies, you can be affecting any of those before mentioned packages in any hundred numbers of ways.
So you have all these variables, maybe hundreds of them, and any single one of them, or unlikely combination of them, can potentionally cause you greif. Weither it's bad programming choices on your own, or bad make/dependancies combinations/choices, or software bugs, or anything...
Linux I'm familiar with, UNIX not so much, but...
I was curious and reading about FreeBSD the other night and from what I see, this argument (above) also fits the FreeBSD philosophy. If you're trying to sell him on Debian
for those reasons, and what I've read is correct, why not on FreeBSD (since that is actually one of the choices)? The ports system has everything taken care of. No version conflicts. No missing dependencies. Compile options preconfigured. Everything not in base should, in theory, just require you to make and install. Is this correct? Now I don't actually use it, so I don't know. But the ports system actually sounds pretty nice. At the sacrifice of bleeding edge technology (and all the fun you get to have dealing with dependencies and version conflicts), FreeBSD sounds like a better option.
Am I understanding this relationship between FreeBSD and (the many incarnations of) Linux properly?
I was selling Debian over Gentoo with that arguement.. not so much Debian over FreeBSD.
And yes Debian has support for PHP5 mod.. however to use it in Debian stable you'd have to use stuff from Testing.
To do that you'd have to make a file /etc/apt/apt.conf and put in it:
APT:

efault-Release "stable";
Then you have to edit your /etc/apt/sources.list file and add entries for Debian testing to that.
That way you can install packages from testing, but have it favor packages from stable when it can resolve dependancies with them.
And they you have to go apt-get update, apt-get upgrade to make sure that it's not going to try ot update your system to testing when you try to run something.. then you go:
apt-get install -t testing libapache-mod-php5
Then that will get mod-php5 support into Debian stable...
more details are aviable from here:
http://www.debian.org/doc/manuals/apt-howto/ch-apt-get.en.html
However that kinda blows the whole 'well tested and unchanging configuration' stuff out of the water.
However in Debian Testing's defence you still have Debian Experimental and Debian Sid/unstable to filter thru before a package makes it into testing.
FreeBSD ports system I haven't had much experiance with.. with OpenBSD ports I have more, but it's still limited. They seem to work well enough, except that with OpenBSD the ports are not supported in the same manner as the famously secure 'Default Install'. With Debian everything that is in the 'main' catagory (contrib and non-free is second class citizens, I beleive, but get treated well enough) is suppose to get as equal treatment as everything else, including items provided with the default install.
How well FreeBSD supports software installed thru Ports I don't know.
One thing that is great about FreeBSD though is their documentation is nice and well thought out. You can tell that they have gone thru and developed the documentation based on their real experiances working with the sort rather then just refering to man files and such...
Gentoo's online howtos are very nice, I use them for lots of stuff that isn't even Gentoo-related, but I don't know about individual software support. Their forums are nice.
With Debian I think it has the best documentation aviable for a Linux distro. For stuff that Debian actually makes, like apt-get or their installer and such, online documentation is nice. It's a bit dry and hard to read sometimes, but it's there and it's usefull, which is the main thing.
With each and every package you install it sets up a man file, not having one is a worthy of filing a bug, and will create /usr/share/doc/<packagename> directory that contains extra documentation.
Lots of the time it's not that usefull, it's just a couple readme files from the package's original source tarball, but it's very usefull to look at when Debian makes changes or modifies packages to fit into the Debian OS better.
For example when you install gphoto2 package you normally would be able to plug a digital camera thru USB and it will 'just work'. A little screen will pop up (at least in Gnome) and prompt you if you want to download the photos from the camera to your computer..
But this doesn't work initially in Debian and their /usr/share/doc/libgphoto2-2/ documentation explains why.. They set it up so that the hotplug script sets the owners of the device from the 'camera' group. If you want to use that you have to add your normal user to the camera group.
Though thats a estoric place to put the documentation, and it's not going to be the first thing a person thinks to look after they install the software it doesn't seem to work.. at least it's there. Thats much more then most Distros would do. They would just make the change and thats about it.