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