in cmd/distrogen/main.go [96:142]
func generateDistribution() error {
specPath := *flagSpec
if *flagSpec == "" {
return errNoSpecFlag
}
spec, err := NewDistributionSpec(specPath)
if err != nil {
return err
}
registry, err := LoadEmbeddedRegistry()
if err != nil {
return err
}
for _, registryPath := range *flagRegistry {
additionalRegistry, err := LoadRegistry(registryPath)
if err != nil {
return err
}
registry.Merge(additionalRegistry)
}
generator, err := NewDistributionGenerator(spec, registry, *flagForce)
if err != nil {
return err
}
defer generator.Clean()
if *flagCustomTemplates != "" {
generator.CustomTemplatesDir = os.DirFS(*flagCustomTemplates)
}
if err := generator.Generate(); err != nil {
return err
}
var resultErr error
if *flagCompare {
resultErr = generator.Compare()
} else {
resultErr = generator.MoveGeneratedDirToWd()
}
return resultErr
}