PINTO(1)
π PINTO(1) π
okay bestie, gather round, because this is the manual page for pinto, from the User Contributed Perl Documentation section. she's an icon, she's a whole vibe, and she deserves your full attention π«Ά
β¨ NAME β¨
pinto β curate a custom repository of Perl modules π
πΈ VERSION πΈ
version 0.14
π¦ SYNOPSIS π¦
pinto --root=REPOSITORY_ROOT [global options] COMMAND [command options] [args]
π DESCRIPTION π
so basically, pinto is the tool for creating and managing your very own custom CPAN-like repository of Perl modules. it's giving personal library, but make it infrastructure β¨
the whole point of a repository like this is to give you a stable, curated stack of dependencies β so you can reliably build, test, and deploy your application using the standard Perl tool chain. no chaos, no surprises, just vibes π
pinto provides a bunch of commands for gathering and managing distribution dependencies inside the repository, so you have precise control over exactly which dependencies go into your application. main character energy, honestly π
π COMMANDS π
pinto supports several commands that either do stuff to your repository or report info about it. to get a listing of all the available commands:
$> pinto commands
each command has its own options and arguments. for a brief summary:
$> pinto help COMMAND
and for the complete manual for a command:
$> pinto manual COMMAND
π GLOBAL OPTIONS π
these options work for all commands. every single one. no cap.
--rootDIRECTORY | URI,-rDIRECTORY | URI β specifies the root of your repository. this is mandatory for (almost) all commands, unless you set it via thePINTO_REPOSITORY_ROOTenvironment variable. the root can be the path to a local directory or an equivalentfile://URI.
the root can also be the URI where a pintod server is listening π depending on your server configuration, you may need to specify the port number in the URI, which is usually 3111.
--color,--colour,--no-color,--no-colourβ enable or disable colorized command output. by default, color is enabled unless the output is being sent to a pipe or file. set thePINTO_NO_COLORenvironment variable to disable color by default.--passwordPASS,-pPASS β the password to use for server authentication. this is only relevant if you're using a remote repository. if PASS is-then you'll be prompted for a password π--quiet,-qβ report only fatal errors. this option silently overrides the--verboseoptions. also suppresses the progress meter.
note: the progress meter is always suppressed when using a remote repository. this will hopefully be fixed a future release. (iykyk π)
--usernameNAME,-uNAME β the username to use for server authentication. this is only relevant if you're using a remote repository. defaults to your current login.--verbose,-vβ display more diagnostic messages. this switch can be repeated multiple times for greater effect π₯ diagnostic messages are always sent toSTDERR.
π CONFIGURATION π
every repository has a configuration file that lives inside the repository at .pinto/config/pinto.ini. this file gets generated for you with default values when you create the repository β¨ you can influence the initial value for some of the properties when you run the init command. after that, you can change these properties by editing the configuration file directly.
here are the supported configuration parameters, bestie:
sources = URL1 [URL2 URL3 ...]β this is a space-delimited list of the URLs for the upstream repositories that this repository will pull archives from. these can point to CPAN mirrors, minicpan mirrors, or stacks within other Pinto repositories. Pinto will search the source repositories in the order they are listed here. the default value ishttp://cpan.perl.org http://backpan.perl.org.target_perl_version = X.X.Xβ sets the defaulttarget_perl_versionproperty for all new stacks. otherwise, all new stacks will target the version of perl that you first used to create the repository. you can always configure the target perl for each stack independently by using thepropscommand πintermingle = 1 | 0β if true, stacks will be allowed to "intermingle" distributions that have partially overlapping packages. this makes pinto behave like PAUSE, which allows a package to remain in the index until it is replaced by a distribution containing the same package. so it becomes possible to have an index that contains just "some" of the packages in a particular distribution. this typically occurs when a package in a prior release is absent from a subsequent release. the default is false.
BEWARE: the above configuration properties are global β they affect every stack in the repository. they also have a major effect on how the repository behaves. for these reasons, it is generally unwise to change these parameters once you've established the repository and filled it with content. if you do change them, be sure and notify your team about it π«Ά each stack also has some stack-specific configuration properties. those can be shown or set using the props command.
π§ ENVIRONMENT VARIABLES π§
the following environment variables influence the behavior of pinto. if you've installed pinto as a stand-alone application as described in Pinto::Manual::Installing, then the best place to set these variables is in your ~/.pintorc file.
PINTO_REPOSITORY_ROOTβ sets the default path or URL of the pinto repository, if the--rootis not specified. the--rootis required for almost all commands. so if you usually only work with one repository, then setting this can save you quite a bit of typing πPINTO_EDITORβ sets the path to the editor application that will be used to compose log messages. if not set, defaults toVISUALorEDITOR. if none of those are set, eithernano,pico, orviwill be used (in that order).PINTO_NO_COLOR,PINTO_NO_COLOURβ if set to a true value, suppresses color in all command output.PINTO_PALETTEβ a comma-separated list of exactly three color names. any name supported byTerm::ANSIColoris allowed. these will be the colors that pinto uses to colorize various output. for example:
PINTO_PALETTE='red, light blue, green on_white'
listing too many or too few colors will cause an exception, and so will using an invalid color name π for backward compatibility the variables PINTO_COLORS and PINTO_COLOURS can also be used (but they are deprecated).
PINTO_USERNAMEβ sets the default username when--usernameis not specified. this is only used for authentication with apintodserver. defaults to your current shell username.PINTO_AUTHOR_IDβ sets the default author identity when the--authoroption is not specified (currently, only used by theaddcommand). defaults to your current shell username. by PAUSE convention, all author id's are forced to uppercase.PINTO_PAGERβ sets the path to the pager application that will be used to paginate output from each command. defaults toPAGER. if none of these are set, then no pager is used.PINTO_PAGER_OPTIONSβ sets the options that will be passed to the pager (if there is one). for example, you could use the-Roption to instructlessto pass through the colors that pinto usually displays:
export PINTO_PAGER_OPTIONS=-R
most pagers have their own environment variables to control their default behavior. PINTO_PAGER_OPTIONS gives you a way to set defaults that are specific to when you're using it with pinto.
PINTO_DIFF_STYLEβ sets the default style for diff reports. valid styles aredetailedandconcise. the default isconcise. for commands that produce diff reports, this can be overridden with the--diff-styleoption. this variable only has effect when using a local repository.PINTO_DEBUGβ if set to1, pinto will emit more diagnostic messages toSTDERR. if set to2, pinto will emit even more diagnostic messages. this variable only has effect when using a local repository.PINTO_LOCKFILE_TIMEOUTβ sets the timeout (in seconds) for obtaining a lock on the repository. the default is50. this variable only has effect when using a local repository.PINTO_STALE_LOCKFILE_TIMEOUTβ sets the timeout (in seconds) to consider a lock on the repository stale and expire it. the default is0(don't expire). this variable only has effect when using a local repository.PINTO_SHELLβ sets the path to the command pinto will use for interactive shells (like with thelookcommand). if this is not set, pinto defaults to eitherSHELLorCOMSPEC.
β SEE ALSO β
pintodto allow remote access to your Pinto repository.Pinto::Manualfor general information on using Pinto.- Stratopan
<http://stratopan.com>for hosting your Pinto repository in the cloud βοΈ
π AUTHOR π
Jeffrey Ryan Thalhammer <jeff@stratopan.com>
π COPYRIGHT AND LICENSE π
This software is copyright (c) 2015 by Jeffrey Ryan Thalhammer.
This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.
and that's the whole page, bestie π this one's perl v5.42.0, dated 2025-07-25, from the PINTO(1) page itself. go curate something iconic β¨ππ
π¦ where this page comes from
- fedora 43: perl-Pinto 1:0.14-24.fc43 Β· GPL-1.0-or-later OR Artistic-1.0-Perl
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms