PC- BSD Day 7: Ports of Call
Today I spend most of day on a Windows box. Alas, but my boss won’t allow anything but Windows on the workfloor. When the time to play is in short supply I automatically focus on the tools that are created to make life easy. That focus was on graphical front-ends for the ports collection. For this I switched to virtual box number 2 (remember, box no. 1 is the one I just play nice with according to the rules).
As with many management tasks under *NIX you don’t really need a graphical front-end. The graphical user environment is nothing but a layer around the real system and it’s sole purpose should be to make things more attractive and easier accessible than the command-line tools. It is no problem to install software using the ports via the command-line. For, instance, installing Bluefish was simply a matter of opening a console (I choose Konsole with root shell access), cd-ing to /usr/ports/www/bluefish and typing #make install. And then wait.
When it comes to graphical front-ends to this system I found some tools and received suggestion by some of you. Which reminds me: I can’t thank you people enough for helping me out and giving pointers and suggestions. It makes the whole series all the more complete and interesting. Good, the line-up of possible GUI tools for the ports collection: KPorts, portmaster, BPM, Barrry, pib and DesktopBSD-tools. I installed all of these via the pkg_add -r instruction.
Where to find them?
One of the first things I noticed is how differently the tools are located in the menu. In Settings->Software & Updates I found three entries among which “Online Update Manager” and the “PBI Update Manager”.
The PBI Update Manager speaks for itself and it only deals with the PBI installed pacakges. As for the Online Update Manager I am not sure.
Under Settings -> System Administration you can fetch the system source via CVSup (tab Tasks) and the ports via Portsnap. If I understand Oliver’s suggestions properly I shouldn’t mix them.
I decided to stick with CVSup and to fetch the system source this way. Unfortunately I still think that wasn’t completely correct as I would later get error message that no ports collection existed in /usr/ports. But, don’t worry, I will hit the books on this one.
Via Settings -> System Administration I also found the entry “Software”. This appeared to be DesktopBSD-tools, which can also be found under System->Software Management. One tool, two names and two locations in the menu tree. This was the tool that was recommended the most, so I expected something good. The first step is to select a CVSup server. I clicked the “Find fastest server” button and was surprised to be offered a US based server instead of a Dutch server, but distance and speed are two different things. What I didn’t expect was to find an error message after OK saying that I should specify a server first.
BPM was located under “System”, Barry under “Utilities” and Kports again under “System”. Portmaster appears to be a command-line tool, so I left that for a later experiment.
Now that I found the location of the various front-ends it was time to try them out. BPM still wouldn’t work, so that one is out. DesktopBSD-tools was a bit of a disappointment due to the error with accepting the server.
Barry also left me with error messages that the /usr/ports directory seemed to be invalid and that there was no INDEX.db file. Weird, because I could see and browse the /usr/ports directory just fine.
My earlier experience with Kports was okay, so I went back to that program and followed the three steps to get a proper and recent ports collection: (1) Update the ports directory, (2) Fetch a new index file and (3) update PortsDB. I knew for sure now that I had all the right components and wanted to check whether that made a difference with the other programs.
It didn’t for Barry which still gave the same error messages, but it did make a huge difference for DesktopBSD-tools. The program ran a portaudit, which resulted in the advice to update two packages, and then the full graphical interface appeared in all it’s glory.
Like I wrote above, I want to see two things in a graphical tool: it should be attractive and make things easily accessible. DesktopBSD-tools’ main screen immediately told me that 47 packages could use an update in the sense that a more recent version was available. The Update List button should get me a more recent list of ports and the Clean button should help me to clean up after installing new software. For now I was interested in the tab Available Packages. You can search for your favorite programs by name and by description and the latter should come in handy if you know the functionality but not the name of a specific program.
When you have found the package you are only one click away from it’s website. That’s a feature I wouldn’t mind seeing in Synaptic or Adept. Clicking “Install” moves the packages to the right hand panel, aptly called “Pending operations”. Even better! You can set up a complete queue of software that needs to be installed.
Some more structure?
One thing I did find very weird. Today I tried one category of tools, graphical front-ends for the ports collection, and the programs wound up at various locations in the menu tree. It’s nothing serious, but it did leave an impression of lack of structure, lack of agreement or sufficient guidelines on where to put certain categories of programs. Maybe it’s just me and have I used GNOME too much over the last year. The 30 days with PC-BSD also means the longest period working with the KDE desktop for me. Who knows what else I will learn in this month ;-).