Dist::Inkt(3pm)

πŸ“¦
version 0.026 Β· 3 versions
, in ubuntu noble, ubuntu resolute, ubuntu stonking

πŸ’– Dist::Inkt πŸ’–

okay so bestie, you're looking at the manual page for Dist::Inkt, a Perl module that lives in section 3pm (user contributed perl documentation, iykyk). grab a snack, we're doing this ✨


🌸 NAME 🌸

Dist::Inkt β€” yet another distribution builder. yes, another one. the audacity? iconic.


πŸ¦‹ STATUS πŸ¦‹

Experimental. like, it works, but it's giving lab experiment, not giving "put it in production and go to sleep" πŸ’…


🌈 DESCRIPTION 🌈

So the lore is: Dist::Zilla didn't have the prerequisite amount of crazy for me, so I wrote this instead. no cap. that's the whole origin story 🫢

Dist::Inkt itself does virtually nothing. Like, it creates an empty directory, generates a MANIFEST file, and then wraps it all up into a gzipped tarball. that's the whole rΓ©sumΓ© bestie 😭. But β€” and this is the main character moment β€” it provides various hooks along the way for subclasses to grab hold of.

So the general idea is that you write a subclass of Dist::Inkt, which consumes various Moose::Roles to do the actual work of populating the distribution with files. you're the one doing the work. it's the framework. slay delegation ✨

As such, Dist::Inkt is not so much a distribution builder, as it is a framework for writing your own distribution builder. periodt.

Several roles of varying utility are bundled with Dist::Inkt, as is Dist::Inkt::Profile::Simple, a subclass of Dist::Inkt which consumes most of these roles.


πŸŽ€ COMPANIONS πŸŽ€

Dist::Inkt does just one thing β€” building the tarball from some checkout of the repo. that's it. one job. it ate and it left no crumbs πŸ’…

Although roles could theoretically be written for other tasks, out of the box, Dist::Inkt doesn't do any of the following:

  • Minting new distributions β€” I'm writing a separate tool, Dist::Inktly::Minty for that.
  • Test suite running β€” Use App::Prove or App::ForkProve.
  • CPAN Uploading β€” Use CPAN::Uploader.
  • Changing the version number across many files β€” Use Perl::Version.
  • Integration with version control tools β€” Just use hg or svn or git of whatever as you normally would. None of the files generated by Dist::Inkt should probably be checked into your repo.
ngl that last one is a real warning, bestie. those generated files? do not commit them. leave them out of your repo, I'm begging πŸ™ˆ

πŸ’€ BUGS πŸ’€

Please report any bugs to <http://rt.cpan.org/Dist/Display.html?Queue=Dist-Inkt>. it is right there, use it 🫢


⭐ SEE ALSO ⭐

If you are not me, then you may well want one of these instead:

  • Dist::Zilla
  • Dist::Milla
  • Minilla

Various extensions for Dist::Inkt:

  • Dist::Inkt::DOAP
  • Dist::Inkt::Profile::TOBYINK

πŸ‘‘ AUTHOR πŸ‘‘

Toby Inkster <tobyink@cpan.org>. the icon themselves, fr fr πŸ’œ


This software is copyright (c) 2013-2014 by Toby Inkster.

This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself. free free free, as a treat πŸŽ€


🫢 DISCLAIMER OF WARRANTIES 🫢

THIS PACKAGE IS PROVIDED "AS IS" AND WITHOUT ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.

like, no promises babe. if it breaks, it breaks πŸ’€

and that's the whole page bestie! this one shipped as perl v5.36.0, dated 2022-10-14 β€” go forth and build ur little tarballs, mwah πŸ’–βœ¨

πŸ“¦ where this page comes from