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