Words cannot describe how easy FreeBSD packagement package management has become recently.
They're finally pushing precompiled binaries with their apt/yum-like pkg tool (no man page yet).
pkg install thing
pkg delete thing
pkg update
pkg upgrade
etc...
(which are superior to older tools like pkg_{install,delete,update,upgrade} etc...)
But they haven't entirely ditched ports. Instead, they made a repository tool (poudriere) that makes building custom repositories child's play. This tool of course revolves around ports.
Poudriere uses a combination of ports and jails (VMs) to build and package applications and places them into a folder that is immediately ready to be served over NFS or HTTP and accessed with pkg. It's very easy to configure, the tool will actually download a FreeBSD image, sync the ports tree and build ports into packages with your own specified compile-time options (if any).
Here's a tutorial of someone building a KMS-specific repository (which I had to do for one of my Intel-based machines):
http://negativo17.org/freebsd-10-new-x-org-kms-pkgng-poudriere/
That's remarkably easy! (EDIT: There's no need to build the kernel and world now)
It's certainly an improvement in practicality. FreeBSD can now probably be setup and configured in a comparable amount of time as any Linux distribution minus the pre-installed components (FreeBSD is not pre-installed with anything).
Anyway, if you ever cared to try something like FreeBSD, wait another a month for FreeBSD 10 to be released and give it a spin. It should be orders of magnitude easier and less time consuming to setup.
EDIT: Spelling.
ports was pretty awesome to begin with!
Gentoo 4 lyfe.
Quote from: Newby on November 29, 2013, 10:51:49 PM
ports was pretty awesome to begin with!
Except it takes an hour or two to compile big projects like Firefox with a powerful machine. Ports is practical with small and self-contained applications though.
I have a netbook for casual surfing and that runs FreeBSD for obvious reasons (namely Windows 7 is unbearably slow on this type of system). Ports is even worse there (it takes several hours to compile Firefox).
I got into poudriere because the netbook needs a recent version of the Intel X11 driver which requires KMS to be enabled. However, the official FreeBSD package repository for 9.x is compiled with KMS disabled ... hence I had to create my own mini KMS repository.
By the way, if you want to try poudriere for pkgng on FreeBSD 9.x, you'll need to add
WITH_PKGNG=yes
to poudriere's make.conf.
Otherwise, it will build packages for the legacy tools.