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