eca2dbe67f
In order to support translated basewiki and other underlays, we need support for mo files in underlays. The code did not allow this before, because if a mo file was in an underlay, then it might try to update it, and its pot, and write to the underlay, which is guaranteed to either fail due to permissions, or be undesirable. To fix, my approach is to just detect if a mo or pot file that is about to be updated is in an underlay, and skip updating it. This seems to work well: - If the mo is out of date in the underlay, it won't get updated, but this would probably be due to a problem in the underlay, or more likely, the wiki is being rebuilt and so it *thinks* the mo is out of date, but it's really not (and it would be a waste of time to rebuild it anyway). - If a page from the basewiki is edited, it is saved to the srcdir, which causes generation of an updated mo and pot also in the srcdir; the underlay stops being used for that page, and everything seems to work. Note that I am not including an underlay search directory for pot files. They *seem* to be unnecessary for the underlay, since the mo files in there never need to be updated. |
||
---|---|---|
Bundle | ||
IkiWiki | ||
cpan | ||
debian | ||
doc | ||
plugins | ||
po | ||
t | ||
templates | ||
underlays | ||
.gitignore | ||
.perlcriticrc | ||
CHANGELOG | ||
IkiWiki.pm | ||
Makefile.PL | ||
NEWS | ||
README | ||
auto-blog.setup | ||
auto.setup | ||
docwiki.setup | ||
gitremotes | ||
ikiwiki-makerepo | ||
ikiwiki-mass-rebuild | ||
ikiwiki-transition | ||
ikiwiki-update-wikilist | ||
ikiwiki-w3m.cgi | ||
ikiwiki.in | ||
mdwn2man | ||
pm_filter | ||
wikilist |
README
Use ./Makefile.PL to generate a Makefile, "make" will build the documentation wiki and a man page, and "make install" will install ikiwiki. All other documentation is in the ikiwiki documentation wiki, which is also available online at <http://ikiwiki.info/> A few special variables you can set while using the Makefile: PROFILE=1 turns on profiling for the build of the doc wiki. (Uses Devel::Profile) NOTAINT=0 turns on the taint flag in the ikiwiki program. (Not recommended unless your perl is less buggy than mine -- see http://bugs.debian.org/411786) There are also other variables supported by MakeMaker, including PREFIX, INSTALL_BASE, and DESTDIR. See ExtUtils::MakeMaker(3). In particular, INSTALL_BASE is very useful if you want to install ikiwiki to some other location, as it configures it to see the perl libraries there. See `doc/tips/nearlyfreespeech.mdwn` for an example of using this to install ikiwiki and its dependencies in a home directory.