]> git.pld-linux.org Git - packages/dokuwiki.git/blob - dokuwiki.spec
- adjust and apply backlinks to rightside patch
[packages/dokuwiki.git] / dokuwiki.spec
1 %define         subver  2011-11-10
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
7 Name:           dokuwiki
8 Version:        %{ver}
9 Release:        0.3
10 License:        GPL v2
11 Group:          Applications/WWW
12 #Source0:       https://github.com/splitbrain/dokuwiki/tarball/master#/%{name}.tgz
13 #Source0:       http://www.splitbrain.org/_media/projects/dokuwiki/%{name}-%{subver}.tgz
14 Source0:        http://www.splitbrain.org/_media/projects/dokuwiki/%{name}-rc%{subver}.tgz
15 # Source0-md5:  6faf2f586cadbfc23d3b53745a00a482
16 Source1:        %{name}-apache.conf
17 Source2:        %{name}-lighttpd.conf
18 Source3:        http://glen.alkohol.ee/pld/jude.png
19 # Source3-md5:  623344128960e18f86097dfee213ad4a
20 Source4:        eventum.gif
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 Source7:        cacti.gif
26 Source8:        nagios.gif
27 Source9:        http://trac.edgewall.org/export/9404/trunk/doc/trac_icon_16x16.png
28 # Source9-md5:  0c19ed35bf677f33f6bea14b3a8a2e10
29 Source10:       pld.gif
30 Source11:       http://glen.alkohol.ee/pld/astah.png
31 # Source11-md5: b1c999e6988440c9e2af6a12e9a56451
32 Patch66:        %{name}-config.patch
33 Patch0:         %{name}-paths.patch
34 Patch3:         %{name}-config-allow-require.patch
35 Patch4:         %{name}-geshi.patch
36 Patch5:         %{name}-http_auth-option.patch
37 Patch6:         %{name}-nice_exit.patch
38 Patch8:         %{name}-notify-respect-minor.patch
39 Patch10:        %{name}-mailtext.patch
40 Patch11:        %{name}-notifyns.patch
41 Patch12:        %{name}-mailthreads.patch
42 Patch13:        %{name}-media-directlink.patch
43 Patch14:        interwiki-outputonly.patch
44 Patch15:        simplepie.patch
45 Patch18:        install.patch
46 Patch19:        pld-branding.patch
47 Patch20:        fixprivilegeescalationbug.diff
48 Patch21:        task-1821.patch
49 Patch22:        adldap.patch
50 Patch23:        backlink-rightside.patch
51 URL:            http://www.dokuwiki.org/dokuwiki
52 BuildRequires:  fslint
53 BuildRequires:  rpm-php-pearprov >= 4.4.2-11
54 BuildRequires:  rpmbuild(macros) >= 1.520
55 Requires:       php-common >= 4:%{php_min_version}
56 Requires:       php-geshi >= 1.0.7.19
57 Requires:       php-session
58 Requires:       php-simplepie >= 1.0.1
59 Requires:       php-xml
60 Requires:       webapps
61 Requires:       webserver(access)
62 Requires:       webserver(alias)
63 Requires:       webserver(php)
64 Suggests:       php-adldap >= 3.3.1
65 Suggests:       php-gd
66 # can use gz compression to store attic pages
67 Suggests:       php-zlib
68 BuildArch:      noarch
69 BuildRoot:      %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
70
71 %define         _webapps        /etc/webapps
72 %define         _webapp         %{name}
73 %define         _sysconfdir     %{_webapps}/%{_webapp}
74 %define         _appdir         %{_datadir}/%{_webapp}
75 %define         _localstatedir  /var/lib/%{name}
76 %define         find_lang       %{_usrlibrpm}/dokuwiki-find-lang.sh %{buildroot}
77
78 # bad depsolver
79 %define         _noautopear     'pear(/usr/share/php/geshi.php)' 'pear(/usr/share/php/adLDAP.php)'
80
81 # exclude optional php dependencies
82 %define         _noautophp      php-bzip2 php-bcmath php-zip php-date php-ftp php-hash php-ldap php-mbstring php-mysql php-pgsql php-tokenizer
83
84 %define         _noautoreq      %{_noautophp} %{_noautopear}
85
86 %description
87 DokuWiki is a standards compliant, simple to use Wiki, mainly aimed at
88 creating documentation of any kind. It is targeted at developer teams,
89 workgroups and small companies. It has a simple but powerful syntax
90 which makes sure the datafiles remain readable outside the Wiki and
91 eases the creation of structured texts. All data is stored in plain
92 text files - no database is required.
93
94 %description -l pl.UTF-8
95 DokuWiki to zgodne ze standardami i proste w użyciu Wiki, przeznaczone
96 głównie do tworzenia dokumentów wszelkiego rodzaju. Jest przeznaczone
97 dla zespołów programistów, grup roboczych i małych firm. Ma prostą,
98 ale mającą duże możliwości składnię, dzięki której pliki danych
99 pozostają czytelne poza Wiki, a także ułatwiającą tworzenie tekstów
100 strukturalnych. Wszystkie dane są przechowywane w plikach tekstowych -
101 nie jest wymagana baza danych.
102
103 %package setup
104 Summary:        DokuWiki setup package
105 Summary(pl.UTF-8):      Pakiet do wstępnej konfiguracji DokuWiki
106 Group:          Applications/WWW
107 Requires:       %{name} = %{version}-%{release}
108
109 %description setup
110 Install this package to configure initial DokuWiki installation. You
111 should uninstall this package when you're done, as it considered
112 insecure to keep the setup files in place.
113
114 %description setup -l pl.UTF-8
115 Ten pakiet należy zainstalować w celu wstępnej konfiguracji DokuWiki
116 po pierwszej instalacji. Potem należy go odinstalować, jako że
117 pozostawienie plików instalacyjnych mogłoby być niebezpieczne.
118
119 %prep
120 %setup -q -n %{name}-rc%{subver}
121 %patch0 -p1
122 %patch3 -p1
123 %patch4 -p1
124 %patch5 -p1
125 %patch6 -p1
126 %patch8 -p1
127 %patch10 -p1
128 %patch11 -p1
129 %patch12 -p1
130 %patch13 -p1
131 %patch14 -p1
132 %patch15 -p1
133 %patch18 -p1
134 %patch19 -p1
135 %patch20 -p1
136 %patch21 -p1
137 %patch22 -p1
138 %patch23 -p1
139
140 %patch66 -p1
141
142 find -name _dummy | xargs rm
143 rm lib/index.html lib/plugins/index.html inc/lang/.htaccess
144
145 # we just don't package deleted files, so these get removed automatically on rpm upgrades
146 %{__rm} data/deleted.files
147
148 # safe file
149 #mv conf/words.aspell{.dist,}
150
151 # use system geshi package
152 %{__rm} inc/geshi.php
153 %{__rm} -r inc/geshi
154
155 # use system adldap package
156 %{__rm} inc/adLDAP.php
157
158 # use system simplepie package
159 %{__rm} inc/SimplePie.php
160
161 # flash source on git tarballs
162 rm -rf lib/_fla
163
164 # cleanup backups after patching
165 find . '(' -name '*~' -o -name '*.orig' ')' -print0 | xargs -0 -r -l512 rm -f
166
167 %build
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
171         exit 1
172 fi
173
174 %install
175 rm -rf $RPM_BUILD_ROOT
176 install -d $RPM_BUILD_ROOT{%{_sysconfdir}/{lang,plugin_lang},%{_localstatedir},%{_appdir}/{bin,inc,lib}}
177
178 cp -a *.php $RPM_BUILD_ROOT%{_appdir}
179 cp -p 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
197
198 ln $RPM_BUILD_ROOT%{_appdir}/lib/images/interwiki/{dokubug,bug}.gif
199 cp -a %{SOURCE4} $RPM_BUILD_ROOT%{_appdir}/lib/images/interwiki/eventum.gif
200 cp -a %{SOURCE7} $RPM_BUILD_ROOT%{_appdir}/lib/images/interwiki/cacti.gif
201 cp -a %{SOURCE8} $RPM_BUILD_ROOT%{_appdir}/lib/images/interwiki/nagios.gif
202 cp -a %{SOURCE5} $RPM_BUILD_ROOT%{_appdir}/lib/images/interwiki/skype.png
203 cp -a %{SOURCE9} $RPM_BUILD_ROOT%{_appdir}/lib/images/interwiki/trac.png
204 cp -a %{SOURCE10} $RPM_BUILD_ROOT%{_appdir}/lib/images/interwiki/pld.gif
205
206 cp -a %{SOURCE3} $RPM_BUILD_ROOT%{_appdir}/lib/images/fileicons/jude.png
207 cp -a %{SOURCE11} $RPM_BUILD_ROOT%{_appdir}/lib/images/fileicons/asta.png
208
209 cp -a %{SOURCE6} $RPM_BUILD_ROOT%{_appdir}/lib/tpl/default/images/button-pld.png
210
211 # hardlink identical icons.
212 findup -m $RPM_BUILD_ROOT
213
214 # find locales
215 %find_lang %{name}.lang
216
217 %clean
218 rm -rf $RPM_BUILD_ROOT
219
220 %post setup
221 chmod 770 %{_sysconfdir}
222 chmod 660 %{_sysconfdir}/dokuwiki.php
223
224 %postun setup
225 if [ "$1" = "0" ]; then
226         if [ -f %{_sysconfdir}/dokuwiki.php ]; then
227                 chmod 750 %{_sysconfdir}
228                 chmod 640 %{_sysconfdir}/dokuwiki.php
229         fi
230 fi
231
232 %triggerin -- apache1 < 1.3.37-3, apache1-base
233 %webapp_register apache %{_webapp}
234
235 %triggerun -- apache1 < 1.3.37-3, apache1-base
236 %webapp_unregister apache %{_webapp}
237
238 %triggerin -- apache < 2.2.0, apache-base
239 %webapp_register httpd %{_webapp}
240
241 %triggerun -- apache < 2.2.0, apache-base
242 %webapp_unregister httpd %{_webapp}
243
244 %triggerin -- lighttpd
245 %webapp_register lighttpd %{_webapp}
246
247 %triggerun -- lighttpd
248 %webapp_unregister lighttpd %{_webapp}
249
250 %pretrans
251 if [ -d %{_appdir}/data -a ! -L %{_appdir}/data ]; then
252         mv -f %{_appdir}/data/* %{_localstatedir}
253         rm -rf %{_appdir}/data
254 fi
255 if [ -d %{_appdir}/conf -a ! -L %{_appdir}/conf ]; then
256         mv -f %{_appdir}/conf/* %{_sysconfdir}
257         rm -rf %{_appdir}/conf
258 fi
259 exit 0
260
261 %files -f %{name}.lang
262 %defattr(644,root,root,755)
263 %doc README
264 %dir %attr(750,root,http) %{_sysconfdir}
265 %dir %attr(750,root,http) %{_sysconfdir}/lang
266 %dir %attr(750,root,http) %{_sysconfdir}/plugin_lang
267 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/apache.conf
268 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/httpd.conf
269 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/lighttpd.conf
270
271 %attr(640,root,http) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/mediameta.php
272 %attr(660,root,http) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/scheme.conf
273
274 %attr(640,root,http) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/acronyms.local.conf
275 %attr(640,root,http) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/entities.local.conf
276 %attr(640,root,http) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/interwiki.local.conf
277 %attr(640,root,http) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/license.local.php
278 %attr(640,root,http) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/local.protected.php
279 %attr(640,root,http) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/mime.local.conf
280 %attr(640,root,http) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/smileys.local.conf
281 %attr(640,root,http) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/userstyle.css
282 %attr(660,root,http) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/local.php
283
284 # use local.php, local.protected.php, etc for local changes
285 %attr(640,root,http) %config %verify(not md5 mtime size) %{_sysconfdir}/acronyms.conf
286 %attr(640,root,http) %config %verify(not md5 mtime size) %{_sysconfdir}/entities.conf
287 %attr(640,root,http) %config %verify(not md5 mtime size) %{_sysconfdir}/interwiki.conf
288 %attr(640,root,http) %config %verify(not md5 mtime size) %{_sysconfdir}/mime.conf
289 %attr(640,root,http) %config %verify(not md5 mtime size) %{_sysconfdir}/smileys.conf
290
291 %attr(640,root,http) %config %verify(not md5 mtime size) %{_sysconfdir}/dokuwiki.php
292 %attr(640,root,http) %config %verify(not md5 mtime size) %{_sysconfdir}/license.php
293 %attr(640,root,http) %config %verify(not md5 mtime size) %{_sysconfdir}/plugins.required.php
294
295 # samples. perhaps move to %doc instead?
296 %attr(640,root,http) %{_sysconfdir}/mysql.conf.php.example
297 %attr(640,root,http) %{_sysconfdir}/acl.auth.php.dist
298 %attr(640,root,http) %{_sysconfdir}/wordblock.conf
299 %attr(640,root,http) %{_sysconfdir}/local.php.dist
300 %attr(640,root,http) %{_sysconfdir}/users.auth.php.dist
301
302 %dir %{_appdir}
303 %{_appdir}/VERSION
304 %{_appdir}/doku.php
305 %{_appdir}/feed.php
306 %{_appdir}/index.php
307 %dir %{_appdir}/bin
308 %attr(755,root,root) %{_appdir}/bin/dwpage.php
309 %attr(755,root,root) %{_appdir}/bin/indexer.php
310 %attr(755,root,root) %{_appdir}/bin/render.php
311 %attr(755,root,root) %{_appdir}/bin/wantedpages.php
312 %attr(755,root,root) %{_appdir}/bin/striplangs.php
313
314 %dir %{_appdir}/inc
315 %{_appdir}/inc/*.php
316 %{_appdir}/inc/auth
317 %{_appdir}/inc/parser
318
319 %dir %{_appdir}/lib
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/safefnrecode
334 %{_appdir}/lib/plugins/safefnrecode/*.*
335 %dir %{_appdir}/lib/plugins/usermanager
336 %{_appdir}/lib/plugins/usermanager/*.*
337 %{_appdir}/lib/plugins/usermanager/images
338 %dir %{_appdir}/lib/plugins/info
339 %{_appdir}/lib/plugins/info/*.*
340 %dir %{_appdir}/lib/plugins/popularity
341 %{_appdir}/lib/plugins/popularity/*.*
342 %{_appdir}/lib/plugins/*.php
343 %{_appdir}/lib/images
344 %{_appdir}/lib/scripts
345 %{_appdir}/lib/styles
346 %{_appdir}/lib/tpl
347 %{_appdir}/lib/exe
348
349 %dir %attr(770,root,http) %{_localstatedir}
350 %dir %attr(770,root,http) %{_localstatedir}/attic
351 %dir %attr(770,root,http) %{_localstatedir}/cache
352 %dir %attr(770,root,http) %{_localstatedir}/index
353 %dir %attr(770,root,http) %{_localstatedir}/locks
354 %dir %attr(770,root,http) %{_localstatedir}/media
355 %dir %attr(770,root,http) %{_localstatedir}/media_attic
356 %dir %attr(770,root,http) %{_localstatedir}/media_meta
357 %dir %attr(770,root,http) %{_localstatedir}/media/wiki
358 %dir %attr(770,root,http) %{_localstatedir}/meta
359 %dir %attr(770,root,http) %{_localstatedir}/pages
360 %dir %attr(770,root,http) %{_localstatedir}/pages/playground
361 %dir %attr(770,root,http) %{_localstatedir}/pages/wiki
362 %dir %attr(770,root,http) %{_localstatedir}/tmp
363
364 %attr(660,root,http) %config(noreplace,missingok) %verify(not md5 mtime size) %{_localstatedir}/media/wiki/dokuwiki-128.png
365 %attr(660,root,http) %config(noreplace,missingok) %verify(not md5 mtime size) %{_localstatedir}/pages/wiki/dokuwiki.txt
366 %attr(660,root,http) %config(noreplace,missingok) %verify(not md5 mtime size) %{_localstatedir}/pages/wiki/syntax.txt
367 %attr(660,root,http) %config(noreplace,missingok) %verify(not md5 mtime size) %{_localstatedir}/pages/playground/playground.txt
368 %attr(660,root,http) %config(noreplace,missingok) %verify(not md5 mtime size) %{_localstatedir}/security.png
369 %attr(660,root,http) %config(noreplace,missingok) %verify(not md5 mtime size) %{_localstatedir}/security.xcf
370
371 %files setup
372 %defattr(644,root,root,755)
373 %{_appdir}/install.php
This page took 0.097663 seconds and 4 git commands to generate.