1 %define subver 2009-11-10
2 %define ver %(echo %{subver} | tr -d -)
3 Summary: PHP-based Wiki webapplication
4 Summary(pl.UTF-8): Aplikacja WWW Wiki oparta na PHP
9 Group: Applications/WWW
10 Source0: http://dev.splitbrain.org/download/snapshots/%{name}-%{subver}.tgz
11 # Source0-md5: 9da3e5c3a7b40b5a229b38e52b6fcf70
12 Source1: %{name}-apache.conf
13 Source2: %{name}-lighttpd.conf
15 # Source3-md5: 623344128960e18f86097dfee213ad4a
17 # Source4-md5: cac3d0f82591a33eda2afa8ae5fe65cb
18 Source5: http://forum.skype.com/style_emoticons/skype/skype.png
19 # Source5-md5: 25c355be038267dc9fdb724b628000b9
20 Source6: pld_button.png
21 # Source6-md5: 185afa921e81bd726b9f0f9f0909dc6e
22 Patch66: %{name}-config.patch
23 Patch0: %{name}-paths.patch
24 Patch2: %{name}-mysqlauth.patch
25 Patch3: %{name}-config-allow-require.patch
26 Patch4: %{name}-geshi.patch
27 Patch5: %{name}-http_auth-option.patch
28 Patch6: %{name}-nice_exit.patch
29 Patch7: %{name}-mail-headerencodequotes.patch
30 Patch8: %{name}-notify-respect-minor.patch
31 Patch9: %{name}-media-userinfo.patch
32 Patch10: %{name}-mailtext.patch
33 Patch11: %{name}-notifyns.patch
34 Patch12: %{name}-mailthreads.patch
35 Patch13: %{name}-media-directlink.patch
36 Patch14: interwiki-outputonly.patch
37 Patch15: simplepie.patch
38 Patch18: install.patch
39 Patch19: pld-branding.patch
40 Patch20: fixprivilegeescalationbug.diff
41 URL: http://www.dokuwiki.org/dokuwiki
42 BuildRequires: rpmbuild(macros) >= 1.520
43 Requires: geshi >= 1.0.7.19
45 Requires: php-simplepie >= 1.0.1
47 Requires: webserver(access)
48 Requires: webserver(alias)
49 Requires: webserver(php) >= 4.3.3
51 # can use gz compression to store attic pages
54 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
56 %define _webapps /etc/webapps
57 %define _webapp %{name}
58 %define _sysconfdir %{_webapps}/%{_webapp}
59 %define _appdir %{_datadir}/%{_webapp}
60 %define _localstatedir /var/lib/%{name}
61 %define find_lang %{_usrlibrpm}/dokuwiki-find-lang.sh %{buildroot}
64 DokuWiki is a standards compliant, simple to use Wiki, mainly aimed at
65 creating documentation of any kind. It is targeted at developer teams,
66 workgroups and small companies. It has a simple but powerful syntax
67 which makes sure the datafiles remain readable outside the Wiki and
68 eases the creation of structured texts. All data is stored in plain
69 text files - no database is required.
71 %description -l pl.UTF-8
72 DokuWiki to zgodne ze standardami i proste w użyciu Wiki, przeznaczone
73 głównie do tworzenia dokumentów wszelkiego rodzaju. Jest przeznaczone
74 dla zespołów programistów, grup roboczych i małych firm. Ma prostą,
75 ale mającą duże możliwości składnię, dzięki której pliki danych
76 pozostają czytelne poza Wiki, a także ułatwiającą tworzenie tekstów
77 strukturalnych. Wszystkie dane są przechowywane w plikach tekstowych -
78 nie jest wymagana baza danych.
81 Summary: DokuWiki setup package
82 Summary(pl.UTF-8): Pakiet do wstępnej konfiguracji DokuWiki
83 Group: Applications/WWW
84 Requires: %{name} = %{version}-%{release}
87 Install this package to configure initial DokuWiki installation. You
88 should uninstall this package when you're done, as it considered
89 insecure to keep the setup files in place.
91 %description setup -l pl.UTF-8
92 Ten pakiet należy zainstalować w celu wstępnej konfiguracji DokuWiki
93 po pierwszej instalacji. Potem należy go odinstalować, jako że
94 pozostawienie plików instalacyjnych mogłoby być niebezpieczne.
119 find -name _dummy | xargs rm
120 find -name '*-darcs-backup*' | xargs rm
121 rm lib/index.html lib/plugins/index.html inc/lang/.htaccess
124 mv conf/words.aspell{.dist,}
126 # use system geshi package
130 # use system simplepie package
131 rm -f inc/SimplePie.php
133 # our plugins dir is not writable anyway, nothing to convert
134 rm -rf lib/plugins/upgradeplugindirectory
139 # cleanup backups after patching
140 find . '(' -name '*~' -o -name '*.orig' ')' -print0 | xargs -0 -r -l512 rm -f
143 md5=$(md5sum -b conf/dokuwiki.php | awk '{print $1}')
144 if ! grep $md5 install.php; then
145 : update %{name}-config.patch oudated
150 rm -rf $RPM_BUILD_ROOT
151 install -d $RPM_BUILD_ROOT{%{_sysconfdir},%{_localstatedir},%{_appdir}/{bin,inc,lib}}
153 cp -a *.php $RPM_BUILD_ROOT%{_appdir}
154 cp -a bin/* $RPM_BUILD_ROOT%{_appdir}/bin
155 cp -a inc/* $RPM_BUILD_ROOT%{_appdir}/inc
156 cp -a lib/* $RPM_BUILD_ROOT%{_appdir}/lib
157 cp -a conf/* $RPM_BUILD_ROOT%{_sysconfdir}
158 cp -a data/* $RPM_BUILD_ROOT%{_localstatedir}
159 cp -a %{SOURCE1} $RPM_BUILD_ROOT%{_sysconfdir}/apache.conf
160 cp -a %{SOURCE1} $RPM_BUILD_ROOT%{_sysconfdir}/httpd.conf
161 cp -a %{SOURCE2} $RPM_BUILD_ROOT%{_sysconfdir}/lighttpd.conf
162 touch $RPM_BUILD_ROOT%{_sysconfdir}/acronyms.local.conf
163 touch $RPM_BUILD_ROOT%{_sysconfdir}/entities.local.conf
164 touch $RPM_BUILD_ROOT%{_sysconfdir}/interwiki.local.conf
165 touch $RPM_BUILD_ROOT%{_sysconfdir}/license.local.php
166 touch $RPM_BUILD_ROOT%{_sysconfdir}/local.php
167 touch $RPM_BUILD_ROOT%{_sysconfdir}/local.protected.php
168 touch $RPM_BUILD_ROOT%{_sysconfdir}/mime.local.conf
169 touch $RPM_BUILD_ROOT%{_sysconfdir}/smileys.local.conf
170 touch $RPM_BUILD_ROOT%{_sysconfdir}/userstyle.css
172 ln $RPM_BUILD_ROOT%{_appdir}/lib/images/interwiki/{dokubug,bug}.gif
173 cp -a %{SOURCE3} $RPM_BUILD_ROOT%{_appdir}/lib/images/fileicons/jide.png
174 cp -a %{SOURCE4} $RPM_BUILD_ROOT%{_appdir}/lib/images/interwiki/eventum.gif
175 cp -a %{SOURCE5} $RPM_BUILD_ROOT%{_appdir}/lib/images/interwiki/skype.gif
176 cp -a %{SOURCE6} $RPM_BUILD_ROOT%{_appdir}/lib/tpl/default/images/button-pld.png
179 %find_lang %{name}.lang
181 # make inc/lang/en/edit.txt as %config
183 /%%lang([^)]\+) \/usr\/share\/dokuwiki\/inc\/lang\/[^/]\+/{
184 # make entry as %%dir
187 # add files inside the %dir
188 s/^%%dir /%%config(noreplace) %%verify(not md5 mtime size) /; s/$/\/*.*/
192 rm -rf $RPM_BUILD_ROOT
195 chmod 770 %{_sysconfdir}
196 chmod 660 %{_sysconfdir}/dokuwiki.php
199 if [ "$1" = "0" ]; then
200 if [ -f %{_sysconfdir}/dokuwiki.php ]; then
201 chmod 750 %{_sysconfdir}
202 chmod 640 %{_sysconfdir}/dokuwiki.php
206 %triggerin -- apache1 < 1.3.37-3, apache1-base
207 %webapp_register apache %{_webapp}
209 %triggerun -- apache1 < 1.3.37-3, apache1-base
210 %webapp_unregister apache %{_webapp}
212 %triggerin -- apache < 2.2.0, apache-base
213 %webapp_register httpd %{_webapp}
215 %triggerun -- apache < 2.2.0, apache-base
216 %webapp_unregister httpd %{_webapp}
218 %triggerin -- lighttpd
219 %webapp_register lighttpd %{_webapp}
221 %triggerun -- lighttpd
222 %webapp_unregister lighttpd %{_webapp}
225 if [ -d %{_appdir}/data -a ! -L %{_appdir}/data ]; then
226 mv -f %{_appdir}/data/* %{_localstatedir}
227 rm -rf %{_appdir}/data
229 if [ -d %{_appdir}/conf -a ! -L %{_appdir}/conf ]; then
230 mv -f %{_appdir}/conf/* %{_sysconfdir}
231 rm -rf %{_appdir}/conf
235 %files -f %{name}.lang
236 %defattr(644,root,root,755)
238 %dir %attr(750,root,http) %{_sysconfdir}
239 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/apache.conf
240 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/httpd.conf
241 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/lighttpd.conf
243 %attr(640,root,http) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/mediameta.php
244 %attr(640,root,http) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/msg
245 %attr(640,root,http) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/words.aspell
246 %attr(660,root,http) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/scheme.conf
248 %attr(640,root,http) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/acronyms.local.conf
249 %attr(640,root,http) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/entities.local.conf
250 %attr(640,root,http) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/interwiki.local.conf
251 %attr(640,root,http) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/license.local.php
252 %attr(640,root,http) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/local.protected.php
253 %attr(640,root,http) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/mime.local.conf
254 %attr(640,root,http) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/smileys.local.conf
255 %attr(640,root,http) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/userstyle.css
256 %attr(660,root,http) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/local.php
258 # use local.php,local.protected.php, etc for local changes
259 %attr(640,root,http) %config %verify(not md5 mtime size) %{_sysconfdir}/acronyms.conf
260 %attr(640,root,http) %config %verify(not md5 mtime size) %{_sysconfdir}/dokuwiki.php
261 %attr(640,root,http) %config %verify(not md5 mtime size) %{_sysconfdir}/entities.conf
262 %attr(640,root,http) %config %verify(not md5 mtime size) %{_sysconfdir}/interwiki.conf
263 %attr(640,root,http) %config %verify(not md5 mtime size) %{_sysconfdir}/license.php
264 %attr(640,root,http) %config %verify(not md5 mtime size) %{_sysconfdir}/mime.conf
265 %attr(640,root,http) %config %verify(not md5 mtime size) %{_sysconfdir}/smileys.conf
267 # samples. perhaps move to %doc instead?
268 %attr(640,root,http) %{_sysconfdir}/mysql.conf.php.example
269 %attr(640,root,http) %{_sysconfdir}/acl.auth.php.dist
270 %attr(640,root,http) %{_sysconfdir}/wordblock.conf
271 %attr(640,root,http) %{_sysconfdir}/local.php.dist
272 %attr(640,root,http) %{_sysconfdir}/users.auth.php.dist
279 %attr(755,root,root) %{_appdir}/bin/dwpage.php
280 %attr(755,root,root) %{_appdir}/bin/indexer.php
281 %attr(755,root,root) %{_appdir}/bin/wantedpages.php
286 %{_appdir}/inc/parser
289 %dir %{_appdir}/lib/plugins
290 %dir %{_appdir}/lib/plugins/acl
291 %{_appdir}/lib/plugins/acl/*.*
292 %{_appdir}/lib/plugins/acl/pix
293 %dir %{_appdir}/lib/plugins/config
294 %{_appdir}/lib/plugins/config/*.*
295 %{_appdir}/lib/plugins/config/images
296 %{_appdir}/lib/plugins/config/settings
297 %dir %{_appdir}/lib/plugins/plugin
298 %{_appdir}/lib/plugins/plugin/*.*
299 %{_appdir}/lib/plugins/plugin/classes
300 %dir %{_appdir}/lib/plugins/revert
301 %{_appdir}/lib/plugins/revert/*.*
302 %dir %{_appdir}/lib/plugins/usermanager
303 %{_appdir}/lib/plugins/usermanager/*.*
304 %{_appdir}/lib/plugins/usermanager/images
305 %{_appdir}/lib/plugins/info
306 %dir %{_appdir}/lib/plugins/popularity
307 %{_appdir}/lib/plugins/popularity/*.*
308 %{_appdir}/lib/plugins/*.php
309 %{_appdir}/lib/images
310 %{_appdir}/lib/scripts
311 %{_appdir}/lib/styles
315 %dir %attr(770,root,http) %{_localstatedir}
316 %dir %attr(770,root,http) %{_localstatedir}/attic
317 %dir %attr(770,root,http) %{_localstatedir}/cache
318 %dir %attr(770,root,http) %{_localstatedir}/index
319 %dir %attr(770,root,http) %{_localstatedir}/locks
320 %dir %attr(770,root,http) %{_localstatedir}/media
321 %dir %attr(770,root,http) %{_localstatedir}/media/wiki
322 %dir %attr(770,root,http) %{_localstatedir}/meta
323 %dir %attr(770,root,http) %{_localstatedir}/pages
324 %dir %attr(770,root,http) %{_localstatedir}/pages/wiki
325 %dir %attr(770,root,http) %{_localstatedir}/tmp
326 %attr(660,root,http) %config(noreplace,missingok) %verify(not md5 mtime size) %{_localstatedir}/media/wiki/dokuwiki-128.png
327 %attr(660,root,http) %config(noreplace,missingok) %verify(not md5 mtime size) %{_localstatedir}/pages/wiki/dokuwiki.txt
328 %attr(660,root,http) %config(noreplace,missingok) %verify(not md5 mtime size) %{_localstatedir}/pages/wiki/syntax.txt
331 %defattr(644,root,root,755)
332 %{_appdir}/install.php