WWW::Kontent INSTALLATION INSTRUCTIONS ====================================== A couple warnings before we begin: *** THIS SYSTEM WILL NOT RUN IN PERL 5. IT REQUIRES THE EXPERIMENTAL PERL 6 *** *** COMPILER, PUGS, AND THE CROSS-LANGUAGE PARROT INTERPRETER. *** *** THIS RELEASE IS AN EARLY ALPHA, AND IS BY NO MEANS READY FOR DEPLOYMENT. *** *** IF YOU'RE THINKING ABOUT USING THIS FOR ANYTHING REAL YET, YOU'RE NUTS. *** *** IT MAY DESTROY YOUR DATA, ERASE YOUR HARD DRIVE, MAX OUT ALL YOUR CREDIT *** *** CARDS, OR TELL YOUR MOTHER EXACTLY WHAT YOU'VE BEEN DOING WITH THAT *** *** LOVELY GIRL YOU'RE GOING OUT WITH. YOU HAVE BEEN WARNED! *** Now that that's over with... PREREQUISITES ============= Kontent requires the following: * A recent version of Parrot. Kontent has not been tested with Parrot 0.2.2, but it is likely to be incompatible with it; your best bet is probably to check Parrot out of the development repository. * A recent version of Pugs, built with Perl 5 embedding. (Building Pugs requires the Glasgow Haskell Compiler, version 6.4.) A properly-configured Pugs 6.2.9 should be sufficient. The script files that ship with Kontent assume that Pugs will be located at /usr/bin/pugs. If your machine is not configured this way, be sure to adjust the shebang lines. * A SQL database engine. (Kontent has been tested with MySQL 4.0, but the SQL used is fairly simple; you may need to create the tables by hand, however.) * The Perl 5 DBI module and an appropriate DBD for your database engine. * A web server capable of running CGI scripts, such as Apache. To build a usable copy of Pugs: * Download and install Parrot. $ cd /home/user $ svn checkout http://svn.perl.org/parrot/trunk parrot $ cd parrot $ perl Configure.pl $ make $ make test # A few test failures are okay. * Download and install Pugs with Perl 5 and Parrot embedding. $ cd /home/user $ wget http://pugscode.org/dist/Perl6-Pugs-6.2.9.tar.gz $ tar xzf Perl6-Pugs-6.2.9.tar.gz $ cd pugs $ PUGS_EMBED='perl5 parrot' PARROT_PATH=/home/user/parrot perl Makefile.PL $ make $ make test # Expect plenty of fireworks. $ sudo make install # Or su -c 'make install' SETTING UP ========== Unpack the Kontent distribution into a directory somewhere. (Your home folder may work, although you may have to tweak your permissions to allow it.) Enter that directory and perform the following steps: * Edit kontent-config.yaml to reflect the details of your database. You may want to create a new database and user for Kontent to use. * Run the following command to create the database tables and the root page: $ pugs -MWWW::Kontent -e 'WWW::Kontent::make_root' If your database engine can't seem to handle the CREATE TABLE statements, you'll have to create the tables manually. Open WWW/Kontent/Store/NarrowDBI.pm and search for "sub make_root" to find the statements, then adjust them as needed and run the result on your database engine. Once the tables have been created, run the above command again; make_root will only try to create the tables if they don't already exist. * Add the following to your Apache httpd.conf file and restart httpd: Alias /kontent /path/to/test.p6 Of course, other web servers will require other commands. For the moment, your Kontent instance *must* be located at /kontent; this will be configurable in future versions. (If you aren't happy with this, you can modify WWW/Kontent/Renderer/HTML.pm--it only appears in a few places.) ACCESSING KONTENT ================= Open your web browser and navigate to http://servername/kontent. You should see the root page, which will contain further instructions. Enjoy!