cards 2.7.4(8)

NAME

cards - the NuTyX package management tool including pkgutils from CRUX (see http://www.crux.nu) with some extra features.

SYNOPSIS
cards command [options] <arguments>

DESCRIPTION
cards which stand for Create Add Remove and Download System is a package management system tool which provides all the basic functionality for a package management system. It can works with the local ports tree AND the available binaries from the mirror. It is made of two parts, one is for the normal users who just want to have all the basics actions for manage the packages on the NuTyX distribution. Because cards is a fork of pkgutils tool from CRUX distribution, the second part includes a script pkgmk(8) for the creation of binaries, they is a set of basic commands for dealing with local binaries. The commands are: pkgadd(8), pkgrm(8) and pkginfo(8). The ports(8) command is also part of the cards.devel subpackage. Cards offers followings features:

•   abstract ports installation/update from file system

•   install/update a list of packages with one command

•   upgrade the obslolete installed packages with one command

•   list dependencies for a list of packages

•   show information about binaries or ports

•   search within the binaries or within the ports

•   able to return to a base system in case of compiling for a bot build to make sure all the dependencies are mentionned.

SCENARIOS
ports In this scenario, cards basically installing and upgrading packages, using the script pkgmk. It deals with the ports. Additionally, you don't have to be in the port's directory to call cards. cards will search for the respective port itself in a list of directories specified in cards.conf. This allows you to just install or update a package, without caring where it actually is located on your file system. binaries In another more classical scenario, cards will install, upgrade binaries packages available from the define mirror specified in cards.conf. In this scenario, cards deals with packages and subpackages. For example the glibc package is separate in glibc, glibc.devel, glibc.man, glibc.fr, and so on. For this reason, it is NOT recommended to mixte both scenarios unless you knows exactly what you are doing and are able to interpret the errors messages when compiling your ports with binaries dependencies.

cards also offers some features like searching binaries or ports by name, showing information about binaries or ports (without installing them of course) and can list the dependencies listed in the Pkgfile, and provide a complete dependency list for a port. Note that dependencies can be checked if they are really existing. A command can be used to list all the packages (or dependencies) per level of compilation.

cards have a show configuration mode so you can check how the configuration file is. Use the config command for this (see also: COMMAND)

RETURN VALUE
cards returns 0 on success and a non-zero value otherwise (exact value -> meaning mapping to be determined...)

COMMANDS
cards uses so called commands, which always have to be the first non-option argument passed. This is very similar to git(1). [command] can be one of the following:

install [--margs] <package1> [<package2> ...] | <collection name>
    Binaries scenario: install all packages. It will download the binary package, check for any dependencies, download the dependencies. Onces all the dependencies are download. cards will install all the packages in the right order. If it's a <collection name> passed as argument, it will installed all the packages belonging to this <collection name>

upgrade
    Binaries scenario: upgrade the obsolete installed packages on you system. It will not ask for confirmation. It will download the binary package, check for any dependencies, download the dependencies. Onces all the dependencies are download. cards will install all the packages in the right order.

depcreate [--margs] [--aargs] [--log] <package1> [<package2> ...]
    Ports scenario: compile and install the package and it's dependencies in the listed order including their dependencies. Note that outdated packages won't be updated.

remove <package>
    All scenarios: remove the <package>

config
    All scenarios: print the actual configuration of cards. It shows the order of ports and binaries directories, the base directory containing all the package which should be keep when a cards base -r command is given. It shows also the arch defined (i686, x86_64, etc), the locale which going to be installed with the cards install command, and the defined log directory which will be used by the cards depcreate and cards create commands.

diff [-p]
    Binaries scenario: show differences between installed packages and binaries available on the mirror. Ports scenario: If option [-p|--ports] is given, it will shows differences between installed packages and ports in the ports tree.

search <expr>
    Search in the binaries for expr in their categories, collections, set, name, description, URL, packager and version.

files <package>
    Print all the files belonging to the <package>

query <pattern>
    Search in all installed package for files matching the pattern as file name in the database.

info [-p] [-b] <package>
    if passed with -b option, print available info about the binary package if passed with -p option, print available info about the port package if no option is passed, print available info about the installed package

depends <package>
    Ports scenario: print a recursive list of dependencies to install the package passed as argument. if option -i is passed, it shows all the dependencies, included the installed ones.

deptree <package>
    print a tree of the dependencies of the package package.

list [-p|-b]
    List installed packages. If option -p is passed, it shows a list of ports available in the ports tree. It's basically the same as ports -l but looks in all directories specified in /etc/cards.conf. If option -b is passed, it shows a list of binaries available in the miror server.

sync
    Binaries scenario: synchronize local and remote metadatas from the mirror defined in /etc/cards.conf.

level [-I]
    Ports scenario: print all the ports available in the order of compilation (per level). Use -I if you have WARNING about <dependencies> from <port> NOT FOUND ... or fix the prob if you can.

create -r <package>
    Bot scenario: only used in the bot server. It goes back to a base system, install all the dependencies from the founded binaries and then compile and installed the final package.

base -r
    All scenarios: return to a minimalist base system. This command should be only used when you compile your own package or it is a bot server. It actually check whats are the packages found in the 'base directories' define in the /etc/cards.conf file. If no directory are defined, this command will abort.

purge
    All scenarios: Cleanup all the archives of the binaries found in the folders synchronised with any mirror. By default, folders are: /var/lib/pkg/depot/base , /var/lib/pkg/depot/cli and /var/lib/pkg/depot/gui

OPTIONS

-c  check if they are some update available, will return "yes" or "no"

-s  return the number of packages which can be upgrade.

-f  Force install of the package(s) in cards install or cards upgrade commands

-i  Shows installed package in cards depends command

-n  dry mode in cards create, cards base commands. It does not make the action but only shows what will happens

-a  remove all the sub packages as well if they exists in cards remove command

-b  print info about the binary in cards info command. List available binaries in cards list command.

-p  print info about the port in cards info command. List available ports in cards list command. List the difference of versions between installed packages and available one in the ports in cards diff command.

-I  ignore error and list the level anyway in cards level command.

-u  update the binary package in cards install command.

-r  remove all the packages which are not belong to a base system defined in the cards.conf file

CONFIGURATION

See man cards.conf(5) and pkgmk.conf(5)

EXAMPLES
Binaries scenario:

cards install irssi
    download the binary from the mirror, check for dependencies, Ports scenario:

cards install irssi
    download the binary from the mirror, check for dependencies, downloads the dependencies, install them and then install irssi, with one simple command

cards install -u openssl
    download the binary from the mirror, upgrade openssl

cards search browser
    Search in the metadata packages containing 'browser' in they name or description.

Ports scenario:

cards depcreate mplayer
    downloads the sources, compile and install all the dependencies of mplayer and mplayer.

cards info -p kdelibs
    show info about kdelibs port.

AUTHORS
Thierry Nuttens <tnut@nutyx.org>

SEE ALSO
cards.conf(5), pkgmk(8), pkgadd(8), pkginfo(8), ports(8), pkgmk.conf(5), mybld(8)