1DOSE-CEVE(1)                      DOSE Tools                      DOSE-CEVE(1)
2
3
4

NAME

6       ceve - parse package metadata
7

SYNOPSIS

9       ceve [-h] [-v] [-c pkgspec] [-r pkgspec] [--depth=n] [-T format] [-G
10       graph type] [-o filename] input-spec [input-spec...]
11

DESCRIPTION

13       Ceve is a generalized metadata parser. It reads package specifications,
14       extracts package metadata from them, performs some manipulations, and
15       outputs the package metadata in one of several formats.
16
17       input-spec is a url specifying the input format and the file to get the
18       input from. For a possible list of schemes, see the -t parameter.
19
20       Some examples of URLs:
21
22       .   deb://Packages.gz (the Debian file packages.gz in the current
23           directory)
24
25       .   cudf:///home/examples/cudf/test.cudf (the CUDF file
26           /home/examples/cudf/test.cudf)
27

OPTIONS

29   MISC OPTIONS
30       -h, --help
31               This option displays the help message.
32
33       -v, --verbose
34               Be verbose. This option can be repeated for more verbosity.
35
36       --version
37               Show program's version and exit.
38
39       --progress
40               Print progress bars.
41
42       --timers
43               Print timing information.
44
45       --quiet Do no print any messages.
46
47   INPUT OPTIONS
48       Dose3 accepts files compressed with gzip(1) or bzip2(1), depending on
49       compile-time options.
50
51       -t input-spec
52               Select the input type. Possible values are:
53
54       .       cudf Cudf file format
55
56       .       pef PEF file format. The PEF format (Package Exchange Format)
57               is a generic 822 file format used to encode package
58               dependencies. deb, opam, debsrc and edsp are all based on the
59               pef format
60
61       .       csw OpenCSW Solaris packages binary format
62
63       .       opam Opam Package universe in Opam/PEF format. This format is a
64               822 textual format encoding the opam universe.
65
66       .       deb for Debian binary package files, also known as Packages
67               files.
68
69       .       debsrc for Debian source package files, also knows as Sources
70               files.
71
72       .       edsp apt-get External Dependency Solver Protocol
73
74       .       hdlist RPM hdlists. Binary file format.
75
76       .       synthesis urpmi synthesis hdlists. XML Based format
77
78       --trim  Consider only installable packages.
79
80       --latest n
81               Consider only the latest -n most recent versions of each
82               package, older versions of packages are ignored.
83
84       -c, --cone=vpkglist
85               The match of an atomic dependency (a package name p possibly
86               together with a version constraint c) is the set of all
87               packages in the repository with name p, and a version that
88               satisfies the constraint c.  The dependency cone of a package p
89               is the set of all matches of all atomic dependencies of p,
90               together with their respective dependency cones. The package
91               specification pkgspec is a list of packages (separated by a
92               semicolon), where each package is specified as follows:
93               (name,version).
94
95               This option extracts the union of the dependency cones of all
96               packages selected by vpkglist.
97
98               Example: =over 12
99
100       -c 'golang-golang-x-tools (=
101       1:0.0~git20150716.0.87156cb+dfsg1-4),golang-golang-x-tools-dev'
102       -r, --rcone=vpkglist
103               Using the same syntax as in -c, this option use the reverse
104               dependency relation to make the transitive closure.
105
106       --depth n
107               In combination with the -c or -r options, this specifies the
108               maximum depth for the transitive closure.
109
110       --request installation-request
111               Specifies an installation request of the form "install:
112               vpkglist" or "remove: vpkglist" or "upgrade: vpkglist" where
113               vpkglist is a list of (real) packages possibly associated with
114               a constraint. Ex.: bash (< 2.0), exim (= 3.1-debian1). This
115               option can be repeated to specify install, remove and upgrade
116               actions.
117
118               Examples:
119
120               --request "install: bash (< 2.0), exim (= 3.1-debian1)"
121               --request "upgrade: apt-cudf"
122
123   OUTPUT OPTIONS
124       -o, --outfile=filename
125               Instead of stdout, send output to the file filename.
126
127       -d, --outdir=directory
128               Set the output directory (default current directory)
129
130       --dot   Save the explanation graph (one for each package) in dot
131               format.
132
133       -G graph type
134               Specifies the graph type format to compute. This option must be
135               used together with the option -T dot|gml|grml. Default is syn.
136               Possible values are:
137
138       .       syn for the syntactic graph where disjunctions nodes and
139               conflicts are explicitly added to the graph.
140
141       .       pkg for the package graph where all dependencies are threated
142               uniformly and conflicts are not added to the graph.
143
144       .       strdeps the strong dependency graph. A package p strong depends
145               on q iff p cannot be installed if q is not installed.
146
147       .       strcnf
148
149       .       conj the conjunctive graph where only conjunctive dependencies
150               are considered.
151
152       .       dom
153
154       -T format
155               Specifies the output format to use. Default is cnf. Possible
156               values are:
157
158       .       cnf output in CNF format.
159
160       .       dimacs output in DIMACS format for CNF formulae.
161
162       .       cudf pretty-printed output in an RFC 822-like format
163
164       .       deb binary packages in deb822 format.
165
166       .       debsrc source packages in deb822 format.
167
168       .       dot a graph in Dot/GraphViz format.
169
170       .       gml a graph in GML format.
171
172       .       grml a graph in GraphML format.
173
174       .       table plain text output of three integer values: the universe
175               size, the number of edges in the dependency graph, the number
176               of conflicts in the universe.
177
178   DEBIAN SPECIFIC OPTIONS
179       Multi-arch annotations are handled by ceve. Packages whose's
180       architecture is neither the native architecture nor in the list of
181       foreign architectures (see below) are ignored.
182
183       --deb-native-arch=name
184               Specify the native architecture. The default behavior is to
185               deduce the native architecture from the first package stanza in
186               the input that has an architecture different from all.
187
188       --deb-foreign-archs=name [,name] ...
189               Specify a comma-separated list of foreign architectures. The
190               default is an empty list of foreign architectures.
191
192       --deb-ignore-essential
193               By default all essential package are considered as a dependency
194               of all packages in the universe. This option allows the user to
195               ignore essential packages.
196
197       --deb-host-arch=name
198               Native/cross compile host architecture, defaults to native
199               architecture.
200
201       --deb-builds-from
202               Add builds-from relationship of binary packages on source
203               packages as dependency. This allows one to create graphs for
204               bootstrapping purposes.
205
206       -P, --deb-profiles=name[,name...]
207               Comma separated list of activated build profiles.
208
209       --deb-drop-b-d-indep
210               Drop Build-Depends-Indep dependencies from Debian source
211               packages.
212
213       --deb-drop-b-d-arch
214               Drop Build-Depends-Arch dependencies from Debian source
215               packages.
216

