DesktopBSD Day 3 â€“ Getting started with software management
One of the more important criteria for the open source desktop is the availability of a graphical tool for software management. The more you progress in understanding either Linux or *BSD, the more you will appreciate the command line options and maybe revert to them more and more. For a novice user a graphical tool is imperative. Over the coming days I will see what DesktopBSD has to offer in this regard.
For starters, it shouldn’t be complicated to find the software management tool. It’s in front of your face, on the desktop. It can also be found through the menu via System -> Software Management or Settings -> System Administration -> Software. Either of them launches the DesktopBSD Tools or Package Manager.
Going through the Package Manager for the first time
With a simple double-click on the Software icon you enter into the process to set up the software management. The first screen has quite a lot of information, at least if you consider most of the information screens I have seen over the years. Often the information is either too scant to be considered informative or it is some form of ‘geek-speak’. But judge for yourself:
DesktopBSD maintains a package list that contains available packages, their versions and dependencies between them. An up-to-date list is required to be able to install and upgrade software on this computer.
This list doesn’t exist on your system, so it has to be downloaded from the internet first.
Please ensure you are connected to the internet and click ‘Proceed’ to download the package list. If you don’t want to do this now, click ‘Quit’ to exit the package manager.
It’s such a simple thing to do, but it’s a pleasure to see it here. Maybe a user will only read it once or twice, but that first time will count.
The next step asks you: â€œportsnap hasn’t been used on this system before. Do you want to configure portsnap and download the packagelist now?â€. Without the previous screen this would have been puzzling, but pacified by the earlier information clicking on ‘Yes’ should be obvious enough. I wouldn’t mind somewhat more information here. Something like:
The package list is downloaded by an instruction called ‘portsnap’. When you click ‘yes’ the system will look for the best download location and get the package list.
After this a terminal screen opens which provides verbose information on the status of the download process. With the experience from PC-BSD I recognized the # portsnap fetch routine. When I noticed the line â€œExtracting snapshot… done.â€ and then stared at an empty terminal screen for some time I first concluded that the next step – # portsnap extract- had been finished as well. However, when I checked the /usr/ports directory it was still empty.
Then, after quite some time, the verbose messages continued, this time showing that # portsnap extract finally started. Phew… I was already checking my earlier notes on how to fix this via the commandline. I know I would have appreciated some more feedback during this stage of the process, especially since there were no other indicators the system was still running and doing something.
After extracting the ports collection the package manager asks you to agree with a security check (# portaudit) which ends in a short list of packages that need to be updated. I expected the program to take me to a next screen, asking whether I wanted to perform the recommended updates. Instead, I was taken to the main Package Manager interface.
Getting acquainted with Package Manager
The Package Manager interface has two panes. One on the right called â€œPending Operationsâ€ which is empty at first. On the left you see a pane with four tabs: Welcome, Available Packages, Installed Packages and Security. In a glance you can see how many packages are available (17.747), how many are installed (488), how many are up to date (268) and how many are older than currently available (220). For me that translated into work, because that means 220 packages need to be updated as soon as possible.
At the top of the interface you can find the menu items Packages, View and Help and below that the buttons Update List, Deinstall, Clean and Pending Operations. If you are used to Synaptic or Adept this shouldn’t be a problem.
The Welcome tab has an easy layout with four buttons: Install software, Uninstall software, Upgrade software and Settings. Maybe I am nit-picking, but having both Deinstall and Uninstall software in the same screen…. It’s cleaner to have only one term for both buttons.
The button Settings is the most interesting, at least for me. Here you can select various options for software management. You can choose whether to install binary packages, install from source when the available version is more recent than the binary package or from source only. The recommended default is to install only binary packages, though the second option would be one quite a group would select anyhow (since it would guarantee the most up to date system). The information does warn about heavy system loads and the use of hard disk space, but doesn’t explicitly say that it can very, very time consuming as well. The tabs Package list, Notifications and Advanced contain other options, but I doubt whether novice users would understand most of it. Under Package list you can select the update method, either via portsnap or cvsup, and Advanced… well, it’s for experienced *BSD users. You can alter the software repositories here, for instance.
The button Upgrade brings you to the tab Installed Packages. This reveals two browseable lists in the main screen, one list of packages that already have the latest version and one where a newer version is available. A new button Upgrade all is waiting patiently.
I didn’t change the default option, so clicking Upgrade all would provide me with the most recent binary packages. Clicking also filled the pane Pending Operations, after which it was a matter of clicking Start. The systems asks whether you want to read the update notes and then it begins.
Again you get a new window. Clicking on Details gives you verbose information concerning the whole process. It’s interesting enough to see what is happening in each stage. Fetching the package, checking the dependencies, backing up the old version, installing the new one and cleaning out no longer needed packages. You can almost see the system discussing with itself: ‘package blablabla is required by these other packages and may not be deinstalled (but I’ll delete it anyway)’.
And then…. you wait. Or write another entry for your weblog, like I did. I wrote this article while the system was still updating packages. Still 50% to go.