1 |
%define basever 1.20 |
2 |
%define subver 7 |
3 |
%define _requires_exceptions pear(\\(extensions/.*\\|core/includes/WebStart.php\\|phase3/includes/WebStart.php\\|PHPUnit/Framework.php\\)) |
4 |
|
5 |
Name: mediawiki |
6 |
Version: %{basever}.%{subver} |
7 |
Release: %mkrel 2 |
8 |
Summary: A wiki engine |
9 |
License: GPLv2+ |
10 |
Group: System/Servers |
11 |
BuildArch: noarch |
12 |
Url: http://www.mediawiki.org/wiki/MediaWiki |
13 |
|
14 |
Source0: http://download.wikimedia.org/mediawiki/%{basever}/%{name}-%{version}.tar.gz |
15 |
Source1: mediawiki.conf |
16 |
Source3: mw-createinstance.in |
17 |
Source4: mw-updateallinstances.in |
18 |
|
19 |
# to make sure the "apache" group is created before mediawiki is installed |
20 |
Requires(pre): webserver-base |
21 |
Requires: webserver-base |
22 |
# suggest apache-mod_php |
23 |
Suggests: apache-mod_php |
24 |
# for diff3: |
25 |
Requires: diffutils |
26 |
# for convert: |
27 |
Requires: imagemagick |
28 |
Requires: php-gd |
29 |
Requires: %{name}-sql = %{version}-%{release} |
30 |
Requires: php-xml |
31 |
Suggests: php-intl |
32 |
|
33 |
Conflicts: mediawiki < 0:1.16.5-0 |
34 |
# make upgrading from mediawiki < 1.19 painless |
35 |
Obsoletes: %{name}-minimal < 1.19.1 |
36 |
|
37 |
# RenameUser extension bundled with MediaWiki as of 1.20 |
38 |
Obsoletes: mediawiki-renameuser < %{version}-%{release} |
39 |
|
40 |
%description |
41 |
MediaWiki is the software used for Wikipedia and the other Wikimedia |
42 |
Foundation websites. Compared to other wikis, it has an excellent |
43 |
range of features and support for high-traffic websites using multiple |
44 |
servers |
45 |
|
46 |
This package includes math rendering support for mediawiki. |
47 |
|
48 |
%package mysql |
49 |
Summary: Mediawiki with mysql database |
50 |
Group: System/Servers |
51 |
Provides: %{name}-sql = %{version}-%{release} |
52 |
Requires: php-mysql |
53 |
|
54 |
%description mysql |
55 |
This meta package installs the neccessary packages to use mediawiki |
56 |
with a mariadb or mysql database. |
57 |
This does not install the database server itself, because you can run |
58 |
mediawiki with a remote database server. |
59 |
|
60 |
%package pgsql |
61 |
Summary: Mediawiki with postgresql database |
62 |
Group: System/Servers |
63 |
Provides: %{name}-sql = %{version}-%{release} |
64 |
Requires: php-pgsql |
65 |
|
66 |
%description pgsql |
67 |
This meta package installs the neccessary packages to use mediawiki |
68 |
with a postgresql database. |
69 |
This does not install the database server itself, because you can run |
70 |
mediawiki with a remote database server. |
71 |
|
72 |
%package sqlite |
73 |
Summary: Mediawiki with sqlite database |
74 |
Group: System/Servers |
75 |
Provides: %{name}-sql = %{version}-%{release} |
76 |
Requires: php-sqlite3 |
77 |
|
78 |
%description sqlite |
79 |
This meta package installs the neccessary packages to use mediawiki |
80 |
with an sqlite database. |
81 |
If you are using sqlite you can't use a remote database server. |
82 |
|
83 |
%prep |
84 |
%setup -q |
85 |
|
86 |
%build |
87 |
: |
88 |
|
89 |
%install |
90 |
rm -rf %{buildroot} |
91 |
|
92 |
# now copy the rest to the buildroot. |
93 |
mkdir -p %{buildroot}%{_datadir}/mediawiki |
94 |
cp -a * %{buildroot}%{_datadir}/mediawiki/ |
95 |
|
96 |
# remove documentation |
97 |
rm -f %{buildroot}%{_datadir}/mediawiki/{COPYING,FAQ,HISTORY,README,RELEASE-NOTES-1.20,UPGRADE,CREDITS,INSTALL} |
98 |
rm -rf %{buildroot}%{_datadir}/mediawiki/docs |
99 |
|
100 |
# remove unneeded parts |
101 |
rm -fr %{buildroot}%{_datadir}/mediawiki/{t,test,tests} |
102 |
rm -fr %{buildroot}%{_datadir}/mediawiki/includes/zhtable |
103 |
find %{buildroot}%{_datadir}/mediawiki/ \ |
104 |
\( -name .htaccess -or -name \*.cmi \) \ |
105 |
| xargs -r rm |
106 |
|
107 |
# fix permissions |
108 |
chmod +x %{buildroot}%{_datadir}/mediawiki/bin/* |
109 |
find %{buildroot}%{_datadir}/mediawiki -name \*.pl | xargs -r chmod +x |
110 |
|
111 |
# remove version control/patch files |
112 |
find %{buildroot} -name .svnignore | xargs -r rm |
113 |
find %{buildroot} -name \*.commoncode | xargs -r rm |
114 |
find %{buildroot} -name \*.enablesuggests | xargs -r rm |
115 |
|
116 |
%{__install} -d -m 755 %{buildroot}%{webappconfdir} |
117 |
install -p -m 0644 %{SOURCE1} \ |
118 |
%{buildroot}%{webappconfdir}/mediawiki.conf |
119 |
|
120 |
# tools for keeping mediawiki instances current |
121 |
mkdir -p %{buildroot}%{_sbindir} |
122 |
sed -e's,@datadir@,%{_datadir},g' -e's,@sysconfdir@,%{_sysconfdir},g' \ |
123 |
< %{SOURCE3} > %{buildroot}%{_sbindir}/mediawiki-create |
124 |
sed -e's,@datadir@,%{_datadir},g' -e's,@sysconfdir@,%{_sysconfdir},g' \ |
125 |
< %{SOURCE4} > %{buildroot}%{_sbindir}/mediawiki-updateall |
126 |
chmod 0755 %{buildroot}%{_sbindir}/mediawiki-* |
127 |
mkdir %{buildroot}%{_sysconfdir}/mediawiki |
128 |
|
129 |
# placeholder for a default instance |
130 |
mkdir -p %{buildroot}/%{_localstatedir}/www/mediawiki |
131 |
|
132 |
# list of instances - initially empty |
133 |
touch %{buildroot}%{_sysconfdir}/mediawiki/instances |
134 |
|
135 |
# move editable things out of /usr |
136 |
mv %{buildroot}%{_datadir}/mediawiki/images %{buildroot}%{_localstatedir}/www/mediawiki/images |
137 |
ln -s %{_sysconfdir}/mediawiki/LocalSettings.php %{buildroot}%{_datadir}/mediawiki/LocalSettings.php |
138 |
|
139 |
install -d -m 755 %{buildroot}/%{_localstatedir}/lib/mediawiki |
140 |
|
141 |
%pretrans |
142 |
if [ -f %{_datadir}/mediawiki/LocalSettings.php ]; then |
143 |
if [ -e %{_sysconfdir}/mediawiki/LocalSettings.php ]; then |
144 |
mv -f %{_sysconfdir}/mediawiki/LocalSettings.php %{_sysconfdir}/mediawiki/LocalSettings.php.rpmsave |
145 |
fi |
146 |
mv %{_datadir}/mediawiki/LocalSettings.php %{_sysconfdir}/mediawiki/LocalSettings.php |
147 |
ln -s %{_sysconfdir}/mediawiki/LocalSettings.php %{_datadir}/mediawiki/LocalSettings.php |
148 |
fi |
149 |
if [ -d %{_datadir}/mediawiki/images ]; then |
150 |
if [ -e %{_localstatedir}/www/mediawiki/images ]; then |
151 |
mv -f %{_localstatedir}/www/mediawiki/images %{_localstatedir}/www/mediawiki/images.rpmsave |
152 |
fi |
153 |
mv %{_datadir}/mediawiki/images %{_localstatedir}/www/mediawiki/images |
154 |
ln -s %{_localstatedir}/www/mediawiki/images %{_datadir}/mediawiki/images |
155 |
chown -R apache:apache %{_localstatedir}/www/mediawiki/images |
156 |
fi |
157 |
|
158 |
%post |
159 |
%{_sbindir}/mediawiki-updateall >> /var/log/mediawiki-updates.log 2>&1 || : |
160 |
|
161 |
%files |
162 |
%doc COPYING FAQ HISTORY README RELEASE-NOTES-1.20 UPGRADE CREDITS INSTALL docs |
163 |
%{_datadir}/mediawiki |
164 |
%attr(-,apache,apache) %dir %{_datadir}/mediawiki/mw-config |
165 |
%config(noreplace) %{webappconfdir}/mediawiki.conf |
166 |
%dir %{_sysconfdir}/mediawiki |
167 |
%config(noreplace) %{_sysconfdir}/mediawiki/instances |
168 |
%attr(0700,root,root) %{_sbindir}/mediawiki-* |
169 |
%dir %{_localstatedir}/www/mediawiki |
170 |
%attr(-,apache,apache) %dir %{_localstatedir}/www/mediawiki/images |
171 |
%attr(-,apache,apache) %{_localstatedir}/www/mediawiki/images/README |
172 |
|
173 |
%files mysql |
174 |
|
175 |
%files pgsql |
176 |
|
177 |
%files sqlite |
178 |
%attr(-,apache,apache) %{_localstatedir}/lib/mediawiki |