1 %define subver 2009-12-02
2 %define ver %(echo %{subver} | tr -d -)
3 %include /usr/lib/rpm/macros.php
4 Summary: PHP-based Wiki webapplication
5 Summary(pl.UTF-8): Aplikacja WWW Wiki oparta na PHP
10 Group: Applications/WWW
11 Source0: http://www.splitbrain.org/_media/projects/dokuwiki/%{name}-rc%{subver}.tgz
12 # Source0-md5: 65e0a7a496e1fd49fb12477211053b55
13 Source1: %{name}-apache.conf
14 Source2: %{name}-lighttpd.conf
16 # Source3-md5: 623344128960e18f86097dfee213ad4a
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: rpm-php-pearprov >= 4.4.2-11
43 BuildRequires: rpmbuild(macros) >= 1.520
44 Requires: geshi >= 1.0.7.19
45 Requires: php-common >= 4:5.1.2
46 Requires: php-simplepie >= 1.0.1
49 Requires: webserver(access)
50 Requires: webserver(alias)
51 Requires: webserver(php)
53 # can use gz compression to store attic pages
56 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
58 %define _webapps /etc/webapps
59 %define _webapp %{name}
60 %define _sysconfdir %{_webapps}/%{_webapp}
61 %define _appdir %{_datadir}/%{_webapp}
62 %define _localstatedir /var/lib/%{name}
63 %define find_lang %{_usrlibrpm}/dokuwiki-find-lang.sh %{buildroot}
66 %define _noautoreq 'pear(/usr/share/php/geshi.php)'
69 DokuWiki is a standards compliant, simple to use Wiki, mainly aimed at
70 creating documentation of any kind. It is targeted at developer teams,
71 workgroups and small companies. It has a simple but powerful syntax
72 which makes sure the datafiles remain readable outside the Wiki and
73 eases the creation of structured texts. All data is stored in plain
74 text files - no database is required.
76 %description -l pl.UTF-8
77 DokuWiki to zgodne ze standardami i proste w użyciu Wiki, przeznaczone
78 głównie do tworzenia dokumentów wszelkiego rodzaju. Jest przeznaczone
79 dla zespołów programistów, grup roboczych i małych firm. Ma prostą,
80 ale mającą duże możliwości składnię, dzięki której pliki danych
81 pozostają czytelne poza Wiki, a także ułatwiającą tworzenie tekstów
82 strukturalnych. Wszystkie dane są przechowywane w plikach tekstowych -
83 nie jest wymagana baza danych.
86 Summary: DokuWiki setup package
87 Summary(pl.UTF-8): Pakiet do wstępnej konfiguracji DokuWiki
88 Group: Applications/WWW
89 Requires: %{name} = %{version}-%{release}
92 Install this package to configure initial DokuWiki installation. You
93 should uninstall this package when you're done, as it considered
94 insecure to keep the setup files in place.
96 %description setup -l pl.UTF-8
97 Ten pakiet należy zainstalować w celu wstępnej konfiguracji DokuWiki
98 po pierwszej instalacji. Potem należy go odinstalować, jako że
99 pozostawienie plików instalacyjnych mogłoby być niebezpieczne.
102 %setup -q -n %{name}-rc%{subver}
124 find -name _dummy | xargs rm
125 rm lib/index.html lib/plugins/index.html inc/lang/.htaccess
128 mv conf/words.aspell{.dist,}
130 # use system geshi package
134 # use system simplepie package
135 rm -f inc/SimplePie.php
137 # our plugins dir is not writable anyway, nothing to convert
138 rm -rf lib/plugins/upgradeplugindirectory
143 # cleanup backups after patching
144 find . '(' -name '*~' -o -name '*.orig' ')' -print0 | xargs -0 -r -l512 rm -f
147 md5=$(md5sum -b conf/dokuwiki.php | awk '{print $1}')
148 if ! grep $md5 install.php; then
149 : update %{name}-config.patch oudated
154 rm -rf $RPM_BUILD_ROOT
155 install -d $RPM_BUILD_ROOT{%{_sysconfdir},%{_localstatedir},%{_appdir}/{bin,inc,lib}}
157 cp -a *.php $RPM_BUILD_ROOT%{_appdir}
158 cp -a bin/* $RPM_BUILD_ROOT%{_appdir}/bin
159 cp -a inc/* $RPM_BUILD_ROOT%{_appdir}/inc
160 cp -a lib/* $RPM_BUILD_ROOT%{_appdir}/lib
161 cp -a conf/* $RPM_BUILD_ROOT%{_sysconfdir}
162 cp -a data/* $RPM_BUILD_ROOT%{_localstatedir}
163 cp -a %{SOURCE1} $RPM_BUILD_ROOT%{_sysconfdir}/apache.conf
164 cp -a %{SOURCE1} $RPM_BUILD_ROOT%{_sysconfdir}/httpd.conf
165 cp -a %{SOURCE2} $RPM_BUILD_ROOT%{_sysconfdir}/lighttpd.conf
166 touch $RPM_BUILD_ROOT%{_sysconfdir}/acronyms.local.conf
167 touch $RPM_BUILD_ROOT%{_sysconfdir}/entities.local.conf
168 touch $RPM_BUILD_ROOT%{_sysconfdir}/interwiki.local.conf
169 touch $RPM_BUILD_ROOT%{_sysconfdir}/license.local.php
170 touch $RPM_BUILD_ROOT%{_sysconfdir}/local.php
171 touch $RPM_BUILD_ROOT%{_sysconfdir}/local.protected.php
172 touch $RPM_BUILD_ROOT%{_sysconfdir}/mime.local.conf
173 touch $RPM_BUILD_ROOT%{_sysconfdir}/smileys.local.conf
174 touch $RPM_BUILD_ROOT%{_sysconfdir}/userstyle.css
176 ln $RPM_BUILD_ROOT%{_appdir}/lib/images/interwiki/{dokubug,bug}.gif
177 cp -a %{SOURCE3} $RPM_BUILD_ROOT%{_appdir}/lib/images/fileicons/jide.png
178 cp -a %{SOURCE4} $RPM_BUILD_ROOT%{_appdir}/lib/images/interwiki/eventum.gif
179 cp -a %{SOURCE5} $RPM_BUILD_ROOT%{_appdir}/lib/images/interwiki/skype.gif
180 cp -a %{SOURCE6} $RPM_BUILD_ROOT%{_appdir}/lib/tpl/default/images/button-pld.png
183 %find_lang %{name}.lang
185 # make inc/lang/en/edit.txt as %config
187 /%%lang([^)]\+) \/usr\/share\/dokuwiki\/inc\/lang\/[^/]\+/{
188 # make entry as %%dir
191 # add files inside the %dir
192 s/^%%dir /%%config(noreplace) %%verify(not md5 mtime size) /; s/$/\/*.*/
196 rm -rf $RPM_BUILD_ROOT
199 chmod 770 %{_sysconfdir}
200 chmod 660 %{_sysconfdir}/dokuwiki.php
203 if [ "$1" = "0" ]; then
204 if [ -f %{_sysconfdir}/dokuwiki.php ]; then
205 chmod 750 %{_sysconfdir}
206 chmod 640 %{_sysconfdir}/dokuwiki.php
210 %triggerin -- apache1 < 1.3.37-3, apache1-base
211 %webapp_register apache %{_webapp}
213 %triggerun -- apache1 < 1.3.37-3, apache1-base
214 %webapp_unregister apache %{_webapp}
216 %triggerin -- apache < 2.2.0, apache-base
217 %webapp_register httpd %{_webapp}
219 %triggerun -- apache < 2.2.0, apache-base
220 %webapp_unregister httpd %{_webapp}
222 %triggerin -- lighttpd
223 %webapp_register lighttpd %{_webapp}
225 %triggerun -- lighttpd
226 %webapp_unregister lighttpd %{_webapp}
229 if [ -d %{_appdir}/data -a ! -L %{_appdir}/data ]; then
230 mv -f %{_appdir}/data/* %{_localstatedir}
231 rm -rf %{_appdir}/data
233 if [ -d %{_appdir}/conf -a ! -L %{_appdir}/conf ]; then
234 mv -f %{_appdir}/conf/* %{_sysconfdir}
235 rm -rf %{_appdir}/conf
239 %files -f %{name}.lang
240 %defattr(644,root,root,755)
242 %dir %attr(750,root,http) %{_sysconfdir}
243 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/apache.conf
244 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/httpd.conf
245 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/lighttpd.conf
247 %attr(640,root,http) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/mediameta.php
248 %attr(640,root,http) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/msg
249 %attr(640,root,http) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/words.aspell
250 %attr(660,root,http) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/scheme.conf
252 %attr(640,root,http) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/acronyms.local.conf
253 %attr(640,root,http) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/entities.local.conf
254 %attr(640,root,http) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/interwiki.local.conf
255 %attr(640,root,http) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/license.local.php
256 %attr(640,root,http) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/local.protected.php
257 %attr(640,root,http) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/mime.local.conf
258 %attr(640,root,http) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/smileys.local.conf
259 %attr(640,root,http) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/userstyle.css
260 %attr(660,root,http) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/local.php
262 # use local.php,local.protected.php, etc for local changes
263 %attr(640,root,http) %config %verify(not md5 mtime size) %{_sysconfdir}/acronyms.conf
264 %attr(640,root,http) %config %verify(not md5 mtime size) %{_sysconfdir}/dokuwiki.php
265 %attr(640,root,http) %config %verify(not md5 mtime size) %{_sysconfdir}/entities.conf
266 %attr(640,root,http) %config %verify(not md5 mtime size) %{_sysconfdir}/interwiki.conf
267 %attr(640,root,http) %config %verify(not md5 mtime size) %{_sysconfdir}/license.php
268 %attr(640,root,http) %config %verify(not md5 mtime size) %{_sysconfdir}/mime.conf
269 %attr(640,root,http) %config %verify(not md5 mtime size) %{_sysconfdir}/smileys.conf
271 # samples. perhaps move to %doc instead?
272 %attr(640,root,http) %{_sysconfdir}/mysql.conf.php.example
273 %attr(640,root,http) %{_sysconfdir}/acl.auth.php.dist
274 %attr(640,root,http) %{_sysconfdir}/wordblock.conf
275 %attr(640,root,http) %{_sysconfdir}/local.php.dist
276 %attr(640,root,http) %{_sysconfdir}/users.auth.php.dist
283 %attr(755,root,root) %{_appdir}/bin/dwpage.php
284 %attr(755,root,root) %{_appdir}/bin/indexer.php
285 %attr(755,root,root) %{_appdir}/bin/wantedpages.php
290 %{_appdir}/inc/parser
293 %dir %{_appdir}/lib/plugins
294 %dir %{_appdir}/lib/plugins/acl
295 %{_appdir}/lib/plugins/acl/*.*
296 %{_appdir}/lib/plugins/acl/pix
297 %dir %{_appdir}/lib/plugins/config
298 %{_appdir}/lib/plugins/config/*.*
299 %{_appdir}/lib/plugins/config/images
300 %{_appdir}/lib/plugins/config/settings
301 %dir %{_appdir}/lib/plugins/plugin
302 %{_appdir}/lib/plugins/plugin/*.*
303 %{_appdir}/lib/plugins/plugin/classes
304 %dir %{_appdir}/lib/plugins/revert
305 %{_appdir}/lib/plugins/revert/*.*
306 %dir %{_appdir}/lib/plugins/usermanager
307 %{_appdir}/lib/plugins/usermanager/*.*
308 %{_appdir}/lib/plugins/usermanager/images
309 %{_appdir}/lib/plugins/info
310 %dir %{_appdir}/lib/plugins/popularity
311 %{_appdir}/lib/plugins/popularity/*.*
312 %{_appdir}/lib/plugins/*.php
313 %{_appdir}/lib/images
314 %{_appdir}/lib/scripts
315 %{_appdir}/lib/styles
319 %dir %attr(770,root,http) %{_localstatedir}
320 %dir %attr(770,root,http) %{_localstatedir}/attic
321 %dir %attr(770,root,http) %{_localstatedir}/cache
322 %dir %attr(770,root,http) %{_localstatedir}/index
323 %dir %attr(770,root,http) %{_localstatedir}/locks
324 %dir %attr(770,root,http) %{_localstatedir}/media
325 %dir %attr(770,root,http) %{_localstatedir}/media/wiki
326 %dir %attr(770,root,http) %{_localstatedir}/meta
327 %dir %attr(770,root,http) %{_localstatedir}/pages
328 %dir %attr(770,root,http) %{_localstatedir}/pages/wiki
329 %dir %attr(770,root,http) %{_localstatedir}/tmp
330 %attr(660,root,http) %config(noreplace,missingok) %verify(not md5 mtime size) %{_localstatedir}/media/wiki/dokuwiki-128.png
331 %attr(660,root,http) %config(noreplace,missingok) %verify(not md5 mtime size) %{_localstatedir}/pages/wiki/dokuwiki.txt
332 %attr(660,root,http) %config(noreplace,missingok) %verify(not md5 mtime size) %{_localstatedir}/pages/wiki/syntax.txt
333 %attr(660,root,http) %config(noreplace,missingok) %verify(not md5 mtime size) %{_localstatedir}/pages/playground/playground.txt
336 %defattr(644,root,root,755)
337 %{_appdir}/install.php