removed calendar plugin
[wikirepo] / ikiwiki.setup
index 1e2c9fb..8631ca4 100644 (file)
@@ -1,9 +1,10 @@
 #!/usr/bin/perl
-# Setup file for ikiwiki.
 #
+# 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 {
        # name of the wiki
@@ -22,17 +23,25 @@ use IkiWiki::Setup::Standard {
        url => 'http://joe.milbourn.org.uk/',
        # url to the ikiwiki.cgi
        cgiurl => 'http://joe.milbourn.org.uk/ikiwiki.cgi',
+       # do not adjust cgiurl if CGI is accessed via different URL
+       reverse_proxy => 0,
        # filename of cgi wrapper to generate
        cgi_wrapper => '/home/joe/public_html/wiki/ikiwiki.cgi',
        # mode for cgi_wrapper (can safely be made suid)
        cgi_wrappermode => '06755',
+       # number of seconds to delay CGI requests when overloaded
+       cgi_overload_delay => '',
+       # message to display when overloaded (may contain html)
+       cgi_overload_message => '',
+       # enable optimization of only refreshing committed changes?
+       only_committed_changes => 0,
        # rcs backend to use
        rcs => 'git',
        # plugins to add to the default configuration
-       add_plugins => [qw{goodstuff websetup rawhtml relativedate repolist google calendar}],
+       add_plugins => [qw{goodstuff websetup rawhtml relativedate repolist google attachment}],
        # plugins to disable
-       disable_plugins => [qw{htmlscrubber openid}],
-       # location of template files
+       disable_plugins => [qw{htmlscrubber openid tag}],
+       # additional directory to search for template files
        templatedir => 'templates',
        # base wiki source location
        underlaydir => '/usr/share/ikiwiki/basewiki',
@@ -47,9 +56,11 @@ use IkiWiki::Setup::Standard {
        # use page/index.mdwn source files
        indexpages => 1,
        # enable Discussion pages?
-       discussion => 1,
+       discussion => 0,
        # name of Discussion pages
        discussionpage => 'Discussion',
+       # use elements new in HTML5 like <section>?
+       html5 => 0,
        # only send cookies over SSL connections?
        sslcookie => 0,
        # extension to use for new pages
@@ -66,24 +77,48 @@ use IkiWiki::Setup::Standard {
        numbacklinks => 10,
        # attempt to hardlink source files? (optimisation for large files)
        hardlink => 0,
-       # force ikiwiki to use a particular umask
-       #umask => 022,
+       # force ikiwiki to use a particular umask (keywords public, group or private, or a number)
+       #umask => 'public',
        # group for wrappers to run in
        #wrappergroup => 'ikiwiki',
-       # extra library and plugin directory
+       # extra library and plugin directories
+       libdirs => [],
+       # extra library and plugin directory (searched after libdirs)
        libdir => '/home/joe/.ikiwiki',
        # environment variables
-       ENV => {},
-       # regexp of source files to ignore
-       #exclude => '\\.wav$',
+       #ENV => '',
+       # time zone name
+       timezone => ':/etc/localtime',
+       # regexp of normally excluded files to include
+       #include => '^\\.htaccess$',
+       # regexp of files that should be skipped
+       #exclude => '^(*\\.private|Makefile)$',
        # 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,
+       # cookie control
+       cookiejar => {
+         file => '/home/joe/.ikiwiki/cookies'
+       },
+       # set custom user agent string for outbound HTTP requests e.g. when fetching aggregated RSS feeds
+       useragent => 'ikiwiki/3.20170111',
+       # theme has a responsive layout? (mobile-optimized)
+       responsive_layout => 1,
+       # try harder to produce deterministic output
+       deterministic => 0,
+
+       ######################################################################
+       # core plugins
+       #   (editpage, git, htmlscrubber, inline, link, meta, parentlinks,
+       #    templatebody)
+       ######################################################################
 
        # git plugin
        # git hook to generate
        git_wrapper => '/home/joe/git/wikirepo/hooks/post-update',
+       # shell command for git_wrapper to run, in the background
+       #git_wrapper_background_command => 'git push github',
        # mode for git_wrapper (can safely be made suid)
        #git_wrappermode => '06755',
        # git pre-receive hook to generate
@@ -99,47 +134,127 @@ use IkiWiki::Setup::Standard {
        # branch that the wiki is stored in
        gitmaster_branch => 'master',
 
-       # aggregate plugin
-       # enable aggregation to internal pages?
-       aggregateinternal => 1,
-       # allow aggregation to be triggered via the web?
-       #aggregate_webtrigger => 0,
+       # htmlscrubber plugin
+       # PageSpec specifying pages not to scrub
+       #htmlscrubber_skip => '!*/Discussion',
+
+       # inline plugin
+       # enable rss feeds by default?
+       rss => 1,
+       # enable atom feeds by default?
+       atom => 1,
+       # 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 => [],
+
+       ######################################################################
+       # auth plugins
+       #   (anonok, blogspam, httpauth, lockedit, moderatedcomments,
+       #    opendiscussion, openid, passwordauth, signinedit)
+       ######################################################################
 
        # 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 => 'mimetype(image/*)',
-       # virus checker program (reads STDIN, returns nonzero if virus found)
-       #virus_checker => 'clamdscan -',
-
        # blogspam plugin
        # PageSpec of pages to check for spam
        #blogspam_pagespec => 'postcomment(*)',
        # options to send to blogspam server
        #blogspam_options => 'blacklist=1.2.3.4,blacklist=8.7.6.5,max-links=10',
-       # blogspam server XML-RPC url
+       # blogspam server JSON url
        #blogspam_server => '',
 
-       # 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',
+       # httpauth plugin
+       # url to redirect to when authentication is needed
+       #cgiauthurl => 'http://example.com/wiki/auth/ikiwiki.cgi',
+       # PageSpec of pages where only httpauth will be used for authentication
+       #httpauth_pagespec => '!*/Discussion',
 
-       # calendar plugin
-       # base of the archives hierarchy
-       archivebase => 'notes',
+       # lockedit plugin
+       # PageSpec controlling which pages are locked
+       locked_pages => '!*/Discussion',
 
-       # camelcase plugin
-       # list of words to not turn into links
-       #camelcase_ignore => [],
+       # moderatedcomments plugin
+       # PageSpec matching users or comment locations to moderate
+       #moderate_pagespec => '*',
+
+       # openid plugin
+       # url pattern of openid realm (default is cgiurl)
+       #openid_realm => '',
+       # url to ikiwiki cgi to use for openid authentication (default is cgiurl)
+       #openid_cgiurl => '',
+
+       # passwordauth plugin
+       # a password that must be entered when signing up for an account
+       account_creation_password => 'permission314159',
+       # cost of generating a password using Authen::Passphrase::BlowfishCrypt
+       #password_cost => 8,
+
+       ######################################################################
+       # format plugins
+       #   (creole, highlight, hnb, html, mdwn, otl, rawhtml, rst,
+       #    textile, txt)
+       ######################################################################
+
+       # highlight plugin
+       # types of source files to syntax highlight
+       #tohighlight => '.c .h .cpp .pl .py Makefile:make',
+       # location of highlight's filetypes.conf
+       filetypes_conf => '/etc/highlight/filetypes.conf',
+       # location of highlight's langDefs directory
+       langdefdir => '/usr/share/highlight/langDefs',
+
+       # mdwn plugin
+       # enable multimarkdown features?
+       #multimarkdown => 0,
+       # disable use of markdown discount?
+       #nodiscount => 0,
+
+       ######################################################################
+       # special-purpose plugins
+       #   (osm, underlay)
+       ######################################################################
+
+       # osm plugin
+       # the default zoom when you click on the map link
+       #osm_default_zoom => 15,
+       # the icon shown on links and on the main map
+       #osm_default_icon => 'ikiwiki/images/osm.png',
+       # the alt tag of links, defaults to empty
+       #osm_alt => '',
+       # the output format for waypoints, can be KML, GeoJSON or CSV (one or many, comma-separated)
+       #osm_format => 'KML',
+       # the icon attached to a tag, displayed on the map for tagged pages
+       #osm_tag_default_icon => 'icon.png',
+       # Url for the OpenLayers.js file
+       #osm_openlayers_url => 'http://www.openlayers.org/api/OpenLayers.js',
+       # Layers to use in the map. Can be either the 'OSM' string or a type option for Google maps (GoogleNormal, GoogleSatellite, GoogleHybrid or GooglePhysical). It can also be an arbitrary URL in a syntax acceptable for OpenLayers.Layer.OSM.url parameter.
+       #osm_layers => {
+       #  OSM => 'GoogleSatellite'
+       #},
+       # Google maps API key, Google layer not used if missing, see https://code.google.com/apis/console/ to get an API key
+       #osm_google_apikey => '',
+
+       # underlay plugin
+       # extra underlay directories to add
+       add_underlays => [],
+
+       ######################################################################
+       # web plugins
+       #   (404, attachment, comments, editdiff, edittemplate, google,
+       #    goto, mirrorlist, remove, rename, repolist, search, theme,
+       #    userlist, websetup, wmd)
+       ######################################################################
+
+       # attachment plugin
+       # enhanced PageSpec specifying what attachments are allowed
+       allowed_attachments => 'mimetype(image/*)',
+       # virus checker program (reads STDIN, returns nonzero if virus found)
+       #virus_checker => 'clamdscan -',
 
        # comments plugin
        # PageSpec of pages where comments are allowed
@@ -154,72 +269,106 @@ use IkiWiki::Setup::Standard {
        #comments_allowauthor => 0,
        # commit comments to the VCS
        comments_commit => 1,
+       # Restrict formats for comments to (no restriction if empty)
+       comments_allowformats => '',
 
-       # darcs plugin
-       # wrapper to generate (set as master repo apply hook)
-       #darcs_wrapper => '/darcs/repo/_darcs/ikiwiki-wrapper',
-       # mode for darcs_wrapper (can safely be made suid)
-       #darcs_wrappermode => '06755',
-       # darcsweb url to show file history ([[file]] substituted)
-       #historyurl => 'http://darcs.example.com/darcsweb.cgi?r=wiki;a=filehistory;f=[[file]]',
-       # darcsweb url to show a diff ([[hash]] and [[file]] substituted)
-       #diffurl => 'http://darcs.example.com/darcsweb.cgi?r=wiki;a=filediff;h=[[hash]];f=[[file]]',
+       # mirrorlist plugin
+       # list of mirrors
+       #mirrorlist => {},
+       # generate links that point to the mirrors' ikiwiki CGI
+       #mirrorlist_use_cgi => 1,
 
-       # highlight plugin
-       # types of source files to syntax highlight
-       #tohighlight => '.c .h .cpp .pl .py Makefile:make',
+       # repolist plugin
+       # URIs of repositories containing the wiki's source
+       repositories => [qw{http://joe.milbourn.org.uk/clone/wikirepo}],
 
-       # httpauth plugin
-       # url to redirect to when authentication is needed
-       #cgiauthurl => 'http://example.com/wiki/auth/ikiwiki.cgi',
+       # search plugin
+       # path to the omega cgi program
+       omega_cgi => '/usr/lib/cgi-bin/omega/omega',
+       # use google site search rather than internal xapian index?
+       #google_search => 1,
 
-       # inline plugin
-       # enable rss feeds by default?
-       rss => 1,
-       # enable atom feeds by default?
-       atom => 1,
-       # 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 => [],
+       # theme plugin
+       # name of theme to enable
+       #theme => 'actiontabs',
+
+       # websetup plugin
+       # list of plugins that cannot be enabled/disabled via the web interface
+       #websetup_force_plugins => [],
+       # list of additional setup field keys to treat as unsafe
+       websetup_unsafe => [],
+       # show unsafe settings, read-only, in web interface?
+       websetup_show_unsafe => 1,
+
+       ######################################################################
+       # widget plugins
+       #   (calendar, color, conditional, cutpaste, date, format, fortune,
+       #    graphviz, haiku, headinganchors, img, linkmap, listdirectives,
+       #    map, more, orphans, pagecount, pagestats, poll, polygen,
+       #    postsparkline, progress, shortcut, sparkline, table, template,
+       #    teximg, toc, toggle, version)
+       ######################################################################
+
+       # calendar plugin
+       # base of the archives hierarchy
+       # archivebase => 'notes',
+       # PageSpec of pages to include in the archives, if option `calendar_autocreate` is true.
+       archive_pagespec => '*',
+       # autocreate new calendar pages?
+       calendar_autocreate => 0,
+       # if set, when building calendar pages, also build pages of year and month when no pages were published (building empty calendars).
+       calendar_fill_gaps => 0,
+
+       # img plugin
+       # Image formats to process (jpeg, png, gif, svg, pdf or 'everything' to accept all)
+       #img_allowed_formats => '',
 
        # 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',
+       # teximg plugin
+       # Should teximg use dvipng to render, or dvips and convert?
+       #teximg_dvipng => '',
+       # LaTeX prefix for teximg plugin
+       #teximg_prefix => '\\documentclass{article}
+       #\\usepackage[utf8]{inputenc}
+       #\\usepackage{amsmath}
+       #\\usepackage{amsfonts}
+       #\\usepackage{amssymb}
+       #\\pagestyle{empty}
+       #\\begin{document}
+       #',
+       # LaTeX postfix for teximg plugin
+       #teximg_postfix => '\\end{document}',
 
-       # mdwn plugin
-       # enable multimarkdown features?
-       #multimarkdown => 0,
+       ######################################################################
+       # other plugins
+       #   (aggregate, autoindex, brokenlinks, camelcase, ddate, embed,
+       #    favicon, filecheck, flattr, goodstuff, htmlbalance,
+       #    localstyle, loginselector, notifyemail, pagetemplate, pingee,
+       #    pinger, prettydate, recentchanges, recentchangesdiff,
+       #    relativedate, rsync, sidebar, smiley, sortnaturally, tag,
+       #    testpagespec, trail, transient)
+       ######################################################################
 
-       # 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]]',
+       # aggregate plugin
+       # enable aggregation to internal pages?
+       aggregateinternal => 1,
+       # allow aggregation to be triggered via the web?
+       #aggregate_webtrigger => 0,
 
-       # mirrorlist plugin
-       # list of mirrors
-       #mirrorlist => {},
+       # autoindex plugin
+       # commit autocreated index pages
+       autoindex_commit => 1,
 
-       # moderatedcomments plugin
-       # Moderate comments of logged-in users?
-       #moderate_users => 1,
+       # camelcase plugin
+       # list of words to not turn into links
+       #camelcase_ignore => [],
 
-       # passwordauth plugin
-       # a password that must be entered when signing up for an account
-       account_creation_password => 'permission314159',
-       # cost of generating a password using Authen::Passphrase::BlowfishCrypt
-       #password_cost => 8,
+       # flattr plugin
+       # userid or user name to use by default for Flattr buttons
+       #flattr_userid => 'joeyh',
 
        # pinger plugin
        # how many seconds to try pinging before timing out
@@ -235,69 +384,19 @@ use IkiWiki::Setup::Standard {
        # number of changes to track
        recentchangesnum => 100,
 
-       # repolist plugin
-       # URIs of repositories containing the wiki's source
-       repositories => [qw{http://joe.milbourn.org.uk/clone/wikirepo}],
-
        # rsync plugin
        # command to run to sync updated pages
        #rsync_command => 'rsync -qa --delete . user@host:/path/to/docroot/',
 
-       # 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&amp;r1=[[r1]]&amp;r2=[[r2]]',
+       # sidebar plugin
+       # show sidebar page on all pages?
+       #global_sidebars => 1,
 
        # 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 => '',
-
-       # underlay plugin
-       # extra underlay directories to add
-       add_underlays => [],
-       # extra template directories to add
-       #add_templates => [qw{/home/joe/.ikiwiki/templates}],
-
-       # 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,
+       # autocreate new tag pages?
+       #tag_autocreate => 1,
+       # commit autocreated tag pages
+       tag_autocreate_commit => '',
 }