Installing MojoMojo
The recommended way install is to follow the GitHub installation steps, so that all MojoMojo files end up in one directory, and you have the latest developer version. If you want to use a release version, after git clone, you can list the tags with git tag, and then checkout a specific tag: git checkout <tag_name>.
Binaries
- On FreeBSD, install the p5-MojoMojo package.
- On Debian, install libmojomojo-perl.
System Requirements
- root privileges. Otherwise, you can still install MojoMojo using local::lib.
- Perl 5.8+ and Catalyst 5.7+
- database: in theory, any database back-end supported by DBIx::Class. MojoMojo has been successfully tested with SQLite, PostgreSQL and MySQL.
- memory requirements: on Linux, 60Mb per FastCGI process, regardless of the wiki database size or back-end type
External library dependencies
libxml2for Atom feeds- image manipulation libraries for attachment support, required by Imager:
libpng-dev(orlibpng12-dev),libgif-dev,libjpeg-dev(orlibjpeg62-dev) expat,libexpat1-devandaptitude install libxml-parser-perlfor XML::Feed- docbook-xsl (debian package name) for MojoMojo::Formatter::DocBook
Installation from CPAN
install Catalyst. This can be as easy as
cpan Catalyst::Runtimeinstall the external libraries. For example on Ubuntu, run:
aptitude install libxml2 libpng-dev libgif-dev libjpeg-dev expat libexpat1-dev docbook-xslOn Windows, you can find
libxml2and its dependencies at http://www.zlatkovic.com/pub/libxml/. You'll needlibxml2.dll,iconv.dllandzlib1.dllin a directory listed inPATH.install MojoMojo:
To see how likely the installation tests are to succeed, check the CPAN Testers status of the MojoMojo dependencies.
As with any Catalyst application,
mojomojo_*.plscripts will be installed installed in/usr/local/bin.configure MojoMojo. Usually, you'll want to add a local configuration file overriding values from mojomojo.conf. Since MojoMojo is a Catalyst application, it conforms to the naming convention for such configuration files and settings you add to
mojomojo_local.confwill override those inmojomojo.conf(details at the Catalyst wiki - What is the precedence of various configuration setting locations?.To point MojoMojo to an arbitrary configuration file, set
MOJOMOJO_CONFIG=/my/other/path.conf
MYAPP_CONFIG is also a Catalyst-style environment variable name.
Here is an older example installation progress.
Installing the latest build from GitHub, step-by-step
aptitude install libxml2 libpng-dev libgif-dev libjpeg-dev expat libexpat1-dev make aptitude install libxslt1-dev libgdbm-dev docbook-xsl docbook-xsl-doc-html aptitude install git-arch git clone git://github.com/marcusramberg/mojomojo.git # optional: git tag ; git checkout <a release tag> cpan -i Module::Install cd mojomojo perl Makefile.PL make make test # change mojomojo.conf if necessary script/mojomojo_spawn_db.pl # creates database script/mojomojo_server.pl # launch development server
Installing the latest build from GitHub on openSuSE 11.2
From here on, see Deployment. If you run into problems, see Troubleshooting.
Upgrading
In general, upgrading via CPAN should be the only step required to upgrade your MojoMojo installation:
cpan[1]> install MojoMojo Running install for module 'MojoMojo' Running make for M/MR/MRAMBERG/MojoMojo-1.00.tar.gz Running make test t/01app.t ....................... ok t/02pod.t ....................... ok t/03podcoverage.t ............... skipped: set TEST_POD to enable this test t/04context.t ................... ok [snip] All tests successful. Files=54, Tests=624, 165 wallclock secs ( 0.20 usr 0.11 sys + 99.55 cusr 5.01 csys = 104.87 CPU) Result: PASS MRAMBERG/MojoMojo-1.00.tar.gz /usr/bin/make test -- OK Running make install Prepending /home/justin/.cpan/build/MojoMojo-1.00-hLVXEf/blib/arch /home/justin/.cpan/build/MojoMojo-1.00-hLVXEf/blib/lib to PERL5LIB for 'install' Installing /usr/local/share/perl/5.10.0/MojoMojo.pm Installing /usr/local/share/perl/5.10.0/MojoMojo/mojomojo.conf [snip] Installing /usr/local/bin/mojomojo_update_db.pl Installing /usr/local/bin/mojomojo_spawn_db.pl Installing /usr/local/bin/mojomojo_fastcgi_manage.pl Installing /usr/local/bin/mojomojo_fastcgi.pl Installing /usr/local/bin/mojomojo_cgi.pl Appending installation info to /usr/lib/perl/5.10/perllocal.pod MRAMBERG/MojoMojo-1.00.tar.gz /usr/bin/make install -- OK
If you come from a pre-1.00 version to 1.00, please check mojomojo.conf for updates to the database connection info. The section should look like this:
<Model::DBIC>
<connect_info>
# DB User
user db_user
password db_password
# SQLite DSN (default database type, recommended for small to medium deployments)
dsn dbi:SQLite:mojomojo.db
...
</connect_info>
</Model::DBIC>
Other than that, there are no database schema changes planned as of yet, and a cpan MojoMojo (or git pull) should take care of upgrading.
TODO
TODO: document where files end up after installation.
(alternatively, run updatedb and locate mojomojo_server.pl)
Showing changes from previous revision. Removed | Added
