Incomplete, but hopefully helpful for future reference.
Installation done by Richard.
ikiwiki_3.20140227_all.deb, which contains some patch (not yet in a suitable form for upstream) to get rendering of our news pages correct (correct?). Thus, set the package to
dpkg --set-selections. To avoid garbled non-ascii characters in body in web interface, manually
patch /usr/share/perl5/IkiWiki/CGI.pmwith upstream commits feb21ebfacb341fc34244e1c9b8557fd81d1dfc1, and f35c6a97d1837a37879996211bd6f3c8eb356df9 (Debian bug #776181).
libcgi-session-perl libtext-csv-perl libcgi-formbuilder-perl libauthen-passphrase-perl libnet-openid-consumer-perl libterm-readline-gnu-perl libgravatar-url-perl librpc-xml-perl libtext-wikiformat-perl libhighlight-perl perlmagick graphviz texinfo
libemail-send-perl (for my sendmail vs. ikiwiki patch)
E: Package 'libemail-send-perl' has no installation candidate
libsearch-xapian-perl xapian-omega (for ikiwiki's search plugin)
libyaml-perl libyaml-syck-perl (for ikiwiki's YAML field plugins)
libtext-markdown-perl (used instead of libtext-markdown-discount-perl, but the latter still needs to be installed)
Make sure that liblwpx-paranoidagent-perl is not installed; OpenID logins with fail otherwise: no_identity_server: Could not determine ID provider from URL. Issue discovered on 2014-02-28, but unclear since when it did actually occur. Nothing in the apache logs. Not fixed by the update to ikiwiki 3.20140227.
So one can view diffs of the wiki pages, etc.
$ sudo ln -s ~hurd-web/hurd-web.git /var/lib/git/
Enable as per
/usr/share/doc/git-daemon-sysvinit/README.Debian. Also set
http://darnassus.sceen.net/~hurd-web/, and Git access: push to/pull from
$ mkdir hurd-web.git && GIT_DIR=hurd-web.git git init [...]
$ ln -is ../../public_html.workspace.update hurd-web.git/hooks/post-update
For a full rebuild:
$ ./public_html.workspace.generate\ wrappers --rebuild
May want to clean up
~hurd-web/public_html.workspace/.ikiwiki/ before that.
But preserve the
As a user with appropriate permissions, then install the CGI file:
§ sudo mv ~hurd-web/public_html.workspace.cgi /usr/lib/cgi-bin/hurd-web
$ mkdir tmp/backup && chmod 0733 tmp/backup
This file used to contain:
User-agent: * Disallow: /gitweb/ Disallow: /cgi-bin/
... which I've now changed to:
User-agent: * Disallow: /
IRC, freenode, #hurd, 2013-02-09
<tschwinge> We need an httpd (Apache used to work), and ikiwiki and some such stuff. <tschwinge> This has its own git repository. <tschwinge> This was on a separate virtual machine. <tschwinge> Then there was the Git repository on flubber used for people to push to. <tschwinge> Ho -- let me actually try to remember the setup. Has been some years... <braunr> what machine currently hosts the wiki ? <tschwinge> Anyway, there is no requirement for the web server to be on a separate machine; your decision. <tschwinge> braunr: http://www.gnu.org/software/hurd/public_hurd_boxen.html <tschwinge> snubber <tschwinge> That was the web server. <tschwinge> And flubber had the repository for developers to push to. <tschwinge> The repository for people to push to and pull from (used to be on flubber) would be on darnassus now. <tschwinge> braunr: Of course ;-) -- I had some parts of the process documented: http://www.gnu.org/software/hurd/public_hurd_boxen/installation/snubber.html <tschwinge> If both Git repositories are to be on the same machine (darnassus) we might not actually need inetutils-inetd and netcat. <tschwinge> Still trying to figure out what I had done there... ;-) <tschwinge> OK, I again understand the setup. Last been touched in the 2008/2009 timeframe. ;-) <tschwinge> I'll add a hurd-web user. <tschwinge> So... I actually have to locate a backup of the files from flubber related to the wiki, * tschwinge goes searching his backup devices. <braunr> i added userdirs on darnassus' apache <tschwinge> braunr: I just noticed when I wanted to add it myself. ;-) <tschwinge> braunr: Do you know about CGI scripts? <braunr> yes <tschwinge> braunr: snubber had these in /var/www/cgi-bin/; darnassus now in /usr/lib/cgi-bin/. <tschwinge> ikiwiki needs to install one CGI script. <braunr> ok <tschwinge> Does this go into /usr/lib/cgi-bin/ then? Or into ~hurd-web/ and a symlink somewhere? <braunr> ikiwiki should have installed it where it's appropriate <braunr> normally in /usr/lib/cgi-bin/ <tschwinge> It's a CGI script that is generated per ikiwiki instance, so specific to hurd-web. <braunr> where does it install it by default ? <tschwinge> $PWD ;-) <braunr> ah <braunr> it seems a bit silly to me to generate cgi scripts :/ <braunr> i don't care much actually, we won't have virtual servers <braunr> so anywhere is fine <tschwinge> What does the +SymLinksIfOwnerMatch Apache option mean? <braunr> apache will normally not follow symlink <braunr> unless the owner of the symlink is the same as the target's <braunr> (with this option) <tschwinge> That's enabled for CGI scripts. So would it work to have a symlink /usr/lib/cgi-bin/hurd-web.cgi -> ~hurd-web/hurd-web.cgi? <braunr> the traditional way to access cgi scripts is to explicitely refer to them as http://server/cgi-bin/script <braunr> using *.cgi may allow too open access to cgis <braunr> (although normally, the userdir conf should disable them) <braunr> hm not sure it does <braunr> so put it in /usr/lib/cgi-bin/ <tschwinge> So the hurd-web ikiwiki instance just needs to be configured accordingly with the URL where the CGI script will be found, and then it will render the pages accordingly. <tschwinge> OK. <braunr> and just named hurd-web