SYNOPSIScomigrate [options] [--heidi file] [--hints file]
comigrate [options] --update
comigrate [options] --migrate package
comigrate [options] --equivocal
comigrate [options] --excuses file [--svg]
comigrate [options] --explain dir
DESCRIPTIONcomigrate is a tool designed to manage the migration of packages from Debian unstable to testing. It can be used in different ways. First, it can compute which packages can migrate into testing; it can output either an HeidiResult file listing the updated contents of testing, or a set of hints that can be fed to Britney to help it perform the migration. Second, it can output detailed reports of what prevents packages from migrating. Last, it can be used to interactively troubleshoot the migration of a given package.
Unless an alternative command is given, comigrate will perform package migration and output the corresponding HeidiResult file at the location indicated in the configuration file.
The default behavior of comigrate is to compute which packages can migrate from unstable to testing. This behavior can be overriden by the options below.
Output the set of packages that can migrate without making any package
non-installable but that will make it impossible to install some set
of packages together (package co-installability would no be preserved).
This makes it possible to find the packages that would be allowed to
migrate when using the
option (preserving only package installability), but that could
nonetheless be problematic.
- --excuses file
Write to this HTML file a detailed explanation of why some packages cannot
migrate. With the
option, an SVG graph is also included for each installability or
co-installability issue (set of packages that one would not be able to
install together anymore) that prevents the migration. The
tool is required to produce these graphs.
- --explain dir
This command is designed to produce a report that can be published over
HTTP. An HTML file is created for each package that cannot
migrate, providing a detailed explanation of why this package cannot
migrate. A file listing
co-installability issues (that is, set of
packages that can no longer be installed together) that would result
from forthcoming migrations is also created. The
option can be used to specify popcon data to use for the report.
tool is required for this command.
- --migrate package
Compute whether it is possible to migrate this source package. If this
is indeed possible, a corresponding
hint is outputted, by default on the standard output (this can be
overridden with the
Initialize or update the data directory.
- --arches lst
Comma-separated list of architectures to consider (default to all).
- -c file, --config file
Use this Britney configuration file.
Package Migration Options
Show all hints. By default, hints consisting of a single package are
omitted when outputting hints.
- --break sets
Override the default migration constraint that set of packages that
could be install together can still be installed together after
migration (package co-installability). This option allows to specify
that some precise set of packages can become non co-installable (or,
in the case of a single package, that this package can become non
installable). This is crucial to allow the migration of packages that
are no longer compatible. The argument
is a comma-separated list of sets of packages. Each set is either a
list of binary package names separated by a vertical bar symbol |, or
a wildcard~_ standing for any package.
We explain this option through examples.
You can write
to state that package
does not have to remain installable.
But it is usually better to indicate that the package should remain
installable but that it is fine if it is no longer installable with
some other packages:
You can be even more precise and specify that two given packages can
become incompatible, but no other incompatibility should be
Finally, you can use the vertical bar symbol to factorize several sets
means that package
does not have to remain installable together with
- --heidi HeidiResult
Write the result of package migration to file
write to standard output.
The option only make sense when no specific command is given.
- --hints file
Output hints to this file. When
write to standard output.
This disable the ouput of the
file, unless an explicit
option is provided as well.
When computing possible migration, only preserves single package
installability. This is similar to what
does. The default is to ensure the stronger requirement that
set of packages that could be install together can still be installed
together after migration (that is, package co-installability).
- --offset n
days into the future. This is convenient to see what packages will be
able to migrate in a few days.
- --remove pkg
Compute package migration as if the source package
and its associated binary packages had been removed from
This is a convenient way to migrate an important package when its
migration is prevented by packages of low importance.
Together with the
command, this option can help finding out all issues preventing the
migration of a given package.
Include conflict graphs (in SVG format) in excuse output. This option
only makes sense together with the
- --popcon file
Use popcon data from this file. This option only makes sense together
- --source url
Download package information from the given url. This option only
makes sense together with the
- --debug name
- Activate debug option name. Use --debug help to list available debug options.
- -help, --help
- Print a usage message briefly summarizing the command-line options.
- --input dir
- Select the directory containing Britney data.
- Disable on-disk caching.
- --proc n
Provide number of processors. Use 1 to disable concurrency.
Defaults to use all processors.
Ignored OptionsThese two Britney options are currently ignored and are present only for compatibility.
- Currently ignored.
To get started, you need to use a Britney configuration file britney.conf. The files specifies in particular the location of migration data (control files, hint files, ...). These data can then be downloaded (or updated) with the command below.
comigrate -c britney.conf --update
Running comigrate without option will make it behave like Britney: it will compute the set of packages that can migrate and write a corresponding HeidiResult file at the location indicated in the configuration file.
comigrate -c britney.conf
By default, comigrate is more picky than Britney: it will not allow packages to migrate if any set of packages that could be installed together can no longer be installed together. With the --inst option, comigrate will only check that packages remain installable, just like Britney does.
comigrate -c britney.conf --inst
Alternatively, you can get the set of Britney easy hints corresponding to the migration.
comigrate -c britney.conf --hints - --all-hints
The --migrate option will give you an explanation of why a package cannot migrate. (If the package can in fact migrate, the corresponding easy hint will be printed.)
comigrate -c britney.conf --migrate ghc
The --remove and --break options can be used together with this option to get a clear understand of what needs to be done to migrate the package.
AUTHORComigrate has been written by Jérôme Vouillon.