1 From f835e03e88ba3cb8de941c7cd0862c57afe22da5 Mon Sep 17 00:00:00 2001
2 From: =?UTF-8?q?Elan=20Ruusam=C3=A4e?= <glen@delfi.ee>
3 Date: Sun, 24 Jun 2012 12:23:30 +0300
4 Subject: [PATCH] introduce DOKU_DATA and DOKU_CACHE variables for packaging
6 add new constants, that makes packaging (rpm, deb) dokuwiki better fit
7 to [FHS standards](http://www.pathname.com/fhs/pub/fhs-2.3.html):
8 - DOKU_DATA - /var/lib/dokuwiki/
9 - DOKU_CACHE - /var/cache/dokuwiki/
11 inc/init.php | 8 +++++++-
12 install.php | 26 ++++++++++++++------------
13 2 files changed, 21 insertions(+), 13 deletions(-)
15 diff --git a/inc/init.php b/inc/init.php
16 index 403fbe4..29d96b2 100644
19 @@ -23,7 +23,13 @@ if(!defined('DOKU_INC')) define('DOKU_INC',fullpath(dirname(__FILE__).'/../').'/
20 if(!defined('DOKU_PLUGIN')) define('DOKU_PLUGIN',DOKU_INC.'lib/plugins/');
22 // define config path (packagers may want to change this to /etc/dokuwiki/)
23 -if(!defined('DOKU_CONF')) define('DOKU_CONF',DOKU_INC.'conf/');
24 +if(!defined('DOKU_CONF')) define('DOKU_CONF','/etc/webapps/dokuwiki/');
26 +// define path where variable data is saved (packagers may want to change this to /var/lib/dokuwiki/)
27 +if(!defined('DOKU_DATA')) define('DOKU_DATA','/var/lib/dokuwiki/');
29 +// define path where cache data saved (packagers may want to change this to /var/cache/dokuwiki/)
30 +if(!defined('DOKU_CACHE')) define('DOKU_CACHE','/var/cache/dokuwiki/');
32 // check for error reporting override or set error reporting to sane values
33 if (!defined('DOKU_E_LEVEL') && @file_exists(DOKU_CONF.'report_e_all')) {
35 'mediaolddir' => 'media_attic',
37 'mediametadir' => 'media_meta',
38 - 'cachedir' => 'cache',
39 + 'cachedir' => '/var/cache/dokuwiki',
40 'indexdir' => 'index',
44 foreach($paths as $c => $p) {
45 - $path = empty($conf[$c]) ? $conf['savedir'].'/'.$p : $conf[$c];
46 + $path = empty($conf[$c]) ? $p : $conf[$c];
47 + $path = $path[0] == '/' ? $path : $conf['savedir'].'/'.$path;
48 $conf[$c] = init_path($path);
50 nice_die("The $c ('$p') at $path is not found, isn't accessible or writable.
51 diff --git a/install.php b/install.php
52 index 80e9ad4..fe72513 100644
57 if(!defined('DOKU_INC')) define('DOKU_INC',dirname(__FILE__).'/');
58 if(!defined('DOKU_CONF')) define('DOKU_CONF',DOKU_INC.'conf/');
59 -if(!defined('DOKU_LOCAL')) define('DOKU_LOCAL',DOKU_INC.'conf/');
60 +if(!defined('DOKU_LOCAL')) define('DOKU_LOCAL',DOKU_CONF);
61 +if(!defined('DOKU_DATA')) define('DOKU_DATA',DOKU_INC.'data');
62 +if(!defined('DOKU_CACHE')) define('DOKU_CACHE',DOKU_DATA.'cache');
64 require_once(DOKU_INC.'inc/PassHash.class.php');
66 @@ -428,17 +430,17 @@ function check_permissions(){
70 - 'data' => DOKU_INC.'data',
71 - 'pages' => DOKU_INC.'data/pages',
72 - 'attic' => DOKU_INC.'data/attic',
73 - 'media' => DOKU_INC.'data/media',
74 - 'media_attic' => DOKU_INC.'data/media_attic',
75 - 'media_meta' => DOKU_INC.'data/media_meta',
76 - 'meta' => DOKU_INC.'data/meta',
77 - 'cache' => DOKU_INC.'data/cache',
78 - 'locks' => DOKU_INC.'data/locks',
79 - 'index' => DOKU_INC.'data/index',
80 - 'tmp' => DOKU_INC.'data/tmp'
81 + 'data' => DOKU_DATA,
82 + 'pages' => DOKU_DATA.'pages',
83 + 'attic' => DOKU_DATA.'attic',
84 + 'media' => DOKU_DATA.'media',
85 + 'media_attic' => DOKU_DATA.'media_attic',
86 + 'media_meta' => DOKU_DATA.'media_meta',
87 + 'meta' => DOKU_DATA.'meta',
88 + 'cache' => DOKU_CACHE,
89 + 'locks' => DOKU_DATA.'locks',
90 + 'index' => DOKU_DATA.'index',
91 + 'tmp' => DOKU_DATA.'tmp'