summaryrefslogtreecommitdiff
path: root/ikiwiki.setup
blob: 193037dd51cef973ac633b194f9dd2b9dabe831f (plain)
  1. #!/usr/bin/perl
  2. # Setup file for ikiwiki.
  3. #
  4. # Passing this to ikiwiki --setup will make ikiwiki generate
  5. # wrappers and build the wiki.
  6. #
  7. # Remember to re-run ikiwiki --setup any time you edit this file.
  8. our ($basedir, $builddir, $domain, $gitrepo);
  9. BEGIN {
  10. # git hook requires full path as basedir: $ENV{'HOME'} . '/mywiki'
  11. $basedir = $ENV{'PWD'};
  12. $builddir = $ENV{'BUILDDIR'} || $basedir . '/build';
  13. $domain = 'example.org';
  14. $gitrepo = 'wiki';
  15. }
  16. use IkiWiki::Setup::Standard {
  17. # name of the wiki
  18. wikiname => 'MyWiki',
  19. # contact email for wiki
  20. #adminemail => 'me@' . $domain,
  21. # users who are wiki admins
  22. adminuser => [],
  23. # users who are banned from the wiki
  24. banned_users => [],
  25. # where the source of the wiki is located
  26. srcdir => $basedir . '/content_dummy',
  27. # where to build the wiki
  28. destdir => $builddir . '/html',
  29. # base url to the wiki
  30. url => 'http://wiki.' . $domain . '/',
  31. # url to the ikiwiki.cgi
  32. cgiurl => 'http://wiki.' . $domain . '/ikiwiki.en.cgi',
  33. # cgi wrapper to generate
  34. cgi_wrapper => $builddir . '/cgi/ikiwiki.en.cgi',
  35. # mode for cgi_wrapper (can safely be made suid)
  36. cgi_wrappermode => '00755',
  37. # rcs backend to use
  38. rcs => 'git',
  39. # plugins to add to the default configuration
  40. add_plugins => [qw{
  41. }],
  42. # plugins to disable
  43. disable_plugins => [qw{
  44. editpage
  45. }],
  46. # location of template files
  47. templatedir => $basedir . '/templates',
  48. # base wiki source location
  49. underlaydirs => [
  50. $basedir . '/content',
  51. ],
  52. underlaydir => $basedir . '/basewiki',
  53. # display verbose messages when building?
  54. #verbose => 1,
  55. # log to syslog?
  56. #syslog => 1,
  57. # create output files named page/index.html?
  58. usedirs => 1,
  59. # use '!'-prefixed preprocessor directives?
  60. prefix_directives => 1,
  61. # use page/index.mdwn source files
  62. indexpages => 0,
  63. # enable Discussion pages?
  64. discussion => 1,
  65. # only send cookies over SSL connections?
  66. sslcookie => 0,
  67. # extension to use for new pages
  68. default_pageext => 'mdwn',
  69. # extension to use for html files
  70. htmlext => 'en.html',
  71. # strftime format string to display date
  72. timeformat => '%c',
  73. # UTF-8 locale to use
  74. locale => 'en_US.UTF-8',
  75. # put user pages below specified page
  76. userdir => '',
  77. # how many backlinks to show before hiding excess (0 to show all)
  78. numbacklinks => 10,
  79. # attempt to hardlink source files? (optimisation for large files)
  80. hardlink => 0,
  81. # force ikiwiki to use a particular umask
  82. #umask => 022,
  83. # extra library and plugin directory
  84. libdir => $basedir . '/perl',
  85. # environment variables
  86. ENV => {},
  87. # regexp of source files to ignore
  88. #exclude => '\\.wav$',
  89. # specifies the characters that are allowed in source filenames
  90. wiki_file_chars => '-[:alnum:]+/.:_',
  91. # allow symlinks in the path leading to the srcdir (potentially insecure)
  92. allow_symlinks_before_srcdir => 0,
  93. # aggregate plugin
  94. # enable aggregation to internal pages?
  95. #aggregateinternal => 0,
  96. # allow aggregation to be triggered via the web?
  97. #aggregate_webtrigger => 0,
  98. # amazon_s3 plugin
  99. # public access key id
  100. #amazon_s3_key_id => 'XXXXXXXXXXXXXXXXXXXX',
  101. # file holding secret key (must not be readable by others!)
  102. #amazon_s3_key_id => 's3_key',
  103. # globally unique name of bucket to store wiki in
  104. #amazon_s3_bucket => 'mywiki',
  105. # a prefix to prepend to each page name
  106. #amazon_s3_prefix => 'wiki/',
  107. # which S3 datacenter to use (leave blank for default)
  108. #amazon_s3_location => 'EU',
  109. # store each index file twice? (allows urls ending in "/index.html" and "/")
  110. #amazon_s3_dupindex => 0,
  111. # anonok plugin
  112. # PageSpec to limit which pages anonymous users can edit
  113. #anonok_pagespec => '*/discussion',
  114. # attachment plugin
  115. # enhanced PageSpec specifying what attachments are allowed
  116. #allowed_attachments => 'virusfree() and mimetype(image/*) and maxsize(50kb)',
  117. # virus checker program (reads STDIN, returns nonzero if virus found)
  118. #virus_checker => 'clamdscan -',
  119. # bzr plugin
  120. # bzr post-commit hook to generate
  121. #bzr_wrapper => '',
  122. # mode for bzr_wrapper (can safely be made suid)
  123. #bzr_wrappermode => '06755',
  124. # url to show file history, using loggerhead ([[file]] substituted)
  125. #historyurl => '',
  126. # url to view a diff, using loggerhead ([[file]] and [[r2]] substituted)
  127. #diffurl => 'http://example.org/revision?start_revid=[[r2]]#[[file]]-s',
  128. # calendar plugin
  129. # base of the archives hierarchy
  130. #archivebase => 'archives',
  131. # git plugin
  132. # git hook to generate
  133. git_wrapper => $builddir . '/git/post-update-ikiwiki',
  134. # mode for git_wrapper (can safely be made suid)
  135. git_wrappermode => '06755',
  136. # gitweb url to show file history ([[file]] substituted)
  137. #historyurl => 'http://source.' . $domain . '/gitweb.cgi?p=' . $gitrepo . '.git;a=history;f=[[file]]', # ;hb=master
  138. # gitweb url to show a diff ([[sha1_to]], [[sha1_from]], [[sha1_parent]], and [[file]] substituted)
  139. #diffurl => 'http://source.' . $domain . '/gitweb.cgi?p=' . $gitrepo . '.git;a=blobdiff;h=[[sha1_to]];hp=[[sha1_from]];hb=[[sha1_parent]];f=[[file]]',
  140. # where to pull and push changes (set to empty string to disable)
  141. #gitorigin_branch => 'samplewiki',
  142. # branch that the wiki is stored in
  143. #gitmaster_branch => 'master',
  144. # htmlscrubber plugin
  145. # PageSpec specifying pages not to scrub
  146. #htmlscrubber_skip => '!*/Discussion',
  147. # inline plugin
  148. # enable rss feeds by default?
  149. #rss => 0,
  150. # enable atom feeds by default?
  151. #atom => 0,
  152. # allow rss feeds to be used?
  153. #allowrss => 0,
  154. # allow atom feeds to be used?
  155. #allowatom => 0,
  156. # urls to ping (using XML-RPC) on feed update
  157. #pingurl => 'http://rpc.technorati.com/rpc/ping',
  158. # listdirectives plugin
  159. # directory in srcdir that contains directive descriptions
  160. #directive_description_dir => 'ikiwiki/directive',
  161. # lockedit plugin
  162. # PageSpec controlling which pages are locked
  163. #locked_pages => '!*/Discussion',
  164. # mdwn plugin
  165. # enable multimarkdown features?
  166. #multimarkdown => 0,
  167. # mercurial plugin
  168. # mercurial post-commit hook to generate
  169. #mercurial_wrapper => '',
  170. # mode for mercurial_wrapper (can safely be made suid)
  171. #mercurial_wrappermode => '06755',
  172. # url to hg serve'd repository, to show file history ([[file]] substituted)
  173. #historyurl => 'http://example.org:8000/log/tip/[[file]]',
  174. # url to hg serve'd repository, to show diff ([[file]] and [[r2]] substituted)
  175. #diffurl => 'http://localhost:8000/?fd=[[r2]];file=[[file]]',
  176. # mirrorlist plugin
  177. # list of mirrors
  178. #mirrorlist => {},
  179. # openid plugin
  180. # an url where users can signup for an OpenID
  181. #openidsignup => 'http://myopenid.com/',
  182. # passwordauth plugin
  183. # a password that must be entered when signing up for an account
  184. #account_creation_password => 's3cr1t',
  185. # cost of generating a password using Authen::Passphrase::BlowfishCrypt
  186. #password_cost => 8,
  187. # pinger plugin
  188. # how many seconds to try pinging before timing out
  189. #pinger_timeout => 15,
  190. # prettydate plugin
  191. # format to use to display date
  192. #prettydateformat => '%X, %B %o, %Y',
  193. # recentchanges plugin
  194. # name of the recentchanges page
  195. #recentchangespage => 'recentchanges',
  196. # number of changes to track
  197. #recentchangesnum => 100,
  198. # search plugin
  199. # path to the omega cgi program
  200. #omega_cgi => '/usr/lib/cgi-bin/omega/omega',
  201. # svn plugin
  202. # subversion repository location
  203. #svnrepo => '/svn/wiki',
  204. # path inside repository where the wiki is located
  205. #svnpath => 'trunk',
  206. # svn post-commit hook to generate
  207. #svn_wrapper => '/svn/wikirepo/hooks/post-commit',
  208. # mode for svn_wrapper (can safely be made suid)
  209. #svn_wrappermode => '04755',
  210. # viewvc url to show file history ([[file]] substituted)
  211. #historyurl => 'http://svn.example.org/trunk/[[file]]',
  212. # viewvc url to show a diff ([[file]], [[r1]], and [[r2]] substituted)
  213. #diffurl => 'http://svn.example.org/trunk/[[file]]?root=wiki&r1=[[r1]]&r2=[[r2]]',
  214. # tag plugin
  215. # parent page tags are located under
  216. #tagbase => 'tag',
  217. # teximg plugin
  218. # Should teximg use dvipng to render, or dvips and convert?
  219. #teximg_dvipng => '',
  220. # LaTeX prefix for teximg plugin
  221. #teximg_prefix => '\\documentclass{article}
  222. #\\usepackage{amsmath}
  223. #\\usepackage{amsfonts}
  224. #\\usepackage{amssymb}
  225. #\\pagestyle{empty}
  226. #\\begin{document}
  227. #',
  228. # LaTeX postfix for teximg plugin
  229. #teximg_postfix => '\\end{document}',
  230. # tla plugin
  231. # tla post-commit hook to generate
  232. #tla_wrapper => '',
  233. # mode for tla_wrapper (can safely be made suid)
  234. #tla_wrappermode => '06755',
  235. # url to show file history ([[file]] substituted)
  236. #historyurl => '',
  237. # url to show a diff ([[file]] and [[rev]] substituted)
  238. #diffurl => '',
  239. # typography plugin
  240. # Text::Typography attributes value
  241. #typographyattributes => '3',
  242. # websetup plugin
  243. # list of plugins that cannot be enabled/disabled via the web interface
  244. #websetup_force_plugins => [],
  245. # show unsafe settings, read-only, in web interface?
  246. #websetup_show_unsafe => 1,
  247. # varioki plugin (strings are eval'ed: double-quote actual strings!)
  248. #varioki => {
  249. # 'branding_logo_text' => '"Example Website"',
  250. # 'branding_logo' => '"logo.png"',
  251. # 'branding_logo_tagline' => '"Yet another ikiwiki site!"',
  252. #},
  253. }