         @convertTheme(options.argv.convert, options.argv.theme, callback)
       else
         themePath = path.resolve(options.argv.theme)
-        templatePath = path.resolve(__dirname, '..', 'templates', 'theme')
+        templatePath = options.argv.template ? path.resolve(__dirname, '..', 'templates', 'theme')
         @generateFromTemplate(themePath, templatePath)
         callback()
     else if options.argv.package?

        @convertPackage(options.argv.convert, options.argv.package, callback)
      else
        packagePath = path.resolve(options.argv.package)
        templatePath = path.resolve(__dirname, '..', 'templates', 'package')
        @generateFromTemplate(packagePath, templatePath)
        callback()
    else if options.argv.theme?.length > 0

    options.alias('t', 'theme').string('theme').describe('theme', 'Generates a basic theme')
    options.alias('c', 'convert').string('convert').describe('convert', 'Path or URL to TextMate bundle/theme to convert')
    options.alias('h', 'help').describe('help', 'Print this usage message')
    options.string('template').describe('template', 'Path to the package or theme template')

  run: (options) ->
    {callback} = options
