category

packs_common

Common predicates for the packs tool objects.

Availability:
logtalk_load(packs(loader))
Author: Paulo Moura
Version: 0:31:0
Date: 2023-11-23
Compilation flags:
static
Remarks:
(none)
Inherited public predicates:
(none)

Public predicates

setup/0

Ensures that registries and packs directory structure exists. Preserves any defined registries and installed packs.

Compilation flags:
static
Mode and number of proofs:
setup - one

reset/0

Resets registries and packs directory structure. Deletes any defined registries and installed packs.

Compilation flags:
static
Mode and number of proofs:
reset - one

verify_commands_availability/0

Verifies required shell commands availability. Fails printing an error message if a command is missing.

Compilation flags:
static
Mode and number of proofs:
verify_commands_availability - zero_or_one

help/0

Provides help about the main predicates.

Compilation flags:
static
Mode and number of proofs:
help - one

pin/1

Pins a resource (pack or registry) preventing it from being updated, uninstalled, or deleted. Fails if the resource is not found.

Compilation flags:
static
Template:
pin(Resource)
Mode and number of proofs:
pin(+atom) - zero_or_one
Exceptions:
Resource is a variable:
instantiation_error
Resource is neither a variable nor an atom:
type_error(atom,Resource)

pin/0

Pins all resource (packs or registries) preventing them from being updated, uninstalled, or deleted. Note that resources added after calling this predicate will not be pinned.

Compilation flags:
static
Mode and number of proofs:
pin - one

unpin/1

Unpins a resource (pack or registry), allowing it to be updated, uninstalled, or deleted. Fails if the resource is not found.

Compilation flags:
static
Template:
unpin(Resource)
Mode and number of proofs:
unpin(+atom) - zero_or_one
Exceptions:
Resource is a variable:
instantiation_error
Resource is neither a variable nor an atom:
type_error(atom,Resource)

unpin/0

Unpins all resources (packs or registries), allowing them to be updated, uninstalled, or deleted.

Compilation flags:
static
Mode and number of proofs:
unpin - one

pinned/1

True iff the resource (pack or registry) is defined or installed and if it is pinned.

Compilation flags:
static
Template:
pinned(Resource)
Mode and number of proofs:
pinned(+atom) - zero_or_one
Exceptions:
Resource is a variable:
instantiation_error
Resource is neither a variable nor an atom:
type_error(atom,Resource)

directory/2

Enumerates by backtracking all packs or registries and respective installation or definition directories (using the internal backend format).

Compilation flags:
static
Template:
directory(Resource,Directory)
Mode and number of proofs:
directory(?atom,?atom) - zero_or_more
Exceptions:
Resource is neither a variable nor an atom:
type_error(atom,Resource)
Directory is neither a variable nor an atom:
type_error(atom,Directory)

directory/1

Prints the directory where the registry or the pack is installed (using the native operating-system format).

Compilation flags:
static
Template:
directory(Resource)
Mode and number of proofs:
directory(+atom) - zero_or_one
Exceptions:
Resource is a variable:
instantiation_error
Resource is neither a variable nor an atom:
type_error(atom,Resource)

readme/2

Returns the path to the resource (pack or registry) readme file (using the internal backend format). Fails if the resource is not defined or installed or if no readme file is found for it.

Compilation flags:
static
Template:
readme(Resource,ReadMeFile)
Mode and number of proofs:
readme(+atom,-atom) - zero_or_one
Exceptions:
Resource is a variable:
instantiation_error
Resource is neither a variable nor an atom:
type_error(atom,Resource)
ReadMeFile is neither a variable nor an atom:
type_error(atom,ReadMeFile)

readme/1

Prints the path to the resource (pack or registry) readme file (using the native operating-system format). Fails if the resource is not defined or installed or if no readme file is found for it.

Compilation flags:
static
Template:
readme(Resource)
Mode and number of proofs:
readme(+atom) - zero_or_one
Exceptions:
Resource is a variable:
instantiation_error
Resource is neither a variable nor an atom:
type_error(atom,Resource)

logtalk_packs/1

Returns the directory prefix (using the internal backend format) where the registries, packs, and archives are installed.

Compilation flags:
static
Template:
logtalk_packs(LogtalkPacks)
Mode and number of proofs:
logtalk_packs(-atom) - one
Exceptions:
LogtalkPacks is neither a variable nor an atom:
type_error(atom,LogtalkPacks)

logtalk_packs/0

Prints the directory prefix (using the native operating-system format) where the registries, packs, and archives are installed.

Compilation flags:
static
Mode and number of proofs:
logtalk_packs - one

prefix/1

Returns the directory prefix (using the internal backend format) where the registries or packs are installed.

Compilation flags:
static
Template:
prefix(Prefix)
Mode and number of proofs:
prefix(-atom) - one
Exceptions:
Prefix is neither a variable nor an atom:
type_error(atom,Prefix)

prefix/0

Prints the directory prefix (using the native operating-system format) where the registries or packs are installed.

Compilation flags:
static
Mode and number of proofs:
prefix - one

Protected predicates

readme_file_path/2

Returns the absolute path for the given directory readme file if it exists.

Compilation flags:
static
Template:
readme_file_path(Directory,ReadMeFile)
Mode and number of proofs:
readme_file_path(+atom,-atom) - zero_or_one
Remarks:
  • Valid file names: Case variations of README and NOTES with or without a .md or .txt extension. The recommended file name is README.md.


command/2

Executes a shell command. Prints an error message and fails if the command fails.

Compilation flags:
static
Template:
command(Command,FailureMessage)
Mode and number of proofs:
command(+atom,@nonvar) - zero_or_one

load_registry/1

Loads all registry files from the given directory.

Compilation flags:
static
Template:
load_registry(Directory)
Mode and number of proofs:
load_registry(+atom) - zero_or_one

tar_command/1

Returns the name of the tar command to be used depending on the operating-system.

Compilation flags:
static
Template:
tar_command(Command)
Mode and number of proofs:
tar_command(-atom) - one

supported_archive/1

True iff the archive format is supported.

Compilation flags:
static
Template:
supported_archive(Extension)
Mode and number of proofs:
supported_archive(+atom) - zero_or_one

supported_url_archive/1

True iff the URL archive is supported.

Compilation flags:
static
Template:
supported_url_archive(URL)
Mode and number of proofs:
supported_url_archive(+atom) - zero_or_one

decode_url_spaces/2

Decodes encoded spaces (%20) in URLs to spaces.

Compilation flags:
static
Template:
decode_url_spaces(URL,Decoded)
Mode and number of proofs:
decode_url_spaces(+atom,-atom) - one

Private predicates

(no local declarations; see entity ancestors if any)

Operators

(none)