1 |
# |
2 |
# WARNING, READ FIRST: |
3 |
# |
4 |
# This is a special package that needs special treatment. Due to the amount of |
5 |
# security updates it needs, it's common to ship new upstream versions instead of patching. |
6 |
# That means this package MUST be BUILDABLE for stable official releases. |
7 |
# This also means only STABLE upstream releases, NO betas. |
8 |
# This is a discussed topic. Please, do not flame it again. |
9 |
|
10 |
# To update this package: update the spec to the new version and then |
11 |
# rm -f SOURCES/*.xpi; echo -n "" > SOURCES/sha1.lst; mgarepo sync -d |
12 |
|
13 |
%define oname firefox |
14 |
%define firefox_appid \{ec8030f7-c20a-464f-9b0e-13a3a9e97384\} |
15 |
%define firefox_extdir %{_datadir}/mozilla/extensions/%{firefox_appid} |
16 |
|
17 |
# *** make sure to re-add esr below when switching back to ESR branch *** |
18 |
%define xpidir https://ftp.mozilla.org/pub/mozilla.org/firefox/releases/%{version}esr/linux-i686/xpi/ |
19 |
#define xpidir https://ftp.mozilla.org/pub/mozilla.org/firefox/releases/%{version}/linux-i686/xpi/ |
20 |
|
21 |
# Supported l10n language lists |
22 |
#define langlist af an ar as ast az bg bn_IN bn_BD br bs ca cs cy da de el en_GB en_US en_ZA eo es_AR es_CL es_ES es_MX et eu fa ff fi fr fy_NL ga_IE gd gl gu_IN he hi_IN hr hsb hu hy_AM id is it ja kk km kn ko lij lt lv mai mk ml mr ms nb_NO nl nn_NO or pa_IN pl pt_BR pt_PT ro ru si sk sl sq sr sv_SE ta te th tr uk uz vi xh zh_CN zh_TW |
23 |
%define langlist af an ar ast az be bg bn br bs ca cs cy da de el en_CA en_GB en_US eo es_AR es_CL es_ES es_MX et eu fa ff fi fr fy_NL ga_IE gd gl gu_IN he hi_IN hr hsb hu hy_AM ia id is it ja ka kab kk km kn ko lij lt lv mk mr ms my nb_NO nl nn_NO oc pa_IN pl pt_BR pt_PT ro ru si sk sl sq sr sv_SE szl ta te th tl tr uk ur uz vi xh zh_CN zh_TW |
24 |
|
25 |
# Disabled l10n languages, for any reason |
26 |
# - no locales-XX package (or virtual provides): |
27 |
# ach ak ca-valencia cak dsb gn ne_NP rm sco son trs uu |
28 |
|
29 |
# Disabled hunspell dicts, for any reason |
30 |
%define disabled_dict_langlist an bs ff fi ja ka kab lij lg my szl ta_LK tr zh_CN zh_TW |
31 |
|
32 |
# Language descriptions |
33 |
%define language_af af |
34 |
%define langname_af Afrikaans |
35 |
%define language_ak ak |
36 |
%define langname_ak Akan |
37 |
%define language_an an |
38 |
%define langname_an Aragonese |
39 |
%define language_ar ar |
40 |
%define langname_ar Arabic |
41 |
#define language_as as |
42 |
#define langname_as Assamese |
43 |
%define language_ast ast |
44 |
%define langname_ast Asturian |
45 |
%define language_az az |
46 |
%define langname_az Azeri |
47 |
%define language_be be |
48 |
%define langname_be Belarusian |
49 |
%define language_bg bg |
50 |
%define langname_bg Bulgarian |
51 |
%define language_bn bn |
52 |
%define langname_bn Bengali |
53 |
#define language_bn_BD bn-BD |
54 |
#define langname_bn_BD Bengali |
55 |
#define language_bn_IN bn-IN |
56 |
#define langname_bn_IN Bengali |
57 |
%define language_br br |
58 |
%define langname_br Breton |
59 |
%define language_bs bs |
60 |
%define langname_bs Bosnian |
61 |
%define language_ca ca |
62 |
%define langname_ca Catalan |
63 |
%define language_cs cs |
64 |
%define langname_cs Czech |
65 |
%define language_csb csb |
66 |
%define langname_csb Kashubian |
67 |
%define language_cy cy |
68 |
%define langname_cy Welsh |
69 |
%define language_da da |
70 |
%define langname_da Dansk |
71 |
%define language_de de |
72 |
%define langname_de German |
73 |
%define language_el el |
74 |
%define langname_el Greek |
75 |
%define language_en_CA en-CA |
76 |
%define langname_en_CA Canadian English |
77 |
%define language_en_GB en-GB |
78 |
%define langname_en_GB British English |
79 |
%define language_en_US en-US |
80 |
%define langname_en_US English (United States) |
81 |
#define language_en_ZA en-ZA |
82 |
#define langname_en_ZA English (South Africa) |
83 |
%define language_eo eo |
84 |
%define langname_eo Esperanto |
85 |
%define language_es_AR es-AR |
86 |
%define langname_es_AR Spanish (Argentina) |
87 |
%define language_es_CL es-CL |
88 |
%define langname_es_CL Spanish (Chile) |
89 |
%define language_es_ES es-ES |
90 |
%define langname_es_ES Spanish |
91 |
%define language_es_MX es-MX |
92 |
%define langname_es_MX Spanish (Mexico) |
93 |
%define language_et et |
94 |
%define langname_et Estonian |
95 |
%define language_eu eu |
96 |
%define langname_eu Basque |
97 |
%define language_fa fa |
98 |
%define langname_fa Farsi |
99 |
%define language_ff ff |
100 |
%define langname_ff Fulah |
101 |
%define language_fi fi |
102 |
%define langname_fi Finnish |
103 |
%define language_fr fr |
104 |
%define langname_fr French |
105 |
%define language_fy_NL fy-NL |
106 |
%define langname_fy_NL Frisian |
107 |
%define language_ga_IE ga-IE |
108 |
%define langname_ga_IE Irish |
109 |
%define language_gd gd |
110 |
%define langname_gd Scottish Gaelic |
111 |
%define language_gl gl |
112 |
%define langname_gl Galician |
113 |
%define language_gu_IN gu-IN |
114 |
%define langname_gu_IN Gujarati |
115 |
%define language_he he |
116 |
%define langname_he Hebrew |
117 |
%define language_hi_IN hi-IN |
118 |
%define langname_hi_IN Hindi |
119 |
%define language_hr hr |
120 |
%define langname_hr Croatian |
121 |
%define language_hsb hsb |
122 |
%define langname_hsb Upper Sorbian |
123 |
%define language_hu hu |
124 |
%define langname_hu Hungarian |
125 |
%define language_hy_AM hy-AM |
126 |
%define langname_hy_AM Armenian |
127 |
%define language_ia ia |
128 |
%define langname_ia Interlingua |
129 |
%define language_id id |
130 |
%define langname_id Indonesian |
131 |
%define language_is is |
132 |
%define langname_is Icelandic |
133 |
%define language_it it |
134 |
%define langname_it Italian |
135 |
%define language_ja ja |
136 |
%define langname_ja Japanese |
137 |
%define language_ka ka |
138 |
%define langname_ka Georgian |
139 |
%define language_kab kab |
140 |
%define langname_kab Kabyle |
141 |
%define language_kk kk |
142 |
%define langname_kk Kazakh |
143 |
%define language_ko ko |
144 |
%define langname_ko Korean |
145 |
%define language_km km |
146 |
%define langname_km Khmer |
147 |
%define language_kn kn |
148 |
%define langname_kn Kannada |
149 |
%define language_ku ku |
150 |
%define langname_ku Kurdish |
151 |
%define language_lg lg |
152 |
%define langname_lg Ganda |
153 |
%define language_lij lij |
154 |
%define langname_lij Ligurian |
155 |
%define language_lt lt |
156 |
%define langname_lt Lithuanian |
157 |
%define language_lv lv |
158 |
%define langname_lv Latvian |
159 |
#define language_mai mai |
160 |
#define langname_mai Maithili |
161 |
%define language_mk mk |
162 |
%define langname_mk Macedonian |
163 |
#define language_ml ml |
164 |
#define langname_ml Malayalam |
165 |
%define language_mr mr |
166 |
%define langname_mr Marathi |
167 |
%define language_ms ms |
168 |
%define langname_ms Malay |
169 |
%define language_my my |
170 |
%define langname_my Burmese |
171 |
%define language_nb_NO nb-NO |
172 |
%define langname_nb_NO Norwegian Bokmaal |
173 |
%define language_nn_NO nn-NO |
174 |
%define langname_nn_NO Norwegian Nynorsk |
175 |
%define language_nl nl |
176 |
%define langname_nl Dutch |
177 |
%define language_nso nso |
178 |
%define langname_nso Northern Sotho |
179 |
%define language_oc oc |
180 |
%define langname_oc Occitan |
181 |
#define language_or or |
182 |
#define langname_or Oriya |
183 |
%define language_pa_IN pa-IN |
184 |
%define langname_pa_IN Punjabi (gurmukhi) |
185 |
%define language_pl pl |
186 |
%define langname_pl Polish |
187 |
%define language_pt_BR pt-BR |
188 |
%define langname_pt_BR Brazilian portuguese |
189 |
%define language_pt_PT pt-PT |
190 |
%define langname_pt_PT Portuguese |
191 |
%define language_rm rm |
192 |
%define langname_rm Rumantsch |
193 |
%define language_ro ro |
194 |
%define langname_ro Romanian |
195 |
%define language_ru ru |
196 |
%define langname_ru Russian |
197 |
%define language_si si |
198 |
%define langname_si Sinhala |
199 |
%define language_sk sk |
200 |
%define langname_sk Slovak |
201 |
%define language_sl sl |
202 |
%define langname_sl Slovenian |
203 |
%define language_son son |
204 |
%define langname_son Soŋay |
205 |
%define language_sq sq |
206 |
%define langname_sq Shqipe |
207 |
%define language_sr sr |
208 |
%define langname_sr Serbian |
209 |
%define language_sv_SE sv-SE |
210 |
%define langname_sv_SE Swedish |
211 |
%define language_szl szl |
212 |
%define langname_szl Silesian |
213 |
%define language_ta ta |
214 |
%define langname_ta Tamil |
215 |
%define language_ta_LK ta-LK |
216 |
%define langname_ta_LK Tamil (Sri Lanka) |
217 |
%define language_te te |
218 |
%define langname_te Telugu |
219 |
%define language_th th |
220 |
%define langname_th Thai |
221 |
%define language_tl tl |
222 |
%define langname_tl Pilipino |
223 |
%define language_tr tr |
224 |
%define langname_tr Turkish |
225 |
%define language_uk uk |
226 |
%define langname_uk Ukrainian |
227 |
%define language_uk_UA uk-UA |
228 |
%define langname_uk_UA Ukrainian |
229 |
%define language_ur ur |
230 |
%define langname_ur Urdu |
231 |
%define language_uz uz |
232 |
%define langname_uz Uzbek |
233 |
%define language_vi vi |
234 |
%define langname_vi Vietnamese |
235 |
%define language_xh xh |
236 |
%define langname_xh Xhosa |
237 |
%define language_zh_CN zh-CN |
238 |
%define langname_zh_CN Simplified Chinese |
239 |
%define language_zh_TW zh-TW |
240 |
%define langname_zh_TW Traditional Chinese |
241 |
%define language_zu zu |
242 |
%define langname_zu Zulu |
243 |
|
244 |
# --- Danger line --- |
245 |
|
246 |
# Defaults (all languages enabled by default) |
247 |
# dicts |
248 |
%{expand:%(for lang in %{langlist}; do echo "%%global with_dict_$lang 1"; done)} |
249 |
%{expand:%(for lang in %{disabled_dict_langlist}; do echo "%%global with_dict_$lang 0"; done)} |
250 |
|
251 |
# Locales |
252 |
%{expand:%(for lang in %{langlist}; do echo "%%global locale_$lang `echo $lang | cut -d _ -f 1` "; done)} |
253 |
|
254 |
%global release_hash 2f6a4d2cf42c9d59626061d45c043817cb220814 |
255 |
%global tarballdir mozilla-release-%{release_hash} |
256 |
|
257 |
Summary: Localizations for Firefox (virtual package) |
258 |
Name: %{oname}-l10n |
259 |
Version: 91.10.0 |
260 |
Release: %mkrel 1 |
261 |
License: GPL |
262 |
Group: Networking/WWW |
263 |
Url: https://www.mozilla.org/firefox/organizations/ |
264 |
# Language package template |
265 |
Source0: %{name}-template.in |
266 |
# l10n sources |
267 |
%{expand:%(\ |
268 |
i=1; \ |
269 |
for lang in %langlist; do\ |
270 |
echo "%%{expand:Source$i: %{xpidir}/%%{language_$lang}.xpi}";\ |
271 |
i=$[i+1];\ |
272 |
done\ |
273 |
) |
274 |
} |
275 |
BuildArch: noarch |
276 |
|
277 |
%description |
278 |
Localizations for Firefox web browser. |
279 |
|
280 |
|
281 |
# Expand all languages packages. |
282 |
%{expand:%(\ |
283 |
for lang in %langlist; do\ |
284 |
echo "%%{expand:%%(sed "s!__LANG__!$lang!g" %{_sourcedir}/%{name}-template.in 2> /dev/null)}";\ |
285 |
done\ |
286 |
) |
287 |
} |
288 |
|
289 |
%install |
290 |
# Convert rpm macros to bash variables |
291 |
%{expand:%(for lang in %{langlist}; do echo "language_$lang=%%{language_$lang}"; done)} |
292 |
|
293 |
mkdir -p %{buildroot}%{firefox_extdir}/ |
294 |
|
295 |
# Install all languages |
296 |
for lang in %{langlist}; do |
297 |
language="language_$lang" |
298 |
language=${!language} |
299 |
|
300 |
# l10n |
301 |
cp %{_sourcedir}/${language}.xpi %{buildroot}%{firefox_extdir}/langpack-${language}@firefox.mozilla.org.xpi |
302 |
|
303 |
done |