Ruminations on the Digital Realm

Jan Stedehouder

PC-BSD Day 4: Making a fresh start

The first few days I have been busy with installing and trying to install new software. Maybe I am weird and a software glutton, but I like my install base to be fat (something I definitely don’t share with my viewpoint towards the opposite sex, but let’s not digress). The more software to play with, the better. Fooling around with the PBI’s, the commandline based install via pkg_add and testing out KPorts as a graphical frontend for the ports collection resulted in some mixed results.

Some PBI’s would work fine, others -like Abiword and GIMP- would move a finger untill after I tried to install the same packages via the ports collection. Though those installations failed, they at least provided the necessary dependencies to run the PBI installed versions. Which is weird, because the PBI system is meant to deal with those.

One of the nicer things of running around in the open source world is that there are always people with a friendly attitude that provide some guidance and correction. Like Manolis who pointed out to me that I shouldn’t confuse the pkg_add and the ports collection system to manage the software. What I really liked is that he didn’t say: “You should this version of *BSD, because it handles it much better” – not uncommon when you write about any Linux distribution- but that he gave a good solution and pointed me to a really good resource to learn more, the FreeBSD handbook.

Packages and ports

Manolis’ brief but complete statement about packages versus ports was:

On a FreeBSD system, pkg_add will fetch packages built when the RELEASE was made by default. The ports system (when updated, like you did) will build the latest available programs. Old programs and new ports will not mix well together.

This is definitely something the more experienced Ubuntu Linux user should pay attention to. For me there is no difference to installing, updating or removing software via Synaptic, Aptitude or the commandline apt-get install instructions. There is one sources.list and that one is used by all three. As long as you don’t screw up the various repositories there really isn’t a problem.
However, as I understand it now, the ports system is not another front-end to the packages. It is a different system that the one accessed via pkg_add. If you want to know more about the pro’s and con’s this article makes some interesting observations.

Big lesson: BSD isn’t Linux. Well, at least when it comes to software management. If you want to know more about the difference between Ubuntu and PC-BSD it is a good idea to check out Dru Lavigne’s blogpost about it or the article she wrote for LinuxDevCenter.

Reading up on FreeBSD
Lessons learned require new actions. The next logical step was to go to the FreeBSD handbook. It is avaliable online, but you can also download it in various formats. Since I carry my iPaq around everywhere I go I decided to put in on there for later reference.

To be honest, I am not a book person when it comes to computing. Mostly I just blunder my way into new operating systems and software until I run into a snag. I did it intentionally now to test out PC-BSD from the viewpoint of a somewhat more experienced Windows or Linux user. PC-BSD aims at making BSD accessible and easy to use for desktop users and from that perspective alone I shouldn’t have had the errors or problems with the PBI system. On the other hand, I could have taken the time to read the Quick Guide that the developers have so kindly placed on the desktop. Sorry guys, should have done that.

My main goal for coming months is to learn more about *BSD and then it doesn’t hurt to at least check the book in order to get it right this time. After PC-BSD I will try out other versions of *BSD and write about my experiences.

Reinstalling PC-BSD

Fresh starts require fresh installs. I guess we all know that from experience. My first Linux install didn’t last a day before I ruined it and many more followed after that. Reinstalling a Linux distribution is a piece of cake and it never takes long to get a complete system back online (which is one reason why it makes sense to have a separate /home partition). With that experience under the belt it didn’t take long for me to decide that it was the path of wisdom to get me a fresh install of PC-BSD.

Manolis’ suggestion to change the PACKAGESITE environment is something I will leave for later this month. For now I will just follow the instructions in the Quick Guide. And then think before I act.


Single Post Navigation

6 thoughts on “PC-BSD Day 4: Making a fresh start

  1. That was a really interesting post. I tried out PC-BSD once upon a time in a virtual machine. I plain ol’ didn’t like it. Its package system seemed to be in its infancy.

    I’m glad you’re determined to give it a good go, though. BSD is a different world, it’s not for everyone, but perseverance is the only way to really determine if it’s for you.

  2. BSD is for everyone found of KISS an UNIX. PBI is an optional way to install applications etc. and it’s of course in development. But furthermore you’re free to use the ports system with its about 17.500 applications, ready to install and customized for the operating system.

  3. >However, as I understand it now, the ports system is not another front-end to the packages. It is a different system that the one accessed via pkg_add.

    pkg_add for binary packages and ports for the source.

    For example it’s rather easy to create a package out of your port with pkg_create -b firefox. Then you can install this package at an another machine with pkg_add. But you will be certainly in trouble if you’re using the rather old packages from the FreeBSD server and mix them up with the latest ports. But you can change the ftp site (see the article above) and fetch new packages instead.

    There are some rules:

    -don’t do a portupgrade -a to upgrade all of your software, it will fail. Do it step by step.
    -think before mixing ports with packages
    -read /usr/ports/UPDATING
    -don’t mess with the make options of a port or with /etc/make.conf. If you don’t know what you’re doing, you will certainly fail.
    -update your portstree with csup _OR_ portsnap, don’t mix them

    Last not least there are other scripts like portupgrade, e.g. portmaster. Portmaster is the new star an ports heaven 😉

  4. Hello again,

    I am glad you are still on your way with PC-BSD. Persistence is a big plus when dealing with new systems – particularly ones which follow a very different approach to the usual Windows one.
    To clarify a few things:

    The ports system is related to the packages. In fact, when you install a port, a package is created on your own machine and then it is installed. The database which holds the installed programs, lists both packages and ports at the same time

    For example, to find out what programs you have installed you would use:

    pkg_info |more

    You will see both packages and ports.
    Assuming you have updated your ports tree (with csup, cvsup or your graphical client – which you seem to be fond of 🙂 ) you can also find out quite easily which applications need to be updated with the following command:

    pkg_version -v -l “

  5. Seem my previous post did not go through completely, the command is:

    pkg_version -v -l

  6. I wanted to mention in response to an above comment that it’s *very* rare that I have portupgrade -ay fail. And if it does, reading UPDATING always helps.

    I’ll have to check out portmaster, though.

%d bloggers like this: