slapt-get
![]() |
Developer(s) | Jason Woodward |
---|---|
Initial release | 2003 |
Stable release | 0.9.12e
/ July 27, 2008 |
Operating system | Slackware and derivatives |
Platform | Linux |
Type | Automation |
License | GNU General Public License |
Website | http://software.jaos.org/ |
slapt-get is an APT-like system for Slackware package management. Slapt-get tries to emulate the features of Debian's apt-get as closely as possible.
Released under the terms of the GNU General Public License, slapt-get is free software.
Features
- Uses native Slackware tools (installpkg, upgradepkg, and removepkg).
- Supports multiple package sources (including http://linuxpackages.net).
- Cache data concerning packages and updates from package sources.
- Supports sources from ftp, ftps, http, https, file:/// and more (libcurl).
- Resumes broken downloads and will verify package integrity with MD5 checksum.
- Show packages that are available (from cached data) and installed.
- Search package listing using POSIX and extended regular expressions by package name, location, and description.
- Retrieve, install, and remove packages by name or by specific version.
- Retrieve and apply updates.
- Upgrade from one Slackware release to another in a few simple steps.
- Show description of packages, including mirror location, version, size, dependencies, conflicts, suggestions, description, and installation status.
- Exclude (hold) packages from upgrades, by name or by regular expression.
- Transaction engine for install, remove, and upgrades, reporting concise information on what is to be done, ensuring each step happens correctly.
- "compare package version" algorithm to prevent downgrades.
- Recursive dependency resolution using slack-required meta-data supporting hard, soft, and conditional dependencies.
- Package conflict resolution using slack-conflicts meta-data.
- Package suggestion support for complementary packages.
- Package data download robustness, only writing changes if all sources download successfully as well as only downloading those sources that have changed since the last download.
- i18n support via GNU gettext with over 20 language translations.
- Fast and easy to script with.
Dependencies
slapt-get does not provide dependency resolution for packages included within the Slackware distribution. It does, however, provide a framework for dependency resolution in Slackware compatible packages similar in fashion to the hand-tuned method APT utilizes. Several package sources and Slackware based distributions take advantage of this functionality.
Adding dependency information requires no modification to the packages themselves. Rather, the package listing file, PACKAGES.TXT, is used to specify these relationships. This file is provided by Patrick Volkerding and is similar to the Packages.gz file in use by Debian. Several scripts are available to generate the PACKAGES.TXT file from a group of packages. The file format used by Patrick Volkerding is extended by adding a few extra lines per package. slapt-get then parses this file during source downloads. Typically, third party packages store the dependency information within the package itself for later extraction into the PACKAGES.TXT. The inclusion of this information within the Slackware package format does not inhibit the ability for Slackware pkgtools to install these packages. This information is silently ignored and discarded after the package is installed.
Package sources
slapt-get works with official Slackware mirrors and third party package repositories. slapt-get looks for support files, PACKAGES.TXT and CHECKSUMS.md5, in the repository for package information. These files provide package names, versions, sizes (both compressed and uncompressed), checksums, as well as a package description. These files can be extended, as discussed in the previous section, to add dependency listings, conflict information, and package suggestions. These files can also proxy for other remote sources by specifying a MIRROR declaration for each package.
gslapt
File:180pxgslapt.png A screenshot of Gslapt | |
Developer(s) | Jason Woodward |
---|---|
Initial release | 2005 |
Stable release | 0.3.19
/ Oct 2007 |
Operating system | Slackware and derivatives |
Platform | Linux |
Type | Automation |
License | GNU General Public License |
Website | software![]() |
Gslapt is a GTK+ frontend to libslapt, the slapt-get library which provides advanced package management for Slackware and its derivatives. Inspired by the functionality present in Synaptic, Gslapt aims to bring the ease of use enjoyed by Debian and its derivatives to the Slackware world.
Gslapt was written primarily to supersede the vlapt (x)dialog slapt-get frontend used by Vector Linux.
Distributions
Besides Slackware, slapt-get and gslapt is included by several other distributions, including:
See also
- swaret - perl based package updater.
External links
- Project home page
- Slapt-get on SlackWiki