1 %define subver 2009-12-25
2 %define ver %(echo %{subver} | tr -d -)
3 %define php_min_version 5.1.2
4 %include /usr/lib/rpm/macros.php
5 Summary: PHP-based Wiki webapplication
6 Summary(pl.UTF-8): Aplikacja WWW Wiki oparta na PHP
11 Group: Applications/WWW
12 Source0: http://www.splitbrain.org/_media/projects/dokuwiki/%{name}-%{subver}c.tgz
13 # Source0-md5: 2649b6fecbcb273374f5be8f0a2edf02
14 Source1: %{name}-apache.conf
15 Source2: %{name}-lighttpd.conf
17 # Source3-md5: 623344128960e18f86097dfee213ad4a
19 Source5: http://forum.skype.com/style_emoticons/skype/skype.png
20 # Source5-md5: 25c355be038267dc9fdb724b628000b9
21 Source6: pld_button.png
22 # Source6-md5: 185afa921e81bd726b9f0f9f0909dc6e
25 Source9: http://trac.edgewall.org/export/9404/trunk/doc/trac_icon_16x16.png
27 # Source9-md5: 0c19ed35bf677f33f6bea14b3a8a2e10
28 Patch66: %{name}-config.patch
29 Patch0: %{name}-paths.patch
30 Patch2: %{name}-mysqlauth.patch
31 Patch3: %{name}-config-allow-require.patch
32 Patch4: %{name}-geshi.patch
33 Patch5: %{name}-http_auth-option.patch
34 Patch6: %{name}-nice_exit.patch
35 Patch7: %{name}-mail-headerencodequotes.patch
36 Patch8: %{name}-notify-respect-minor.patch
37 Patch9: %{name}-media-userinfo.patch
38 Patch10: %{name}-mailtext.patch
39 Patch11: %{name}-notifyns.patch
40 Patch12: %{name}-mailthreads.patch
41 Patch13: %{name}-media-directlink.patch
42 Patch14: interwiki-outputonly.patch
43 Patch15: simplepie.patch
44 Patch18: install.patch
45 Patch19: pld-branding.patch
46 Patch20: fixprivilegeescalationbug.diff
47 Patch21: task-1821.patch
49 Patch23: smblink.patch
50 URL: http://www.dokuwiki.org/dokuwiki
51 BuildRequires: rpm-php-pearprov >= 4.4.2-11
52 BuildRequires: rpmbuild(macros) >= 1.520
53 Requires: php-common >= 4:%{php_min_version}
54 Requires: php-geshi >= 1.0.7.19
55 Requires: php-simplepie >= 1.0.1
58 Requires: webserver(access)
59 Requires: webserver(alias)
60 Requires: webserver(php)
61 Suggests: php-adldap >= 3.3.1
63 # can use gz compression to store attic pages
66 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
68 %define _webapps /etc/webapps
69 %define _webapp %{name}
70 %define _sysconfdir %{_webapps}/%{_webapp}
71 %define _appdir %{_datadir}/%{_webapp}
72 %define _localstatedir /var/lib/%{name}
73 %define find_lang %{_usrlibrpm}/dokuwiki-find-lang.sh %{buildroot}
76 %define _noautopear 'pear(/usr/share/php/geshi.php)' 'pear(/usr/share/php/adLDAP.php)'
78 # exclude optional php dependencies
79 %define _noautophp php-bzip2 php-bcmath php-zip php-date php-ftp php-hash php-ldap php-mbstring php-mysql php-pgsql php-tokenizer
81 %define _noautoreq %{_noautophp} %{_noautopear}
84 DokuWiki is a standards compliant, simple to use Wiki, mainly aimed at
85 creating documentation of any kind. It is targeted at developer teams,
86 workgroups and small companies. It has a simple but powerful syntax
87 which makes sure the datafiles remain readable outside the Wiki and
88 eases the creation of structured texts. All data is stored in plain
89 text files - no database is required.
91 %description -l pl.UTF-8
92 DokuWiki to zgodne ze standardami i proste w użyciu Wiki, przeznaczone
93 głównie do tworzenia dokumentów wszelkiego rodzaju. Jest przeznaczone
94 dla zespołów programistów, grup roboczych i małych firm. Ma prostą,
95 ale mającą duże możliwości składnię, dzięki której pliki danych
96 pozostają czytelne poza Wiki, a także ułatwiającą tworzenie tekstów
97 strukturalnych. Wszystkie dane są przechowywane w plikach tekstowych -
98 nie jest wymagana baza danych.
101 Summary: DokuWiki setup package
102 Summary(pl.UTF-8): Pakiet do wstępnej konfiguracji DokuWiki
103 Group: Applications/WWW
104 Requires: %{name} = %{version}-%{release}
107 Install this package to configure initial DokuWiki installation. You
108 should uninstall this package when you're done, as it considered
109 insecure to keep the setup files in place.
111 %description setup -l pl.UTF-8
112 Ten pakiet należy zainstalować w celu wstępnej konfiguracji DokuWiki
113 po pierwszej instalacji. Potem należy go odinstalować, jako że
114 pozostawienie plików instalacyjnych mogłoby być niebezpieczne.
117 %setup -q -n %{name}-%{subver}
142 find -name _dummy | xargs rm
143 rm lib/index.html lib/plugins/index.html inc/lang/.htaccess
146 mv conf/words.aspell{.dist,}
148 # use system geshi package
152 # use system adldap package
155 # use system simplepie package
156 rm -f inc/SimplePie.php
158 # our plugins dir is not writable anyway, nothing to convert
159 rm -rf lib/plugins/upgradeplugindirectory
164 # cleanup backups after patching
165 find . '(' -name '*~' -o -name '*.orig' ')' -print0 | xargs -0 -r -l512 rm -f
168 md5=$(md5sum -b conf/dokuwiki.php | awk '{print $1}')
169 if ! grep $md5 install.php; then
170 : update %{name}-config.patch -- it is outdated
175 rm -rf $RPM_BUILD_ROOT
176 install -d $RPM_BUILD_ROOT{%{_sysconfdir},%{_localstatedir},%{_appdir}/{bin,inc,lib}}
178 cp -a *.php $RPM_BUILD_ROOT%{_appdir}
179 cp -a VERSION $RPM_BUILD_ROOT%{_appdir}
180 cp -a bin/* $RPM_BUILD_ROOT%{_appdir}/bin
181 cp -a inc/* $RPM_BUILD_ROOT%{_appdir}/inc
182 cp -a lib/* $RPM_BUILD_ROOT%{_appdir}/lib
183 cp -a conf/* $RPM_BUILD_ROOT%{_sysconfdir}
184 cp -a data/* $RPM_BUILD_ROOT%{_localstatedir}
185 cp -a %{SOURCE1} $RPM_BUILD_ROOT%{_sysconfdir}/apache.conf
186 cp -a %{SOURCE1} $RPM_BUILD_ROOT%{_sysconfdir}/httpd.conf
187 cp -a %{SOURCE2} $RPM_BUILD_ROOT%{_sysconfdir}/lighttpd.conf
188 touch $RPM_BUILD_ROOT%{_sysconfdir}/acronyms.local.conf
189 touch $RPM_BUILD_ROOT%{_sysconfdir}/entities.local.conf
190 touch $RPM_BUILD_ROOT%{_sysconfdir}/interwiki.local.conf
191 touch $RPM_BUILD_ROOT%{_sysconfdir}/license.local.php
192 touch $RPM_BUILD_ROOT%{_sysconfdir}/local.php
193 touch $RPM_BUILD_ROOT%{_sysconfdir}/local.protected.php
194 touch $RPM_BUILD_ROOT%{_sysconfdir}/mime.local.conf
195 touch $RPM_BUILD_ROOT%{_sysconfdir}/smileys.local.conf
196 touch $RPM_BUILD_ROOT%{_sysconfdir}/userstyle.css
198 ln $RPM_BUILD_ROOT%{_appdir}/lib/images/interwiki/{dokubug,bug}.gif
199 cp -a %{SOURCE3} $RPM_BUILD_ROOT%{_appdir}/lib/images/fileicons/jude.png
200 cp -a %{SOURCE4} $RPM_BUILD_ROOT%{_appdir}/lib/images/interwiki/eventum.gif
201 cp -a %{SOURCE7} $RPM_BUILD_ROOT%{_appdir}/lib/images/interwiki/cacti.gif
202 cp -a %{SOURCE8} $RPM_BUILD_ROOT%{_appdir}/lib/images/interwiki/nagios.gif
203 cp -a %{SOURCE5} $RPM_BUILD_ROOT%{_appdir}/lib/images/interwiki/skype.png
204 cp -a %{SOURCE9} $RPM_BUILD_ROOT%{_appdir}/lib/images/interwiki/trac.png
205 cp -a %{SOURCE10} $RPM_BUILD_ROOT%{_appdir}/lib/images/interwiki/pld.gif
206 cp -a %{SOURCE6} $RPM_BUILD_ROOT%{_appdir}/lib/tpl/default/images/button-pld.png
209 %find_lang %{name}.lang
211 # make inc/lang/en/edit.txt as %config
213 /%%lang([^)]\+) \/usr\/share\/dokuwiki\/inc\/lang\/[^/]\+/{
214 # make entry as %%dir
217 # add files inside the %dir
218 s/^%%dir /%%config(noreplace) %%verify(not md5 mtime size) /; s/$/\/*.*/
222 rm -rf $RPM_BUILD_ROOT
225 chmod 770 %{_sysconfdir}
226 chmod 660 %{_sysconfdir}/dokuwiki.php
229 if [ "$1" = "0" ]; then
230 if [ -f %{_sysconfdir}/dokuwiki.php ]; then
231 chmod 750 %{_sysconfdir}
232 chmod 640 %{_sysconfdir}/dokuwiki.php
236 %triggerin -- apache1 < 1.3.37-3, apache1-base
237 %webapp_register apache %{_webapp}
239 %triggerun -- apache1 < 1.3.37-3, apache1-base
240 %webapp_unregister apache %{_webapp}
242 %triggerin -- apache < 2.2.0, apache-base
243 %webapp_register httpd %{_webapp}
245 %triggerun -- apache < 2.2.0, apache-base
246 %webapp_unregister httpd %{_webapp}
248 %triggerin -- lighttpd
249 %webapp_register lighttpd %{_webapp}
251 %triggerun -- lighttpd
252 %webapp_unregister lighttpd %{_webapp}
255 if [ -d %{_appdir}/data -a ! -L %{_appdir}/data ]; then
256 mv -f %{_appdir}/data/* %{_localstatedir}
257 rm -rf %{_appdir}/data
259 if [ -d %{_appdir}/conf -a ! -L %{_appdir}/conf ]; then
260 mv -f %{_appdir}/conf/* %{_sysconfdir}
261 rm -rf %{_appdir}/conf
265 %files -f %{name}.lang
266 %defattr(644,root,root,755)
268 %dir %attr(750,root,http) %{_sysconfdir}
269 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/apache.conf
270 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/httpd.conf
271 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/lighttpd.conf
273 %attr(640,root,http) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/mediameta.php
274 %attr(640,root,http) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/msg
275 %attr(640,root,http) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/words.aspell
276 %attr(660,root,http) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/scheme.conf
278 %attr(640,root,http) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/acronyms.local.conf
279 %attr(640,root,http) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/entities.local.conf
280 %attr(640,root,http) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/interwiki.local.conf
281 %attr(640,root,http) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/license.local.php
282 %attr(640,root,http) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/local.protected.php
283 %attr(640,root,http) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/mime.local.conf
284 %attr(640,root,http) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/smileys.local.conf
285 %attr(640,root,http) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/userstyle.css
286 %attr(660,root,http) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/local.php
288 # use local.php,local.protected.php, etc for local changes
289 %attr(640,root,http) %config %verify(not md5 mtime size) %{_sysconfdir}/acronyms.conf
290 %attr(640,root,http) %config %verify(not md5 mtime size) %{_sysconfdir}/dokuwiki.php
291 %attr(640,root,http) %config %verify(not md5 mtime size) %{_sysconfdir}/entities.conf
292 %attr(640,root,http) %config %verify(not md5 mtime size) %{_sysconfdir}/interwiki.conf
293 %attr(640,root,http) %config %verify(not md5 mtime size) %{_sysconfdir}/license.php
294 %attr(640,root,http) %config %verify(not md5 mtime size) %{_sysconfdir}/mime.conf
295 %attr(640,root,http) %config %verify(not md5 mtime size) %{_sysconfdir}/smileys.conf
297 # samples. perhaps move to %doc instead?
298 %attr(640,root,http) %{_sysconfdir}/mysql.conf.php.example
299 %attr(640,root,http) %{_sysconfdir}/acl.auth.php.dist
300 %attr(640,root,http) %{_sysconfdir}/wordblock.conf
301 %attr(640,root,http) %{_sysconfdir}/local.php.dist
302 %attr(640,root,http) %{_sysconfdir}/users.auth.php.dist
310 %attr(755,root,root) %{_appdir}/bin/dwpage.php
311 %attr(755,root,root) %{_appdir}/bin/indexer.php
312 %attr(755,root,root) %{_appdir}/bin/wantedpages.php
317 %{_appdir}/inc/parser
320 %dir %{_appdir}/lib/plugins
321 %dir %{_appdir}/lib/plugins/acl
322 %{_appdir}/lib/plugins/acl/*.*
323 %{_appdir}/lib/plugins/acl/pix
324 %dir %{_appdir}/lib/plugins/config
325 %{_appdir}/lib/plugins/config/*.*
326 %{_appdir}/lib/plugins/config/images
327 %{_appdir}/lib/plugins/config/settings
328 %dir %{_appdir}/lib/plugins/plugin
329 %{_appdir}/lib/plugins/plugin/*.*
330 %{_appdir}/lib/plugins/plugin/classes
331 %dir %{_appdir}/lib/plugins/revert
332 %{_appdir}/lib/plugins/revert/*.*
333 %dir %{_appdir}/lib/plugins/usermanager
334 %{_appdir}/lib/plugins/usermanager/*.*
335 %{_appdir}/lib/plugins/usermanager/images
336 %{_appdir}/lib/plugins/info
337 %dir %{_appdir}/lib/plugins/popularity
338 %{_appdir}/lib/plugins/popularity/*.*
339 %{_appdir}/lib/plugins/*.php
340 %{_appdir}/lib/images
341 %{_appdir}/lib/scripts
342 %{_appdir}/lib/styles
346 %dir %attr(770,root,http) %{_localstatedir}
347 %dir %attr(770,root,http) %{_localstatedir}/attic
348 %dir %attr(770,root,http) %{_localstatedir}/cache
349 %dir %attr(770,root,http) %{_localstatedir}/index
350 %dir %attr(770,root,http) %{_localstatedir}/locks
351 %dir %attr(770,root,http) %{_localstatedir}/media
352 %dir %attr(770,root,http) %{_localstatedir}/media/wiki
353 %dir %attr(770,root,http) %{_localstatedir}/meta
354 %dir %attr(770,root,http) %{_localstatedir}/pages
355 %dir %attr(770,root,http) %{_localstatedir}/pages/playground
356 %dir %attr(770,root,http) %{_localstatedir}/pages/wiki
357 %dir %attr(770,root,http) %{_localstatedir}/tmp
358 %attr(660,root,http) %config(noreplace,missingok) %verify(not md5 mtime size) %{_localstatedir}/media/wiki/dokuwiki-128.png
359 %attr(660,root,http) %config(noreplace,missingok) %verify(not md5 mtime size) %{_localstatedir}/pages/wiki/dokuwiki.txt
360 %attr(660,root,http) %config(noreplace,missingok) %verify(not md5 mtime size) %{_localstatedir}/pages/wiki/syntax.txt
361 %attr(660,root,http) %config(noreplace,missingok) %verify(not md5 mtime size) %{_localstatedir}/pages/playground/playground.txt
364 %defattr(644,root,root,755)
365 %{_appdir}/install.php