>> packages for NetBSD, DragonFly and other systems that use pkgsrc package system.
>> --JeremyReed
+# Installation as non-root user
+
+I'd like to install ikiwiki as a non-root user. I can plow through getting all the
+perl dependencies installed because that's well documented in the perl world,
+but I don't know how to tell ikiwiki to install somewhere other than / --BrianWilson
+
+> Checkout the tips section for [SharedHosting](tips/SharedHosting). It should do the trick. --MattReynolds
+
----
# Upgrade steps
> to do it rarely, and the data I've wanted has been different each time.
> --[[Joey]]
+>> Thanks for these examples -- I have been using them. I don't know the
+>> Storable yet. Can someone share an example of removing a user? (I now
+>> setup account\_creation\_password and I have some spammer with different
+>> login names that I have banned that I might as well remove from the
+>> userdb.)
+
+>>> Let's see, you could do something like this:
+>>> perl -le 'use Storable; my $userinfo=Storable::retrieve("userdb"); delete $$userinfo{"joey"}; Storable::lock_store($userinfo, "userdb")'
+>>> I suppose I should stop being lame and create a command line tool wrapping up these operations.. --[[Joey]]
+
----
# Spaces in WikiLinks?
> away without running the post-commit wrapper on commit, and all you lose
> is the ability to send commit notification emails.
+> (And now that [[recentchanges]] includes rss, you can just subscribe to
+> that, no need to worry about commit notification emails anymore.)
+
* 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.
--[[AdamShand]]
> in the same repo. If you have two wikis in one repository, you will need
> to write a post-commit script that calls the post-commit wrappers for each
> wiki.
+
+----
+
+# Regex for Valid Characters in Filenames
+
+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]]
+
+> The default `wiki_file_regexp` matches filenames containing only
+> `[-[:alnum:]_.:/+]`
+>
+> The IkiWiki::titlepage() function will convert freeform text to a valid
+> page name. See [[todo/should_use_a_standard_encoding_for_utf_chars_in_filenames]]
+> for an example. --[[Joey]]
+
+>> Perfect, thanks!
+>>
+>> 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:
+>>
+>> # echo "++ Bad: ~@#$%^&*()_=}{[];,? Iki: +_-:./ Num: 65.5 ++" | sed -e 's/[^A-Za-z0-9_]/_/g' -e 's/__*/_/g' -e 's/^_//g' -e 's/_$//g'
+>> Bad_Iki_Num_65_5
+>>
+>>--[[AdamShand]]
+
+# Upgrade steps from RecentChanges CGI to static page?
+
+Where are the upgrade steps for RecentChanges change from CGI to static feed?
+I run multiple ikiwiki-powered sites on multiple servers, but today I just upgraded one to 2.32.3.
+Please have a look at
+<http://bsdwiki.reedmedia.net/wiki/recentchanges.html>
+Any suggestions?
+
+> There are no upgrade steps required. It does look like you need to enable
+> the meta plugin to get a good recentchanges page though.. --[[Joey]]