REPOD-FILE(1) | repod | REPOD-FILE(1) |
File actions for packages, management repository and sync databases.
usage: repod-file [-h] [-c CONFIG] [-d] [-s] [-v] {package,repo,schema} ...
POSITIONAL ARGUMENTS
- subcommand
- Possible choices: package, repo, schema
OPTIONS
- -c, --config
- configuration file
- -d, --debug
- debug output
Default: False
- -s, --system
- system mode
Default: False
- -v, --verbose
- verbose output
Default: False
SUB-COMMANDS:
package
interact with package files
repod-file package [-h] {inspect} ...
Positional Arguments
- package
- Possible choices: inspect
Sub-commands:
inspect
inspect package files
repod-file package inspect [-h] [-B | -M | -P] [-p] [-s] file [file ...]
Positional Arguments
- file
- package files
options
- -B, --buildinfo
- only inspect .BUILDINFO
Default: False
- -M, --mtree
- only inspect .MTREE
Default: False
- -P, --pkginfo
- only inspect .PKGINFO
Default: False
- -p, --pretty
- pretty print output
Default: False
- -s, --with-signature
- locate and use a signature file for each provided package file
Default: False
repo
interact with repositories
repod-file repo [-h] {importdb,importpkg,writedb} ...
Positional Arguments
- repo
- Possible choices: importdb, importpkg, writedb
Sub-commands:
importdb
import state from a repository sync database
repod-file repo importdb [-h] [-a ARCHITECTURE] [-D | -S | -T] file name
Positional Arguments
options
- -a, --architecture
- target a repository with a specific architecture (if multiple of the same name but differing architecture exist)
- -D, --debug
- import to debug repository
Default: False
- -S, --staging
- import to staging repository
Default: False
- -T, --testing
- import to testing repository
Default: False
importpkg
import packages of the same pkgbase to a repo
repod-file repo importpkg [-h] [-a ARCHITECTURE] [-d] [-p] [-s] [-D | -S | -T]
file [file ...] name
Positional Arguments
options
- -a, --architecture
- target a repository with a specific architecture (if multiple of the same name but differing architecture exist)
- -d, --dry-run
- only show output, but do not write output to file
Default: False
- -p, --pretty
- pretty print output (only applies to dry-run mode)
Default: False
- -s, --with-signature
- locate and use a signature file for each provided package file
Default: False
- -D, --debug
- import to debug repository
Default: False
- -S, --staging
- import to staging repository
Default: False
- -T, --testing
- import to testing repository
Default: False
writedb
export state to repository sync database
repod-file repo writedb [-h] [-a ARCHITECTURE] [-D | -S | -T] name
Positional Arguments
- name
- name of repository to write to
options
- -a, --architecture
- target a repository with a specific architecture (if multiple of the same name but differing architecture exist)
- -D, --debug
- export from debug repository
Default: False
- -S, --staging
- export from staging repository
Default: False
- -T, --testing
- export from testing repository
Default: False
schema
JSON schema commands
repod-file schema [-h] {export} ...
Positional Arguments
- schema
- Possible choices: export
Sub-commands:
export
export JSON schemas to directory
repod-file schema export [-h] dir
Positional Arguments
- dir
- directory to which to write JSON files to
EXAMPLES
TRANSFORM REPOSITORY SYNC DATABASE TO MANAGEMENT REPOSITORY
Sync Database files can be transformed to representations used in the context of a Management Repository.
NOTE:
For testing purposes, the system's sync databases in /var/lib/pacman/sync/ can be used (this assumes a system that makes use of pacman as package manager).
To import Default Database files and output them to the management repository directory of a configured repository, use:
repod-file repo importdb /var/lib/pacman/sync/core.db default
To be able to use Files Database files, make sure to update them first.
pacman -Fy
Afterwards it is possible to import those files analogous to how it is done with Default Database files:
repod-file repo importdb /var/lib/pacman/sync/core.files default
The above assumes the repository named default is present (e.g. when no configuration file for repod is present).
TRANSFORM MANAGEMENT REPOSITORY TO REPOSITORY SYNC DATABASE
The JSON files contained in a Management Repository can be transformed into a Sync Database (both Default Database and Files Database files are created).
After following the examples in TRANSFORM REPOSITORY SYNC DATABASE TO MANAGEMENT REPOSITORY, it is possible to use the created files and turn them back into Sync Database files.
repod-file repo writedb default
The above creates default.db as well as default.files in the binary repository location of the repository named default.
SEE ALSO
AUTHOR
David Runge
COPYRIGHT
2022, David Runge
August 29, 2022 |