summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--.gitignore2
-rw-r--r--Makefile4
-rw-r--r--ikiwiki.setup447
3 files changed, 254 insertions, 199 deletions
diff --git a/.gitignore b/.gitignore
index df30d2f..8749894 100644
--- a/.gitignore
+++ b/.gitignore
@@ -4,6 +4,8 @@
/basewiki_nonedit_l10n
/content
/content_dummy
+/directives
+/directives_l10n
/smiley
/smiley_l10n
/templates
diff --git a/Makefile b/Makefile
index 9cf8814..2399e70 100644
--- a/Makefile
+++ b/Makefile
@@ -6,14 +6,14 @@ ikiwiki_ORIGIN = git://source.jones.dk/ikiwiki_MODULE
# Git branch (with capital FLAVOR and LOCALE replaced or stripped as needed)
ikiwiki_BRANCH = master-FLAVOR-LOCALE
# modules (subproject extension names) used. Expands Git ORIGINs
-ikiwiki_MODULES = templates basewiki smiley
+ikiwiki_MODULES = templates basewiki smiley directives
# flavors used. Expands Git BRANCHes
#ikiwiki_basewiki_FLAVORS = nonedit
#ikiwiki_templates_FLAVORS = nonedit
# locales used. Expands Git BRANCHes
#ikiwiki_LOCALES = da nb
# gettext-based modules and locales used
-#ikiwiki_POMODULES = basewiki smiley
+#ikiwiki_POMODULES = basewiki smiley directives
#ikiwiki_POLOCALES = da
#dummy_MODULES = content_dummy
diff --git a/ikiwiki.setup b/ikiwiki.setup
index 1055ef4..4441f0d 100644
--- a/ikiwiki.setup
+++ b/ikiwiki.setup
@@ -1,206 +1,259 @@
#!/usr/bin/perl
-# Configuration file for ikiwiki.
-# Passing this to ikiwiki --setup will make ikiwiki generate wrappers and
-# build the wiki.
+# Setup file for ikiwiki.
+#
+# Passing this to ikiwiki --setup will make ikiwiki generate
+# wrappers and build the wiki.
#
# Remember to re-run ikiwiki --setup any time you edit this file.
-
use IkiWiki::Setup::Standard {
- wikiname => "MyWiki",
- #adminuser => ["yourname", ],
- adminemail => 'me@example.org',
-
- # Be sure to customise these..
- srcdir => $ENV{'HOME'} . "/private_webdata/samplewiki/content",
- destdir => $ENV{'HOME'} . "/public_websites/wiki.example.org",
-
- url => "http://wiki.example.org",
- cgiurl => "http://wiki.example.org/ikiwiki.cgi",
- templatedir => $ENV{'HOME'} . "/private_webdata/samplewiki/templates",
- underlaydir => $ENV{'HOME'} . "/private_webdata/samplewiki/basewiki",
-
- # Subversion stuff.
- #rcs => "svn",
- #historyurl => "http://svn.example.org/trunk/[[file]]",
- #diffurl => "http://svn.example.org/trunk/[[file]]?root=wiki&r1=[[r1]]&r2=[[r2]]",
- #svnrepo => "/svn/wiki",
- #svnpath => "trunk",
-
- # Git stuff.
- #rcs => "git",
- #historyurl => "http://git.example.org/?p=samplewiki_content.git;a=history;f=[[file]]", # ;hb=master
- #diffurl => "http://git.example.org/?p=samplewiki_content.git;a=blobdiff;h=[[sha1_to]];hp=[[sha1_from]];hb=[[sha1_parent]];f=[[file]]",
- #gitorigin_branch => "samplewiki",
- #gitmaster_branch => "master",
-
- # Tla stuff.
- #rcs => "tla"
- #historyurl => ??,
- #diffurl => ??,
-
- # Mercurial stuff.
- #rcs => "mercurial",
- #historyurl => "http://localhost:8000/log/tip/[[file]]", # hg serve'd local repository
- #diffurl => "http://localhost:8000/?fd=[[r2]];file=[[file]]",
-
- # Bazaar stuff.
- #rcs => "bzr",
- #historyurl => "",
- #diffurl => "http://example.com/revision?start_revid=[[r2]]#[[file]]-s", # using loggerhead
-
- # Monotone stuff
- #rcs => "monotone",
- #mtnkey => "web\@machine.company.com",
- #historyurl => "http://viewmtn.example.com/branch/head/filechanges/com.example.branch/[[file]]",
- #diffurl => "http://viewmtn.example.com/revision/diff/[[r1]]/with/[[r2]]/[[file]]",
- # Set if you want the wiki to sync on update and commit.
- #mtnsync => 0,
- # The path to your workspace (defaults to the srcdir itself)
- # e.g. use if your srcdir is a subdirectory of the workspace.
- #mtnrootdir => "path/to/root/of/workspace",
-
- wrappers => [
- #{
- # # The cgi wrapper.
- # cgi => 1,
- # wrapper => $ENV{'HOME'} . "/public_cgi/wiki.example.org/ikiwiki.cgi",
- # wrappermode => "06755",
- #},
- #{
- # # The svn post-commit wrapper.
- # # Note that this will overwrite any existing
- # # post-commit hook script, which may not be
- # # what you want.
- # wrapper => "/svn/wikirepo/hooks/post-commit",
- # wrappermode => "04755",
- # # Log to syslog since svn post-commit hooks
- # # hide output and errors.
- # syslog => 1,
- #},
- #{
- # # The git post-update wrapper.
- # # Note that this will overwrite any existing
- # # post-update hook script, which may not be
- # # what you want.
- # wrapper => $ENV{'HOME'} . "/public_websites/git.example.org/samplewiki_content.git/hooks/post-update-ikiwiki",
- # wrappermode => "06755",
- #},
- #{
- # # The monotone netsync hook.
- # wrapper => "path/to/root/of/workspace/_MTN/ikiwiki-netsync-hook",
- # wrappermode => "06755",
- #},
- ],
-
- # Default to generating rss feeds for pages with feeds?
- #rss => 1,
- # Default to generating atom feeds for pages with feeds?
- #atom => 1,
- # Allow generating feeds even if not generated by default?
- #allowrss => 1,
- #allowatom => 1,
- # Urls to ping with XML-RPC when feeds are updated
- #pingurl => [qw{http://rpc.technorati.com/rpc/ping}],
- # Include discussion links on all pages?
+ # name of the wiki
+ wikiname => 'wiki',
+ # contact email for wiki
+ #adminemail => 'me@example.com',
+ # users who are wiki admins
+ adminuser => [],
+ # users who are banned from the wiki
+ banned_users => [],
+ # where the source of the wiki is located
+ #srcdir => '/home/me/wiki',
+ # where to build the wiki
+ destdir => '',
+ # base url to the wiki
+ url => '',
+ # url to the ikiwiki.cgi
+ cgiurl => '',
+ # cgi wrapper to generate
+ cgi_wrapper => '',
+ # mode for cgi_wrapper (can safely be made suid)
+ cgi_wrappermode => '06755',
+ # rcs backend to use
+ rcs => '',
+ # plugins to add to the default configuration
+ add_plugins => [],
+ # plugins to disable
+ disable_plugins => [],
+ # location of template files
+ templatedir => '/usr/share/ikiwiki/templates',
+ # base wiki source location
+ underlaydir => '/usr/share/ikiwiki/basewiki',
+ # display verbose messages when building?
+ #verbose => 1,
+ # log to syslog?
+ #syslog => 1,
+ # create output files named page/index.html?
+ usedirs => 1,
+ # use '!'-prefixed preprocessor directives?
+ prefix_directives => 0,
+ # use page/index.mdwn source files
+ indexpages => 0,
+ # enable Discussion pages?
discussion => 1,
- # To exclude files matching a regexp from processing. This adds to
- # the default exclude list.
- #exclude => qr/\.wav$/,
- # To change the extension used for generated html files.
- #htmlext => 'htm',
- # Time format (for strftime)
- #timeformat => '%c',
- # Locale to use. Must be a UTF-8 locale.
+ # only send cookies over SSL connections?
+ sslcookie => 0,
+ # extension to use for new pages
+ default_pageext => 'mdwn',
+ # extension to use for html files
+ htmlext => 'html',
+ # strftime format string to display date
+ timeformat => '%c',
+ # UTF-8 locale to use
#locale => 'en_US.UTF-8',
- # Only send cookies over SSL connections.
- #sslcookie => 1,
- # Logging settings:
- #verbose => 1,
- syslog => 0,
- # To link to user pages in a subdirectory of the wiki.
- #userdir => "users",
- # To create output files named page.html rather than page/index.html.
- #usedirs => 0,
- # Simple spam prevention: require an account-creation password.
- #account_creation_password => "example",
- # Cost of generating a password using Authen::Passphrase::BlowfishCrypt
- #password_cost => 8,
- # Uncomment to force ikiwiki to run with a particular umask.
+ # put user pages below specified page
+ userdir => '',
+ # how many backlinks to show before hiding excess (0 to show all)
+ numbacklinks => 10,
+ # attempt to hardlink source files? (optimisation for large files)
+ hardlink => 0,
+ # force ikiwiki to use a particular umask
#umask => 022,
- # Default settings for the recentchanges page.
- #recentchangespage => "recentchanges",
- #recentchangesnum => 100,
- # Use new '!'-prefixed preprocessor directive syntax
- #prefix_directives => 1,
- # Attempt to make hardlinks to source files instead of copying them.
- # Useful if the wiki contains large media files.
- #hardlink => 1,
- # Enable use of multimarkdown features in .mdwn files.
- #multimarkdown => 1,
-
- # To add plugins, list them here.
- #add_plugins => [qw{goodstuff search wikitext camelcase
- # htmltidy fortune sidebar map rst anonok}],
- # If you want to disable any of the default plugins, list them here.
- #disable_plugins => [qw{inline htmlscrubber passwordauth openid}],
- # To add a directory to the perl search path, use this.
- #libdir => "/home/me/private_webdata/samplewiki/perl",
-
- # To override environment variable settings, you can list values here.
- #ENV => {
- # TZ => "America/New_York",
- # PATH => "/home/me/bin:/usr/local/bin:/usr/bin:/bin",
- #},
-
- # For use with the tag plugin, make all tags be located under a
- # base page.
- #tagbase => "tag",
-
- # For use with the search plugin if the omega cgi is located
- # somewhere else.
- #omega_cgi => "/usr/lib/cgi-bin/omega/omega",
-
- # For use with the openid plugin, to give an url to a page users
- # can use to signup for an OpenID.
- #openidsignup => "http://myopenid.com/",
-
- # For use with the mirrorlist plugin, a list of mirrors.
- #mirrorlist => {
- # mirror1 => "http://hostname1",
- # mirror2 => "http://hostname2/mirror",
- #},
-
- # For use with the anonok plugin, a PageSpec specifying what
- # pages anonymous users can edit
- #anonok_pagespec => "*",
-
- # For use with the aggregate plugin.
- # Enable aggregation to internal pages. New wikis should set this to 1,
- # but if you use aggregate already, read the aggregate plugin docs
- # before enabling it.
- #aggregateinternal => 1,
- # Allow aggregation to be triggered via the web.
- #aggregate_webtrigger => 1,
-
- # For use with the pinger plugin, how many seconds to wait before
- # timing out.
- #pinger_timeout => 15.
-
- # For use with the amazon S3 plugin, your public access key id.
+ # extra library and plugin directory
+ libdir => '.',
+ # environment variables
+ ENV => {},
+ # regexp of source files to ignore
+ #exclude => '\\.wav$',
+ # specifies the characters that are allowed in source filenames
+ wiki_file_chars => '-[:alnum:]+/.:_',
+ # allow symlinks in the path leading to the srcdir (potentially insecure)
+ allow_symlinks_before_srcdir => 0,
+
+ # aggregate plugin
+ # enable aggregation to internal pages?
+ #aggregateinternal => 0,
+ # allow aggregation to be triggered via the web?
+ #aggregate_webtrigger => 0,
+
+ # amazon_s3 plugin
+ # public access key id
#amazon_s3_key_id => 'XXXXXXXXXXXXXXXXXXXX',
- # And a file holding your secret key. This file *must* not be
- # readable by others!
- #amazon_s3_key_file => "/home/me/secret_webdata/s3_key
- # The globally unique name of the bucket to use to store the wiki.
- #amazon_s3_bucket => "mywiki",
- # A prefix to prepend to each page name.
- #amazon_s3_prefix => "wiki/",
- # Uncomment to use the S3 European datacenter.
- #amazon_s3_location => "EU",
- # Uncomment if you need to store each index file twice.
- #amazon_s3_dupindex => 1,
-
- # For use with the attachment plugin, a program that returns
- # nonzero if its standard input contains an virus.
- #virus_checker => "clamdscan -",
+ # file holding secret key (must not be readable by others!)
+ #amazon_s3_key_id => '/home/me/.s3_key',
+ # globally unique name of bucket to store wiki in
+ #amazon_s3_bucket => 'mywiki',
+ # a prefix to prepend to each page name
+ #amazon_s3_prefix => 'wiki/',
+ # which S3 datacenter to use (leave blank for default)
+ #amazon_s3_location => 'EU',
+ # store each index file twice? (allows urls ending in "/index.html" and "/")
+ #amazon_s3_dupindex => 0,
+
+ # anonok plugin
+ # PageSpec to limit which pages anonymous users can edit
+ #anonok_pagespec => '*/discussion',
+
+ # attachment plugin
+ # enhanced PageSpec specifying what attachments are allowed
+ #allowed_attachments => 'virusfree() and mimetype(image/*) and maxsize(50kb)',
+ # virus checker program (reads STDIN, returns nonzero if virus found)
+ #virus_checker => 'clamdscan -',
+
+ # bzr plugin
+ # bzr post-commit hook to generate
+ #bzr_wrapper => '',
+ # mode for bzr_wrapper (can safely be made suid)
+ #bzr_wrappermode => '06755',
+ # url to show file history, using loggerhead ([[file]] substituted)
+ #historyurl => '',
+ # url to view a diff, using loggerhead ([[file]] and [[r2]] substituted)
+ #diffurl => 'http://example.com/revision?start_revid=[[r2]]#[[file]]-s',
+
+ # calendar plugin
+ # base of the archives hierarchy
+ #archivebase => 'archives',
+
+ # git plugin
+ # git hook to generate
+ #git_wrapper => '/git/wiki.git/hooks/post-update',
+ # mode for git_wrapper (can safely be made suid)
+ #git_wrappermode => '06755',
+ # gitweb url to show file history ([[file]] substituted)
+ #historyurl => 'http://git.example.com/gitweb.cgi?p=wiki.git;a=history;f=[[file]]',
+ # gitweb url to show a diff ([[sha1_to]], [[sha1_from]], [[sha1_parent]], and [[file]] substituted)
+ #diffurl => 'http://git.example.com/gitweb.cgi?p=wiki.git;a=blobdiff;h=[[sha1_to]];hp=[[sha1_from]];hb=[[sha1_parent]];f=[[file]]',
+ # where to pull and push changes (set to empty string to disable)
+ #gitorigin_branch => 'origin',
+ # branch that the wiki is stored in
+ #gitmaster_branch => 'master',
+
+ # htmlscrubber plugin
+ # PageSpec specifying pages not to scrub
+ #htmlscrubber_skip => '!*/Discussion',
+
+ # inline plugin
+ # enable rss feeds by default?
+ #rss => 0,
+ # enable atom feeds by default?
+ #atom => 0,
+ # allow rss feeds to be used?
+ #allowrss => 0,
+ # allow atom feeds to be used?
+ #allowatom => 0,
+ # urls to ping (using XML-RPC) on feed update
+ #pingurl => 'http://rpc.technorati.com/rpc/ping',
+
+ # listdirectives plugin
+ # directory in srcdir that contains directive descriptions
+ #directive_description_dir => 'ikiwiki/directive',
+
+ # lockedit plugin
+ # PageSpec controlling which pages are locked
+ #locked_pages => '!*/Discussion',
+
+ # mdwn plugin
+ # enable multimarkdown features?
+ #multimarkdown => 0,
+
+ # mercurial plugin
+ # mercurial post-commit hook to generate
+ #mercurial_wrapper => '',
+ # mode for mercurial_wrapper (can safely be made suid)
+ #mercurial_wrappermode => '06755',
+ # url to hg serve'd repository, to show file history ([[file]] substituted)
+ #historyurl => 'http://example.com:8000/log/tip/[[file]]',
+ # url to hg serve'd repository, to show diff ([[file]] and [[r2]] substituted)
+ #diffurl => 'http://localhost:8000/?fd=[[r2]];file=[[file]]',
+
+ # mirrorlist plugin
+ # list of mirrors
+ #mirrorlist => {},
+
+ # openid plugin
+ # an url where users can signup for an OpenID
+ #openidsignup => 'http://myopenid.com/',
+
+ # passwordauth plugin
+ # a password that must be entered when signing up for an account
+ #account_creation_password => 's3cr1t',
+ # cost of generating a password using Authen::Passphrase::BlowfishCrypt
+ #password_cost => 8,
+
+ # pinger plugin
+ # how many seconds to try pinging before timing out
+ #pinger_timeout => 15,
+
+ # prettydate plugin
+ # format to use to display date
+ #prettydateformat => '%X, %B %o, %Y',
+
+ # recentchanges plugin
+ # name of the recentchanges page
+ #recentchangespage => 'recentchanges',
+ # number of changes to track
+ #recentchangesnum => 100,
+
+ # search plugin
+ # path to the omega cgi program
+ #omega_cgi => '/usr/lib/cgi-bin/omega/omega',
+
+ # svn plugin
+ # subversion repository location
+ #svnrepo => '/svn/wiki',
+ # path inside repository where the wiki is located
+ #svnpath => 'trunk',
+ # svn post-commit hook to generate
+ #svn_wrapper => '/svn/wikirepo/hooks/post-commit',
+ # mode for svn_wrapper (can safely be made suid)
+ #svn_wrappermode => '04755',
+ # viewvc url to show file history ([[file]] substituted)
+ #historyurl => 'http://svn.example.org/trunk/[[file]]',
+ # viewvc url to show a diff ([[file]], [[r1]], and [[r2]] substituted)
+ #diffurl => 'http://svn.example.org/trunk/[[file]]?root=wiki&r1=[[r1]]&r2=[[r2]]',
+
+ # tag plugin
+ # parent page tags are located under
+ #tagbase => 'tag',
+
+ # teximg plugin
+ # Should teximg use dvipng to render, or dvips and convert?
+ #teximg_dvipng => '',
+ # LaTeX prefix for teximg plugin
+ #teximg_prefix => '\\documentclass{article}
+ #\\usepackage{amsmath}
+ #\\usepackage{amsfonts}
+ #\\usepackage{amssymb}
+ #\\pagestyle{empty}
+ #\\begin{document}
+ #',
+ # LaTeX postfix for teximg plugin
+ #teximg_postfix => '\\end{document}',
+
+ # tla plugin
+ # tla post-commit hook to generate
+ #tla_wrapper => '',
+ # mode for tla_wrapper (can safely be made suid)
+ #tla_wrappermode => '06755',
+ # url to show file history ([[file]] substituted)
+ #historyurl => '',
+ # url to show a diff ([[file]] and [[rev]] substituted)
+ #diffurl => '',
+
+ # typography plugin
+ # Text::Typography attributes value
+ #typographyattributes => '3',
+
+ # websetup plugin
+ # list of plugins that cannot be enabled/disabled via the web interface
+ #websetup_force_plugins => [],
+ # show unsafe settings, read-only, in web interface?
+ #websetup_show_unsafe => 1,
}