]> git.pld-linux.org Git - packages/dokuwiki.git/blame - dokuwiki.spec
- Version: 2011-05-25 ('Rincewind' stable)
[packages/dokuwiki.git] / dokuwiki.spec
CommitLineData
7246120a
ER
1# TODO
2# - remove %config from lang files: https://github.com/splitbrain/dokuwiki/commit/e6cecb0872ef457f44529edbc736aba3dc3ac258
0825d6d6 3%define subver 2011-05-25
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}
0825d6d6 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
JK
16Source0: http://www.splitbrain.org/_media/projects/dokuwiki/%{name}-%{subver}.tgz
17# Source0-md5: ac7f14fec7ed27d30af1b6b92a9ca994
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
641b29cc 176install -d $RPM_BUILD_ROOT{%{_sysconfdir},%{_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
SP
274%dir %attr(750,root,http) %{_sysconfdir}
275%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/apache.conf
276%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/httpd.conf
99646b81
ER
277%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/lighttpd.conf
278
881190a4 279%attr(640,root,http) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/mediameta.php
4b73b5a6 280#%attr(640,root,http) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/words.aspell
7df7f76f 281%attr(660,root,http) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/scheme.conf
a4053ed1 282
a4053ed1
ER
283%attr(640,root,http) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/acronyms.local.conf
284%attr(640,root,http) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/entities.local.conf
285%attr(640,root,http) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/interwiki.local.conf
7df7f76f
ER
286%attr(640,root,http) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/license.local.php
287%attr(640,root,http) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/local.protected.php
a4053ed1
ER
288%attr(640,root,http) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/mime.local.conf
289%attr(640,root,http) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/smileys.local.conf
d6d39525 290%attr(640,root,http) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/userstyle.css
7df7f76f 291%attr(660,root,http) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/local.php
2d01b400 292
a4053ed1 293# use local.php,local.protected.php, etc for local changes
a4053ed1 294%attr(640,root,http) %config %verify(not md5 mtime size) %{_sysconfdir}/acronyms.conf
7df7f76f 295%attr(640,root,http) %config %verify(not md5 mtime size) %{_sysconfdir}/dokuwiki.php
a4053ed1 296%attr(640,root,http) %config %verify(not md5 mtime size) %{_sysconfdir}/entities.conf
fc7417e4 297%attr(640,root,http) %config %verify(not md5 mtime size) %{_sysconfdir}/interwiki.conf
7df7f76f 298%attr(640,root,http) %config %verify(not md5 mtime size) %{_sysconfdir}/license.php
a4053ed1
ER
299%attr(640,root,http) %config %verify(not md5 mtime size) %{_sysconfdir}/mime.conf
300%attr(640,root,http) %config %verify(not md5 mtime size) %{_sysconfdir}/smileys.conf
b9fff555 301
a4053ed1 302# samples. perhaps move to %doc instead?
b9fff555
ER
303%attr(640,root,http) %{_sysconfdir}/mysql.conf.php.example
304%attr(640,root,http) %{_sysconfdir}/acl.auth.php.dist
305%attr(640,root,http) %{_sysconfdir}/wordblock.conf
306%attr(640,root,http) %{_sysconfdir}/local.php.dist
307%attr(640,root,http) %{_sysconfdir}/users.auth.php.dist
881190a4 308
641b29cc 309%dir %{_appdir}
afdae6ca 310%{_appdir}/VERSION
fe631b5b
ER
311%{_appdir}/doku.php
312%{_appdir}/feed.php
313%{_appdir}/index.php
641b29cc
ER
314%dir %{_appdir}/bin
315%attr(755,root,root) %{_appdir}/bin/dwpage.php
316%attr(755,root,root) %{_appdir}/bin/indexer.php
c4df8b0c 317%attr(755,root,root) %{_appdir}/bin/render.php
641b29cc 318%attr(755,root,root) %{_appdir}/bin/wantedpages.php
4b73b5a6 319%attr(755,root,root) %{_appdir}/bin/striplangs.php
fe631b5b
ER
320
321%dir %{_appdir}/inc
322%{_appdir}/inc/*.php
323%{_appdir}/inc/auth
324%{_appdir}/inc/parser
325
326%dir %{_appdir}/lib
327%dir %{_appdir}/lib/plugins
328%dir %{_appdir}/lib/plugins/acl
329%{_appdir}/lib/plugins/acl/*.*
08b33253 330%{_appdir}/lib/plugins/acl/pix
fe631b5b
ER
331%dir %{_appdir}/lib/plugins/config
332%{_appdir}/lib/plugins/config/*.*
107aba6f 333%{_appdir}/lib/plugins/config/images
fe631b5b
ER
334%{_appdir}/lib/plugins/config/settings
335%dir %{_appdir}/lib/plugins/plugin
336%{_appdir}/lib/plugins/plugin/*.*
107aba6f 337%{_appdir}/lib/plugins/plugin/classes
fe631b5b
ER
338%dir %{_appdir}/lib/plugins/revert
339%{_appdir}/lib/plugins/revert/*.*
4b73b5a6
ER
340%dir %{_appdir}/lib/plugins/safefnrecode
341%{_appdir}/lib/plugins/safefnrecode/*.*
fe631b5b
ER
342%dir %{_appdir}/lib/plugins/usermanager
343%{_appdir}/lib/plugins/usermanager/*.*
344%{_appdir}/lib/plugins/usermanager/images
4b73b5a6
ER
345%dir %{_appdir}/lib/plugins/info
346%{_appdir}/lib/plugins/info/*.*
08b33253
ER
347%dir %{_appdir}/lib/plugins/popularity
348%{_appdir}/lib/plugins/popularity/*.*
fe631b5b
ER
349%{_appdir}/lib/plugins/*.php
350%{_appdir}/lib/images
351%{_appdir}/lib/scripts
352%{_appdir}/lib/styles
353%{_appdir}/lib/tpl
354%{_appdir}/lib/exe
881190a4
ER
355
356%dir %attr(770,root,http) %{_localstatedir}
357%dir %attr(770,root,http) %{_localstatedir}/attic
358%dir %attr(770,root,http) %{_localstatedir}/cache
359%dir %attr(770,root,http) %{_localstatedir}/index
360%dir %attr(770,root,http) %{_localstatedir}/locks
361%dir %attr(770,root,http) %{_localstatedir}/media
362%dir %attr(770,root,http) %{_localstatedir}/media/wiki
363%dir %attr(770,root,http) %{_localstatedir}/meta
364%dir %attr(770,root,http) %{_localstatedir}/pages
af5aefcd 365%dir %attr(770,root,http) %{_localstatedir}/pages/playground
881190a4 366%dir %attr(770,root,http) %{_localstatedir}/pages/wiki
08b33253 367%dir %attr(770,root,http) %{_localstatedir}/tmp
b9fff555 368%attr(660,root,http) %config(noreplace,missingok) %verify(not md5 mtime size) %{_localstatedir}/media/wiki/dokuwiki-128.png
b9fff555
ER
369%attr(660,root,http) %config(noreplace,missingok) %verify(not md5 mtime size) %{_localstatedir}/pages/wiki/dokuwiki.txt
370%attr(660,root,http) %config(noreplace,missingok) %verify(not md5 mtime size) %{_localstatedir}/pages/wiki/syntax.txt
8e4e22ac 371%attr(660,root,http) %config(noreplace,missingok) %verify(not md5 mtime size) %{_localstatedir}/pages/playground/playground.txt
c4df8b0c
ER
372%attr(660,root,http) %config(noreplace,missingok) %verify(not md5 mtime size) %{_localstatedir}/security.png
373%attr(660,root,http) %config(noreplace,missingok) %verify(not md5 mtime size) %{_localstatedir}/security.xcf
641b29cc
ER
374
375%files setup
376%defattr(644,root,root,755)
377%{_appdir}/install.php
This page took 0.127954 seconds and 4 git commands to generate.