1PINTO(1) User Contributed Perl Documentation PINTO(1)
2
3
4
6 pinto - Curate a custom repository of Perl modules
7
9 version 0.14
10
12 pinto --root=REPOSITORY_ROOT [global options] COMMAND [command options] [args]
13
15 pinto is a tool for creating and managing a custom CPAN-like repository
16 of Perl modules. The purpose of such a repository is to provide a
17 stable, curated stack of dependencies from which you can reliably
18 build, test, and deploy your application using the standard Perl tool
19 chain. pinto provides various commands for gathering and managing
20 distribution dependencies within the repository, so that you can
21 control precisely which dependencies go into your application.
22
24 pinto supports several commands that perform various operations on your
25 repository, or report information about your repository. To get a
26 listing of all the available commands:
27
28 $> pinto commands
29
30 Each command has its own options and arguments. To get a brief
31 summary:
32
33 $> pinto help COMMAND
34
35 To see the complete manual for a command:
36
37 $> pinto manual COMMAND
38
40 The following options are available for all commands.
41
42 --root DIRECTORY | URI
43 -r DIRECTORY | URI
44 Specifies the root of your repository. This is mandatory for
45 (almost) all commands unless you set it via the
46 "PINTO_REPOSITORY_ROOT" environment variable. The root can be the
47 path to a local directory or an equivalent "file://" URI.
48
49 The root can also be the URI where a pintod server is listening.
50 Depending on your server configuration, you may need to specify the
51 port number in the URI, which is usually 3111.
52
53 --color
54 --colour
55 --no-color
56 --no-colour
57 Enable or disable colorized command output. By default, color is
58 enabled unless the output is being sent to a pipe or file. Set the
59 "PINTO_NO_COLOR" environment variable to disable color by default.
60
61 --password PASS
62 -p PASS
63 The password to use for server authentication. This is only
64 relevant if using a remote repository. If the PASS is "-" then you
65 will be prompted for a password.
66
67 --quiet
68 -q Report only fatal errors. This option silently overrides the
69 "--verbose" options. Also suppresses the progress meter.
70
71 Note: The progress meter is always suppressed when using a remote
72 repository. This will hopefully be fixed a future release.
73
74 --username NAME
75 -u NAME
76 The username to user for server authentication. This is only
77 relevant if using a remote repository. Defaults to your current
78 login.
79
80 --verbose
81 -v Display more diagnostic messages. This switch can be repeated
82 multiple times for greater effect. Diagnostic messages are always
83 sent to STDERR.
84
86 Each repository has a configuration file that lives inside the
87 repository at .pinto/config/pinto.ini. This file is generated for you
88 with default values when you create the repository. You can influence
89 the initial value for some of the properties when you run the init
90 command. Thereafter, you can change these properties by editing the
91 configuraiton file directly.
92
93 The following configuration parameters are supported:
94
95 sources = URL1 [URL2 URL3 ...]
96 This is a space-delimited list of the URLs for the upstream
97 repositories that this repository will pull archives from. These
98 can point to CPAN mirrors, minicpan mirrors, or stacks within other
99 Pinto repositories. Pinto will search the source repositories in
100 the order they are listed here. The default value is
101 "http://cpan.perl.org http://backpan.perl.org".
102
103 target_perl_version = X.X.X
104 Sets the default "target_perl_version" property for all new stacks.
105 Otherwise, all new stacks will target the version of perl that you
106 first used to create the repository. You can always configure the
107 target perl for each stack independently by using the props
108 command.
109
110 intermingle = 1 | 0
111 If true, stacks will be allowed to "intermingle" distributions that
112 have partially overlapping packages. This makes pinto behave like
113 PAUSE which allows a package to remain in the index until it is
114 replaced by a distribution containing the same package. Thus, it
115 becomes possible to have an index that contains just "some" of the
116 packages in a particular distribution. This typically occurrs when
117 a package in a prior release is absent from a subsequent release.
118 The default is false.
119
120 BEWARE: The above configuration properties are global -- they affect
121 every stack in the repository. They also have a major affect on how
122 the repository behaves. For these reasons, it is generally unwise to
123 change these parameters once you have established the repository and
124 filled it with content. If you do change them, be sure and notify your
125 team about it. Each stack also has some stack-specific configuration
126 properties. Those can be shown or set using the props command.
127
129 The following environment variables influence the behavior of pinto.
130 If you have installed pinto as a stand-alone application as described
131 in Pinto::Manual::Installing, then the best place to set these
132 variables is in your ~/.pintorc file.
133
134 "PINTO_REPOSITORY_ROOT"
135 Sets the default path or URL of the pinto repository, if the
136 "--root" is not specified. The "--root" is required for almost all
137 commands. So if you usually only work with one repository, then
138 setting this can save you quite a bit of typing.
139
140 "PINTO_EDITOR"
141 Sets the path to editor application that will be used to compose
142 log messages. If not set, defaults to "VISUAL" or "EDITOR". If
143 none of those are set, either "nano", "pico", or "vi" will be used
144 (in that order).
145
146 "PINTO_NO_COLOR"
147 "PINTO_NO_COLOUR"
148 If set to a true value, suppresses color in all command output.
149
150 "PINTO_PALETTE"
151 A comma-separated list of exactly three color names. Any name
152 supported by Term::ANSIColor is allowed. These will be the colors
153 that pinto uses to colorize various output. For example:
154
155 PINTO_PALETTE='red, light blue, green on_white'
156
157 Listing too many or too few colors will cause an exception, as will
158 using an invalid color name. For backward compatibility the
159 variables "PINTO_COLORS" and "PINTO_COLOURS" can also be used (but
160 they are deprecated).
161
162 "PINTO_USERNAME"
163 Sets the default username when "--username" is not specified. This
164 is only used for authentication with a pintod server. Defaults to
165 your current shell username.
166
167 "PINTO_AUTHOR_ID"
168 Sets the default author identity when the "--author" option is not
169 specified (currently, only used by the add command). Defaults to
170 your current shell username. By PAUSE convention, all author id's
171 are forced to uppercase.
172
173 "PINTO_PAGER"
174 Sets the path to the pager application that will be used to
175 paginate output from each command. Defaults to "PAGER". If none
176 of these are set, then no pager is used.
177
178 "PINTO_PAGER_OPTIONS"
179 Sets the options that will be passed to the pager (if there is
180 one). For example, you could use the "-R" option to instruct
181 "less" to pass through the colors that pinto usually displays:
182
183 export PINTO_PAGER_OPTIONS=-R
184
185 Most pagers have their own environment variables to control their
186 default behavior. "PINTO_PAGER_OPTIONS" gives you a way to set
187 defaults that are specific to when you are using it with pinto.
188
189 "PINTO_DIFF_STYLE"
190 Sets the default style for diff reports. Valid styles are
191 "detailed" and "concise". The default is "concise". For commands
192 that produce diff reports, this can be overriden with the
193 "--diff-style" option. This variable only has effect when using a
194 local repository.
195
196 "PINTO_DEBUG"
197 If set to 1, pinto will emit more diagnostic messages to STDERR.
198 If set to 2, pinto will emit even more diagnostic messages. This
199 variable only has effect when using a local repository.
200
201 "PINTO_LOCKFILE_TIMEOUT"
202 Sets the timeout (in seconds) for obtaining a lock on the
203 repository. The default is 50. This variable only has effect when
204 using a local repository.
205
206 "PINTO_STALE_LOCKFILE_TIMEOUT"
207 Sets the timeout (in seconds) to consider a lock on the repository
208 stale and expire it. The default is 0 (don't expire). This
209 variable only has effect when using a local repository.
210
211 "PINTO_SHELL"
212 Sets the path to the command pinto will use for interactive shells
213 (like with the look command). If this is not set, pinto defaults to
214 either "SHELL" or "COMSPEC".
215
217 pintod to allow remote access to your Pinto repository.
218
219 Pinto::Manual for general information on using Pinto.
220
221 Stratopan <http://stratopan.com> for hosting your Pinto repository in
222 the cloud.
223
225 Jeffrey Ryan Thalhammer <jeff@stratopan.com>
226
228 This software is copyright (c) 2015 by Jeffrey Ryan Thalhammer.
229
230 This is free software; you can redistribute it and/or modify it under
231 the same terms as the Perl 5 programming language system itself.
232
233
234
235perl v5.36.0 2023-01-20 PINTO(1)