enhancesments for shared hosting
* Add a Bundle::Ikiwiki to the source for use with CPAN to install *all* the modules ikiwiki can use. * Add a cpan directory containing a CPAN::MyConfig that can ease use of CPAN to install in a home directory on shared hosting providers. * With these changes, it's pretty easy to install onto nearlyfreespeech.net and probably other shared hosting providers like dreamhost. Added a tip page documentng the process for nearlyfreespeech.master
parent
a7b8069b9d
commit
3a9dfb8361
|
@ -0,0 +1,34 @@
|
|||
package Bundle::IkiWiki;
|
||||
|
||||
$VERSION = '0.01';
|
||||
|
||||
1;
|
||||
|
||||
__END__
|
||||
|
||||
=head1 NAME
|
||||
|
||||
Bundle::IkiWiki - core modules that ikiwiki needs
|
||||
|
||||
=head1 SYNOPSIS
|
||||
|
||||
perl -MCPAN -e 'install Bundle::IkiWiki'
|
||||
|
||||
=head1 CONTENTS
|
||||
|
||||
XML::Simple
|
||||
Text::Markdown
|
||||
Date::Parse
|
||||
HTML::Template
|
||||
HTNL::Scrubber
|
||||
CGI
|
||||
CGI::FormBuilder
|
||||
CGI::Session
|
||||
Mail::Sendmail
|
||||
HTML::Parser
|
||||
URI
|
||||
Data::Dumper
|
||||
|
||||
=head1 AUTHOR
|
||||
|
||||
Joey Hess <joey@ikiwiki.info>
|
|
@ -0,0 +1,33 @@
|
|||
package Bundle::IkiWiki::Extras;
|
||||
|
||||
$VERSION = '0.01';
|
||||
|
||||
1;
|
||||
|
||||
__END__
|
||||
|
||||
=head1 NAME
|
||||
|
||||
Bundle::IkiWiki - modules used by ikiwiki plugins
|
||||
|
||||
=head1 SYNOPSIS
|
||||
|
||||
perl -MCPAN -e 'install Bundle::IkiWiki::Extras'
|
||||
|
||||
=head1 CONTENTS
|
||||
|
||||
RPC::XML
|
||||
File::MimeInfo
|
||||
Locale::gettext
|
||||
Net::OpenID::Consumer
|
||||
LWPx::ParanoidAgent
|
||||
Crypt::SSLeay
|
||||
Text::CSV
|
||||
Text::Typography
|
||||
Text::Textile
|
||||
Text::WikiFormat
|
||||
XML::Feed
|
||||
|
||||
=head1 AUTHOR
|
||||
|
||||
Joey Hess <joey@ikiwiki.info>
|
|
@ -0,0 +1,44 @@
|
|||
$CPAN::Config = {
|
||||
'auto_commit' => q[0],
|
||||
'build_cache' => q[10],
|
||||
'build_dir' => "$ENV{HOME}/.cpan/build/",
|
||||
'cache_metadata' => q[1],
|
||||
'commandnumber_in_prompt' => q[1],
|
||||
'cpan_home' => "$ENV{HOME}/.cpan/",
|
||||
'ftp' => q[ftp],
|
||||
'ftp_passive' => q[1],
|
||||
'ftp_proxy' => q[],
|
||||
'getcwd' => q[cwd],
|
||||
'gzip' => q[gzip],
|
||||
'histfile' => "$ENV{HOME}/.cpan/histfile/",
|
||||
'histsize' => q[100],
|
||||
'http_proxy' => q[],
|
||||
'inactivity_timeout' => q[0],
|
||||
'index_expire' => q[1],
|
||||
'inhibit_startup_message' => q[0],
|
||||
'keep_source_where' => "$ENV{HOME}/.cpan/sources/",
|
||||
'make' => q[make],
|
||||
'make_arg' => q[],
|
||||
'make_install_arg' => q[],
|
||||
'make_install_make_command' => q[make],
|
||||
'makepl_arg' => "PREFIX=$ENV{HOME} LIB=$ENV{HOME}/lib/perl5",
|
||||
'mbuild_arg' => q[],
|
||||
'mbuild_install_arg' => q[],
|
||||
'mbuild_install_build_command' => q[./Build],
|
||||
'mbuildpl_arg' => "-install_path lib=$ENV{HOME}/lib/perl5",
|
||||
'no_proxy' => q[],
|
||||
'pager' => q[less],
|
||||
'prerequisites_policy' => q[follow],
|
||||
'scan_cache' => q[atstart],
|
||||
'shell' => q[sh],
|
||||
'show_upload_date' => q[0],
|
||||
'tar' => q[tar],
|
||||
'term_is_latin' => q[1],
|
||||
'term_ornaments' => q[1],
|
||||
'unzip' => q[unzip],
|
||||
'urllist' => [],
|
||||
'use_sqlite' => q[0],
|
||||
'wget' => q[wget],
|
||||
};
|
||||
1;
|
||||
__END__
|
|
@ -0,0 +1,7 @@
|
|||
In this directory is a CPAN config file that causes it to install into the HOME
|
||||
directory, and tries to be reasonably portable. Set PERL5LIB=ikiwiki/cpan to
|
||||
use it.
|
||||
|
||||
This is provided with ikiwiki for use on hosting providers such as
|
||||
nearlyfreespeech.net, that have CPAN but need some tweaking for it to be
|
||||
usable by a regular user.
|
|
@ -15,6 +15,13 @@ ikiwiki (2.45) UNRELEASED; urgency=low
|
|||
if the source file does not exist.
|
||||
* git: Put -- before the filename when calling git rev-list to avoid
|
||||
warning message when the file doesn't exist.
|
||||
* Add a Bundle::Ikiwiki to the source for use with CPAN to install *all*
|
||||
the modules ikiwiki can use.
|
||||
* Add a cpan directory containing a CPAN::MyConfig that can ease use of
|
||||
CPAN to install in a home directory on shared hosting providers.
|
||||
* With these changes, it's pretty easy to install onto nearlyfreespeech.net
|
||||
and probably other shared hosting providers like dreamhost. Added
|
||||
a tip page documentng the process for nearlyfreespeech.
|
||||
|
||||
-- Joey Hess <joeyh@debian.org> Sat, 26 Apr 2008 15:09:36 -0400
|
||||
|
||||
|
|
|
@ -3,17 +3,12 @@ also [[download]] the source and install it by hand. Ikiwiki should work on
|
|||
most unix-like systems.
|
||||
|
||||
Ikiwiki is a perl program, and needs a recent version of perl such as
|
||||
5.8.8. (5.8.0 has been reported not to work).
|
||||
5.10. (5.8.0 has been reported not to work).
|
||||
|
||||
Ikiwiki requires the [[cpan Text::Markdown]], [[cpan URI]],
|
||||
[[cpan HTML::Parser]], [[cpan HTML::Template]], and [[cpan HTML::Scrubber]]
|
||||
perl modules be installed.
|
||||
|
||||
It also uses the following perl modules if available: [[cpan
|
||||
CGI::Session]], [[cpan CGI::FormBuilder]] (version 3.05 or newer), [[cpan
|
||||
Mail::Sendmail]], [[cpan TimeDate]], [[cpan RPC::XML]],
|
||||
[[cpan XML::Simple]], [[cpan XML::Feed]], [[cpan File::MimeInfo]],
|
||||
[[cpan Locale::gettext]] (version 1.04 or newer).
|
||||
perl modules be installed. It can also use a lot of other perl modules, if
|
||||
they are available.
|
||||
|
||||
It's recommended you have a C compiler, as ikiwiki uses one to build
|
||||
wrappers.
|
||||
|
@ -30,8 +25,14 @@ perl modules using this command:
|
|||
perl-XML-Simple perl-TimeDate perl-HTML-Template perl-CGI-FormBuilder \
|
||||
perl-CGI-Session perl-File-MimeInfo perl-gettext
|
||||
|
||||
If you want to install from the tarball, you should make sure that the
|
||||
required perl modules are installed, then run:
|
||||
If you want to install by hand from the tarball, you should make sure that
|
||||
all the perl modules are installed. This is one way to install them, using
|
||||
CPAN:
|
||||
|
||||
PERL5LIB=. PERL_MM_USE_DEFAULT=1 perl -MCPAN -e 'CPAN::Shell->install("Bundle::IkiWiki")'
|
||||
PERL5LIB=. PERL_MM_USE_DEFAULT=1 perl -MCPAN -e 'CPAN::Shell->install("Bundle::IkiWiki::Extras")'
|
||||
|
||||
Then to build and install ikiwiki:
|
||||
|
||||
perl Makefile.PL # PREFIX=/dir to install elsewhere
|
||||
make
|
||||
|
|
|
@ -0,0 +1,59 @@
|
|||
[NearlyFreeSpeech.net](http://NearlyFreeSpeech.net) is a shared hosting
|
||||
provider with very cheap pay as you go pricing. Here's how to install ikiwiki
|
||||
there if you don't have a dedicated server.
|
||||
|
||||
* [Get an account](https://www.nearlyfreespeech.net/about/start.php).
|
||||
* Create a site using their web interface. Mine is named `ikiwiki-test` and I
|
||||
used their DNS instead of getting my own, resulting in
|
||||
<http://ikiwiki-test.nfshost.com/>
|
||||
* Fund it. (Or don't. They gave me 2 cents free funding for signing up, which
|
||||
is enough to pay for 10 megabytes of hosting, or about a thousand typical
|
||||
page views at their current rates.)
|
||||
* `ssh` into their server using the ssh hostname and username displayed on
|
||||
the site's information page. For me this was
|
||||
`ssh joeyh_ikiwiki-test@ssh.phx.nearlyfreespeech.net`
|
||||
* Set up .profile to use your home directory.
|
||||
echo "PATH=$PATH:$HOME/bin" > $HOME/.profile
|
||||
. $HOME/.profile
|
||||
* You'll be in the htdocs directory by default, where public web pages are
|
||||
put, so before installing ikiwiki, `cd $HOME`
|
||||
* Use `wget` to [[download]] the ikiwiki tarball.
|
||||
* Unpack ikiwiki.
|
||||
tar zxvf ikiwiki*.tar.gz
|
||||
* Use CPAN to install the perl modules it uses into your home directory:
|
||||
PERL5LIB=ikiwiki:ikiwiki/cpan:. PERL_MM_USE_DEFAULT=1 perl -MCPAN -e 'CPAN::Shell->install("Bundle::IkiWiki")'
|
||||
PERL5LIB=ikiwiki:ikiwiki/cpan:. PERL_MM_USE_DEFAULT=1 perl -MCPAN -e 'CPAN::Shell->force(install => "Bundle::IkiWiki::Extras")'
|
||||
(This will take a while. As long as the first command succeeds, ikiwiki will be
|
||||
usable. The second command adds extra modules that some plugins use, and
|
||||
installation of some of them might fail.)
|
||||
* Now build and install ikiwiki into your home directory.
|
||||
cd ikiwiki
|
||||
export MAKE=gmake
|
||||
perl Makefile.PL INSTALL_BASE=$HOME PREFIX=
|
||||
$MAKE
|
||||
$MAKE install
|
||||
* With ikiwiki installed, you can follow the regular [[setup]] tutorial for
|
||||
settng up your wiki. Make sure to set `destdir` to `/home/htdocs/` so that
|
||||
the wiki is published on the web site. I recommend using git for revision
|
||||
control; you can then clone your wiki's git repository as an offsite backup.
|
||||
Here is an example of how I set up a wiki:
|
||||
mkdir ~/wiki
|
||||
cd ~/wiki
|
||||
cp ~/ikiwiki/doc/ikiwiki.setup .
|
||||
cp -r ~/ikiwiki/doc/examples/blog/* .
|
||||
nano ikiwiki.setup
|
||||
# Set destdir to /home/htdocs
|
||||
# Set srcdir to /home/private/wiki
|
||||
# Set url to http://yoursite.nfshost.com/ , set cgiurl likewise
|
||||
# Uncomment the `rcs => "git"` line, and the cgi and git
|
||||
# post-update wrapper blocks.
|
||||
# Set the cgi wrapper path to /home/htdocs/ikiwiki.cgi
|
||||
# Set the git wrapper path to /home/private/wiki.git/hooks/post-update
|
||||
# Configure the rest to your liking and save the file.
|
||||
ikiwiki-makerepo git . ../wiki.git
|
||||
ikiwiki -setup ikiwiki.setup
|
||||
* Finally, you can save a _lot_ of disk space by cleaning up the ikiwiki
|
||||
tarball and .cpan directory.
|
||||
rm -rf ~/ikiwiki*.tar.gz ~/.cpan
|
||||
|
||||
Have fun and do good things. --[[Joey]]
|
|
@ -8,7 +8,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: PACKAGE VERSION\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2008-05-02 12:52-0400\n"
|
||||
"POT-Creation-Date: 2008-05-04 14:50-0400\n"
|
||||
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
|
||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"Language-Team: LANGUAGE <LL@li.org>\n"
|
||||
|
|
Loading…
Reference in New Issue