| _ \| |/ / ___|___ _ _ _ __ ___ _ __ ___ ___ _ __ | |_) | ' / | _/ __| | | | '_ ` _ \| '_ ` _ \ / _ \| '_ \ | __/| . \ |_| \__ \ |_| | | | | | | | | | | | (_) | | | | |_| |_|\_\____|___/\__,_|_| |_| |_|_| |_| |_|\___/|_| |_| 0.6
- What is PKGsummon?
- What do I need to compile it?
- How to use PKGsummon in three words.
- What is PKGsummon?
PKGsummon is a tool for keeping up to date Slackware packages
on my Linux system.
I've been a Slackware fan for much time but I don't like to
keep all existing slackware packages installed. I only keep
those I need, eventually packaging other software by myself.
Still, I find very useful to know whatever is available on FTP servers; in example, Slackware 9.1 has got some ALSA driver packages that weren't in Slackware 9.0.
So I wrote this small tool that checks FTP servers and lists
all found packages in a tidy Slackware tree, where each branch
represents a software set (like A, AP, KDE, and so on...)
The packages available on FTP have a different text colour,
depending from the version you already have of the same pack.
See part three for more information.
Finally, it's possible to download packages selecting them
directly from the tree and using your favourite download
program (such as wget or kget).
2. What do I need to compile it?
PKGsummon is based on GTK+ toolkit.
AThis means you need GTK+ and GLib on your system to compile
and use this software. Every version of GTK and GLib starting
from 2.2.x should work fine.
That said, simply unpack the tar.gz you downloaded and move in the resulting pkgsummon directory. Then perform the following commands:
./configure
make
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...
3. How to use PKGsummon in three words.
Well maybe more than three words, but it is really that simple. 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. 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: ftp ftp.somename.tld/path-to-slack-distro-directory/
This mean you have to add the complete path to the directory where slackware is located. Here are some valid example entries: ftp ftp.edisontel.it/pub/Slackware_Mirror/slackware-current/ ftp ftp.unina.it/pub/Linux/distributions/slackware/slackware-current/ ftp ftp.nluug.nl/pub/os/Linux/distr/slackware/slackware-current/
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:
kget
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 SEL - 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.
A brief explanation of each icon is available in the program itself, in Help menu. 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 (expecially useful when the same package is released again but with some corrections made, like fixed bugs). 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 arch/build ).
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.
Giacomo Lozito aka city_hunter , 2/19/2004
