Description: Add recursive germinate TODO: Put a short summary on the line above and replace this paragraph with a longer explanation of this change. Complete the meta-information with other relevant fields (see below for details). To make it easier, the information below has been extracted from the changelog. Adjust it or drop it. . germinate (2.16.1) trusty; urgency=medium . * Bump recursion limit to 3000; apparently utopic trips over the existing limit (LP: #1312478). Author: Colin Watson Bug-Ubuntu: https://bugs.launchpad.net/bugs/1312478 --- The information above should follow the Patch Tagging Guidelines, please checkout http://dep.debian.net/deps/dep3/ to learn about the format. Here are templates for supplementary fields that you might want to add: Origin: , Bug: Bug-Debian: http://bugs.debian.org/ Bug-Ubuntu: https://launchpad.net/bugs/ Forwarded: Reviewed-By: Last-Update: --- germinate-2.16.1.orig/germinate/scripts/germinate_update_metapackage.py +++ germinate-2.16.1/germinate/scripts/germinate_update_metapackage.py @@ -79,6 +79,9 @@ update.cfg.''' parser.add_option('--bzr', dest='bzr', action='store_true', default=False, help='fetch seeds using bzr (requires bzr to be ' 'installed)') + parser.add_option('-r','--recursive', dest='recursive', action='store_true', + default=False, + help="expand all seeds dependencies from STRUCTURE") return parser.parse_args(argv[1:]) @@ -172,6 +175,10 @@ def main(argv): if seed_name not in mapped_seeds: mapped_seeds.append(seed_name) packages = [] + if options.recursive: + mapped_seeds.extend(structure.inner_seeds(seed_name)) + mapped_seeds = list(set(mapped_seeds)) + for mapped_seed in mapped_seeds: packages.extend(germinator_method(structure, mapped_seed)) return packages