]> git.pld-linux.org Git - packages/dokuwiki.git/blame - dokuwiki.spec
- include @DIFFPAGE@ placeholder in email template
[packages/dokuwiki.git] / dokuwiki.spec
CommitLineData
b54d08c7
ER
1# TODO
2# - external: http://adldap.sourceforge.net/
3%define subver 2009-12-25
4%define ver %(echo %{subver} | tr -d -)
1807986d 5%define php_min_version 5.1.2
067355f7 6%include /usr/lib/rpm/macros.php
d73655e0 7Summary: PHP-based Wiki webapplication
b9cde090 8Summary(pl.UTF-8): Aplikacja WWW Wiki oparta na PHP
d73655e0 9Name: dokuwiki
988b16db 10Version: %{ver}
b54d08c7 11Release: 0.16
d73655e0
SP
12License: GPL v2
13Group: Applications/WWW
b54d08c7
ER
14Source0: http://www.splitbrain.org/_media/projects/dokuwiki/%{name}-%{subver}.tgz
15# Source0-md5: 1428c896de83bd2a754efd18919d0594
99646b81
ER
16Source1: %{name}-apache.conf
17Source2: %{name}-lighttpd.conf
db16581c
ER
18Source3: jude.png
19# Source3-md5: 623344128960e18f86097dfee213ad4a
20Source4: eventum.gif
db16581c
ER
21Source5: http://forum.skype.com/style_emoticons/skype/skype.png
22# Source5-md5: 25c355be038267dc9fdb724b628000b9
dff16d0a
ER
23Source6: pld_button.png
24# Source6-md5: 185afa921e81bd726b9f0f9f0909dc6e
107aba6f 25Patch66: %{name}-config.patch
641b29cc 26Patch0: %{name}-paths.patch
59f818e0 27Patch2: %{name}-mysqlauth.patch
0a785872 28Patch3: %{name}-config-allow-require.patch
48993817 29Patch4: %{name}-geshi.patch
9e409dbc 30Patch5: %{name}-http_auth-option.patch
ff1d703f 31Patch6: %{name}-nice_exit.patch
19f4a739 32Patch7: %{name}-mail-headerencodequotes.patch
e79c8784 33Patch8: %{name}-notify-respect-minor.patch
6bda8de4 34Patch9: %{name}-media-userinfo.patch
aea2faa7 35Patch10: %{name}-mailtext.patch
1bf63c70 36Patch11: %{name}-notifyns.patch
e21b2065 37Patch12: %{name}-mailthreads.patch
369ed483 38Patch13: %{name}-media-directlink.patch
e5ce8ca9 39Patch14: interwiki-outputonly.patch
ae5a5f57 40Patch15: simplepie.patch
bba17ba4 41Patch18: install.patch
dff16d0a 42Patch19: pld-branding.patch
a3e2b241 43Patch20: fixprivilegeescalationbug.diff
638afb06 44Patch21: task-1821.patch
3aa37b5a 45URL: http://www.dokuwiki.org/dokuwiki
067355f7 46BuildRequires: rpm-php-pearprov >= 4.4.2-11
db16581c 47BuildRequires: rpmbuild(macros) >= 1.520
1807986d
ER
48Requires: php-common >= 4:%{php_min_version}
49Requires: php-geshi >= 1.0.7.19
988b16db 50Requires: php-simplepie >= 1.0.1
bd481dc8 51Requires: php-xml
d73655e0 52Requires: webapps
105a71ba 53Requires: webserver(access)
24a3d556 54Requires: webserver(alias)
bd481dc8
ER
55Requires: webserver(php)
56Suggests: php-gd
083e173b 57# can use gz compression to store attic pages
bd481dc8 58Suggests: php-zlib
d73655e0
SP
59BuildArch: noarch
60BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
61
62%define _webapps /etc/webapps
63%define _webapp %{name}
64%define _sysconfdir %{_webapps}/%{_webapp}
65%define _appdir %{_datadir}/%{_webapp}
881190a4 66%define _localstatedir /var/lib/%{name}
db16581c 67%define find_lang %{_usrlibrpm}/dokuwiki-find-lang.sh %{buildroot}
d73655e0 68
067355f7 69# bad depsolver
1807986d
ER
70%define _noautopear 'pear(/usr/share/php/geshi.php)'
71
72# exclude optional php dependencies
73%define _noautophp 'php(bzip2)' php(zip) php(date) php(ftp) php(hash) php(ldap) php(mbstring) php(mysql) php(pgsql) php(tokenizer)
74
75# we don't want php(xxx) being resolved to php-xxx
76%define _noautoreqdep '^php(.*)'
77
78%define _noautoreq %{_noautophp} %{_noautopear}
067355f7 79
d73655e0
SP
80%description
81DokuWiki is a standards compliant, simple to use Wiki, mainly aimed at
82creating documentation of any kind. It is targeted at developer teams,
83workgroups and small companies. It has a simple but powerful syntax
84which makes sure the datafiles remain readable outside the Wiki and
85eases the creation of structured texts. All data is stored in plain
b9cde090
JB
86text files - no database is required.
87
88%description -l pl.UTF-8
89DokuWiki to zgodne ze standardami i proste w użyciu Wiki, przeznaczone
90głównie do tworzenia dokumentów wszelkiego rodzaju. Jest przeznaczone
91dla zespołów programistów, grup roboczych i małych firm. Ma prostą,
92ale mającą duże możliwości składnię, dzięki której pliki danych
93pozostają czytelne poza Wiki, a także ułatwiającą tworzenie tekstów
94strukturalnych. Wszystkie dane są przechowywane w plikach tekstowych -
95nie jest wymagana baza danych.
d73655e0 96
641b29cc 97%package setup
4c94baaa
JB
98Summary: DokuWiki setup package
99Summary(pl.UTF-8): Pakiet do wstępnej konfiguracji DokuWiki
641b29cc
ER
100Group: Applications/WWW
101Requires: %{name} = %{version}-%{release}
102
103%description setup
4c94baaa 104Install this package to configure initial DokuWiki installation. You
641b29cc
ER
105should uninstall this package when you're done, as it considered
106insecure to keep the setup files in place.
107
108%description setup -l pl.UTF-8
4c94baaa 109Ten pakiet należy zainstalować w celu wstępnej konfiguracji DokuWiki
641b29cc
ER
110po pierwszej instalacji. Potem należy go odinstalować, jako że
111pozostawienie plików instalacyjnych mogłoby być niebezpieczne.
112
d73655e0 113%prep
b54d08c7 114%setup -q -n %{name}-%{subver}
641b29cc 115%patch0 -p1
59f818e0 116%patch2 -p1
0a785872 117%patch3 -p1
48993817 118%patch4 -p1
9e409dbc 119%patch5 -p1
ff1d703f 120%patch6 -p1
19f4a739 121%patch7 -p1
e79c8784 122%patch8 -p1
6bda8de4 123%patch9 -p1
aea2faa7 124%patch10 -p1
1bf63c70 125%patch11 -p1
e21b2065 126%patch12 -p1
369ed483 127%patch13 -p1
e5ce8ca9 128%patch14 -p1
ae5a5f57 129%patch15 -p1
bba17ba4 130%patch18 -p1
a3e2b241
ER
131%patch19 -p1
132%patch20 -p1
638afb06 133%patch21 -p1
d73655e0 134
107aba6f
ER
135%patch66 -p1
136
7df7f76f 137find -name _dummy | xargs rm
a3e2b241 138rm lib/index.html lib/plugins/index.html inc/lang/.htaccess
7df7f76f 139
2d01b400
ER
140# safe file
141mv conf/words.aspell{.dist,}
142
b3528e0c 143# use system geshi package
48993817 144rm -f inc/geshi.php
b3528e0c
ER
145rm -rf inc/geshi
146
ae5a5f57
ER
147# use system simplepie package
148rm -f inc/SimplePie.php
149
7df7f76f
ER
150# our plugins dir is not writable anyway, nothing to convert
151rm -rf lib/plugins/upgradeplugindirectory
152
107aba6f
ER
153# flash source
154rm -rf lib/_fla
155
08b33253
ER
156# cleanup backups after patching
157find . '(' -name '*~' -o -name '*.orig' ')' -print0 | xargs -0 -r -l512 rm -f
158
107aba6f
ER
159%build
160md5=$(md5sum -b conf/dokuwiki.php | awk '{print $1}')
161if ! grep $md5 install.php; then
162 : update %{name}-config.patch oudated
163 exit 1
164fi
165
d73655e0
SP
166%install
167rm -rf $RPM_BUILD_ROOT
641b29cc 168install -d $RPM_BUILD_ROOT{%{_sysconfdir},%{_localstatedir},%{_appdir}/{bin,inc,lib}}
d73655e0
SP
169
170cp -a *.php $RPM_BUILD_ROOT%{_appdir}
641b29cc
ER
171cp -a bin/* $RPM_BUILD_ROOT%{_appdir}/bin
172cp -a inc/* $RPM_BUILD_ROOT%{_appdir}/inc
173cp -a lib/* $RPM_BUILD_ROOT%{_appdir}/lib
881190a4
ER
174cp -a conf/* $RPM_BUILD_ROOT%{_sysconfdir}
175cp -a data/* $RPM_BUILD_ROOT%{_localstatedir}
107aba6f
ER
176cp -a %{SOURCE1} $RPM_BUILD_ROOT%{_sysconfdir}/apache.conf
177cp -a %{SOURCE1} $RPM_BUILD_ROOT%{_sysconfdir}/httpd.conf
178cp -a %{SOURCE2} $RPM_BUILD_ROOT%{_sysconfdir}/lighttpd.conf
a4053ed1
ER
179touch $RPM_BUILD_ROOT%{_sysconfdir}/acronyms.local.conf
180touch $RPM_BUILD_ROOT%{_sysconfdir}/entities.local.conf
181touch $RPM_BUILD_ROOT%{_sysconfdir}/interwiki.local.conf
7df7f76f
ER
182touch $RPM_BUILD_ROOT%{_sysconfdir}/license.local.php
183touch $RPM_BUILD_ROOT%{_sysconfdir}/local.php
184touch $RPM_BUILD_ROOT%{_sysconfdir}/local.protected.php
a4053ed1
ER
185touch $RPM_BUILD_ROOT%{_sysconfdir}/mime.local.conf
186touch $RPM_BUILD_ROOT%{_sysconfdir}/smileys.local.conf
d6d39525 187touch $RPM_BUILD_ROOT%{_sysconfdir}/userstyle.css
d73655e0 188
2d01b400 189ln $RPM_BUILD_ROOT%{_appdir}/lib/images/interwiki/{dokubug,bug}.gif
107aba6f 190cp -a %{SOURCE3} $RPM_BUILD_ROOT%{_appdir}/lib/images/fileicons/jide.png
db16581c
ER
191cp -a %{SOURCE4} $RPM_BUILD_ROOT%{_appdir}/lib/images/interwiki/eventum.gif
192cp -a %{SOURCE5} $RPM_BUILD_ROOT%{_appdir}/lib/images/interwiki/skype.gif
dff16d0a 193cp -a %{SOURCE6} $RPM_BUILD_ROOT%{_appdir}/lib/tpl/default/images/button-pld.png
2d01b400 194
fe631b5b 195# find locales
db16581c 196%find_lang %{name}.lang
fe631b5b 197
b607609a
ER
198# make inc/lang/en/edit.txt as %config
199%{__sed} -i -e '
200/%%lang([^)]\+) \/usr\/share\/dokuwiki\/inc\/lang\/[^/]\+/{
201 # make entry as %%dir
202 s/^/%%dir /; p
203
204 # add files inside the %dir
205 s/^%%dir /%%config(noreplace) %%verify(not md5 mtime size) /; s/$/\/*.*/
206}' %{name}.lang
207
d73655e0
SP
208%clean
209rm -rf $RPM_BUILD_ROOT
210
641b29cc
ER
211%post setup
212chmod 770 %{_sysconfdir}
213chmod 660 %{_sysconfdir}/dokuwiki.php
214
215%postun setup
216if [ "$1" = "0" ]; then
1bf63c70
ER
217 if [ -f %{_sysconfdir}/dokuwiki.php ]; then
218 chmod 750 %{_sysconfdir}
219 chmod 640 %{_sysconfdir}/dokuwiki.php
220 fi
641b29cc
ER
221fi
222
d73655e0
SP
223%triggerin -- apache1 < 1.3.37-3, apache1-base
224%webapp_register apache %{_webapp}
225
226%triggerun -- apache1 < 1.3.37-3, apache1-base
227%webapp_unregister apache %{_webapp}
228
229%triggerin -- apache < 2.2.0, apache-base
230%webapp_register httpd %{_webapp}
231
232%triggerun -- apache < 2.2.0, apache-base
233%webapp_unregister httpd %{_webapp}
234
99646b81
ER
235%triggerin -- lighttpd
236%webapp_register lighttpd %{_webapp}
237
238%triggerun -- lighttpd
239%webapp_unregister lighttpd %{_webapp}
240
881190a4
ER
241%pretrans
242if [ -d %{_appdir}/data -a ! -L %{_appdir}/data ]; then
243 mv -f %{_appdir}/data/* %{_localstatedir}
244 rm -rf %{_appdir}/data
245fi
246if [ -d %{_appdir}/conf -a ! -L %{_appdir}/conf ]; then
247 mv -f %{_appdir}/conf/* %{_sysconfdir}
248 rm -rf %{_appdir}/conf
249fi
250exit 0
251
fe631b5b 252%files -f %{name}.lang
d73655e0 253%defattr(644,root,root,755)
08b33253 254%doc README
d73655e0
SP
255%dir %attr(750,root,http) %{_sysconfdir}
256%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/apache.conf
257%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/httpd.conf
99646b81
ER
258%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/lighttpd.conf
259
881190a4 260%attr(640,root,http) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/mediameta.php
881190a4 261%attr(640,root,http) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/msg
2d01b400 262%attr(640,root,http) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/words.aspell
7df7f76f 263%attr(660,root,http) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/scheme.conf
a4053ed1 264
a4053ed1
ER
265%attr(640,root,http) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/acronyms.local.conf
266%attr(640,root,http) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/entities.local.conf
267%attr(640,root,http) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/interwiki.local.conf
7df7f76f
ER
268%attr(640,root,http) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/license.local.php
269%attr(640,root,http) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/local.protected.php
a4053ed1
ER
270%attr(640,root,http) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/mime.local.conf
271%attr(640,root,http) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/smileys.local.conf
d6d39525 272%attr(640,root,http) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/userstyle.css
7df7f76f 273%attr(660,root,http) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/local.php
2d01b400 274
a4053ed1 275# use local.php,local.protected.php, etc for local changes
a4053ed1 276%attr(640,root,http) %config %verify(not md5 mtime size) %{_sysconfdir}/acronyms.conf
7df7f76f 277%attr(640,root,http) %config %verify(not md5 mtime size) %{_sysconfdir}/dokuwiki.php
a4053ed1 278%attr(640,root,http) %config %verify(not md5 mtime size) %{_sysconfdir}/entities.conf
fc7417e4 279%attr(640,root,http) %config %verify(not md5 mtime size) %{_sysconfdir}/interwiki.conf
7df7f76f 280%attr(640,root,http) %config %verify(not md5 mtime size) %{_sysconfdir}/license.php
a4053ed1
ER
281%attr(640,root,http) %config %verify(not md5 mtime size) %{_sysconfdir}/mime.conf
282%attr(640,root,http) %config %verify(not md5 mtime size) %{_sysconfdir}/smileys.conf
b9fff555 283
a4053ed1 284# samples. perhaps move to %doc instead?
b9fff555
ER
285%attr(640,root,http) %{_sysconfdir}/mysql.conf.php.example
286%attr(640,root,http) %{_sysconfdir}/acl.auth.php.dist
287%attr(640,root,http) %{_sysconfdir}/wordblock.conf
288%attr(640,root,http) %{_sysconfdir}/local.php.dist
289%attr(640,root,http) %{_sysconfdir}/users.auth.php.dist
881190a4 290
641b29cc 291%dir %{_appdir}
fe631b5b
ER
292%{_appdir}/doku.php
293%{_appdir}/feed.php
294%{_appdir}/index.php
641b29cc
ER
295%dir %{_appdir}/bin
296%attr(755,root,root) %{_appdir}/bin/dwpage.php
297%attr(755,root,root) %{_appdir}/bin/indexer.php
298%attr(755,root,root) %{_appdir}/bin/wantedpages.php
fe631b5b
ER
299
300%dir %{_appdir}/inc
301%{_appdir}/inc/*.php
302%{_appdir}/inc/auth
303%{_appdir}/inc/parser
304
305%dir %{_appdir}/lib
306%dir %{_appdir}/lib/plugins
307%dir %{_appdir}/lib/plugins/acl
308%{_appdir}/lib/plugins/acl/*.*
08b33253 309%{_appdir}/lib/plugins/acl/pix
fe631b5b
ER
310%dir %{_appdir}/lib/plugins/config
311%{_appdir}/lib/plugins/config/*.*
107aba6f 312%{_appdir}/lib/plugins/config/images
fe631b5b
ER
313%{_appdir}/lib/plugins/config/settings
314%dir %{_appdir}/lib/plugins/plugin
315%{_appdir}/lib/plugins/plugin/*.*
107aba6f 316%{_appdir}/lib/plugins/plugin/classes
fe631b5b
ER
317%dir %{_appdir}/lib/plugins/revert
318%{_appdir}/lib/plugins/revert/*.*
319%dir %{_appdir}/lib/plugins/usermanager
320%{_appdir}/lib/plugins/usermanager/*.*
321%{_appdir}/lib/plugins/usermanager/images
fe631b5b 322%{_appdir}/lib/plugins/info
08b33253
ER
323%dir %{_appdir}/lib/plugins/popularity
324%{_appdir}/lib/plugins/popularity/*.*
fe631b5b
ER
325%{_appdir}/lib/plugins/*.php
326%{_appdir}/lib/images
327%{_appdir}/lib/scripts
328%{_appdir}/lib/styles
329%{_appdir}/lib/tpl
330%{_appdir}/lib/exe
881190a4
ER
331
332%dir %attr(770,root,http) %{_localstatedir}
333%dir %attr(770,root,http) %{_localstatedir}/attic
334%dir %attr(770,root,http) %{_localstatedir}/cache
335%dir %attr(770,root,http) %{_localstatedir}/index
336%dir %attr(770,root,http) %{_localstatedir}/locks
337%dir %attr(770,root,http) %{_localstatedir}/media
338%dir %attr(770,root,http) %{_localstatedir}/media/wiki
339%dir %attr(770,root,http) %{_localstatedir}/meta
340%dir %attr(770,root,http) %{_localstatedir}/pages
881190a4 341%dir %attr(770,root,http) %{_localstatedir}/pages/wiki
08b33253 342%dir %attr(770,root,http) %{_localstatedir}/tmp
b9fff555 343%attr(660,root,http) %config(noreplace,missingok) %verify(not md5 mtime size) %{_localstatedir}/media/wiki/dokuwiki-128.png
b9fff555
ER
344%attr(660,root,http) %config(noreplace,missingok) %verify(not md5 mtime size) %{_localstatedir}/pages/wiki/dokuwiki.txt
345%attr(660,root,http) %config(noreplace,missingok) %verify(not md5 mtime size) %{_localstatedir}/pages/wiki/syntax.txt
8e4e22ac 346%attr(660,root,http) %config(noreplace,missingok) %verify(not md5 mtime size) %{_localstatedir}/pages/playground/playground.txt
641b29cc
ER
347
348%files setup
349%defattr(644,root,root,755)
350%{_appdir}/install.php
This page took 0.213511 seconds and 4 git commands to generate.