EXAMPLES

218       Find all the reverse binary dependencies of the package patchutils:
219
220               dose-ceve --deb-native-arch amd64 -r patchutils -T deb \
221                       deb:///var/lib/apt/lists/*_dists_sid_main_binary-amd64_Packages \
222                       | grep-dctrl -n -s Package '' | sort -u
223
224       Find all the source packages that (directly or indirectly) build depend
225       on patchutils:
226
227               dose-ceve -T debsrc --deb-native-arch=amd64 -r patchutils \
228                       debsrc:///var/lib/apt/lists/*_dists_sid_main_source_Sources \
229                       deb:///var/lib/apt/lists/*_dists_sid_main_binary-amd64_Packages \
230                       | grep-dctrl -n -s Package '' | sort -u
231
232       Find the source packages (-T debsrc) that have in a relation builds-
233       from with all the binary package in the reverse dependency cone of
234       libssl-dev (a specific version constraint).
235
236         dose-ceve --deb-builds-from --deb-native-arch=amd64 -T debsrc \
237         -r 'libssl-dev (>= 0.9.8)' deb://Sid-amd64-Packages-050812.bz2 \
238         debsrc://Sid-Sources-050812.bz2
239
240
241
242                                  2022-07-22                      DOSE-CEVE(1)
Impressum