Multiple repository usage
[ Multistrap overview ] [ Secure Apt ] [ Example configurations ] [ Using multistrap for pbuilder chroots ] [ Multiple repositories ] [ Cascading configuration ] [ Cross building support ] [ Multistrap Wiki page ]
The main reason to use multistrap rather than other bootstrap packages is to allow apt to resolve dependencies between multiple repositories. multistrap can also separate the repositories used to create the system from the repositories listed in the sources.list files inside the new system. multistrap can also combine suites as well as sources.
multistrap configuration files organise repositories into sections. To include this repository in the calculation of packages to download for unpacking into the base system, specify the section name in the bootstrap option:
debootstrap=Emdebian [Emdebian] packages= source=http://www.emdebian.org/grip keyring=emdebian-archive-keyring suite=stable
apt sources sections
To include a repository into the sources list of the final system, specify the section name in the aptsources option:
aptsources=Emdebian [Emdebian] packages= source=http://www.emdebian.org/grip keyring=emdebian-archive-keyring suite=stable
Section names can appear in either, both or neither of the bootstrap and aptsources options.
Repositories and suites
As well as combining different sources (as in URLs), sections can also combine different suites from the same repository:
debootstrap=Lenny aptsources=Squeeze [Lenny] packages= source=http://www.emdebian.org/grip keyring=emdebian-archive-keyring suite=stable [Squeeze] packages= source=http://www.emdebian.org/grip keyring=emdebian-archive-keyring suite=testing
This method works best when the explicitsuite option is set to "true" and when one or both sections specify individual packages to install from that suite. apt will bring in the base system (Priority: required packages) using the most recent versions available when the suites are combined.
There can be problems mixing rapidly changing suites with stable suites, especially if you want reproducible results. Unstable is constantly changing, frequently includes packages which are not installable and the dependency chain of unchanged packages can still be affected by transitions in other packages. Multistrap depends on apt for dependency resolution and if apt is not able to resolve the entire dependency chain, it will fail the entire chain, leaving multistrap with no option but to fail the bootstrap process. One method to avoid such problems is to insulate yourself from the changes in unstable, either by choosing to use testing instead of unstable or by taking a partial copy of the bits of unstable which you need as a partial mirror. reprepro is recommended, see also the Multistrap wiki pages.
In any one configuration, section names must be unique even if configuration files are cascaded.
Back to the Emdebian Project homepage.