** 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.? [MHo] 2014-06-13: Sorry, I overlooked mkdb, mklocal, mkconfig and the like. Now I fight against === The Wiki is currently in Maintenance Mode No new edits can be accepted at the moment. Reason: no such table: pages_content_fts === By looking at the sourcecode or showing help I found that I need to call wikidb xyz mkfts 1 in addition. ok. [JOB] 2014-11-15: mkfts command executes the following statements on the database: ====== DROP TABLE pages_content_fts; CREATE VIRTUAL TABLE pages_content_fts USING fts4(id,name,content); INSERT INTO pages_content_fts SELECT a.id, a.name, b.content FROM pages a, pages_content b WHERE a.id = b.id; ====== ---- '''[JOB] - 2014-11-18 11:08:12''' ***Problems with wubwikit as of now:*** Scenario: Running ActiveTcl on Mac OSX 10.9.5 from a brand new installation, Using teacup to install dependencies such as: ====== sudo teacup install sqlite3 sudo teacup install tdbc sudo teacup install tdbc::sqlite3 ====== Executing wish to launch wubwikit with an already existing database file: ====== #! /bin/sh TCLKIT_EXE=wish8.6 WUB_WIKIT=./wubwikit20120502/main.tcl WIKIT_DB=./db/my_wikit.tkd $TCLKIT_EXE $WUB_WIKIT local ./wub_local.tcl config ./wub_config.tcl wikidb $WIKIT_DB ====== Versions used: Tcl/Tk 8.6.2 sqlite3: 3.8.6 / tdbc 1.0.0 wubwikit: 2012-05-02 ***Search funktion fails:*** Launching the browser showing the wiki works so far, browsing the pages, editing, ... operates as usually. Unfortunately, the new search function (sqlite FTS) does not work any more! Is this problem software related, do i somehow need to migrate my sqlite database file or is it just a bug in the actual wikiwub distribution file? Any suggestions - need some help. <> Wikit