(Okay, off topic we go, but I can't help it...)

Le 10 septembre ? 22:38, Lionel Bouton a ?crit :

> To put it more on topic, could you describe briefly how you can
> integrate gems in the package management system on *BSD? 

Basically, it requires to write a very simple makefile, a text
description, and generate a hash of the package.

You can find an actual makefile here :

http://www.freebsd.org/cgi/cvsweb.cgi/ports/mail/rubygem-actionmailer/Makefile?rev=1.10;content-type=text%2Fplain

If you want to take a look around, you have a list of all the gems
currently managed here :

http://www.freebsd.org/ports/rubygems.html

(Note that rubygem itself can be installed, and is somewhat integrated
into the system too.)

The FreeBSD ports is build around Makefiles, but very standardized, and
those will pilot the usual makefiles of each software or will launch
every other kind of stange command needed to build your software.  From
an administrator's point of view, it's very easy (everything build with
make ; make install).  From the porter (who maintains that magic layer
of glue between the software and the building management system), it's
sometimes quite more complicated.

If you want all the gory details (and a sample of that great FreeBSD
documentation mindset) :

http://www.freebsd.org/doc/en_US.ISO8859-1/books/porters-handbook/index.html

/.../

>>   As with a comparison with any Linux distribution,
>> FreeBSD also presents a far greater sense of the system as an integrated
>> whole than Gentoo
> 
> I'm not sure if I understand this correctly. Let me rephrase to be sure:
> the FreeBSD administration is more consistant across software packages,
> the base system configuration is simpler.

Simpler, somewhat.  The real winning point is that, on all my FreeBSD
machines, I can completely wipe out the installed packages with a 'rm
-rf /usr/local', and still have an usable, bootable system.  Not that
it's really useful, but it shows what Chad means with the integrated
system - you have a fully functional base that comes with the OS, and
the packages neatly separated.  That also means that I can probably find
my way and manage the basics of any relatively recent FreeBSD system out
there : unless the administrator made some very ugly things, I'll find
the basic tools needed to run the box.

Incidentally, since most of the packages' makefiles are patched to force
the installation under /usr/local, the maintainers also usually put
files in "usual" places (config under /usr/local/etc, samples under
/usr/share/examples, docs under /usr/share/docs, etc) enforcing a
stricter cohesion - in my experience.

On the other hand, the FreeBSD ports system is not the universal
panacea, in my experience.  I've had unstable systems and applications
using it, requiring sometimes to launch a lengthy re-compilation of many
ports, and the such.  But it's infrequent, and the base system is
usually next to indestructible in a server configuration.  (I only have
one FreeBSD system in a desktop config.)

/.../

> However I suppose there is some inconsistency in *BSD configuration too:
> the first thing that comes to my mind is Apache configuration (which
> configuration complexity could arguably be compared to the one of a
> whole OS...).

No, no.  The _basics_ (which deamon to run at startup, and the
parameters to launch them) are centrally managed, but each package still
has its own configuration file, usually the sample file included with
the software, patched to reflect the strict directory structure.

/.../
 
>> Additionally, FreeBSD provides more extensive software archives,
> 
> I'm surprised to hear this, Gentoo software coverage is huge and truly
> amazing if you consider the unstable part of the Portage tree.

I don't know the numbers for GenToo, but FreeBSD has, at the moment,
17620 ports.

/.../

>>  and
>> while Gentoo has some of the best online documentation in the Linux
>> world, FreeBSD documentation is the best I've ever seen -- not only
>> because it covers pretty much every damned thing you can think of, but
>> also because it is so incredibly well organized.
> 
> The lack of organization is indeed a defect. Not big (it's not a huge
> pile where you spend hours looking for something) but it definitely
> could be improved.

This is the point I really, really like about FreeBSD.  Next to every
system utility and library has a man page, and port maintainers are
known to write or convert some for the packages that would lack those.
Aside from that, the FreeBSD handbook is well written, and a good basis
for many tasks.

Fred
-- 
I'm shameless, nameless, nothing, and noone now.  But my soul must be
iron for my fear is naked.  I'm naked and fearless.  But I'm dead 
inside.  You see, shit adds up, now I'm dead inside.  Hatred, weakness,
and guilt keep me alive at the bottom.                    (Tool, Bottom)