dzooky - convert a dist to Dist::Zilla


version 0.24


  $ cd Some-Dist-Dir
  $ dzooky


dzooky is Dist::Zilla's nephew. He has the ability to summon his uncle.

dzooky will try its best to convert a distribution to use Dist::Zilla. It supports ExtUtils::MakeMaker, Module::Install and Module::Build based distributions, with certain limitations.

Simply execute dzooky in the directory containing the distribution you wish to convert to Dist::Zilla. dzooky will determine the type of distribution it is and execute the Makefile.PL or Build.PL and gather meta information to generate a dist.ini file for you.

It will die on any error conditions it encounters.

If you do not wish to execute Makefile.PL or Build.PL and have META.json or META.yml, you may use the metafile command to merely examine those files.

  $ dzooky metafile

dzooky also supports specifying a Dist::Zilla bundle to use instead of the defaults.

  $ dzooky dist --bundle BINGOS

This will add [@BINGOS] to the generated dist.ini.


This should be considered as experimental for the moment. It does work in the main but there are some gotchas.

The ExtUtils::MakeMaker examination is done by parsing the Makefile that is produced by executing Makefile.PL. Module::Install will also fall back to this mechanism if a MYMETA.json or MYMETA.yml file is not generated.

The Module::Build examination is purely from MYMETA.json or MYMETA.yml.

This has some limitations.


As we pull a lot of data from MYMETA.json or MYMETA.yml ( where applicable ), we could fill in a lot more of the dist.ini automatically.

The Module::Install code does not take into account dists using Module::AutoInstall, maybe it should. Any ideas for achieving this would be welcome.


Chris Williams <>


This software is copyright (c) 2017 by Chris Williams.

This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.