SPMAN(8)

NAME
spman - powerful Slackware package manager

SYNOPSIS
spman <param> [param[, param ...]]

DESCRIPTION
Spman is a powerful Slackware package manager implemented on Python3
 and licensed under the MIT license.

Main futeares:
  - check packages for upgrade
  - download binary package or source code from allowed repositories
  - download, build and install packages in the queue from SBo
    repository
  - remove/upgrade packages in the current directory
  - view the history of installing/updating/removing packages
  - show list all dependencies for package from SBo repository
  - view the contents of files included in SlackBuild archive from SBo
    repository
  - search package from each enabled repository and view info
  - show complete list of the packages in the repository
  - search for problems with dependencies in the system packages using
    Slackware binary dependency checker (sbbdep) tool or ldd
  - search for links to nonexistent files/dir in the specified
    directory
  - check health installed packages
  - search for *.new config files on the system
  - commands autocompletion

Supported repositories:

  Slackware (slack)
      http://ftp.osuosl.org/.2/slackware/

  SlackBuilds.org (sbo)
      http://slackbuilds.org/slackbuilds/

  Alien Bob (alienbob)
      http://bear.alienbase.nl/mirrors/people/alien/sbrepos/

  Multilib (multilib)
      http://bear.alienbase.nl/mirrors/people/alien/multilib/

OPTIONS
-h, --help
    Print help message and exit.

-v, --check-version
    Check program version for update.

-l, --repolist
    Print a list of all the repositories allowed in
    /etc/spman/repo-list. Disconnected repositories are
    highlighted in red.

-r, --repoinfo
    Show information about all active repositories:
      - name
      - URL
      - date of last update
      - number of packages in the repository
      - compressed packages size
      - uncompressed packages size

-b, --blacklist
    Show blacklisted packages from /etc/spman/blacklist

-u, --update
    Update local data for all repositories. The paths to the log files
    and lists of packages are specified in /etc/spman/spman.conf
    By default:
        /var/log/spman/repo_name/ChangeLog.txt
        /var/lib/spman/repo_name/PACKAGES.TXT (or SLACKBUILDS.TXT)

        where repo_name: slack, sbo, alienbob or multilib

    NOTE:
        You must run command 'spman --update' immediately after
        installing spman and configuring /etc/spman/spman.conf

-t, --health
    Check the health of all installed packages on the system and
    display detailed information:
      - total packages
      - number of broken packages
      - number of checked files
      - number of missing files
      - total health (%)

-w, --new-config
    Search for *.new config files on the system.

-g, --check-upgrade
    Check all installed packages for upgrade.

-d, --download --pkg|--src <reponame> <pkg>[ <pkg> ...]
    Download binary package(s) or source code from specified
    repository. Binary packages will be downloaded to the directory
    specified in the BUILD_PATH parameter from /etc/spman/spman.conf
    (default: /root/spman/build/). Source code and build scripts will
    be downloaded to BUILD_PATH/pkg_name/ directory.

    NOTE:
        only '--pkg' for reposytory 'multilib'
        only '--src' for reposytory 'sbo'

    Examples:
        Download flashplayer-plugin package from alienbob repository:
            # spman --download --pkg alienbob flashplayer-plugin
            # ls -1 /root/spman/build/
              flashplayer-plugin-30.0.0.134-x86_64-1alien.txz

        Download emacs and kdelibs source code with SlackBuild script
        from standard Slackware repository:
            # spman --download --src slack emacs kdelibs
            # ls -1 /root/spman/build/
              emacs/
              kdelibs/

-m, --upgrade-pkgs [--only-new]
    Install/Upgrade packages in the current directory.

    --only-new
      Packages already installed on the system with the same name,
      version, build number and tag will not be reinstalled.

-e, --remove-pkgs
    If there are *.t?z packages in the current directory and they
    are installed, then these packages will be removed from the
    system.

-q, --queue --add|--remove|--clear|--show|--install
    Download, build and install packages in the queue from
    SlackBuilds.org (sbo)

    --add <pkg>[ <pkg> ...]    - add package(s) to the queue
    --remove <pkg>[ <pkg> ...] - remove package(s) from the queue
    --clear                    - clear queue
    --show                     - print queue
    --install                  - download, build and install packages

-y, --history [--update]
    View the history of installing/updating/removing packages.

    --update
      Update the installed packages database (reset history).

-p, --find-deps <pkg>
    Show list all dependencies for package from SlackBuilds.org (sbo)
    repository. The packages already installed in the system are
    highlighted in green.

-s, --view-slackbuild <pkg>
    View the contents of files included in SlackBuild archive using
    pager: README, doinst.sh, patches, slack-desc, <pkg>.SlackBuild,
    <pkg>.info, etc.

-f, --find-pkg [--strict] <pattern>
    Search for package (case-insensitive) from each enabled
    repository and view info.

    --strict
      Strict match by package name.

-i, --pkglist <reponame> [--only-installed]
    Show complete list of the packages on repository. The packages
    already installed in the system are highlighted in green.

    --only-installed
      Show only installed packages.

-k, --check-deps --sbbdep|--ldd
    Search for problems with dependencies in the system packages.

    --sbbdep    - using 'sbbdep' tool
    --ldd       - using 'ldd'

-a, --bad-links <path_to_dir>
    Search for links to nonexistent files/dir in the specified
    directory.

FILES
General configuration file:
    /etc/spman/spman.conf

List of repositories:
    /etc/spman/repo-list

List of blacklisted packages:
    /etc/spman/blacklist

Log files for each repository:
    /var/log/spman/<repo>/ChangeLog.txt

Lists of packages for each repository:
    /var/lib/spman/<repo>/PACKAGES.TXT (or SLACKBUILDS.TXT)

List of installed packages
    /var/lib/spman/pkg-db
    (generated by command 'spman --history --update')

AUTHOR
Vladimir MyRequiem <mrvladislavovich@gmail.com>

HOMEPAGE
https://github.com/MyRequiem/spman

COPYRIGHT
Copyright 2018 Vladimir MyRequiem