response
[ikiwiki] / doc / index / discussion.mdwn
1 Seems like there should be a page for you to post your thoughts about
2 ikiwiki, both pro and con, anything that didn't work, ideas, or whatever.
3 Do so here..
4
5 Note that for more formal bug reports or todo items, you can also edit the
6 [[bugs]] and [[todo]] pages.
7
8 [[!toc ]]
9
10 # Installation/Setup questions
11
12 Ikiwiki creates a .ikiwiki directory in my wikiwc working directory. Should I
13 "svn add .ikiwiki" or add it to svn:ignore?
14
15 > `.ikiwiki` is used by ikiwiki to store internal state. You can add it to
16 > svn:ignore. --[[Joey]]
17 > > Thanks a lot.
18
19 Is there an easy way to log via e-mail to some webmaster address, instead
20 of via syslog?
21
22 > Not sure why you'd want to do that, but couldn't you use a tool like
23 > logwatch to mail selected lines from the syslog? --[[Joey]]
24
25 > > The reason is that I'm not logged in on the web server regularly to
26 > > check the log files. I'll see whether I can install a logwatch instance.
27
28 I'm trying to install from scratch on a CentOS 4.6 system.  I installed perl 5.8.8 from source and then added all the required modules via CPAN.  When I build ikiwiki from the tarball, I get this message:
29
30     rendering todo/calendar_--_archive_browsing_via_a_calendar_frontend.mdwn
31     *** glibc detected *** double free or corruption (!prev): 0x0922e478 ***
32     make: *** [extra_build] Aborted
33
34 I'm kind of at a loss how to track this down or work around it.  Any suggestions? --Monty
35
36 > All I can tell you is that it looks like a problem with your C library or
37 > perl. Little perl programs like ikiwiki should only be able to trigger
38 > such bugs, not contain them. :-) Sorry I can't be of more help.
39 > --[[Joey]]
40
41 > I had a similar problem after upgrading to the latest version of
42 > Text::Markdown from CPAN.  You might try either looking for a Markdown
43 > package for CentOS or using the latest version of John Gruber's
44 > Markdown.pl:
45 > <http://daringfireball.net/projects/downloads/Markdown_1.0.2b8.tbz>
46 > --[[JasonBlevins]], April 1, 2008 18:22 EDT
47
48 >> Unfortunately I couldn't find a CentOS package for markdown, and I
49 >> couldn't quite figure out how to use John Gruber's version instead.
50 >> I tried copying it to site_perl, etc., but the build doesn't pick 
51 >> it up.  For now I can just play with it on my Ubuntu laptop for which
52 >> the debian package installed flawlessly.  I'll probably wait for an
53 >> updated version of Markdown to see if this is fixed in the future.
54 >> --Monty
55
56 >I suggest that you pull an older version of Text::Markdown from CPAN. I am using <http://backpan.perl.org/authors/id/B/BO/BOBTFISH/Text-Markdown-1.0.5.tar.gz> and that works just fine.
57 >There is a step change in version and size between this version (dated 11Jan2008) and the next version (1.0.12 dated 18Feb2008). I shall have a little look to see why, in due course.
58 >Ubuntu Hardy Heron has a debian package now, but that does not work either.
59 > --Dirk 22Apr2008
60
61 > This might be related to [Text::Markdown bug #37297](http://rt.cpan.org/Public/Bug/Display.html?id=37297).--ChapmanFlack 9Jul2008
62
63 ----
64
65 # Installation of selected docs (html)
66
67 The latest release has around 560 files (over 2MB) in html.
68
69 Any suggestions or ideas on limiting what html is installed?
70
71 For example, I don't see value in every ikiwiki install out there to also install personal "users" ikiwiki pages.
72
73 For now I copy ikiwiki.setup. And then use pax with -L switch to copy the targets of the symlinks of the basewiki.
74
75 I was thinking of making a list of desired documents from the html directory to install.
76
77 --JeremyReed
78
79 > You don't need any of them, unless you want to read ikiwiki's docs locally.
80
81 > I don't understand why you're installing the basewiki files manually;
82 > ikiwiki has a Makefile that will do this for you. --[[Joey]]
83
84 >> The Makefile's install doesn't do what I want so I use different installer for it.
85 >> It assumes wrong location for man pages for me. (And it should consider using INSTALLVENDORMAN1DIR and
86 >> MAN1EXT but I don't know about section 8 since I don't know of perl value for that.)
87 >> I don't want w3m cgi installed; it is optional for my package.
88 >> I will just patch for that instead of using my own installer.
89 >> Note: I am working on the pkgsrc package build specification for this. This is for creating
90 >> packages for NetBSD, DragonFly and other systems that use pkgsrc package system.
91 >> --JeremyReed
92
93 # Installation as non-root user
94
95 I'd like to install ikiwiki as a non-root user. I can plow through getting all the 
96 perl dependencies installed because that's well documented in the perl world,
97 but I don't know how to tell ikiwiki to install somewhere other than / --BrianWilson
98
99 > Checkout the tips section for [[tips/DreamHost]].  It should do the trick. --MattReynolds
100
101 ----
102
103 # Upgrade steps
104
105 I upgrades from 1.40  to 2.6.1. I ran "ikiwiki --setup" using my existing ikiwiki.setup configuration.
106 I had many errors like:
107
108     /home/bsdwiki/www/wiki/wikilink/index.html independently created, not overwriting with version from wikilink
109     BEGIN failed--compilation aborted at (eval 5) line 129.
110
111 and:
112
113     failed renaming /home/bsdwiki/www/wiki/smileys.ikiwiki-new to /home/bsdwiki/www/wiki/smileys: Is a directory
114     BEGIN failed--compilation aborted at (eval 5) line 129.
115
116 Probably about six errors like this. I worked around this by removing the files and directories it complained about.
117 Finally it finished.
118
119 > As of version 2.0, ikiwiki enables usedirs by default. See
120 > [[tips/switching_to_usedirs]] for details. --[[Joey]]
121
122 >> I read the config wrong. I was thinking that it showed the defaults even though commented out
123 >> (like ssh configs do). I fixed that part. --JeremyReed
124
125 My next problem was that ikiwiki start letting me edit without any password authentication. It used to prompt
126 me for a password but now just goes right into the "editing" mode.
127 The release notes for 2.0 say password auth is still on by default.
128
129 > It sounds like you have the anonok plugin enabled?
130
131 >> Where is the default documented? My config doesn't have it uncommented.
132
133 The third problem is that when editing my textbox is empty -- no content.
134
135 This is using my custom rcs.pm which has been used thousands of times.
136
137 > Have you rebuilt the cgi wrapper since you upgraded ikiwiki? AFAIK I
138 > fixed a bug that could result in the edit box always being empty back in
139 > version 2.3. The only other way it could happen is if ikiwiki does not
140 > have saved state about the page that it's editing (in .ikiwiki/index).
141
142 >> Rebuilt it several times. Now that I think of it, I think my early problem of having
143 >> no content in the textbox was before I rebuilt the cgi. And after I rebuilt the whole webpage was empty.
144
145 Now I regenerated my ikiwiki.cgi again (no change to my configuration,
146 and I just get an empty HTML page when attempting editing or "create".
147
148 > If the page is completly empty then ikiwiki is crashing before it can
149 > output anything, though this seems unlikely. Check the webserver logs.
150
151 Now I see it created directories for my data. I fixed that by setting 
152 usedirs (I see that is in the release notes for 2.0) and rerunning ikiwiki --setup
153 but I still have empty pages for editing (no textbox no html at all).
154
155 > Is IkiWiki crashing? If so, it would probably leave error text in the apache logs. --[[TaylorKillian]]
156
157 >> Not using apache. Nothing useful in logs other thn the HTTP return codes are "0" and bytes is "-"
158 >> on the empty ikiwiki.cgi output (should say " 200 " followed by bytes).
159
160 >>> You need to either figure out what your web server does with stderr
161 >>> from cgi programs, or run ikiwiki.cgi at the command line with an
162 >>> appropriate environment so it thinks it's being called from a web
163 >>> server, so you can see how it's failing. --[[Joey]]
164
165 (I am posting this now, but will do some research and post some more.)
166
167 Is there any webpage with upgrade steps?
168
169 > Users are expected to read [[news]], which points out any incompatible
170 > changes or cases where manual action is needed.
171
172 >> I read it but read the usedirs option wrong :(.
173 >> Also it appears to be missing the news from between 1.40 to 2.0 unless they dont' exist.
174 >> If they do exist maybe they have release notes I need?
175
176 >>> All the old ones are in the NEWS file. --[[Joey]]
177
178 --JeremyReed
179
180 My followup: I used a new ikiwiki.setup based on the latest version. But no changes for me.
181
182 Also I forgot to mention that do=recentchanges works good for me. It uses my 
183 rcs_recentchanges in my rcs perl module.
184
185 The do=prefs does nothing though -- just a blank webpage.
186
187 > You need to figure out why ikiwiki is crashing. The webserver logs should
188 > tell you.
189
190 I also set verbose => 1 and running ikiwiki --setup was verbose, but no changes in running CGI.
191 I was hoping for some output.
192
193 I am guessing that my rcs perl module stopped working on the upgrade. I didn't notice any release notes
194 on changes to revision control modules. Has something changed? I will also look.
195
196 > No, the rcs interface has not needed to change in a long time. Also,
197 > nothing is done with the rcs for do=prefs.
198
199 >> Thanks. I also checked differences between 1.40 Rcs plugins and didn't notice anything significant.
200
201 --JeremyReed
202
203 Another Followup: I created a new ikiwiki configuration and did the --setup to 
204 create an entirely different website. I have same problem there. No prompt for password
205 and empty webpage when using the cgi.
206 I never upgraded any perl modules so maybe a new perl module is required but I don't see any errors so I don't know.
207
208 The only errors I see when building and installing ikiwiki are:
209
210     Can't exec "otl2html": No such file or directory at IkiWiki/Plugin/otl.pm line 66.
211
212     gettext 0.14 too old, not updating the pot file
213
214 I don't use GNU gettext on here.
215
216 I may need to revert back to my old ikiwiki install which has been used to thousands of times (with around
217 1000 rcs commits via ikiwiki).
218
219 --JeremyReed
220
221 I downgraded to version 1.40 (that was what I had before I wrote wrong above).
222 Now ikiwiki is working for me again (but using 1.40). I shouldn't have tested on production system :)
223
224 --JeremyReed
225
226 I am back. On a different system, I installed ikiwiki 2.6.1. Same problem -- blank CGI webpage.
227
228 So I manually ran with:
229
230     REQUEST_METHOD=GET QUERY_STRING='do=create&page=jcr' kiwiki.cgi
231
232 And clearly saw the error:
233
234     [IkiWiki::main] Fatal: Bad template engine CGI::FormBuilder::Template::div: Can't locate CGI/FormBuilder/Template/div.pm
235
236 So I found my version was too old and 3.05 is the first to provide "Div" support. I upgraded my p5-CGI-FormBuilder to 3.0501.
237 And ikiwiki CGI started working for me.
238
239 The Ikiwiki docs about this requirement got removed in Revision 4367. There should be a page that lists the requirements.
240 (I guess I could have used the debian/control file.)
241
242 > There is a page, [[install]] documents that 3.05 is needed.
243
244 >> Sorry, I missed that. With hundreds of wikipages it is hard to read all of them.
245 >> I am updating the download page now to link to it.
246
247 I am now using ikiwiki 2.6.1 on my testing system.
248
249 --JeremyReed
250
251 ----
252 # Excellent - how do I translate a TWiki site?
253
254 I just discovered ikiwiki quite by chance, I was looking for a console/terminal
255 menu system and found pdmenu.  So pdmenu brought me to here and I've found ikiwiki!
256 It looks as if it's just what I've been wanting for a long time.  I wanted something
257 to create mostly text web pages which, as far as possible, have source which is human 
258 readable or at least in a standard format.  ikiwiki does this twice over by using 
259 markdown for the source and producing static HTML from it.
260
261 I'm currently using TWiki and have a fair number of pages in that format, does
262 anyone have any bright ideas for translating?  I can knock up awk scripts fairly
263 easily, perl is possible (but I'm not strong in perl).
264
265 > Let us know if you come up with something to transition from the other
266 > format. Another option would be writing a ikiwiki plugin to support the
267 > TWiki format. --[[Joey]]
268
269 > Jamey Sharp and I have a set of scripts in progress to convert other wikis to ikiwiki, including history, so that we can migrate a few of our wikis.  We already have support for migrating MoinMoin wikis to ikiwiki, including conversion of the entire history to Git.  We used this to convert the [XCB wiki](http://xcb.freedesktop.org/wiki/) to ikiwiki; until we finalize the conversion and put the new wiki in place of the old one, you can browse the converted result at <http://xcb.freedesktop.org/ikiwiki>.  We already plan to add support for TWiki (including history, since you can just run parsecvs on the TWiki RCS files to get Git), so that we can convert the [Portland State Aerospace Society wiki](http://psas.pdx.edu) (currently in Moin, but with much of its history in TWiki, and with many of its pages still in TWiki format using Jamey's TWiki format for MoinMoin).
270 >
271 > Our scripts convert by way of HTML, using portions of the source wiki's code to render as HTML (with some additional code to do things like translate MoinMoin's `\[[TableOfContents]]` to ikiwiki's `\[[!toc ]]`), and then using a modified [[!cpan HTML::WikiConverter]] to turn this into markdown and ikiwiki.  This produces quite satisfactory results, apart from things that don't have any markdown equivalent and thus remain HTML, such as tables and definition lists.  Conversion of the history occurs by first using another script we wrote to translate MoinMoin history to Git, then using our git-map script to map a transformation over the Git history.
272 >
273 > We will post the scripts as soon as we have them complete enough to convert our wikis.
274 >
275 > -- [[JoshTriplett]]
276
277 >> Thanks for an excellent Xmas present, I will appreciate the additional 
278 >> users this will help switch to ikiwiki! --[[Joey]]
279
280
281 >> Sounds great indeed. Learning from [here](http://www.bddebian.com/~wiki/AboutTheTWikiToIkiwikiConversion/) that HTML::WikiConverter needed for your conversion was not up-to-date on Debian I have now done an unofficial package, including your proposed Markdown patches, apt-get'able at <pre>deb http://debian.jones.dk/ sid wikitools</pre>
282 >> -- [[JonasSmedegaard]]
283
284
285 >>I see the "We will post the scripts ...." was committed about a year ago.  A current site search for "Moin" does not turn them up.  Any chance of an appearance in the near (end of year) future?
286 >>
287 >> -- [[MichaelRasmussen]]
288
289 >>> It appears the scripts were never posted?  I recently imported my Mediawiki site into Iki.  If it helps, my notes are here: <http://iki.u32.net/Mediawiki_Conversion> --[[sabr]]
290
291 >>>>> The scripts have been posted now, see [[joshtriplett]]'s user page, 
292 >>>>> and I've pulled together all ways I can find to [[convert]] other
293 >>>>> systems into ikiwiki. --[[Joey]]
294
295 ----
296
297 # LaTeX support?
298
299 Moved to [[todo/latex]] --[[Joey]]
300
301 ----
302
303 # Using with CVS?
304
305 Moved to a [[todo_item|todo/CVS_backend]]. --[[JoshTriplett]]
306
307 ----
308
309 # Show differences before saving page?
310
311 Moved to the existing [[todo_item|todo/preview_changes]]. --[[JoshTriplett]]
312
313 ----
314
315 # Max submit size?
316
317 Any setting for limiting how many kilobytes can be submitted via the "edit" form?
318 -- [[JeremyReed]]
319
320 >>> See [[todo/fileupload]] for an idea on limiting page size. --[[Joey]]
321
322 ----
323
324 # Editing the style sheet.
325
326 It would be nice to be able to edit the stylesheet by means of the cgi.  Or is this possible?  I wasn't able to achieve it.
327 Ok, that's my last 2 cents for a while. --[Mazirian](http://mazirian.com)
328
329 > I don't support editing it, but if/when ikiwiki gets [[todo/fileupload]] support,
330 > it'll be possible to upload a style sheet. (If .css is in the allowed
331 > extensions list.. no idea how safe that would be, a style sheet is
332 > probably a great place to put XSS attacks and evil javascript that would
333 > be filtered out of any regular page in ikiwiki). --[[Joey]]
334
335 >> I hadn't thought of that at all.  It's a common feature and one I've
336 >> relied on safely, because the wikis I am maintaining at the moment
337 >> are all private and restricted to trusted users. Given that the whole
338 >> point of ikiwiki is to be able to access and edit via the shell as
339 >> well as the web, I suppose the features doesn't add a lot.  By the
340 >> way, the w3m mode is brilliant.  I haven't tried it yet, but the idea
341 >> is great.
342
343 ----
344
345 # Should not create an existing page
346
347 This might be a bug, but will discuss it here first.
348 Clicking on an old "?" or going to a create link but new Markdown content exists, should not go into "create" mode, but should do a regular "edit".
349
350 > I belive that currently it does a redirect to the new static web page.
351 > At least that's the intent of the code. --[[Joey]]
352
353 >> Try at your site: `?page=discussion&from=index&do=create`
354 >> It brings up an empty textarea to start a new webpage -- even though it already exists here. --reed
355
356 >>> Ah, right. Notice that the resulting form allows saving the page as
357 >>> discussion, or users/discussion, but not index/discussion, since this
358 >>> page already exists. If all the pages existed, it would do the redirect
359 >>> thing. --[[Joey]]
360
361 ----
362
363 # Spaces in WikiLinks?
364
365 Hello Joey,
366
367 I've just switched from ikiwiki 2.0 to ikiwiki 2.2 and I'm really surprised
368 that I can't use the spaces in WikiLinks. Could you please tell me why the spaces
369 aren't allowed in WikiLinks now?
370
371 My best regards,
372
373 --[[PaweB|ptecza]]
374
375 > See [[bugs/Spaces_in_link_text_for_ikiwiki_links]]
376
377 ----
378
379 # Build in OpenSolaris?
380
381 Moved to [[bugs/build_in_opensolaris]] --[[Joey]]
382
383 ----
384
385 # Various ways to use Subversion with ikiwiki
386
387 I'm playing around with various ways that I can use subversion with ikiwiki.
388
389 * Is it possible to have ikiwiki point to a subversion repository which is on a different server?  The basic checkin/checkout functionality seems to work but there doesn't seem to be any way to make the post-commit hook work for a non-local server?
390
391 > This is difficult to do since ikiwiki's post-commit wrapper expects to
392 > run on a machine that contains both the svn repository and the .ikiwiki
393 > state directory. However, with recent versions of ikiwiki, you can get
394 > away without running the post-commit wrapper on commit, and all you lose
395 > is the ability to send commit notification emails.
396
397 > (And now that [[recentchanges]] includes rss, you can just subscribe to
398 > that, no need to worry about commit notification emails anymore.)
399
400 * Is it possible / sensible to have ikiwiki share a subversion repository with other data (either completely unrelated files or another ikiwiki instance)?  This works in part but again the post-commit hook seems problematic.
401
402 --[[AdamShand]]
403
404 > Sure, see ikiwiki's subversion repository for example of non-wiki files
405 > in the same repo. If you have two wikis in one repository, you will need
406 > to write a post-commit script that calls the post-commit wrappers for each
407 > wiki.
408
409 ----
410
411 # Regex for Valid Characters in Filenames
412
413 I'm sure that this is documented somewhere but I've ransacked the wiki and I can't find it.  :-(  What are the allowed characters in an ikiwiki page name?  I'm writing a simple script to make updating my blog easier and need to filter invalid characters (so far I've found that # and , aren't allowed ;-)).  Thanks for any pointers.  -- [[AdamShand]]
414
415 > The default `wiki_file_regexp` matches filenames containing only
416 > `[-[:alnum:]_.:/+]`
417
418 > The titlepage() function will convert freeform text to a valid
419 > page name. See [[todo/should_use_a_standard_encoding_for_utf_chars_in_filenames]]
420 > for an example. --[[Joey]]
421
422 >> Perfect, thanks! 
423 >>
424 >> In the end I decided that I didn't need any special characters in filenames and replaced everything but alphanumeric characters with underscores.  In addition to replacing bad characters I also collapse multiple underscores into a single one, and strip off trailing and leading underscores to make tidy filenames.  If it's useful to anybody else here's a sed example:
425 >>
426 >>     # echo "++ Bad: ~@#$%^&*()_=}{[];,? Iki: +_-:./ Num: 65.5 ++" | sed -e 's/[^A-Za-z0-9_]/_/g' -e 's/__*/_/g' -e 's/^_//g' -e 's/_$//g'
427 >>     Bad_Iki_Num_65_5
428 >>
429 >>--[[AdamShand]]
430
431 # Upgrade steps from RecentChanges CGI to static page?
432
433 Where are the upgrade steps for RecentChanges change from CGI to static feed?
434 I run multiple ikiwiki-powered sites on multiple servers, but today I just upgraded one to 2.32.3.
435 Please have a look at
436 <http://bsdwiki.reedmedia.net/wiki/recentchanges.html>
437 Any suggestions?
438
439 > There are no upgrade steps required. It does look like you need to enable
440 > the meta plugin to get a good recentchanges page though.. --[[Joey]]
441
442 # News site where articles are submitted and then reviewed before posting?
443
444 I am considering moving a news site to Ikiwiki. I am hoping that Ikiwiki has a feature where anonymous posters can submit a form that moderators can review and then accept for it to be posted on a news webpage (like front page of the website).
445
446 > Well, you can have one blog that contains unreviewed articles, and
447 > moderators can then add a tag that makes the article show up in the main
448 > news feed. There's nothing stopping someone submitting an article
449 > pre-tagged though. If you absolutely need to lock that down, you could
450 > have one blog with unreviewed articles in one subdirectory, and reviewers
451 > then move the file over to another subdirectory when they're ready to
452 > publish it. (This second subdirectory would be locked to prevent others
453 > from writing to it.) --[[Joey]]
454
455 Also it would be good if the news page would keep maybe just the latest 10 entries with links to an archive that make it easy to browse to old entries by date. (Could have over a thousand news articles.)
456
457 > The inline plugin allows setting up things like this.
458
459 Plus users be able to post feedback to news items. If anonymous, they must be approved first. I'd prefer to not use normal "wiki" editor for feedback.
460
461 Any thoughts or examples on this? Any links to examples of news sites or blogs with outside feedback using ikiwiki?
462
463 Thanks --[[JeremyReed]]
464