]> git.pld-linux.org Git - packages/dokuwiki-plugin-data.git/blame - dokuwiki-plugin-data.spec
enable cache in table.php
[packages/dokuwiki-plugin-data.git] / dokuwiki-plugin-data.spec
CommitLineData
d045a0a5 1%define plugin data
4f0d4331
ER
2%define php_min_version 5.0.0
3%include /usr/lib/rpm/macros.php
d045a0a5
ER
4Summary: DokuWiki Structured Data Plugin
5Name: dokuwiki-plugin-%{plugin}
2a86300b 6Version: 20120716
272501f6 7Release: 4
d045a0a5
ER
8License: GPL v2
9Group: Applications/WWW
58185fea
ER
10#Source0: http://github.com/splitbrain/dokuwiki-plugin-%{plugin}/tarball/master#/%{plugin}-%{version}.tgz
11Source0: https://github.com/Klap-in/dokuwiki-plugin-data/tarball/pdo#/%{plugin}-pdo-%{version}.tgz
2a86300b 12# Source0-md5: 49cfa6206cdf138593905d3622cb1a4a
d045a0a5 13URL: http://wiki.splitbrain.org/plugin:data
58e46b85 14Patch2: separator-style.patch
ce3f39eb 15Patch3: separate-rpmdb.patch
147d6c0c 16Patch4: cache-enable.patch
dca91af3 17BuildRequires: rpm-php-pearprov
d045a0a5 18BuildRequires: rpmbuild(macros) >= 1.520
272501f6 19Requires: php(core) >= %{php_min_version}
860b9ced 20Requires(triggerun): sqlite
0b4d4d8b 21Requires(triggerun): sqlite3
87d1921d 22Requires: dokuwiki >= 20090214b-5
58185fea 23Requires: dokuwiki-plugin-sqlite >= 20120619
f4bb0314 24Requires: php(pcre)
d045a0a5
ER
25BuildArch: noarch
26BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
27
28%define dokuconf /etc/webapps/dokuwiki
69e06802 29%define dokudir /usr/share/dokuwiki
860b9ced 30%define metadir /var/lib/dokuwiki/meta
d045a0a5 31%define plugindir %{dokudir}/lib/plugins/%{plugin}
711f0ba6 32%define find_lang %{_usrlibrpm}/dokuwiki-find-lang.sh %{buildroot}
d045a0a5 33
4f0d4331
ER
34# no pear deps
35%define _noautopear pear
36
37# sqlite is dokuwiki-plugin-sqlite dep, not ours
38%define _noautophp php-sqlite
39
40# put it together for rpmbuild
41%define _noautoreq %{?_noautophp} %{?_noautopear}
42
d045a0a5
ER
43%description
44This plugin allows you to add structured data to any DokuWiki page.
45Think about this data as additional named attributes. Those attributes
46can then be queried and aggregated. The plugin is similar to what was
47done here for the repository plugin but its internals are very
48different to the repository plugin.
49
50%prep
860b9ced
ER
51%setup -qc
52mv *-%{plugin}-*/* .
58e46b85 53%patch2 -p1
ce3f39eb 54%patch3 -p1
147d6c0c 55%patch4 -p0
87d1921d 56
ab0be40f 57version=$(awk '/date/{print $2}' plugin.info.txt)
4978bd8e
ER
58if [ $(echo "$version" | tr -d -) != %{version} ]; then
59 : %%{version} mismatch
58185fea 60# exit 1
4978bd8e
ER
61fi
62
1d83f60d
ER
63# nothing to do with tests
64rm -rf _test
65
ab0be40f
ER
66# cleanup backups after patching
67find '(' -name '*~' -o -name '*.orig' ')' -print0 | xargs -0 -r -l512 rm -f
68
d045a0a5
ER
69%install
70rm -rf $RPM_BUILD_ROOT
860b9ced 71install -d $RPM_BUILD_ROOT{%{plugindir},%{metadir}}
d045a0a5 72cp -a . $RPM_BUILD_ROOT%{plugindir}
58185fea 73%{__rm} $RPM_BUILD_ROOT%{plugindir}/README
0b4d4d8b 74# sqlite2: php-sqlite
860b9ced 75touch $RPM_BUILD_ROOT%{metadir}/data.sqlite
0b4d4d8b
ER
76# sqlite3: php-pdo-sqlite
77touch $RPM_BUILD_ROOT%{metadir}/data.sqlite3
69e06802 78
d045a0a5
ER
79# find locales
80%find_lang %{name}.lang
81
82%clean
83rm -rf $RPM_BUILD_ROOT
84
85%post
86# force css cache refresh
87if [ -f %{dokuconf}/local.php ]; then
88 touch %{dokuconf}/local.php
89fi
90
860b9ced
ER
91%triggerun -- %{name} < 20100322-0.5
92# move to new location
93mv /var/lib/dokuwiki/cache/dataplugin.sqlite %{metadir}/data.sqlite
94
95# perform new indexes add manually
96sqlite %{metadir}/data.sqlite <<'EOF'
97CREATE TABLE opts (opt,val);
98CREATE UNIQUE INDEX idx_opt ON opts(opt);
99INSERT INTO opts VALUES ('dbversion', 1);
100EOF
101chown root:http %{metadir}/data.sqlite
102chmod 660 %{metadir}/data.sqlite
103
cf948c6d
ER
104%triggerun -- %{name} < 20120716-3
105if [ -f %{metadir}/data.sqlite3 ]; then
106 # already migrated
107 exit 0
108fi
ca427950 109# perform sqlite2 -> sqlite3 migration of both tools present
cf948c6d 110if [ ! -x /usr/bin/sqlite ] || [ ! -x /usr/bin/sqlite3 ]; then
ca427950
ER
111 echo >&2 "data plugin: To migrate db from sqlite2 to sqlite3 you need to install 'sqlite' and 'sqlite3' packages"
112 exit 0
113fi
114
115sqlite %{metadir}/data.sqlite .dump > %{metadir}/data.dump
116sqlite3 %{metadir}/data.dump.new < %{metadir}/data.dump
117mv %{metadir}/data.sqlite3{.new,}
118chown root:http %{metadir}/data.sqlite3
119chmod 660 %{metadir}/data.sqlite3
120
d045a0a5
ER
121%files -f %{name}.lang
122%defattr(644,root,root,755)
58185fea 123%doc README
d045a0a5 124%dir %{plugindir}
b0216a62 125%{plugindir}/admin
d045a0a5 126%{plugindir}/syntax
860b9ced
ER
127%{plugindir}/conf
128%{plugindir}/db
129%{plugindir}/*.js
d045a0a5 130%{plugindir}/*.php
ab0be40f 131%{plugindir}/*.txt
d045a0a5 132%{plugindir}/*.css
860b9ced 133%attr(660,http,http) %ghost %{metadir}/data.sqlite
0b4d4d8b 134%attr(660,http,http) %ghost %{metadir}/data.sqlite3
This page took 0.130101 seconds and 4 git commands to generate.