Pinto

 view release on metacpan or  search on metacpan

lib/Pinto/Manual/Installing.pod  view on Meta::CPAN

   curl -L http://getpinto.stratopan.com | bash

   # If you use wget...
   wget -O - http://getpinto.stratopan.com | bash

All the dependent modules will come from a curated repository on 
L<Stratopan|http://stratopan.com>.  These aren't always the latest 
versions of things, but they are versions that I know will work.

=head2 Step 2: Set up the pinto environment

The pinto installer generates a setup script for you.  By default, it
is located at F<~/opt/local/pinto/etc/bashrc>.  To load that setup into
your current shell, just give this command:

  source ~/opt/local/pinto/etc/bashrc

To make these settings part of your everyday shell environment, just add 
that last command to your F<~/.profile> or F<~/.bashrc> or whatever setup 
file is appropriate for your shell.

If you wish to customize any of the other environment variables that
pinto uses, you can place those commands in F<~/.pintorc>.  If that file
exists, the setup script will source them as well.  See L<pinto> for
a list of the relevant environment variables.

=head1 INSTALLING AS A SERVER

If you will be running the pintod daemon exposed to the internet, 
it is suggested that you assume root privileges and proceed as follows:

(1) create a pinto user like so:

    adduser --system --home /opt/local/pinto --shell /bin/false \ 
        --disabled-login --group pinto 

(2) set some environmental variables:

    export PINTO_HOME=/opt/local/pinto
    export PINTO_REPOSITORY_ROOT=/var/pinto

check that the exports took with `env`.

(3) run the installer as described above, and source the environmental
variables to facilitate the steps of setting up the repository.  

(4) choose an authentication backend and install it like so:

    cpanm -L $PINTO_HOME Authen::Simple::Kerberos 

to review your options see L<Authen::Simple>.

(5) choose an appropriate startup script and install it:

    cp $PINTO_HOME/etc/init.d/pintod.debian /etc/init.d/pintod 

    update-rc.d pintod start 50 2 3 4 5 . stop 20 0 1 6 .

=head2 AN IMPORTANT NOTE ABOUT SECURITY

Currently daemonizing the pintod server will run the starman workers 
as root.  We hope to soon have the pintod daemon drop its privileges 
after initiating the master and before spawning the workers, so that
the workers will run as the pinto user.  Until that feature is in
place, pinto repository administrators are urged to keep their
installations safely behind firewalls, protected from the potentially
hostile user.  

=head1 INSTALLING AS A LIBRARY

If you're going to be hacking on Pinto itself, or want to try building on 
the API directly, then you can install Pinto straight into your development
environment, just like you would do for any other module.

Just beware that Pinto has lots of dependencies.  And if you subsequently
upgrade any of those dependencies to something that breaks Pinto, then
you might find yourself in a pickle.  The whole point of Pinto is to
help you manage your dependencies, so if you break Pinto, it won't be able
to help you.

=head1 OTHER INSTALLATION OPTIONS 

Naturally, installation procedures will vary from one environment to another.
If this procedure doesn't work for you, or if you'd like to suggest a 
procedure for a different environment (e.g. Windows, Perlbrew, Strawberry
Perl, etc.), then please contact me.  Your contributions would be greatly
appreciated.

=head1 SEE ALSO

L<Pinto::Manual::QuickStart>

L<Pinto::Manual::Tutorial>

L<Pinto> (the library)

L<pinto> (the command)

=head1 AUTHOR

Jeffrey Ryan Thalhammer <jeff@stratopan.com>

=head1 COPYRIGHT AND LICENSE

This software is copyright (c) 2013 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.

=cut



( run in 1.325 second using v1.01-cache-2.11-cpan-e93a5daba3e )