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