** Summary ** '''[https://code.google.com/p/wubwikit/%|%wubwikit]''' bundles together [Wub] and [http://code.google.com/p/wikitcl/source/checkout%|%wikit] ** Description ** ** See Also ** [Wiki News]: announcements and such [this wikit]: old, obsolete problem list for ** Obtaining ** [https://code.google.com/p/wubwikit/downloads/detail?name=wubwikit20120502.zip%|%wubwikit20120502.zip]: the most recent release of wubwikit [http://wub.googlecode.com/svn/trunk/Install.tcl%|%install.tcl]: a download/install script for wub [wiki database for offline use]: has "wubwikit.kit" that is all the pieces in one file. Unfortunately, as of 2013-04, wbuwikit.kit is not up-to-date [http://code.google.com/p/wikitcl/source%|%wikit repository]: [http://code.google.com/p/wub/source%|%wub repository]: ** Building ** [RZ]: To build a standalone wubwikit using [kbs] get kbs.tcl and run: ======none ./kbs.tcl -r install wubwikit ====== [[Fill in details about WubWikit, in particular, where to get the application, the differences between wubwikit and the traditional [wikit], etc.]] [MHo] 2014-06-12, another try: ====== D:\home\Hoffmann\Downloads>tclsh kbs.tcl -r install wubwikit === Package eval: wubwikit === Require wubwikit === Require kbskit8.6 wub wikitcl tdbc tcllib1.15 sqlite3.7.15.1 === Require eval: kbskit8.6 === Require kbskit8.6 === Require kbskit0.4 sdx.kit === Require eval: kbskit0.4 === Source Cvs kbskit0.4 === Require error: kbskit0.4 missing sources of package 'kbskit0.4' === Require error: kbskit0.4 Require failed for: kbskit0.4 Error in execution of 'install wubwikit': === Package failed for: kbskit0.4 Require failed for: kbskit0.4 ====== Can someone be so kind to explain the process a little further, or point to an existing wubwikit.kit (Startkit) or wubwikit.exe (Starpack)? ** Questions ** [WikiDbImage question.png] * Does Anyone know how to deal with "templates" (a working example would be great)? Within WubWikit? It's not really designed for that ... no way to specify a place to get the stuff to substitute into a wikit page. Wub has Mason domains which function like tclhttpd templates. * Could not find out how to specify a user defined "docroot" outside the source-tree for customization (with my own css, jQuery, etc...). Configuration file, under Wub section, docroot element. * The "port" command line argument doesn't work as expected, value in the Listener section is not overwritten ? This is a problem that needs to be reported under http://code.google.com/p/wub/issues/list with a more precise problem description. * Is there a possibility to run wikit under apache (cgi mechanism) ? Wikit should (may) still run under Apache. WubWikit won't. Don't know any more. '''Some room for improvement:''' The possibility to upload images to the database is really handy and works quite well. It eliminates the need to specify a full qualified url and thus makes it really easy, to "carry around" wikiwub locally on different computers (running on different OSs). There's just one more thing: * When performing a search, text and (database) images are treated the same way, which messes up the "last modification" page. Maybe this behavior could be improved a bit (search only text / search only for WikiDbImages). ** Misc ** [MHo]: * With the old wiki(t.kit), it was very simple to grab a copy of the starkit, define some simple cgi-wrapper and drive this through [Tclhttpd]. I suppose the new WubWikit only works with [Wub] - as the name says ;-) So, WubWikit never runs as a standalone CGI-process, is it right? [MHo]: Will there be ''binaries'' available sometimes in the future? [LV]: Anyone have a ''recipe'' for bringing up and running this latest generation of the wikit? Anyone created a starkit with the necessary code in it? * Is a downloadable copy of the wiki pages theirselves available, such as ''wikit.gz''?? [LV]: If you mean a downloadable copy of the wiki pages, I don't think this is available yet. If you mean a downloadable copy of the executing code, see CMcC's comments. [[This comment is obsolete now - a compressed copy of the page file is now available - [wiki database for offline use] ]] [MHo] Yes I mean a copy of the database with the wiki-pages, e.g. to make it offline available or to keep a backup for restauration in case of vandalism... [CMcC]: there's an interesting problem here: the wiki db is currently 95Mb, and clearly it would be a bad thing to allow too-frequent downloads (that's part of what brought the old wiki down - some clown doing multiple uncontrolled downloads - denial of service.) I'm trying to work out what a good policy might be to balance the utility of providing the download while bounding the cost. Here are some policy questions to which I have no good answers: * What if everyone on the wiki wanted a daily db backup? That's about 90Gb/day, won't work. What about hourly? * What if we put a limit on the number of downloads per day? How do we stop one of the daily (hourly?) backup crowd from grabbing one of the slots without requiring login? * Should we require actual login for db downloads? * Could/should we require everyone who downloads the db provide it for others to further download? How would we do that? -- ''[Lars H]: This is exactly the kind of problem [BitTorrent] aims to solve, is it not?'' * How often should a given user be permitted to download a copy of the db? If they are doing it frequently, they're wasting enormous amounts of bandwidth. * Should there be some kind of db delta download? Like RSS like history: ''give me all the pages which have changed since '' [LV]: The primary issue here is a limited resource - your bandwidth. So why not upload the data, compressed, to google, and let people download it from there. That way, the bandwidth issue is no longer yours - you upload to google once every N period (whatever you can afford) and let people get it from google. As for what the db delta - I don't have a need for that, a simple compressed .tkd file is all I need. [jcw] 2007-06-30: The quick solution is to simply delegate: get one or more mirrors in place with a reasonably recent copy (I'd vote for daily). Then you don't have to deal with it. As for delta's: rsync is very effective for this type of data (either via ssh or as rsync server). If you want to go fancier, check out wikit's "-update" command (written before the history got added to the db, btw). [KJN] 2007-11-23: I would occasionally download a copy of the database if I was going somewhere without fast internet access - it was very useful to have this facility. A daily, or even weekly, database dump to Google would be much appreciated. Page histories could be omitted. BitTorrent would also be a good solution. [jdc] 7-dec-2007: I created a [SourceForge] project to download the wiki db: [wiki database for offline use] [RZ] 11-dec-2008: Great work so far. But when I try to use wubwikit with my own *.tkd files I have on the left side the wikit categories. Is there a way to use my own ones? Is it OK to use the commandline argument "cmdport -1" to supress starting of the maintenance socket? This is needed to run more then one instance of the program. [jdc] 11-dec-2008: You can edit the TOC file in directory `docroot`. [RZ] Yes I can. ut then I end with a separate wubwikit.kit for each use case :( May be we can use some special pages. I remember from the old wikit the reserved first nine pages. [jdc] 12-dec-2008: Can you try to use argument `toc file:your_toc_file`. [RZ] 18-dec-2008: Sorry for the delay. I tried it with your suggestion. So far it works in the Tk mode (standalone). In the web server mode it is not working so far. If I find some time I will investigate further:) But thanks for your effort. ---- [LV]: Over on comp.lang.tcl, some details about this version of the wiki are being discussed. In particularly, there are particular URLs which cause specialty functionality to occur. * a URL of the form `http://wiki.tcl.tk/` returns the html for the page http://wiki.tcl.tk/18028 * a URL of the form `http://wiki.tcl.tk/.txt` returns the raw data for the page http://wiki.tcl.tk/18028.txt * a URL of the form `http://wiki.tcl.tk/.code` returns all ''code blocks'' on the page. Code blocks are displayed separated by `### ############################################################` tags. A code block is just one or more lines starting with a space or blocks delimited by `======` lines. http://wiki.tcl.tk/15312.code * a URL of the form `http://wiki.tcl.tk/.str` returns the [wubwiki stream data] for the page http://wiki.tcl.tk/18028.str * a URL of the form `http://wiki.tcl.tk/_/edit?N=` invokes the web text widget with the wiki raw page loaded http://wiki.tcl.tk/_/edit?N=18028 * a URL of the form `http://wiki.tcl.tk/_/history?N=1502` will show the history of that page http://wiki.tcl.tk/_/history?N=18028 * a URL of the form `http://wiki.tcl.tk/_/ref?N=` will show all pages referring to that page http://wiki.tcl.tk/_/ref?N=18028 * a URL of the form `http://wiki.tcl.tk/_/revision?N=&V=` returns the html for a specific version of the page http://wiki.tcl.tk/_/revision?N=18028&V=47 * a URL of the form `http://wiki.tcl.tk/_/revision?N=.txt&V=` returns the raw data for a specific version of the page http://wiki.tcl.tk/_/revision?N=18028.txt&V=47 * a URL of the form `http://wiki.tcl.tk/_/revision?N=.str&V=` returns the [wubwiki stream data] for a specific version of the page http://wiki.tcl.tk/_/revision?N=18028.str&V=47 * a URL of the form `http://wiki.tcl.tk/_/revision?N=&V=&A=1` returns the html of a specific version of the page with detailed info about who made changes and when changes were made to the page annotated (the raw and [wubwiki stream data] for the difference are similarly available): http://wiki.tcl.tk/_/revision?N=18028&V=40&A=1 * a URL of the form `http://wiki.tcl.tk/_/diff?N=&V=&D=` returns the html of the '''line''' differences between the two versions. Use `.txt` to get a diff of the wiki text, and `.str` for the [wubwiki stream data] difference http://wiki.tcl.tk/_/diff?N=18028&V=58&D=57 http://wiki.tcl.tk/_/diff?N=18028.txt&V=58&D=57 http://wiki.tcl.tk/_/diff?N=18028.str&V=58&D=57 * a URL of the form `http://wiki.tcl.tk/_/diff?N=&V=&D=&W=1` returns the html of the '''word''' differences between the two versions (the raw and [wubwiki stream data] for the difference are similarly available) http://wiki.tcl.tk/_/diff?N=18028&V=58&D=57&W=1 http://wiki.tcl.tk/_/diff?N=18028.txt&V=58&D=57&W=1 http://wiki.tcl.tk/_/diff?N=18028.str&V=58&D=57&W=1 ---- [gobvip] 2010-07-19 How to open debug message in wubwikit? ====== Debug.wikit {"debug message"} ;# I want this command print something. How it works? ====== ---- [JOB] 2011-03-30: Script to start wubwikit. Note: We now do have a "config" command line option. Here is the start script: ====== #!/usr/bin/ksh # Script to start wubwikit... # Purpose: # In the hope, to bring some light in the mystery of wub-configuration. # March, 2011, Johann Oberdorfer # -- enjoy! -- # Wub's info page: http://wiki.tcl.tk/20412 # requirements: # - minimum tcl version is 8.6 # - a platform dependent kit version including sqlite3 and tdbc packages # - source *.vfs tree (CVS checkout or similar) + binary including sqlite3 and tbc # for windows ActiveTcl offers a convinient way (installer) # wikiwub configuration: # - PREFIX=`dirname \$0` THIS_PLATFORM=`uname` case ${THIS_PLATFORM} in "Linux") TCLKIT_EXE=./Linux64_kbsvq8.6-gui ;; "Darwin") # ActiveTcl installation: TCLKIT_EXE=/usr/local/bin/wish8.6 ;; *) TCLKIT_EXE=/usr/local/bin/wish8.6 ;; esac WUB_WIKIT=${PREFIX}/wubwikit20110317/main.tcl WIKIT_DB=${PREFIX}/db/my_wiki.tkd # WIKIT_DB=${PREFIX}/db/wikit-20110307.tkd # create a new database / local / configuration file: # ${TCLKIT_EXE} ${WUB_WIKIT} mkdb ${WIKIT_DB} title "My WikiWub" # ${TCLKIT_EXE} ${WUB_WIKIT} mklocal ${PREFIX}/wub_local.tcl # ${TCLKIT_EXE} ${WUB_WIKIT} mkconfig ${PREFIX}/wub_config.tcl # Start the http server... # ------------------------ # see main.tcl for additional configuration... # set TMP=.\tmp echo "------------------------------------" echo "Open URL: httpd://localhost:8090 ..." echo "------------------------------------" # Note: # when specifying a port as argument, # make shure, the Listener section in the wub_config.tcl file # is configured with the the same value - some kind of missbehavior in the current version ?! ${TCLKIT_EXE} ${WUB_WIKIT} \ local ${PREFIX}/wub_local.tcl \ config ${PREFIX}/wub_config.tcl \ wikidb ${WIKIT_DB} \ port 8090 #?????? docroot ${PREFIX}/my_docroot ====== ---- [WikiDbImage question.png] [JOB] 2013-10-24: * I upgraded to the most recent [https://code.google.com/p/wubwikit/downloads/detail?name=wubwikit20120502.zip%|%wbuwikit20120502.zip] code. * Since this release, sqlite FTS is used, which requires a few more tables on the database. The question now is: how do I migrate the database(-file) ? ---- [MHo] 2014-06-12: Just grabbed the latest available wubwikit.kit and started it just specifying wikidb xyz. The following errors appear on the html page: ====== Server Error: no such table: pages_content no such table: pages_content Error Code 'NONE' no such table: pages_content while executing "::oo::Obj73::db eval {SELECT * FROM pages_content WHERE id = :pid} ::oo::Obj102::-resultArray {::namespace inscope ::oo::Obj102 {my RecordResult}}" ("uplevel" body line 1) invoked from within ... ====== xyz was a newly created db. Is there something to be done to fill in the initial pages etc.? <> Wikit