Logo PKGsummon

[1] Compilation and install

As stated in the main page, PKGsummon is a GTK+-2.2 application. This means you need GTK+ and GLib on your system to compile and use this software. I've tested PKGsummon with GTK 2.2.4 and GLib 2.2.3, but every version of GTK and GLib starting from 2.2.x should work fine.

If you don't want to compile PKGsummon yourself, you'll find a Slackware package (.tgz) with precompiled binary for i686 with documentation in the download page.

That said, simply unpack the tar.gz you downloaded from here, and move in the resulting pkgsummon directory. Then perform the following commands:

make install

You can even skip the make install command if you like, simply pick up the binary file pkgsummon from directory src and place it where you like. By default it gets installed on /usr/local/bin , you can change this by using ./configure --prefix=/usr if you want it to be on /usr/bin , and so on...

[2] Usage instructions for PKGsummon 0.6

A README file is available in the software package with details. All instructions written in this page are related to the last version of PKGsummon, if you want to use a previous one (why?) refer to the README file included with that version.
PKGsummon is really easy to use, anyway...

preferences First, from the file menu, choose preferences. Here you'll be able to set a FTP server address, which must include the path to slackware distribution. In order to download packages, you must also choose a download manager application which supports, as command line argument, the URL of file that will be downloaded. You can select one of the entries already available in combo boxes (just be sure to have the program you select as download manager) or type your own.
Last, it's highly suggested to memorize the package list obtained from FTP server in PKGsummon configuration file.

Starting from version 0.4, you can choose the method used for getting the list of packages available on FTP server. Essentially, FILE_LIST requires PKGsummon to download the list of packages located directly on ftp server, this means downloading about 140 Kb for updating all standard sets. The other method gives you more control, you can update single sections since it's based on using the listing command (NLST) in the wished section. No matter what you choose, package browsing for the special "extra" section will always use the FILE_LIST method. If you don't know which one you should use... I personally use the recursive NLST method.

The FTP server entry must respect this format:

This mean you have to add the complete path to the directory where slackware distro is located. Here are some valid example entries:

It's a really good idea to use mirrors, since the main Slackware FTP server is often too busy.
Here are some working examples for the download manager entry:
kfmclient openURL
xterm -e wget

FTP address and downloader entries will be saved on a local settings file, named .pkgsummongtk, so you won't have to re-type anything in the next sessions. Remember that you do not need to be connected to a FTP server to download packages listed in your tree.
This means that by allowing PKGsummon to memorize the current package list on config file, you'll be able to catch what you need in next sessions without having to request again a list from FTP server. Obviously you should request package listing from FTP server whenever you want to check if there's something new on that server.

Let's review PKGsummon buttonbar in detail:

connect disconnect
Connect will allow the connection to a valid FTP server. It goes with anonymous login and moves to the slackware directory. While connected, the button label will become Disconnect, and obviously clicking on it will terminate FTP connection.

get package
After selecting a package in tree, you'll be able to download it by pressing Get PKG. Remember that if your current package list hasn't been updated in a while, that package could not exist anymore (there may be an updated one). So, once upon a while, be sure to request a new package list to check if there are new packages.

query selected query all
Once connected, buttons for package listing will become available and will behave depending on the retrieval method you've chosen in preferences.
If you selected recursive NLST, after selecting a package section in tree, pressing Query sel will get from FTP server the list of available packages in that section. By pressing Query all while a package section is selected in tree, all package sections (not counting extra) starting from the selected one will get their package listing from FTP server. By selecting the Slackware logo at the top of the tree and clicking on Query all, all package sections (not counting extra) will be updated.
If you selected FILE_LIST method, you'll only have the Query all button available. By clicking it while you have selected one of the standard sections, you'll have them all updated after getting FILE_LIST from ftp.
As said before, no matter which method you're using, updates for extra package set will always be done with FILE_LIST method, due to the not-linear structure of the extra section.

Whenever the tree gets updated (this happens while querying sections, refreshing list or at PKGsummon start when it loads packages list from config file), package names are checked against those installed on local system.
Depending on their existence on local system and whether they have the same version or not, package names are marked with different icons.

package list A brief explanation of each icon is available in the program itself, in help menu. Let's look at the picture to the left. The icon representing a group of packages is used for package sections. The icon showing a single package without special marks is used for packages that are installed on local system, with the same version/arch/build available on FTP. The icon showing a package marked with "!" is used for packages that are installed on local system, but with a different version from the one on FTP. The icon showing a package marked with "=" is used for packages that are installed on local system, with same version but different target architecture. The icon showing a package marked with "4" is used for packages that are installed on local system, with same version and architecture but different build number. The icon showing a package marked with "?" is used for packages that are not installed on local system.

It's possible to check FTP and local version of packages by simply clicking on a package in tree. Package versions are displayed in the lower left corner of PKGsummon. By clicking on a section name in tree you'll be able to quick check if there are new packages ( NP = new packages , DV = packages with different version , DA = packages with different architecture , DB = packages with different build number ).
Remember that packages marked as "different" from those installed on system may have different version number and/or different target architecture and/or different build number. This doesn't mean necessarily that FTP packages are newer, so be sure to check version labels in the lower left corner before downloading them.
If you need more informations, expecially for packages that are not installed on your system, remember that as long as you stay connected to FTP server you can retrieve package descriptions from FTP by simply right clicking on a selected package in tree.

From version 0.5, by using the view menu, it's possible to get an ordered list of packages installed on your system. This will allow you to review size, description and files installed for each package.

Last but not least, PKGsummon accepts some command-line parameters. You can check them with PKGsummon -h (or --help); anyway the most important is -l (or --llist) which will automatically open the list of installed packages at PKGsummon startup.

[3] PKGsummon FAQ

What about the "extra" package set, available in slackware distribution?
Extra package set is a bit different than common slackware package sets. It is organized with subdirectories for each application available (and some have other subdirectories below them). Nevertheless, support for "extra" package has been implemented starting from version 0.4.

When I click on "Query all", all sections are updated but not "extra", why?
You can update extra package set by selecting it and using a query button. Since it requires to download about 60 Kb for its FILE_LIST, I thought it was best to let user update that section separately.

Where does PKGsummon get package descriptions?
PKGsummon always collect package descriptions from FTP server, using the text files available with each tarball.

The keep-alive function is not working and I still gets timeouts from FTP server, why?
PKGsummon tries to keep alive the FTP connection by sending PWD commands once in sometime, but this won't work for some FTP server giving timeouts based on tranfers.

What are you planning for next versions?
I would like to add localization (NLS). And using the FILE_LIST method implemented for the extra package set, I would like to let PKGsummon access well-known public repositories of Slackware packages like

I really hate memory leaks (who doesn't?), does PKGsummon care about memory usage?
PKGsummon has been tested with MemProf (leak detection tool) to ensure that 100% of allocated memory gets freed when it is not needed anymore.

For some strange reason (it is possible?) I do not have my list of local installed package in /var/log/packages. It is not possible to change it in some way?
If you know where the list of local installed package is located on your system, before compiling PKGsummon you can edit pkgsummon.h in directory src. Change PKGSUMMON_PACKAGES_DIR definition by replacing the default path with yours. Be really sure of what you're doing, if path is incorrect or it doesn't contain what it is expected to be there, PKGsummon may not work properly.