PKGREPO(1) | User Commands | PKGREPO(1) |
pkgrepo
— Image
Packaging System repository management utility
pkgrepo |
[--version ver]
uri_or_path |
pkgrepo
|
-s repo_uri_or_path
publisher ... |
pkgrepo
|
[-n ] [--synchronous ]
-s repo_uri_or_path
publisher ... |
pkgrepo |
[-F format]
[-H ] [-p
publisher]... -s
repo_uri_or_path [--key
ssl_key --cert
ssl_cert] [section/property
...] |
pkgrepo |
[-F format]
[-H ] [-p
publisher]... -s
repo_uri_or_path [--key
ssl_key --cert
ssl_cert] |
pkgrepo |
[-F format]
[-H ] [-p
publisher]... -s
repo_uri_or_path [--key
ssl_key --cert
ssl_cert] [pkg_fmri_pattern
...] |
pkgrepo |
[-m ] [-t
action_name[, action_name]...]
... -s repo_uri_or_path
[--key ssl_key
--cert ssl_cert]
[pkg_fmri_pattern ...] |
pkgrepo |
[-p publisher]...
-s repo_uri_or_path
[--key ssl_key
--cert ssl_cert]
[--no-catalog ]
[--no-index ] |
pkgrepo |
[-p publisher]...
-s repo_uri_or_path
[--key ssl_key
--cert ssl_cert]
[--no-catalog ]
[--no-index ] |
pkgrepo |
[-n ] [-d
YYYYMMDD] [-p
publisher]... -s
repo_uri_or_path pkg_fmri_pattern
... |
pkgrepo |
[-p publisher]...
-s repo_uri_or_path
section/property= ( [value])
... |
pkgrepo |
[-p publisher]...
-s repo_uri_or_path |
pkgrepo |
[-v ] [-p
publisher]... -s
repo_uri_or_path |
pkgrepo |
[-vq ] [--strict ]
[--parsable ] [-p
publisher]... -s
first_repo_uri_or_path
[--key ssl_key
--cert ssl_cert]
-s second_repo_uri_or_path
[--key ssl_key
--cert ssl_cert] |
pkgrepo |
pkgrepo |
pkgrepo
provides the ability to create and
manage pkg(7) package repositories.
Package repositories are a predefined set of directories and files that
permit the storage and retrieval of package data by
pkg(1) and publication clients such as
pkgsend(1) or
pkgrecv(1). In addition, when
network-based access to a package repository is needed,
pkg.depotd(8) can provide clients
access to the repository to store and/or retrieve package data.
The following global options are supported:
-
? |
--help
pkgrepo
create
[--version
ver]
uri_or_path
This sub-command can only be used with filesystem-based repositories.
--version
pkgrepo
add-publisher
-s
repo_uri_or_path publisher
...
This sub-command can only be used with version 4 filesystem-based repositories.
-s
repo_uri_or_pathpkgrepo
remove-publisher
[-n
]
[--synchronous
] -s
repo_uri_or_path publisher
...
If the default publisher is removed, and only one publisher remains in the repository, that remaining publisher becomes the default. The publisher/prefix property of the repository is set to that remaining publisher.
If the default publisher is removed, and multiple publishers remain in the repository, or if the last publisher is removed from the repository, the publisher/prefix property is unset.
This sub-command can only be used with version 4 filesystem-based repositories.
-n
-s
repo_uri_or_path--synchronous
pkgrepo
get
[-F
format]
[-H
] [-p
publisher]... -s
repo_uri_or_path [--key
ssl_key --cert
ssl_cert] [section/property
...]
By default, each property and its value are printed on separate lines. Empty ASCII string values are represented by a pair of double quotation marks (“”). The following Bourne shell metacharacters, and newline, space, and tab, in ASCII string values must be escaped by backslash characters (\)
; & ( ) | ^ < > \ " ' `
See the Examples section for examples displaying publisher and repository properties.
For a list of properties and the purpose and value of each
property, see the set
subcommand below.
-F
formattsv
(Tab Separated Values),
json
(JavaScript Object Notation as a single
line), or json-formatted
(JavaScript Object
Notation, formatted for readability).-H
-p
publisherall
displays the properties for all
publishers. This option can be specified multiple times.-s
repo_uri_or_path--key
ssl_key --cert
ssl_cert--key
option to specify a client SSL key
file to use for package retrieval from an HTTPS repository. Use the
--cert
option to specify a client SSL certificate
file to use for package retrieval from an HTTPS repository. This option
pair can be specified multiple times.publisher/prefix
or
repository/version
. See the
set
subcommand for a complete list of
properties.pkgrepo
info
[-F
format]
[-H
] [-p
publisher]... -s
repo_uri_or_path [--key
ssl_key --cert
ssl_cert]
-p
publisherFor descriptions of all other options, see the
pkgrepo
get
get command
above.
pkgrepo
list
[-F
format]
[-H
] [-p
publisher]... -s
repo_uri_or_path [--key
ssl_key --cert
ssl_cert] [pkg_fmri_pattern
...]
In the default output, the first column contains the name of the publisher of the package. The second column contains the name of the package. The third column is a flag that shows the status of the package. A value of o in the status column indicates the package is obsolete. A value of r in the status column indicates the package has been renamed, which is a form of obsoletion. A value of l in the status column indicates that the package is legacy, meaning that it will be removed in the future. The fourth column contains the release and branch versions of the package. See pkg(7) for information about release and branch versions.
-p
publisherFor descriptions of all other options, see the
pkgrepo
get
get command
above.
pkgrepo
contents
[-m
] [-t
action_name[,
action_name]...]
... -s
repo_uri_or_path
[--key
ssl_key
--cert
ssl_cert]
[pkg_fmri_pattern ...]
-m
-t
action_name-t
option can be specified multiple times, or
multiple actions can be specified as the argument to one
-t
option by separating the action names with
commas. The value of action_name is one of the actions listed in
Actions
in the pkg(7) man page, such as
file
, dir
,
driver
, depend
, or
set
.For descriptions of all other options, see the
pkgrepo
get
get command
above.
pkgrepo
rebuild
[-p
publisher]...
-s
repo_uri_or_path
[--key
ssl_key
--cert
ssl_cert]
[--no-catalog
]
[--no-index
]
-p
publisherall
is specified, the operation
is performed for all publishers. This option can be specified multiple
times.--no-catalog
--no-index
For descriptions of all other options, see the
pkgrepo
get
get command
above.
pkgrepo
refresh
[-p
publisher]...
-s
repo_uri_or_path
[--key
ssl_key
--cert
ssl_cert]
[--no-catalog
]
[--no-index
]
--no-catalog
or
--no-index
options of
pkgsend(1)).
-p
publisherall
is specified, the operation
is performed for all publishers. This option can be specified multiple
times.--no-catalog
--no-index
For descriptions of all other options, see the
pkgrepo
get
get command
above.
pkgrepo
remove
[-n
] [-d
YYYYMMDD] [-p
publisher]... -s
repo_uri_or_path pkg_fmri_pattern
...
Note; all search index data for related publishers is removed. This subcommand can be used only with file system based repositories.
Caution; this operation is not reversible and should not be used while other clients are accessing the repository since it might cause them to fail during retrieval operations.
-d
YYYYMMDD-n
-p
-s
repo_uri_or_pathpkgrepo
set
[-p
publisher]...
-s
repo_uri_or_path
section/property=
(
[value])
...
This subcommand can be used only with file system based repositories.
-p
publisherall
is specified, the operation
is performed for all publishers.-s
repo_uri_or_pathProperties and values can be specified using one of the following forms:
=
=
value=
(value1
valueN )For repository versions 3 and 4, the following properties can be set for the repository:
publisher/prefix
For repository versions 3 and 4, the following properties can be
set for individual publishers in the repository. Use the
-p
option to specify at least one publisher when you
set these properties:
publisher/alias
repository/check-certificate-revocation
pkgrepo
verify
and pkgrepo
fix
commands attempt to contact any CRL
distribution points in the certificates used for signature verification to
determine whether the certificate has been revoked since being issued. The
default value is False. This property is only used by the verify and fix
subcommands to validate the contents of the repository. This property does
not affect client settings. This value should be the same as the
corresponding pkg(1) property
value.repository/collection_type
The core type indicates that the repository contains all of the dependencies declared by packages in the repository. The core type is primarily used for operating system repositories.
The supplemental type indicates that the repository contains packages that rely on or are intended to be used with packages located in another repository.
repository/description
repository/detailed_url
repository/format
ascii
which is the legacy format and should not be
changed unless the repository will be accessed solely by updated clients.
The other available value is utf8
which allows
clients to parse the catalogues faster and with less memory overhead.repository/legal_uris
repository/mirrors
repository/name
repository/origins
repository/refresh_seconds
repository/registration_uri
repository/signature-required-names
repository/trust-anchor-directory
Properties not documented here, but listed in the output of the
get
subcommand, are reserved for internal use and
should not be set.
pkgrepo
verify
[-p
publisher]...
-s
repo_uri_or_path
Package manifest signatures are calculated based on the values
of the repository/signature-required-names
,
repository/trust-anchor-directory
, and
repository/check-certificate-revocation
properties.
Errors are emitted to stdout. The command exits with a non-zero return code if any errors are emitted.
This subcommand can be used only with version 4 file system based repositories.
-p
publisherall
is specified, the operation
is performed for all publishers. This option can be specified multiple
times.-s
repo_uri_or_pathpkgrepo
fix
[-v
] [-p
publisher]... -s
repo_uri_or_path
If repository errors are found, a repository rebuild is automatically performed. If any errors are found, a message is emitted to stdout showing which packages must be re-imported using pkgsend(1) or pkgrecv(1) in order to restore the repository contents.
This subcommand can be used only with version 4 file system based repositories.
-v
-p
publisherall
is specified, the operation
is performed for all publishers. This option can be specified multiple
times.-s
repo_uri_or_pathpkgrepo
diff
[-vq
] [--strict
]
[--parsable
] [-p
publisher]... -s
first_repo_uri_or_path [--key
ssl_key --cert
ssl_cert] -s
second_repo_uri_or_path [--key
ssl_key --cert
ssl_cert]
A - symbol in the beginning of an output line indicates the item was found only in the first repository, while a + symbol indicates the item was found only in the second repository. No symbol at the start of a line means that it is a common item.
-v
--strict
--parsable
-p
publisherall
is specified, the operation
is performed for all publishers. This option can be specified multiple
times.-s
repo_uri_or_path--key
ssl_key --cert
ssl_cert--key
option to specify a client SSL key
file to use for package retrieval from an HTTPS repository. Use the
--cert
option to specify a client SSL certificate
file to use for package retrieval from an HTTPS repository. This option
pair can be specified multiple times.pkgrepo
help
pkgrepo
version
$ pkgrepo create /my/repository
Display a summary of publishers and the number of packages in a repository.
$ pkgrepo info -s /my/repository PUBLISHER PACKAGES STATUS UPDATED example.com 5 online 2011-07-22T18:09:09.769106Z $ pkgrepo info -s https://pkg.omnios.org/r151038/core/ PUBLISHER PACKAGES STATUS UPDATED omnios 863 online 2021-11-17T09:27:46.600621Z
Rebuild the repository's catalogs and search data.
$ pkgrepo rebuild -s /my/repository
Refresh the repository's catalogs and search data.
$ pkgrepo refresh -s /my/repository $ pkgrepo refresh -s http://example.com/repository
$ pkgrepo get -s /my/repository SECTION PROPERTY VALUE publisher prefix "" repository version 4 $ pkgrepo get -s https://pkg.omnios.org/r151040/core/ SECTION PROPERTY VALUE publisher prefix omnios repository check-certificate-revocation False repository signature-required-names () repository trust-anchor-directory /etc/ssl/pkg/ repository version 4
$ pkgrepo get -s https://pkg.omnios.org/r151040/core/ -p all PUBLISHER SECTION PROPERTY VALUE omnios publisher alias omnios publisher prefix omnios omnios repository collection-type core omnios repository description Packages for OmniOS r151040 omnios repository legal-uris () omnios repository mirrors () omnios repository name OmniOS r151040 core omnios repository origins () omnios repository refresh-seconds omnios repository registration-uri "" omnios repository related-uris ()
$ pkgrepo set -s /my/repository publisher/prefix=example.com
$ pkgrepo set -s /my/repository -p example.com \ repository/origins=http://example.com/repository
$ pkgrepo add-publisher -s /my/repository example.com
The command line interface of pkgrepo
is
Uncommitted.
The output of pkgrepo
is
Not-An-Interface
and may change at any time.
pkg(1), pkgrecv(1), pkgsend(1), glob(3C), pkg(7), pkg.depotd(8)
November 29, 2021 | OmniOS |