2 # - external: http://adldap.sourceforge.net/
3 %define subver 2009-12-25
4 %define ver %(echo %{subver} | tr -d -)
5 %define php_min_version 5.1.2
6 %include /usr/lib/rpm/macros.php
7 Summary: PHP-based Wiki webapplication
8 Summary(pl.UTF-8): Aplikacja WWW Wiki oparta na PHP
13 Group: Applications/WWW
14 Source0: http://www.splitbrain.org/_media/projects/dokuwiki/%{name}-%{subver}.tgz
15 # Source0-md5: 1428c896de83bd2a754efd18919d0594
16 Source1: %{name}-apache.conf
17 Source2: %{name}-lighttpd.conf
19 # Source3-md5: 623344128960e18f86097dfee213ad4a
21 Source5: http://forum.skype.com/style_emoticons/skype/skype.png
22 # Source5-md5: 25c355be038267dc9fdb724b628000b9
23 Source6: pld_button.png
24 # Source6-md5: 185afa921e81bd726b9f0f9f0909dc6e
25 Patch66: %{name}-config.patch
26 Patch0: %{name}-paths.patch
27 Patch2: %{name}-mysqlauth.patch
28 Patch3: %{name}-config-allow-require.patch
29 Patch4: %{name}-geshi.patch
30 Patch5: %{name}-http_auth-option.patch
31 Patch6: %{name}-nice_exit.patch
32 Patch7: %{name}-mail-headerencodequotes.patch
33 Patch8: %{name}-notify-respect-minor.patch
34 Patch9: %{name}-media-userinfo.patch
35 Patch10: %{name}-mailtext.patch
36 Patch11: %{name}-notifyns.patch
37 Patch12: %{name}-mailthreads.patch
38 Patch13: %{name}-media-directlink.patch
39 Patch14: interwiki-outputonly.patch
40 Patch15: simplepie.patch
41 Patch18: install.patch
42 Patch19: pld-branding.patch
43 Patch20: fixprivilegeescalationbug.diff
44 Patch21: task-1821.patch
45 URL: http://www.dokuwiki.org/dokuwiki
46 BuildRequires: rpm-php-pearprov >= 4.4.2-11
47 BuildRequires: rpmbuild(macros) >= 1.520
48 Requires: php-common >= 4:%{php_min_version}
49 Requires: php-geshi >= 1.0.7.19
50 Requires: php-simplepie >= 1.0.1
53 Requires: webserver(access)
54 Requires: webserver(alias)
55 Requires: webserver(php)
57 # can use gz compression to store attic pages
60 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
62 %define _webapps /etc/webapps
63 %define _webapp %{name}
64 %define _sysconfdir %{_webapps}/%{_webapp}
65 %define _appdir %{_datadir}/%{_webapp}
66 %define _localstatedir /var/lib/%{name}
67 %define find_lang %{_usrlibrpm}/dokuwiki-find-lang.sh %{buildroot}
70 %define _noautopear 'pear(/usr/share/php/geshi.php)'
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)
75 # we don't want php(xxx) being resolved to php-xxx
76 %define _noautoreqdep '^php(.*)'
78 %define _noautoreq %{_noautophp} %{_noautopear}
81 DokuWiki is a standards compliant, simple to use Wiki, mainly aimed at
82 creating documentation of any kind. It is targeted at developer teams,
83 workgroups and small companies. It has a simple but powerful syntax
84 which makes sure the datafiles remain readable outside the Wiki and
85 eases the creation of structured texts. All data is stored in plain
86 text files - no database is required.
88 %description -l pl.UTF-8
89 DokuWiki to zgodne ze standardami i proste w użyciu Wiki, przeznaczone
90 głównie do tworzenia dokumentów wszelkiego rodzaju. Jest przeznaczone
91 dla zespołów programistów, grup roboczych i małych firm. Ma prostą,
92 ale mającą duże możliwości składnię, dzięki której pliki danych
93 pozostają czytelne poza Wiki, a także ułatwiającą tworzenie tekstów
94 strukturalnych. Wszystkie dane są przechowywane w plikach tekstowych -
95 nie jest wymagana baza danych.
98 Summary: DokuWiki setup package
99 Summary(pl.UTF-8): Pakiet do wstępnej konfiguracji DokuWiki
100 Group: Applications/WWW
101 Requires: %{name} = %{version}-%{release}
104 Install this package to configure initial DokuWiki installation. You
105 should uninstall this package when you're done, as it considered
106 insecure to keep the setup files in place.
108 %description setup -l pl.UTF-8
109 Ten pakiet należy zainstalować w celu wstępnej konfiguracji DokuWiki
110 po pierwszej instalacji. Potem należy go odinstalować, jako że
111 pozostawienie plików instalacyjnych mogłoby być niebezpieczne.
114 %setup -q -n %{name}-%{subver}
137 find -name _dummy | xargs rm
138 rm lib/index.html lib/plugins/index.html inc/lang/.htaccess
141 mv conf/words.aspell{.dist,}
143 # use system geshi package
147 # use system simplepie package
148 rm -f inc/SimplePie.php
150 # our plugins dir is not writable anyway, nothing to convert
151 rm -rf lib/plugins/upgradeplugindirectory
156 # cleanup backups after patching
157 find . '(' -name '*~' -o -name '*.orig' ')' -print0 | xargs -0 -r -l512 rm -f
160 md5=$(md5sum -b conf/dokuwiki.php | awk '{print $1}')
161 if ! grep $md5 install.php; then
162 : update %{name}-config.patch oudated
167 rm -rf $RPM_BUILD_ROOT
168 install -d $RPM_BUILD_ROOT{%{_sysconfdir},%{_localstatedir},%{_appdir}/{bin,inc,lib}}
170 cp -a *.php $RPM_BUILD_ROOT%{_appdir}
171 cp -a bin/* $RPM_BUILD_ROOT%{_appdir}/bin
172 cp -a inc/* $RPM_BUILD_ROOT%{_appdir}/inc
173 cp -a lib/* $RPM_BUILD_ROOT%{_appdir}/lib
174 cp -a conf/* $RPM_BUILD_ROOT%{_sysconfdir}
175 cp -a data/* $RPM_BUILD_ROOT%{_localstatedir}
176 cp -a %{SOURCE1} $RPM_BUILD_ROOT%{_sysconfdir}/apache.conf
177 cp -a %{SOURCE1} $RPM_BUILD_ROOT%{_sysconfdir}/httpd.conf
178 cp -a %{SOURCE2} $RPM_BUILD_ROOT%{_sysconfdir}/lighttpd.conf
179 touch $RPM_BUILD_ROOT%{_sysconfdir}/acronyms.local.conf
180 touch $RPM_BUILD_ROOT%{_sysconfdir}/entities.local.conf
181 touch $RPM_BUILD_ROOT%{_sysconfdir}/interwiki.local.conf
182 touch $RPM_BUILD_ROOT%{_sysconfdir}/license.local.php
183 touch $RPM_BUILD_ROOT%{_sysconfdir}/local.php
184 touch $RPM_BUILD_ROOT%{_sysconfdir}/local.protected.php
185 touch $RPM_BUILD_ROOT%{_sysconfdir}/mime.local.conf
186 touch $RPM_BUILD_ROOT%{_sysconfdir}/smileys.local.conf
187 touch $RPM_BUILD_ROOT%{_sysconfdir}/userstyle.css
189 ln $RPM_BUILD_ROOT%{_appdir}/lib/images/interwiki/{dokubug,bug}.gif
190 cp -a %{SOURCE3} $RPM_BUILD_ROOT%{_appdir}/lib/images/fileicons/jide.png
191 cp -a %{SOURCE4} $RPM_BUILD_ROOT%{_appdir}/lib/images/interwiki/eventum.gif
192 cp -a %{SOURCE5} $RPM_BUILD_ROOT%{_appdir}/lib/images/interwiki/skype.gif
193 cp -a %{SOURCE6} $RPM_BUILD_ROOT%{_appdir}/lib/tpl/default/images/button-pld.png
196 %find_lang %{name}.lang
198 # make inc/lang/en/edit.txt as %config
200 /%%lang([^)]\+) \/usr\/share\/dokuwiki\/inc\/lang\/[^/]\+/{
201 # make entry as %%dir
204 # add files inside the %dir
205 s/^%%dir /%%config(noreplace) %%verify(not md5 mtime size) /; s/$/\/*.*/
209 rm -rf $RPM_BUILD_ROOT
212 chmod 770 %{_sysconfdir}
213 chmod 660 %{_sysconfdir}/dokuwiki.php
216 if [ "$1" = "0" ]; then
217 if [ -f %{_sysconfdir}/dokuwiki.php ]; then
218 chmod 750 %{_sysconfdir}
219 chmod 640 %{_sysconfdir}/dokuwiki.php
223 %triggerin -- apache1 < 1.3.37-3, apache1-base
224 %webapp_register apache %{_webapp}
226 %triggerun -- apache1 < 1.3.37-3, apache1-base
227 %webapp_unregister apache %{_webapp}
229 %triggerin -- apache < 2.2.0, apache-base
230 %webapp_register httpd %{_webapp}
232 %triggerun -- apache < 2.2.0, apache-base
233 %webapp_unregister httpd %{_webapp}
235 %triggerin -- lighttpd
236 %webapp_register lighttpd %{_webapp}
238 %triggerun -- lighttpd
239 %webapp_unregister lighttpd %{_webapp}
242 if [ -d %{_appdir}/data -a ! -L %{_appdir}/data ]; then
243 mv -f %{_appdir}/data/* %{_localstatedir}
244 rm -rf %{_appdir}/data
246 if [ -d %{_appdir}/conf -a ! -L %{_appdir}/conf ]; then
247 mv -f %{_appdir}/conf/* %{_sysconfdir}
248 rm -rf %{_appdir}/conf
252 %files -f %{name}.lang
253 %defattr(644,root,root,755)
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
258 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/lighttpd.conf
260 %attr(640,root,http) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/mediameta.php
261 %attr(640,root,http) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/msg
262 %attr(640,root,http) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/words.aspell
263 %attr(660,root,http) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/scheme.conf
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
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
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
272 %attr(640,root,http) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/userstyle.css
273 %attr(660,root,http) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/local.php
275 # use local.php,local.protected.php, etc for local changes
276 %attr(640,root,http) %config %verify(not md5 mtime size) %{_sysconfdir}/acronyms.conf
277 %attr(640,root,http) %config %verify(not md5 mtime size) %{_sysconfdir}/dokuwiki.php
278 %attr(640,root,http) %config %verify(not md5 mtime size) %{_sysconfdir}/entities.conf
279 %attr(640,root,http) %config %verify(not md5 mtime size) %{_sysconfdir}/interwiki.conf
280 %attr(640,root,http) %config %verify(not md5 mtime size) %{_sysconfdir}/license.php
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
284 # samples. perhaps move to %doc instead?
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
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
303 %{_appdir}/inc/parser
306 %dir %{_appdir}/lib/plugins
307 %dir %{_appdir}/lib/plugins/acl
308 %{_appdir}/lib/plugins/acl/*.*
309 %{_appdir}/lib/plugins/acl/pix
310 %dir %{_appdir}/lib/plugins/config
311 %{_appdir}/lib/plugins/config/*.*
312 %{_appdir}/lib/plugins/config/images
313 %{_appdir}/lib/plugins/config/settings
314 %dir %{_appdir}/lib/plugins/plugin
315 %{_appdir}/lib/plugins/plugin/*.*
316 %{_appdir}/lib/plugins/plugin/classes
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
322 %{_appdir}/lib/plugins/info
323 %dir %{_appdir}/lib/plugins/popularity
324 %{_appdir}/lib/plugins/popularity/*.*
325 %{_appdir}/lib/plugins/*.php
326 %{_appdir}/lib/images
327 %{_appdir}/lib/scripts
328 %{_appdir}/lib/styles
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
341 %dir %attr(770,root,http) %{_localstatedir}/pages/wiki
342 %dir %attr(770,root,http) %{_localstatedir}/tmp
343 %attr(660,root,http) %config(noreplace,missingok) %verify(not md5 mtime size) %{_localstatedir}/media/wiki/dokuwiki-128.png
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
346 %attr(660,root,http) %config(noreplace,missingok) %verify(not md5 mtime size) %{_localstatedir}/pages/playground/playground.txt
349 %defattr(644,root,root,755)
350 %{_appdir}/install.php