CvWiki was an early WikiWikiClone. Once the only WikiWikiClone with functioning TransClusion, BackLinks and WayBackMode, but there are lots of better ones these days. Try ZwiKi ...
CvWiki is a WikiWikiClone of Ward's code that
A large amount of this clone is still under Ward's copyright, but unless Ward has objections you should be able to pick up a copy of Pete's hack at http://home.connectnet.com/peter/CVWiki.gz (BrokenLink) (alternate link: http://home.san.rr.com/merel/CVWiki.gz (Also BrokenLink)) Pete's parts of this are all under LGPL.
Be warned that installing the thing properly will require you to install CVS (see http://www.cvshome.org) which is free but requires a little expertise. And CvWiki comes with zero documentation at the moment.
I want to try out CVWiki. I have Perl and CVS installed, but get tons of errors when I try the naive thing (running cvwiki from a command line to see what happens). I am assuming that if I grovel through code long enough, I might get it to work. Still, if someone has a reasonable list of the things that need editing to get this to work, that would be helpful.
Okay, being the cause of some angst, here's the basics; others ought to fill in the difficulties they've had with each step:
I wrote a Wiki Clone based on CvWiki running at http://www2.tunes.org/cgi-bin/TunesWiki (New address: http://cliki.tunes.org/)
I'd be glad to help someone who wants to set up CvWiki. It was hard enough for me, I don't want anyone else to have to go through that. CVS 1.9 is buggy; CvWiki requires 1.9.26 or later.
Before you can use WayBackMode, you have to:
Is there a CvWiki running anywhere that one could check out? The Tunes one appears not to connect to anything. -- RonJeffries
It's there, it just seems to be down the end of a long narrow pipe. I stuck a transclusion example on its front page for you to play with. -- PeterMerel
I'm running (internal to our firewall, alas) a modified version of CvWiki. Some of the interesting changes include:
I'd be glad to mail it to interested parties. -- JimPerry
I think I like the sound of most of that except the thready stuff, which it seems to me might detract from the WikiNature. RCS vs. CVS makes no difference unless you're versioning your wiki along with your project, in which case CVS is handy. I like the diff idea - should like to see it in action before I could opine on whether I like it better or worse than WayBackMode. I guess I can think of good uses of both. -- PeterMerel
For better or worse we're not seeing much wiki-ish interactivity, but it is proving useful as a repository, hence the mail-gateway/append experiment. YMMV.The diff thing is orthogonal to WayBackMode; the word "modified" on each revision listed is linked to the diffs at that rev (from the previous), the date is still linked to the WayBackMode of that page at that rev. -- JimPerry
Concurrency problem. CvWiki runs on Solaris as nobody. The user edits and clicks on Save. CvWiki creates a lock directory /tmp/wiki. The user decides to go back, edit for a second, and clicks on Save again. CvWiki runs a second time but finds that /tmp/wiki still exists. Since the first run never removed the lock directory CvWiki can't create a new one and aborts.
How can this concurrency conflict be resolved? (It's a pain to remove the /tmp/wiki directory "by hand" because I don't own it, i.e. I have to do it from inside the script). -- FrankGerhardt
The behaviour of CGI scripts depends on the http server you use. Some servers will kill a script before it finishes, leaving lock files hanging around indefinitely. I've run CvWiki successfully with both the Xitami and Netscape SuiteSpot? servers over NT. I haven't tried it on Solaris, but I'd suggest SuiteSpot? and Apache are worth trying if your present server is killing scripts before locks can be removed.
Alternatively you could play with Perl SIGHANDLERs in the script to cause the locks to be removed on a kill - if you do this and it works then I'd be happy to integrate your changes back into my otherwise unsupported version of the code ... -- PeterMerel
If you are using a linux system change the 1st line to #!/usr/bin/perl or wherever perl is located.
I found this made digging out problems a little easier: create a script (I called mine wrap.pl).
#!/usr/bin/perl system 'perl /pathname/CVWiki.pl',@args;For some reason from perl the errors do not get logged but from a script they do.
You can also call the script from the command line to get it up and running.
Now someone who is better at HTTP and perl might post a series of commands that would emulate a call from a browser to test various Wiki calls.
Also if I remove the "perl" in the wrap.pl, and just tries to execute the script it fails. Don't know why. Wiki.pl runs right next to it OK.
If someone has an idea of how to add access control lists.
People should be able to make tools that can help you manage the repository. For example to delete a page. (I wonder what happens when you do cvs delete and someone tries to recreate the page?)
Also can you create the page WorkingTheWayBack??
Finally: If you are using CVS and don't want to risk corrupting your repository, or intermingle wiki with other stuff here are the steps to use another repository ( and not have to screw aroung with CVSROOT ).
PPS Sorry for the messiness of my contribution. I will clean it up tonight.
What's the difference between this page and http://c2.com/cgi/wikibase?CvWiki?