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