summaryrefslogtreecommitdiff
path: root/doc/repo-add.8.txt
blob: e51fadf63e2a7918f05974efd7a2a8cb12ceb646 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
/////
vim:set ts=4 sw=4 syntax=asciidoc noet spell spelllang=en_us:
/////
repo-add(8)
==========

Name
----
repo-add - package database maintenance utility

Synopsis
--------
'repo-add' [options] <path-to-db> <package|delta> [<package|delta> ...]

'repo-remove' [options] <path-to-db> <packagename|delta> [<packagename|delta> ...]


Description
-----------
'repo-add' and 'repo-remove' are two scripts to help build a package database for
packages built with linkman:makepkg[8] and installed with linkman:pacman[8].
They also handle package deltas produced by linkman:pkgdelta[8].

'repo-add' will update a package database by reading a built package or package
delta file. Multiple packages and/or deltas to add can be specified on the
command line.

If a matching ``.sig'' file is found alongside a package file, the signature
will automatically be embedded into the database.

'repo-remove' will update a package database by removing the package name or
delta specified on the command line. Multiple packages and/or delta to remove
can be specified on the command line.

A package database is a tar file, optionally compressed. Valid extensions are
``.db'' or ``.files'' followed by an archive extension of ``.tar'',
``.tar.gz'', ``.tar.bz2'', ``.tar.xz'', or ``.tar.Z''. The file does not need
to exist, but all parent directories must exist.


Common Options
--------------
*-q, \--quiet*::
    Force this program to keep quiet and run silent except for warning and
    error messages.

*-s, \--sign*::
    Generate a PGP signature file using GnuPG. This will execute `gpg
    --detach-sign --use-agent` on the generated database to generate a detached
    signature file, using the GPG agent if it is available. The signature file
    will be the entire filename of the database with a ``.sig'' extension.

*-k, \--key* <key>::
    Specify a key to use when signing packages. Can also be specified using
    the GPGKEY environmental variable. If not specified in either location, the
    default key from the keyring will be used.

*-v, \--verify*::
    Verify the PGP signature of the database before updating the database.
    If the signature is invalid, an error is produced and the update does not
    proceed.

*\--nocolor*::
    Remove color from repo-add and repo-remove output.

repo-add Options
----------------
*-d, \--delta*::
    Automatically generate and add a delta file between the old entry and the
    new one, if the old package file is found next to the new one.

*-f, \--files*::
    Tells repo-add also to create and include a list of the files in the
    specified packages. This is useful for creating databases listing all files
    in a given sync repository for tools that may use this information.

*-n, \--new*::
    Only add packages that are not already in the database.  Warnings will be
    printed upon detection of existing packages, but they will not be re-added.

*-R, \--remove*::
    Remove old package files from the disk when updating their entry in the
    database.

See Also
--------
linkman:makepkg[8], linkman:pacman[8], linkman:pkgdelta[8]

include::footer.txt[]