Query package server and installed packages and display
results.
Query is matches case-insensitively against the name and
title of known and installed packages. For each matching package, a
single line is displayed that provides:
- Installation status
- p: package, not installed
- i: installed package; up-to-date with public version
- U: installed package; can be upgraded
- A: installed package; newer than publically available
- l: installed package; not on server
- Name@Version
- Name@Version(ServerVersion)
- Title
Hint: ?- pack_list('').
lists all packages.
The predicates pack_list/1
and pack_search/1
are synonyms. Both contact the package server at http://www.swi-prolog.org
to find available packages.
- See also
-
pack_list_installed/0
to list installed packages without contacting the server.
Install a package. Spec is one of
- Archive file name
- HTTP URL of an archive file name. This URL may contain a star (*)
for the version. In this case pack_install asks for the deirectory
content and selects the latest version.
- GIT URL (not well supported yet)
- A local directory name
- A package name. This queries the package repository at http://www.swi-prolog.org
After resolving the type of package, pack_install/2
is used to do the actual installation.
Install package Name. Processes the options below. Default
options as would be used by pack_install/1
are used to complete the provided Options.
- url(+URL)
-
Source for downloading the package
- package_directory(+Dir)
-
Directory into which to install the package
- interactive(+Boolean)
-
Use default answer without asking the user if there is a default action.
- silent(+Boolean)
-
If
true
(default false), suppress informational progress
messages.
- upgrade(+Boolean)
-
If
true
(default false
), upgrade package if it
is already installed.
- git(+Boolean)
-
If
true
(default false
unless URL
ends with =.git=), assume the URL is a GIT repository.
Non-interactive installation can be established using the option
interactive(false)
. It is adviced to install from a
particular
trusted URL instead of the plain pack name for unattented
operation.
Hook to define the environment for building packs. This Multifile hook
extends the process environment for building foreign extensions. A value
provided by this hook overrules defaults provided by def_environment/2.
In addition to changing the environment, this may be used to pass
additional values to the environment, as in:
prolog_pack:environment('USER', User) :-
getenv('USER', User).
Name | is an atom denoting a valid variable
name |
Value | is either an atom or number
representing the value of the variable. |