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