Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/kentnl/dist-zilla-app-command-self

Build a distribution with a bootstrapped version of itself
https://github.com/kentnl/dist-zilla-app-command-self

Last synced: 4 days ago
JSON representation

Build a distribution with a bootstrapped version of itself

Awesome Lists containing this project

README

        

# NAME

Dist::Zilla::App::Command::self - Build a distribution with a bootstrapped version of itself.

# VERSION

version 0.001004

# SYNOPSIS

This is a different approach to using `[Bootstrap::lib]` that absolves a distribution from needing to forcibly embed bootstrapping logic in `dist.ini`

dzil self build

This is largely similar to using

[Bootstrap::lib]
try_built = 1

and doing

dzil build && dzil build

And similar again to:

dzil run bash -c "cd ../; dzil -I$BUILDDIR/lib dzil build"

Or whatever the magic is that @ETHER uses.

This also means that:

dzil self release

Is something you can do.

# CAVEATS

The nature of this implies that your distribution will probably need an older generation of itself for the initial bootstrap.

That is to say:

dzil build

Must work, and use `Generation.Previous` to build `Generation.Build`

dzil self foo

Will call `dzil build` for you, to build `Generation.Build`, and then invoke

dzil foo

To use `Generation.Build` to build `Generation.Next`

- `1. Generation.Previous`

A previously installed incarnation of your dist.

- `2. Generation.Build`

The iteration of building the distribution itself from source using `Generation.Previous`

- `3. Generation.Next`

The iteration of building the distribution itself from source using `Generation.Build`

# AUTHOR

Kent Fredric

# COPYRIGHT AND LICENSE

This software is copyright (c) 2017 by Kent Fredric .

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