Ruminations on the Digital Realm

Jan Stedehouder

DesktopBSD Day 5 – Extending the system

I have been using open source software for quite some time, so I have a list of programs I want to have on my system. And I am a software glutton so it’s quite normal for me to have three different office suites or multiple personal information managers. If only to try them out and compare features. Besides being a glutton I am also lazy. Or -as a colleague once explained- extremely efficient. I don’t want to spend a lot of time or energy on installing the software. The more set-and-forget, the more I like it.

Software list

What did I want to install? Here’s the list.

Office suites
OpenOffice.org
Koffice
Abiword
Gnumeric
Planner
Ganttproject

Financial software
GNUCash
KmyMoney2
Grisbi
Eqonomize

Graphics software
GIMP
Qcad
Dia
Inkscape
Scribus

Information management
Evolution
KDEPIM
Liferea
Pan

Other
Wine
Audacity
Bluefish
Kompozer

Apart from this I wanted to make sure I have flash support while browsing the web.

desktopbsd-day5-extendingthesystem.png

Set-and-forget?

The Package Manager has a separate button called Install software. The viewing pane shows the ports tree with familiar categories for *BSD users. When someone migrates from Linux it shouldn’t be a problem to find the programs. The search field automatically filters the ports tree when you type. I went through the list and clicked on “Install” once I found the right program.

When I looked for flash I found various entries, like linux-flashplugin9 and flashplugin-mozilla. I remembered from the PC-BSD series that linux-firefox would be nice to have in this regard, so I added it to the list.

With this I had quite a cue in Pending Operations and the whole install process commenced. Remember, I still had the sledgehammer settings (binary only with the three ‘force’ options enabled). I knew I had to be patient.

And? Did it work?

Well… Yes and no. First, it took an extremely long time, altogether about seven hours. Granted, I am running DesktopBSD in a virtual machine, but I do that all the time and compared with other operating systems this was slow. The ‘sledgehammer’ mode might have something to do with it as well, but that mode was used because of previous unsuccessful installs. Now I could see a plethora of other larger and smaller packages scrolling by and finish successfully, most of the time.

However, I ended up with quite a list of unsuccessful installs anyhow. For all of them it was reported that the package could not be found. After all those hours I still didn’t have Grisbi, Eqonomize, GNUCash, KMyMoney2, Pan, Kompozer, Abiword, Bluefish, Qcad, Liferea, Dia and the Flashplugin for Linux Firefox.

One other thing I noticed is the following. While installing Koffice the package manager also installed kde-base3 as a dependency, which is as it should be. But when it started to take care of kdepim it again downloaded kde-base3 and installed it again. If that happens multiple times with megabyte size packages, that could explain the amount of time it took to finish the install.

On day three we already got acquainted with the post-install information screen. One of the explanations given for failed installs is that the package might not be available yet. I decided to test this and went back to the command line. It was no problem to install the above-mentioned programs with a series of # pkg_add -r instructions. The versions that were fetched and installed were the same as the ones shown in the package manager. The only exception was the flashplugin. The package manager took care of that after I changed the settings to use source if needed.

Conclusions

I have been playing with software management for three days now and the results have been very mixed. The package manager provides a nice graphical interface to the ports collection and with some minor polishings it should be enough for a novice user. However, under the hood there are too many snags now. The default settings aren’t sufficient to take care of a full update/upgrade to bring the system up-to-date. Changing the default settings requires some more background knowledge which should be available with the click of a button.

The problem is that the success rate will increase if you enable the option to use source if a binary package isn’t available or a binary package isn’t recent enough. The drawback is that it will take even longer to install software, turning it into an overnight activity. This in itself doesn’t guarantee success, because some compile actions require user interaction, thus halting the process. One solution might be to make it clear via the package manager if a package requires to be installed from source or not, so the user can see the problem coming (instead of being confronted with a failed install).

The third major problem is that the package manager doesn’t seem smart enough. If you fill a cue with multiple installs, it processes them in order and doesn’t check the overall relationships. This lead to failed installs due to dependency problems (which were solved later in the cue) of re-installing already downloaded and installed dependencies.

Finally, I don’t understand why the package manager couldn’t find the binary packages for some programs I wanted to install, but which could be installed via # pkg_add -r without a glitch. Of course, I shouldn’t forget that I am playing with a release candidate. Maybe the team is making overtime to hammer out these problem already.

Advertisements

Single Post Navigation

One thought on “DesktopBSD Day 5 – Extending the system

  1. Flatland_Spider on said:

    DesktopBSD package management is looking at the DesktopBSD ftp site (Link) while the pkg tools are looking at the main FreeBSD repositories (Link), I believe. Sometimes the packages aren’t in the DBSD package site. I’m not sure why, but I think it has something to do with the small DBSD team needing to build other things. You’d have to ask around their forum to get a real answer.

    Also, the three options you enabled on the advanced tab are the reason it took so long. They basically say reinstall everything that hooks into this package and this package hooks into regardless of whether it needs to be upgraded or not. I think using option 3 would be enough for installs.

    I’ve come to the conclusion that using portupgrade at the command line is much more efficient at upgrading the system. I think it’s just a more mature tool then the DBSD Package Management tool is at this time. I would still use the GUI tool for bulk software installation though.

%d bloggers like this: