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