]> git.pld-linux.org Git - packages/dokuwiki-plugin-data.git/blob - dokuwiki-plugin-data.spec
- up to 20120227; adds %lastmod% filter
[packages/dokuwiki-plugin-data.git] / dokuwiki-plugin-data.spec
1 %define         plugin          data
2 %define         php_min_version 5.0.0
3 %include        /usr/lib/rpm/macros.php
4 Summary:        DokuWiki Structured Data Plugin
5 Name:           dokuwiki-plugin-%{plugin}
6 Version:        20120227
7 Release:        1
8 License:        GPL v2
9 Group:          Applications/WWW
10 Source0:        http://github.com/splitbrain/dokuwiki-plugin-%{plugin}/tarball/master#/%{plugin}-%{version}.tgz
11 # Source0-md5:  15323c553023012d45fe2f79e6d26a10
12 URL:            http://wiki.splitbrain.org/plugin:data
13 Patch2:         separator-style.patch
14 Patch3:         separate-rpmdb.patch
15 BuildRequires:  rpm-php-pearprov
16 BuildRequires:  rpmbuild(macros) >= 1.520
17 Requires:       php-common >= 4:%{php_min_version}
18 Requires(triggerun):    sqlite
19 Requires:       dokuwiki >= 20090214b-5
20 Requires:       dokuwiki-plugin-sqlite
21 Requires:       php-pcre
22 BuildArch:      noarch
23 BuildRoot:      %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
24
25 %define         dokuconf        /etc/webapps/dokuwiki
26 %define         dokudir         /usr/share/dokuwiki
27 %define         metadir         /var/lib/dokuwiki/meta
28 %define         plugindir       %{dokudir}/lib/plugins/%{plugin}
29 %define         find_lang       %{_usrlibrpm}/dokuwiki-find-lang.sh %{buildroot}
30
31 # no pear deps
32 %define         _noautopear     pear
33
34 # sqlite is dokuwiki-plugin-sqlite dep, not ours
35 %define         _noautophp      php-sqlite
36
37 # put it together for rpmbuild
38 %define         _noautoreq      %{?_noautophp} %{?_noautopear}
39
40 %description
41 This plugin allows you to add structured data to any DokuWiki page.
42 Think about this data as additional named attributes. Those attributes
43 can then be queried and aggregated. The plugin is similar to what was
44 done here for the repository plugin but its internals are very
45 different to the repository plugin.
46
47 %prep
48 %setup -qc
49 mv *-%{plugin}-*/* .
50 %patch2 -p1
51 %patch3 -p1
52
53 version=$(awk '/date/{print $2}' plugin.info.txt)
54 if [ $(echo "$version" | tr -d -) != %{version} ]; then
55         : %%{version} mismatch
56 #       exit 1
57 fi
58
59 # nothing to do with tests
60 rm -rf _test
61
62 # cleanup backups after patching
63 find '(' -name '*~' -o -name '*.orig' ')' -print0 | xargs -0 -r -l512 rm -f
64
65 %install
66 rm -rf $RPM_BUILD_ROOT
67 install -d $RPM_BUILD_ROOT{%{plugindir},%{metadir}}
68 cp -a . $RPM_BUILD_ROOT%{plugindir}
69 touch $RPM_BUILD_ROOT%{metadir}/data.sqlite
70
71 # find locales
72 %find_lang %{name}.lang
73
74 %clean
75 rm -rf $RPM_BUILD_ROOT
76
77 %post
78 # force css cache refresh
79 if [ -f %{dokuconf}/local.php ]; then
80         touch %{dokuconf}/local.php
81 fi
82
83 %triggerun -- %{name} < 20100322-0.5
84 # move to new location
85 mv /var/lib/dokuwiki/cache/dataplugin.sqlite %{metadir}/data.sqlite
86
87 # perform new indexes add manually
88 sqlite %{metadir}/data.sqlite <<'EOF'
89 CREATE TABLE opts (opt,val);
90 CREATE UNIQUE INDEX idx_opt ON opts(opt);
91 INSERT INTO opts VALUES ('dbversion', 1);
92 EOF
93 chown root:http %{metadir}/data.sqlite
94 chmod 660 %{metadir}/data.sqlite
95
96 %files -f %{name}.lang
97 %defattr(644,root,root,755)
98 %dir %{plugindir}
99 %{plugindir}/admin
100 %{plugindir}/syntax
101 %{plugindir}/conf
102 %{plugindir}/db
103 %{plugindir}/*.js
104 %{plugindir}/*.php
105 %{plugindir}/*.txt
106 %{plugindir}/*.css
107 %attr(660,http,http) %ghost %{metadir}/data.sqlite
This page took 0.106566 seconds and 4 git commands to generate.