search: generate configuration files once only when rebuilding
[ikiwiki.git] / IkiWiki / Plugin / search.pm
index 8fc2f3724c9f4666e675aeaa79bc43e839230792..7b41bbde9152da89dad16937a9e0bca3f122f933 100644 (file)
@@ -194,14 +194,16 @@ sub xapiandb () { #{{{
        return $db;
 } #}}}
 
+my $setup;
 sub setupfiles () { #{{{
-       if (! -e $config{wikistatedir}."/xapian" || $config{rebuild}) {
+       if (! defined $setup and ! -e $config{wikistatedir}."/xapian" || $config{rebuild}) {
                writefile("omega.conf", $config{wikistatedir}."/xapian",
                        "database_dir .\n".
                        "template_dir ./templates\n");
                writefile("query", $config{wikistatedir}."/xapian/templates",
                        IkiWiki::misctemplate(gettext("search"),
                                readfile(IkiWiki::template_file("searchquery.tmpl"))));
+               $setup=1;
        }
 } #}}}