diff options
author | Simon McVittie <smcv@ http://smcv.pseudorandom.co.uk/> | 2009-01-18 16:42:12 +0000 |
---|---|---|
committer | Simon McVittie <smcv@ http://smcv.pseudorandom.co.uk/> | 2009-01-18 16:42:12 +0000 |
commit | b7cd40c1bb0e0c88155c0948f8475db3479153c8 (patch) | |
tree | 3733eec42ec13bb471ff2dc8a68cf05f8c5f560f /IkiWiki | |
parent | e98f1b246a91f499d332f2d6e42d45a88d368681 (diff) | |
download | ikiwiki-b7cd40c1bb0e0c88155c0948f8475db3479153c8.tar ikiwiki-b7cd40c1bb0e0c88155c0948f8475db3479153c8.tar.gz |
Add underlay plugin
Diffstat (limited to 'IkiWiki')
-rw-r--r-- | IkiWiki/Plugin/underlay.pm | 40 |
1 files changed, 40 insertions, 0 deletions
diff --git a/IkiWiki/Plugin/underlay.pm b/IkiWiki/Plugin/underlay.pm new file mode 100644 index 000000000..380d418fb --- /dev/null +++ b/IkiWiki/Plugin/underlay.pm @@ -0,0 +1,40 @@ +#!/usr/bin/perl +package IkiWiki::Plugin::underlay; +# Copyright © 2008 Simon McVittie <http://smcv.pseudorandom.co.uk/> +# Licensed under the GNU GPL, version 2, or any later version published by the +# Free Software Foundation + +use warnings; +use strict; +use IkiWiki 3.00; + +sub import { + hook(type => "getsetup", id => "underlay", call => \&getsetup); + hook(type => "checkconfig", id => "underlay", call => \&checkconfig); +} + +sub getsetup () { + return + plugin => { + safe => 0, + rebuild => undef, + }, + add_underlays => { + type => "string", + default => [], + description => "extra underlay directories to add", + advanced => 1, + safe => 0, + rebuild => 1, + }, +} + +sub checkconfig () { + return unless exists $config{add_underlays}; + + foreach my $dir (@{$config{add_underlays}}) { + add_underlay($dir); + } +} + +1; |