FreeBSD/PC-BSD Ports System

Here’s another post that will bore my wife to tears. Actually, bearing in mind that I now know that both her sisters have seen my blog, I have the potential of boring her entire family–and probably most of mine too.

So anyway…

I’m using my FreeBSD box a lot these days. That, of course, means that I have a lot of time to meditate upon what like and dislike about the FreeBSD ports system.

For those of you who don’t know:
One of the more annoying things about unix is that sometimes when you install a program, you find that it won’t work without another (or possibly many more) program(s). There are various systems of getting around this. One of them is the FreeBSD ports/packaging system which actively downloads all the programs that your program depends on so that you don’t have to track them all down individually.

This is great when it works.

What’s not great is when you install a program that depends on many different things, none of which you’re running (such as, for example, the entire GNOME desktop environment). Worse, while it can find packages for some of the programs, it can’t find them for all. Thus, it actually compiles the program in question.

The end result is that sometimes your computer will end up compiling late into the night. Sometimes, it will not only compile late into the night, but when you come back the next day, you will find that some selection of programs no longer works.

For example, even as I write this, I am theoretically installing eclipse. The last time I installed eclipse, it forced most but not all of my GNOME desktop installation to upgrade and I was forced to repair it.

This sucked beyond words.

Not coincidentally, I’m not using GNOME anymore. Thus, it can’t mess up my desktop. Nonetheless, it’s irritating that in order to run a program that’s written in java, a language that’s not dependent upon the local computer, it is somehow necessary to install the entire GNOME desktop and not just a few libraries.

FreeBSD’s ports system is usually great, but this is one of those things that irritates me. I’m sure that someone will figure out a solution to it someday, but until then, I’m stuck watching piles of largely superfluous packages install on my machine.

4 thoughts on “FreeBSD/PC-BSD Ports System”

  1. So I hear… Though it’s probably not fair of me to blame this on the FreeBSD ports system. I should probably blame it on the people who did the FreeBSD port of Eclipse and used some GNOME libraries to make it fit in better with the OS.

  2. There is a magical config file in /etc where you can set various global options for compiling things.

    It’s called /etc/make.conf.

    You can tell it things like “do NOT include GNOME stuff unless you have no choice,” stuff like that.

  3. Thanks. It makes sense that they’d put something like that in there somewhere. Too bad it’s not a little more obvious.

    Maybe I should spend more of my time reading the FreeBSD Handbook or something.

Leave a Reply

Your email address will not be published. Required fields are marked *

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>