NAME
Kwiki-Kwiki - Kwiki Kwiki is a Wiki
SYNOPSIS
Typical Usage of Kwiki::Kwiki
> mkdir site
> cd site
> kwiki -new
> kk -init
# Edit source code list
> vim kwiki/sources/list
# Download all the source code
> kk -src
# Make lib directory
> kk -lib
# Make distribution tarball
> kk -dist
# Run built-in Server
> bin/server
DESCRIPTION
KwikiKwiki is a Wiki distribution toolkit, or framework. It's the best way to spread your own copy of wiki to friends.
Most folks think that Kwiki is wiki software, and in a sense it is. But the main purpose of Kwiki is to be a framework for creating wiki software. In other words, it's a Perl hacker's playground. Most of the energy was put into figuring out how plugins from various folks could play well together, and less thought was put into how to simply run a wiki with the features you'd expect.
This is where KwikiKwiki comes in.
KwikiKwiki ships a "server" script under "bin/" directory. It is a pure-perl http server just for serving this Kwiki directory. Therefore it is suggest to leave the default source list intact, and add more your own.
KwikiKwiki installs a kk
script to your system. It's the front-end for build KwikiKwiki distributions. There are four phrases to build a distribution: 1. Create a new Kwiki directory 2. Get the source code, 3. Install to lib dir 3. Create a distribution tarball. kk
script works with the kwiki
script, you should make sure that current Kwiki directory is runnable and has plugins of your own choice before using kk
to create distribution.
There are four arguments to kk
: <-init> initialize a kwiki/
directory under current working directory, and you should edit kwiki/source/list
for your own need. Plugins are auto-bundled, so you don't have to add them to the list.
The source list file contains information where to find perl modules, lines begin with ===
are source types, lines begin with ---
are sources. There are four possible source types: svn, local, inc, cpan. For svn sources, please give the repository url to the module directory (which should contain a sub-directory 'lib'). For example, http://svn.kwiki.org/ingy/Kwiki. For local sources, please give the path to your module directories. For example, /home/gugod/src/Kwiki-NewStuff/
. For inc sources, please give the path of module file names relative to @INC. For example, File/Temp.pm
. For cpan sources, just give the full name of that module. For example, Kwiki::Comments
. All fetched source are stored under kwiki/
directory, and are excluded in the creation of distribution tarball.
Invoking <-src> argumenets will download all sources, and <-lib> just build a lib
directory for all sources. After calling kk -lib
, pre-requesties should all be installed to lib
.
Calling kk -dist
will create a tarball with the same name of current working directory. You should be able to give away this tarball, and people who extract it should be able to run
bin/server
And have a Kwiki server running on localhost, port 8080.
That's pretty much about the current feature of KwikiKwiki.
SYSTEM REQUIREMENTS
- Perl 5.8.4 or higher
-
Kwiki uses unicode, and unicode didn't really stabilize until Perl 5.8.4. If you try to run Kwiki on older perls, you will likely run into problems. So Kwiki-Kwiki requires 5.8.4 or higher.
- Subversion 1.0 or higher
-
Depending on how you configure Kwiki-Kwiki, you may need subversion. You really want subversion. It makes life so much simpler. If you really can't get it on your machine, that's ok.
- A working CPAN configuration.
-
Kwiki-Kwiki may uses your exist CPAN configuration to install CPAN modules locally under "lib" directory, please make sure your CPAN installation is configured well.
Methods
- make_src
-
Download module source code from remote and extract it locally.
- make_lib
-
Install all .pm files locally under kwiki/lib/
- make_cpan_lib
-
Install all CPAN modules locally under lib/
- make_dist
-
Create a distfile named based on current directory name.
AUTHORS
Ingy döt Net <ingy@cpan.org>
Kang-min Liu <gugod@gugod.org>
COPYRIGHT
Copyright (c) 2006. Ingy döt Net, Kang-min Liu. All rights reserved.
This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself.
See http://www.perl.com/perl/misc/Artistic.html
1 POD Error
The following errors were encountered while parsing the POD:
- Around line 164:
Non-ASCII character seen before =encoding in 'döt'. Assuming UTF-8