aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorjoey <joey@0fa5a96a-9a0e-0410-b3b2-a0fd24251071>2006-09-18 20:53:17 +0000
committerjoey <joey@0fa5a96a-9a0e-0410-b3b2-a0fd24251071>2006-09-18 20:53:17 +0000
commit62e1a2ceed6d99e3606d81effaa71e009dbeb121 (patch)
treed14ed53461e14be94a94e9752ba7e22b199ae62e
parentf276e42430006baf6a97889b899d4de399ae5310 (diff)
downloadikiwiki-62e1a2ceed6d99e3606d81effaa71e009dbeb121.tar
ikiwiki-62e1a2ceed6d99e3606d81effaa71e009dbeb121.tar.gz
estseek patch (slightly altered) and other replies
-rw-r--r--IkiWiki/Plugin/search.pm13
-rw-r--r--debian/changelog4
-rw-r--r--doc/ikiwiki.setup8
-rw-r--r--doc/patchqueue/various_fixes.mdwn54
-rw-r--r--doc/plugins/search.mdwn3
5 files changed, 31 insertions, 51 deletions
diff --git a/IkiWiki/Plugin/search.pm b/IkiWiki/Plugin/search.pm
index 2d8c3d4e1..5a4dfd491 100644
--- a/IkiWiki/Plugin/search.pm
+++ b/IkiWiki/Plugin/search.pm
@@ -7,6 +7,8 @@ use strict;
use IkiWiki;
sub import { #{{{
+ hook(type => "getopt", id => "hyperestraier",
+ call => \&getopt);
hook(type => "checkconfig", id => "hyperestraier",
call => \&checkconfig);
hook(type => "pagetemplate", id => "hyperestraier",
@@ -19,6 +21,12 @@ sub import { #{{{
call => \&cgi);
} # }}}
+sub getopt () { #{{{
+ eval q{use Getopt::Long};
+ Getopt::Long::Configure('pass_through');
+ GetOptions("estseek=s" => \$config{estseek});
+} #}}}
+
sub checkconfig () { #{{{
foreach my $required (qw(url cgiurl)) {
if (! length $config{$required}) {
@@ -99,8 +107,9 @@ sub estcfg () { #{{{
close TEMPLATE;
$cgi="$estdir/".IkiWiki::basename($config{cgiurl});
unlink($cgi);
- symlink("/usr/lib/estraier/estseek.cgi", $cgi) ||
- error("symlink $cgi: $!");
+ my $estseek = defined $config{estseek} ? $config{estseek} : '/usr/lib/estraier/estseek.cgi';
+ symlink($estseek, $cgi) ||
+ error("symlink $estseek $cgi: $!");
} # }}}
sub estcmd ($;@) { #{{{
diff --git a/debian/changelog b/debian/changelog
index 73ad45ea1..da85371b7 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -50,8 +50,10 @@ ikiwiki (1.27) UNRELEASED; urgency=low
* chomp trailing newline at the end of templates read in by the template
plugin, to allow use of the template preprocessor directive in
whitespace-sensative situations. Closes: #387073
+ * Patch from James Westby to make the location of the estseek.cgi script
+ configurable.
- -- Joey Hess <joeyh@debian.org> Mon, 18 Sep 2006 15:26:01 -0400
+ -- Joey Hess <joeyh@debian.org> Mon, 18 Sep 2006 16:43:10 -0400
ikiwiki (1.26) unstable; urgency=low
diff --git a/doc/ikiwiki.setup b/doc/ikiwiki.setup
index ab5c9eb35..a9d9414c0 100644
--- a/doc/ikiwiki.setup
+++ b/doc/ikiwiki.setup
@@ -96,4 +96,12 @@ use IkiWiki::Setup::Standard {
# sidebar map rst toc linkmap}],
# If you want to disable any of the default plugins, list them here.
#disable_plugins => [qw{inline htmlscrubber}],
+
+ # For use with the tag plugin, make all tags be located under a
+ # base page.
+ #tagbase => "tag".
+
+ # For use with the search plugin if your estseek.cgi is located
+ # somewhere else.
+ #estseek => "/usr/lib/estraier/estseek.cgi",
}
diff --git a/doc/patchqueue/various_fixes.mdwn b/doc/patchqueue/various_fixes.mdwn
index 81cb6c592..176b30a21 100644
--- a/doc/patchqueue/various_fixes.mdwn
+++ b/doc/patchqueue/various_fixes.mdwn
@@ -81,28 +81,9 @@ much help I'm afraid.
>> to adjust permissions on my cgi-dir. This seems to be the root of the
>> problem.
-----
-
- --- IkiWiki/Plugin/search.pm
- +++ IkiWiki/Plugin/search.pm
- @@ -99,7 +99,7 @@
- close TEMPLATE;
- $cgi="$estdir/".IkiWiki::basename($config{cgiurl});
- unlink($cgi);
- - symlink("/usr/lib/estraier/estseek.cgi", $cgi) ||
- + symlink("/usr/local/libexec/estseek.cgi", $cgi) ||
- error("symlink $cgi: $!");
- } # }}}
-
-obviously I'm not asking you to include this patch, but it would
-be good if this sort of thing was configurable (at build time?). I can
-have a go if you like, but I'm not sure what would be acceptable to
-you.
-
-> This should be made configurable via an option in %IkiWiki::config,
-> the search plugin could register a getopt hook to handle it. --[[Joey]]
-
->> Like this? <http://jameswestby.net/scratch/estseek.diff>
+>>> Ah, I think it's better to keep the permissions of the repository
+>>> and source directory sane (755) and make the cgi suid to your user,
+>>> which is how it's designed to work.
----
@@ -178,29 +159,6 @@ informative if that code path is ever taken, but I hope that it never is.
>> <http://mail-archives.apache.org/mod_mbox/spamassassin-dev/200509.mbox/%3C3838.431C7D9B.5F152B8F.dev@spamassassin.apache.org%3E>
>> is what pointed me to find the problem/workaround.
-
-
-----
-
-As for backports there is a problem with the sarge version of libcgi-session-perl
-and my sslcookie patch (complaints about a missing include file auto/CGI/Session/cookie.al IIRC).
-This file does not and has not ever existed, but it appears to be fixed in
-the backport of libcgi-session-perl that I did. That puts the dependency
-required at somewhere between 3.95-2 and 4.14-1. This could then be added
-to debian/control. It would mean one more package to backport, but stops the
-bug if anyone actually uses my sslcookie option except me.
-
-> May as well, done --[[Joey]]
-
->> Thanks.
-
-As for backports I managed with
-
- * ikiwiki_1.26
- * libcgi-formbuilder-perl_3.03.01-1
- * libcgi-session-perl_4.14-1
-
-backported to sarge, with bpo in sources.list. This only covers Depends: though,
-for instance hyperestraier needs to be backported, which I haven't got
-round to yet as there is a chain to do.
-
+>>> Given that verification, an untaint contingent on the value of $^V
+>>> sounds reasonable and I'd accept such a patch. I'm not quite sure which
+>>> version(s) of perl it should check for.
diff --git a/doc/plugins/search.mdwn b/doc/plugins/search.mdwn
index b9875ff85..5b5325371 100644
--- a/doc/plugins/search.mdwn
+++ b/doc/plugins/search.mdwn
@@ -7,3 +7,6 @@ full text search to ikiwiki, using the [[HyperEstraier]] engine.
It's possible to configure HyperEstraier via one of ikiwiki's
[[templates]], but for most users, no configuration should be needed aside
from enabling the plugin.
+
+This plugin has a configuration option. To change the path to estseek.cgi,
+set `--estseek=/path/to/estseek.cgi`