Compare commits
No commits in common. "rawhide" and "f41" have entirely different histories.
12 changed files with 4618 additions and 335 deletions
|
|
@ -1 +0,0 @@
|
|||
1
|
||||
43
README.md
43
README.md
|
|
@ -1,43 +0,0 @@
|
|||
# Fedora langpacks package
|
||||
|
||||
This package enables langpacks for glibc, hunspell dictionaries, KDE,
|
||||
and other packages, as well has default language support
|
||||
(fonts and input methods) for languages.
|
||||
|
||||
## Meta-package structure
|
||||
|
||||
```
|
||||
langpacks-* -> langpacks-{core,fonts}-* -> default-fonts-*
|
||||
```
|
||||
|
||||
### Default fonts
|
||||
|
||||
```
|
||||
default-fonts -> default-fonts-{core,cjk,other}-* -> default-fonts-*
|
||||
```
|
||||
|
||||
```
|
||||
default-fonts-core-* = default-core-{sans,mono,serif,emoji,math}
|
||||
default-fonts-cjk-* = default-fonts-cjk-{sans,mono,serif}
|
||||
default-fonts-other-* = default-fonts-other-{sans,mono,serif}
|
||||
```
|
||||
|
||||
## FAQ
|
||||
|
||||
### [Q] How to remove a default font or langpack meta-package?
|
||||
|
||||
Because of the chains of meta-packages it can be a little daunting to remove
|
||||
default fonts for example (ie without inducing dnf to remove lots of
|
||||
default packages).
|
||||
|
||||
But it can be done easily with for example:
|
||||
|
||||
```
|
||||
sudo dnf remove google-noto-sans-<LANG>-fonts --noautoremove
|
||||
```
|
||||
or
|
||||
```
|
||||
sudo dnf remove default-fonts-LANGCODE --noautoremove
|
||||
```
|
||||
|
||||
Though it is recommended to use the default-fonts in general.
|
||||
381
langpacks.spec
381
langpacks.spec
|
|
@ -1,11 +1,16 @@
|
|||
Name: langpacks
|
||||
Version: 4.3
|
||||
Release: 3%{?dist}
|
||||
Version: 4.1
|
||||
Release: 2%{?dist}
|
||||
Summary: Langpacks meta-package
|
||||
|
||||
License: GPL-2.0-or-later
|
||||
BuildArch: noarch
|
||||
BuildRequires: python3 fontconfig
|
||||
# Below Source was available on https://people.freedesktop.org/~hughsient/temp/
|
||||
Source0: org.fedoraproject.LangPacks.xml
|
||||
Source1: org.fedoraproject.LangPacks-Core.xml
|
||||
Source2: org.fedoraproject.default-fonts.xml
|
||||
Source3: org.fedoraproject.langpacks-fonts.xml
|
||||
Source4: normlang.py
|
||||
|
||||
# to split up the AppStream file
|
||||
|
|
@ -44,17 +49,10 @@ Langpack meta-package to provide individual langpacks packages.
|
|||
# meta: dependencies foe langpacks meta package
|
||||
# requires: required packages by meta package
|
||||
# recommends: recommended packages by meta package
|
||||
# only_default_font: boolean variable to generate only default-fonts package for any language
|
||||
#
|
||||
# Adding fedora_ prefix to inputmethod and meta.requires/meta.recommends will be available for Fedora only.
|
||||
#
|
||||
# See defcorepkg, deffontpkg, and defmetapkg for package template
|
||||
|
||||
# Note: Adding new ll_cc code (not ll) may needs extra work in gnome-software
|
||||
# to pick them up properly.
|
||||
# See https://gitlab.gnome.org/GNOME/gnome-software/-/blob/main/plugins/fedora-langpacks/gs-plugin-fedora-langpacks.c?ref_type=heads#L48
|
||||
#
|
||||
|
||||
%{lua:
|
||||
local core_font_package_list
|
||||
if tonumber(rpm.expand("0%{?rhel}")) ~= 0 and tonumber(rpm.expand("0%{?rhel}")) > 9 then
|
||||
|
|
@ -64,7 +62,7 @@ core_font_package_list = {
|
|||
serif={ "google-noto-serif-vf-fonts" },
|
||||
mono={ "redhat-mono-vf-fonts", "google-noto-sans-mono-vf-fonts" },
|
||||
emoji={ "google-noto-emoji-color-fonts" },
|
||||
math={ "google-noto-sans-math-fonts", "stix-fonts", "google-noto-sans-symbols-vf-fonts", "google-noto-sans-symbols-2-fonts" }
|
||||
math={ "google-noto-sans-math-fonts", "stix-fonts", "google-noto-sans-symbols-vf-fonts", "google-noto-sans-symbols2-fonts" }
|
||||
},
|
||||
cjk={
|
||||
sans={ "google-noto-sans-cjk-vf-fonts" },
|
||||
|
|
@ -79,7 +77,7 @@ core_font_package_list = {
|
|||
serif={ "google-noto-serif-vf-fonts" },
|
||||
mono={ "google-noto-sans-mono-vf-fonts" },
|
||||
emoji={ "google-noto-emoji-color-fonts" },
|
||||
math={ "google-noto-sans-math-fonts", "stix-fonts", "google-noto-sans-symbols-vf-fonts", "google-noto-sans-symbols-2-fonts" }
|
||||
math={ "google-noto-sans-math-fonts", "stix-fonts", "google-noto-sans-symbols-vf-fonts", "google-noto-sans-symbols2-fonts" }
|
||||
},
|
||||
cjk={
|
||||
sans={ "google-noto-sans-cjk-vf-fonts" },
|
||||
|
|
@ -164,7 +162,8 @@ local langpacks_package_list = {
|
|||
sans="",
|
||||
serif="",
|
||||
mono="" },
|
||||
recommends={},
|
||||
recommends={
|
||||
},
|
||||
inputmethod="",
|
||||
meta={ requires={},
|
||||
recommends={}
|
||||
|
|
@ -174,7 +173,8 @@ local langpacks_package_list = {
|
|||
sans="",
|
||||
serif="",
|
||||
mono="" },
|
||||
recommends={},
|
||||
recommends={
|
||||
},
|
||||
inputmethod="",
|
||||
meta={ requires={},
|
||||
recommends={}
|
||||
|
|
@ -184,7 +184,8 @@ local langpacks_package_list = {
|
|||
sans="",
|
||||
serif="",
|
||||
mono="" },
|
||||
recommends={},
|
||||
recommends={
|
||||
},
|
||||
inputmethod="",
|
||||
meta={ requires={},
|
||||
recommends={}
|
||||
|
|
@ -228,7 +229,8 @@ local langpacks_package_list = {
|
|||
sans="",
|
||||
serif="",
|
||||
mono="" },
|
||||
recommends={},
|
||||
recommends={
|
||||
},
|
||||
inputmethod="",
|
||||
meta={ requires={},
|
||||
recommends={}
|
||||
|
|
@ -238,7 +240,8 @@ local langpacks_package_list = {
|
|||
sans="",
|
||||
serif="",
|
||||
mono="" },
|
||||
recommends={},
|
||||
recommends={
|
||||
},
|
||||
inputmethod="",
|
||||
meta={ requires={},
|
||||
recommends={}
|
||||
|
|
@ -248,7 +251,8 @@ local langpacks_package_list = {
|
|||
sans="google-noto-sans-cherokee-vf-fonts",
|
||||
serif="",
|
||||
mono="" },
|
||||
recommends={},
|
||||
recommends={
|
||||
},
|
||||
inputmethod="",
|
||||
meta={ requires={},
|
||||
recommends={}
|
||||
|
|
@ -258,7 +262,8 @@ local langpacks_package_list = {
|
|||
sans="",
|
||||
serif="",
|
||||
mono="" },
|
||||
recommends={},
|
||||
recommends={
|
||||
},
|
||||
inputmethod="",
|
||||
meta={ requires={},
|
||||
recommends={}
|
||||
|
|
@ -268,7 +273,8 @@ local langpacks_package_list = {
|
|||
sans="",
|
||||
serif="",
|
||||
mono="" },
|
||||
recommends={},
|
||||
recommends={
|
||||
},
|
||||
inputmethod="",
|
||||
meta={ requires={},
|
||||
recommends={}
|
||||
|
|
@ -278,7 +284,8 @@ local langpacks_package_list = {
|
|||
sans="",
|
||||
serif="",
|
||||
mono="" },
|
||||
recommends={},
|
||||
recommends={
|
||||
},
|
||||
inputmethod="",
|
||||
meta={ requires={},
|
||||
recommends={}
|
||||
|
|
@ -288,7 +295,8 @@ local langpacks_package_list = {
|
|||
sans="",
|
||||
serif="",
|
||||
mono="" },
|
||||
recommends={},
|
||||
recommends={
|
||||
},
|
||||
inputmethod="",
|
||||
meta={ requires={},
|
||||
recommends={}
|
||||
|
|
@ -298,7 +306,8 @@ local langpacks_package_list = {
|
|||
sans="google-noto-sans-thaana-vf-fonts",
|
||||
serif="",
|
||||
mono="" },
|
||||
recommends={},
|
||||
recommends={
|
||||
},
|
||||
inputmethod="",
|
||||
meta={ requires={},
|
||||
recommends={}
|
||||
|
|
@ -308,7 +317,8 @@ local langpacks_package_list = {
|
|||
sans="",
|
||||
serif="",
|
||||
mono="" },
|
||||
recommends={},
|
||||
recommends={
|
||||
},
|
||||
inputmethod="",
|
||||
meta={ requires={},
|
||||
recommends={}
|
||||
|
|
@ -318,7 +328,8 @@ local langpacks_package_list = {
|
|||
sans="",
|
||||
serif="",
|
||||
mono="" },
|
||||
recommends={},
|
||||
recommends={
|
||||
},
|
||||
inputmethod="",
|
||||
meta={ requires={},
|
||||
recommends={}
|
||||
|
|
@ -341,7 +352,8 @@ local langpacks_package_list = {
|
|||
sans="",
|
||||
serif="",
|
||||
mono="" },
|
||||
recommends={},
|
||||
recommends={
|
||||
},
|
||||
inputmethod="",
|
||||
meta={ requires={},
|
||||
recommends={}
|
||||
|
|
@ -351,7 +363,8 @@ local langpacks_package_list = {
|
|||
sans="",
|
||||
serif="",
|
||||
mono="" },
|
||||
recommends={},
|
||||
recommends={
|
||||
},
|
||||
inputmethod="",
|
||||
meta={ requires={},
|
||||
recommends={}
|
||||
|
|
@ -361,7 +374,8 @@ local langpacks_package_list = {
|
|||
sans="",
|
||||
serif="",
|
||||
mono="" },
|
||||
recommends={},
|
||||
recommends={
|
||||
},
|
||||
inputmethod="",
|
||||
meta={ requires={},
|
||||
recommends={}
|
||||
|
|
@ -371,7 +385,8 @@ local langpacks_package_list = {
|
|||
sans="",
|
||||
serif="",
|
||||
mono="" },
|
||||
recommends={},
|
||||
recommends={
|
||||
},
|
||||
inputmethod="",
|
||||
meta={ requires={},
|
||||
recommends={}
|
||||
|
|
@ -381,7 +396,8 @@ local langpacks_package_list = {
|
|||
sans="",
|
||||
serif="",
|
||||
mono="" },
|
||||
recommends={},
|
||||
recommends={
|
||||
},
|
||||
inputmethod="",
|
||||
meta={ requires={},
|
||||
recommends={}
|
||||
|
|
@ -402,7 +418,8 @@ local langpacks_package_list = {
|
|||
sans="",
|
||||
serif="",
|
||||
mono="" },
|
||||
recommends={},
|
||||
recommends={
|
||||
},
|
||||
inputmethod="",
|
||||
meta={ requires={},
|
||||
recommends={}
|
||||
|
|
@ -412,7 +429,8 @@ local langpacks_package_list = {
|
|||
sans="",
|
||||
serif="",
|
||||
mono="" },
|
||||
recommends={},
|
||||
recommends={
|
||||
},
|
||||
inputmethod="",
|
||||
meta={ requires={},
|
||||
recommends={}
|
||||
|
|
@ -422,7 +440,8 @@ local langpacks_package_list = {
|
|||
sans="",
|
||||
serif="",
|
||||
mono="" },
|
||||
recommends={},
|
||||
recommends={
|
||||
},
|
||||
inputmethod="",
|
||||
meta={ requires={},
|
||||
recommends={}
|
||||
|
|
@ -432,17 +451,8 @@ local langpacks_package_list = {
|
|||
sans="",
|
||||
serif="",
|
||||
mono="" },
|
||||
recommends={},
|
||||
inputmethod="",
|
||||
meta={ requires={},
|
||||
recommends={}
|
||||
},
|
||||
},
|
||||
{ lang="got", fclang="", langname="Gothic", default={
|
||||
sans="google-noto-sans-gothic-fonts",
|
||||
serif="",
|
||||
mono="" },
|
||||
recommends={},
|
||||
recommends={
|
||||
},
|
||||
inputmethod="",
|
||||
meta={ requires={},
|
||||
recommends={}
|
||||
|
|
@ -503,7 +513,8 @@ local langpacks_package_list = {
|
|||
sans="",
|
||||
serif="",
|
||||
mono="" },
|
||||
recommends={},
|
||||
recommends={
|
||||
},
|
||||
inputmethod="",
|
||||
meta={ requires={},
|
||||
recommends={}
|
||||
|
|
@ -513,7 +524,8 @@ local langpacks_package_list = {
|
|||
sans="",
|
||||
serif="",
|
||||
mono="" },
|
||||
recommends={},
|
||||
recommends={
|
||||
},
|
||||
inputmethod="",
|
||||
meta={ requires={},
|
||||
recommends={}
|
||||
|
|
@ -523,7 +535,8 @@ local langpacks_package_list = {
|
|||
sans="google-noto-sans-armenian-vf-fonts",
|
||||
serif="google-noto-serif-armenian-vf-fonts",
|
||||
mono="" },
|
||||
recommends={},
|
||||
recommends={
|
||||
},
|
||||
inputmethod="",
|
||||
meta={ requires={},
|
||||
recommends={}
|
||||
|
|
@ -533,7 +546,8 @@ local langpacks_package_list = {
|
|||
sans="",
|
||||
serif="",
|
||||
mono="" },
|
||||
recommends={},
|
||||
recommends={
|
||||
},
|
||||
inputmethod="",
|
||||
meta={ requires={},
|
||||
recommends={}
|
||||
|
|
@ -543,29 +557,19 @@ local langpacks_package_list = {
|
|||
sans="",
|
||||
serif="",
|
||||
mono="" },
|
||||
recommends={},
|
||||
recommends={
|
||||
},
|
||||
inputmethod="",
|
||||
meta={ requires={},
|
||||
recommends={}
|
||||
},
|
||||
},
|
||||
{ lang="ii", fclang="ii", langname="Sichuan Yi", default={
|
||||
sans="google-noto-sans-yi-fonts",
|
||||
serif="",
|
||||
mono="" },
|
||||
recommends={ "sil-nuosu-fonts"
|
||||
},
|
||||
inputmethod="ibus-m17n",
|
||||
meta={ requires={},
|
||||
recommends={}
|
||||
},
|
||||
only_default_font=true,
|
||||
},
|
||||
{ lang="is", fclang="", langname="Icelandic", default={
|
||||
sans="",
|
||||
serif="",
|
||||
mono="" },
|
||||
recommends={},
|
||||
recommends={
|
||||
},
|
||||
inputmethod="",
|
||||
meta={ requires={},
|
||||
recommends={}
|
||||
|
|
@ -575,7 +579,8 @@ local langpacks_package_list = {
|
|||
sans="",
|
||||
serif="",
|
||||
mono="" },
|
||||
recommends={},
|
||||
recommends={
|
||||
},
|
||||
inputmethod="",
|
||||
meta={ requires={},
|
||||
recommends={}
|
||||
|
|
@ -585,7 +590,8 @@ local langpacks_package_list = {
|
|||
sans="google-noto-sans-canadian-aboriginal-vf-fonts",
|
||||
serif="",
|
||||
mono="" },
|
||||
recommends={},
|
||||
recommends={
|
||||
},
|
||||
inputmethod="",
|
||||
meta={ requires={},
|
||||
recommends={}
|
||||
|
|
@ -595,21 +601,12 @@ local langpacks_package_list = {
|
|||
sans="", -- Use core_font_package_list if you want to have common fonts for CJK
|
||||
serif="",
|
||||
mono="" },
|
||||
recommends={},
|
||||
recommends={
|
||||
},
|
||||
inputmethod="ibus-anthy",
|
||||
meta={ requires={},
|
||||
recommends={},
|
||||
fedora_recommends={ "(uim-anthy if uim)" }
|
||||
},
|
||||
},
|
||||
{ lang="kab", fclang="", langname="Kabyle", default={
|
||||
sans="",
|
||||
serif="",
|
||||
mono="" },
|
||||
recommends={ "google-noto-sans-tifinagh-fonts" },
|
||||
inputmethod="",
|
||||
meta={ requires={},
|
||||
recommends={}
|
||||
fedora_recommends={ "(uim-anthy if uim)" }
|
||||
},
|
||||
},
|
||||
{ lang="ka", fclang="", langname="Georgian", default={
|
||||
|
|
@ -629,7 +626,8 @@ local langpacks_package_list = {
|
|||
sans="",
|
||||
serif="",
|
||||
mono="" },
|
||||
recommends={},
|
||||
recommends={
|
||||
},
|
||||
inputmethod="",
|
||||
meta={ requires={},
|
||||
recommends={}
|
||||
|
|
@ -673,7 +671,8 @@ local langpacks_package_list = {
|
|||
sans="", -- Use core_font_package_list if you want to have common fonts for CJK
|
||||
serif="",
|
||||
mono="" },
|
||||
recommends={},
|
||||
recommends={
|
||||
},
|
||||
inputmethod="ibus-hangul",
|
||||
meta={ requires={},
|
||||
recommends={}
|
||||
|
|
@ -683,7 +682,8 @@ local langpacks_package_list = {
|
|||
sans="",
|
||||
serif="",
|
||||
mono="" },
|
||||
recommends={},
|
||||
recommends={
|
||||
},
|
||||
inputmethod="",
|
||||
meta={ requires={},
|
||||
recommends={}
|
||||
|
|
@ -693,7 +693,8 @@ local langpacks_package_list = {
|
|||
sans="google-noto-sans-lao-vf-fonts",
|
||||
serif="google-noto-serif-lao-vf-fonts",
|
||||
mono="" },
|
||||
recommends={},
|
||||
recommends={
|
||||
},
|
||||
inputmethod="",
|
||||
meta={ requires={},
|
||||
recommends={}
|
||||
|
|
@ -703,7 +704,8 @@ local langpacks_package_list = {
|
|||
sans="",
|
||||
serif="",
|
||||
mono="" },
|
||||
recommends={},
|
||||
recommends={
|
||||
},
|
||||
inputmethod="",
|
||||
meta={ requires={},
|
||||
recommends={}
|
||||
|
|
@ -713,7 +715,8 @@ local langpacks_package_list = {
|
|||
sans="",
|
||||
serif="",
|
||||
mono="" },
|
||||
recommends={},
|
||||
recommends={
|
||||
},
|
||||
inputmethod="",
|
||||
meta={ requires={},
|
||||
recommends={}
|
||||
|
|
@ -735,7 +738,8 @@ local langpacks_package_list = {
|
|||
sans="",
|
||||
serif="",
|
||||
mono="" },
|
||||
recommends={},
|
||||
recommends={
|
||||
},
|
||||
inputmethod="",
|
||||
meta={ requires={},
|
||||
recommends={}
|
||||
|
|
@ -765,10 +769,11 @@ local langpacks_package_list = {
|
|||
},
|
||||
},
|
||||
{ lang="mni", fclang="", langname="Manipuri", default={
|
||||
sans="google-noto-sans-meetei-mayek-vf-fonts",
|
||||
sans="google-noto-sans-meeteimayek-vf-fonts",
|
||||
serif="",
|
||||
mono="" },
|
||||
recommends={},
|
||||
recommends={ "",
|
||||
},
|
||||
inputmethod="ibus-m17n",
|
||||
meta={ requires={},
|
||||
recommends={}
|
||||
|
|
@ -791,7 +796,8 @@ local langpacks_package_list = {
|
|||
sans="",
|
||||
serif="",
|
||||
mono="" },
|
||||
recommends={},
|
||||
recommends={
|
||||
},
|
||||
inputmethod="",
|
||||
meta={ requires={},
|
||||
recommends={}
|
||||
|
|
@ -801,7 +807,8 @@ local langpacks_package_list = {
|
|||
sans="sil-padauk-fonts",
|
||||
serif="",
|
||||
mono="" },
|
||||
recommends={},
|
||||
recommends={
|
||||
},
|
||||
inputmethod="",
|
||||
meta={ requires={},
|
||||
recommends={}
|
||||
|
|
@ -811,7 +818,8 @@ local langpacks_package_list = {
|
|||
sans="",
|
||||
serif="",
|
||||
mono="" },
|
||||
recommends={},
|
||||
recommends={
|
||||
},
|
||||
inputmethod="",
|
||||
meta={ requires={},
|
||||
recommends={}
|
||||
|
|
@ -834,7 +842,8 @@ local langpacks_package_list = {
|
|||
sans="",
|
||||
serif="",
|
||||
mono="" },
|
||||
recommends={},
|
||||
recommends={
|
||||
},
|
||||
inputmethod="",
|
||||
meta={ requires={},
|
||||
recommends={}
|
||||
|
|
@ -844,17 +853,8 @@ local langpacks_package_list = {
|
|||
sans="",
|
||||
serif="",
|
||||
mono="" },
|
||||
recommends={},
|
||||
inputmethod="",
|
||||
meta={ requires={},
|
||||
recommends={}
|
||||
},
|
||||
},
|
||||
{ lang="nqo", fclang="", langname="N'Ko", default={
|
||||
sans="google-noto-sans-nko-fonts",
|
||||
serif="",
|
||||
mono="" },
|
||||
recommends={},
|
||||
recommends={
|
||||
},
|
||||
inputmethod="",
|
||||
meta={ requires={},
|
||||
recommends={}
|
||||
|
|
@ -864,7 +864,8 @@ local langpacks_package_list = {
|
|||
sans="",
|
||||
serif="",
|
||||
mono="" },
|
||||
recommends={},
|
||||
recommends={
|
||||
},
|
||||
inputmethod="",
|
||||
meta={ requires={},
|
||||
recommends={}
|
||||
|
|
@ -1048,17 +1049,6 @@ local langpacks_package_list = {
|
|||
recommends={}
|
||||
},
|
||||
},
|
||||
{ lang="syr", fclang="", langname="Syriac", default={
|
||||
sans="google-noto-sans-syriac-vf-fonts",
|
||||
serif="",
|
||||
mono="" },
|
||||
recommends={
|
||||
},
|
||||
inputmethod="",
|
||||
meta={ requires={},
|
||||
recommends={}
|
||||
},
|
||||
},
|
||||
{ lang="ta", fclang="", langname="Tamil", default={
|
||||
sans="google-noto-sans-tamil-vf-fonts",
|
||||
serif="google-noto-serif-tamil-vf-fonts",
|
||||
|
|
@ -1244,11 +1234,7 @@ local langpacks_package_list = {
|
|||
},
|
||||
inputmethod="ibus-table-chinese-cangjie",
|
||||
meta={ requires={},
|
||||
recommends={ "ibus-table-chinese-quick" },
|
||||
fedora_recommends={ "ibus-table-chinese-quick",
|
||||
"ibus-cangjie-engine-cangjie",
|
||||
"ibus-cangjie-engine-quick",
|
||||
}
|
||||
recommends={ "ibus-table-chinese-quick" }
|
||||
},
|
||||
},
|
||||
{ lang="zh_TW", fclang="", langname="Taiwan", default={
|
||||
|
|
@ -1453,95 +1439,6 @@ This package provides %{_langname} langpacks meta-package.
|
|||
rpm.undefine("_req")
|
||||
end
|
||||
|
||||
--
|
||||
--AppStream template
|
||||
--
|
||||
local function defappstream_open(fname)
|
||||
return "cat <<_EOL_>" .. fname .. "\\\n" .. [[
|
||||
<?xml version=\"1.0\" encoding=\"UTF-8\"?>\
|
||||
<components origin=\"langpacks\">\
|
||||
]]
|
||||
end
|
||||
|
||||
local function defappstream_close(f)
|
||||
local s = f .. [[</components>\
|
||||
_EOL_
|
||||
]]
|
||||
return s
|
||||
end
|
||||
|
||||
local function defappstream_body(f, component, id, lang, fclang, name, summary, desc)
|
||||
if lang ~= fclang and fclang ~= "" then
|
||||
return f
|
||||
end
|
||||
local _id = (lang == "" and id or id .. "-" .. lang)
|
||||
local _summary = (lang == "" and summary or summary .. " for " .. name)
|
||||
local s = f .. [[
|
||||
<component type=\"]] .. component .. [[\">\
|
||||
<metadata_license>CC0-1.0</metadata_license>\
|
||||
<id>org.fedoraproject.]] .. _id .. [[</id>\
|
||||
<name>]] .. name .. [[</name>\
|
||||
<summary>]] .. _summary .. [[</summary>\
|
||||
<description>\
|
||||
<p>\
|
||||
]] .. desc .. [[\
|
||||
</p>\
|
||||
</description>\
|
||||
</component>\
|
||||
]]
|
||||
return s
|
||||
end
|
||||
|
||||
local function defappstream_metabody(f, id, name)
|
||||
f = defappstream_body(f, "font", "default-fonts-" .. id, "sans", "", name, "sans-serif default font", "sans-serif font package to install default font for " .. name .. " languages.")
|
||||
f = defappstream_body(f, "font", "default-fonts-" .. id, "serif", "", name, "serif default font", "serif font package to install default font for " .. name .. " languages.")
|
||||
f = defappstream_body(f, "font", "default-fonts-" .. id, "mono", "", name, "monospace default font", "monospace font package to install default font for " .. name .. " languages.")
|
||||
return f
|
||||
end
|
||||
|
||||
local function defappstream(table)
|
||||
local slpc = defappstream_open("org.fedoraproject.LangPacks-Core.xml")
|
||||
local slp = defappstream_open("org.fedoraproject.LangPacks.xml")
|
||||
local sdf = defappstream_open("org.fedoraproject.default-fonts.xml")
|
||||
local slf = defappstream_open("org.fedoraproject.langpacks-fonts.xml")
|
||||
|
||||
--
|
||||
-- default-fonts
|
||||
--
|
||||
sdf = defappstream_body(sdf, "font", "default-fonts", "", "", "default-fonts", "All default fonts for all the languages", "Meta-package to install all the default fonts for all the languages.")
|
||||
--
|
||||
-- default-fonts-core
|
||||
--
|
||||
sdf = defappstream_body(sdf, "font", "default-fonts", "core", "", "Latin", "All variants default fonts", "sans-serif/serif/monospace/emoji/math font packages to install default fonts for Latin.")
|
||||
sdf = defappstream_metabody(sdf, "core", "Latin")
|
||||
sdf = defappstream_body(sdf, "font", "default-fonts-core", "emoji", "", "Emoji", "default font", "emoji font package to install default font.")
|
||||
sdf = defappstream_body(sdf, "font", "default-fonts-core", "math", "", "Math", "default font", "math font package to install default font.")
|
||||
--
|
||||
-- default-fonts-other
|
||||
--
|
||||
sdf = defappstream_body(sdf, "font", "default-fonts", "other", "", "non-CJK", "All variants default fonts", "sans-serif/serif/monospace font packages to install default fonts for non-CJK languages.")
|
||||
sdf = defappstream_metabody(sdf, "other", "non-CJK")
|
||||
--
|
||||
-- default-fonts-cjk
|
||||
--
|
||||
sdf = defappstream_body(sdf, "font", "default-fonts", "cjk", "", "Chinese/Japanese/Korean", "All variants default fonts", "sans-serif/serif/monospace font packages to install default fonts for CJK languages.")
|
||||
sdf = defappstream_metabody(sdf, "cjk", "Chinese/Japanese/Korean")
|
||||
|
||||
for i = 1, #table do
|
||||
sdf = defappstream_body(sdf, "font", "default-fonts", table[i]["lang"], table[i]["fclang"], table[i]["langname"], "Localization Font support", "Core font package to install default font.")
|
||||
if not table[i]["only_default_font"] then
|
||||
slpc = defappstream_body(slpc, "localization", "LangPack-Core", table[i]["lang"], table[i]["lang"], table[i]["langname"], "Core Localization support", "Core Meta-package to install default font, glibc locale and input-method if available.")
|
||||
slp = defappstream_body(slp, "localization", "LangPack", table[i]["lang"], table[i]["lang"], table[i]["langname"], "Localization support", "Meta-package to install available langpacks for the language available for the installed packages.")
|
||||
slf = defappstream_body(slf, "font", "langpacks-fonts", table[i]["lang"], table[i]["fclang"], table[i]["langname"], "Localization Font support", "Meta-package to install extra font.")
|
||||
end
|
||||
end
|
||||
|
||||
rpm.define("langpacks_metainfo_lpc " .. defappstream_close(slpc))
|
||||
rpm.define("langpacks_metainfo_lp " .. defappstream_close(slp))
|
||||
rpm.define("langpacks_metainfo_df " .. defappstream_close(sdf))
|
||||
rpm.define("langpacks_metainfo_lf " .. defappstream_close(slf))
|
||||
end
|
||||
|
||||
local other_deps = { sans={}, serif={}, mono={} }
|
||||
local cjk_deps = { sans={}, serif={}, mono={} }
|
||||
local face = { "sans", "serif", "mono" }
|
||||
|
|
@ -1565,7 +1462,6 @@ for i = 1, #langpacks_package_list do
|
|||
local im = (tonumber(rpm.expand("0%{?fedora}")) ~= 0 and langpacks_package_list[i]["fedora_inputmethod"] ~= nil and langpacks_package_list[i]["fedora_inputmethod"] or langpacks_package_list[i]["inputmethod"])
|
||||
local fclang = (langpacks_package_list[i]["fclang"] == "" and string.gsub(lang, "_", "-") or langpacks_package_list[i]["fclang"])
|
||||
local prov = ""
|
||||
local only_default_pkg = langpacks_package_list[i]["only_default_font"]
|
||||
|
||||
if orth ~= "" then
|
||||
--Try to validate orth in table
|
||||
|
|
@ -1647,27 +1543,18 @@ for i = 1, #langpacks_package_list do
|
|||
deffontpkg("default-fonts-" .. lang, "default fonts", langname, append_obsolete(default_deps, "langpacks-core-font-" .. lang))
|
||||
end
|
||||
end
|
||||
if only_default_pkg == nil then
|
||||
deffontpkg("langpacks-fonts-" .. lang, "extra fonts", langname, append_obsolete(extra_deps, "default-fonts-extra-" .. lang))
|
||||
end
|
||||
end
|
||||
if only_default_pkg == nil then
|
||||
defcorepkg(lang, fclang, langname, im)
|
||||
deffontpkg("langpacks-fonts-" .. lang, "extra fonts", langname, append_obsolete(extra_deps, "default-fonts-extra-" .. lang))
|
||||
end
|
||||
defcorepkg(lang, fclang, langname, im)
|
||||
|
||||
--Generate langpacks-* meta packages
|
||||
if only_default_pkg == nil then
|
||||
local metadeps = (tonumber(rpm.expand("0%{?fedora}")) ~= 0 and langpacks_package_list[i]["meta"]["fedora_requires"] ~= nil and langpacks_package_list[i]["meta"]["fedora_requires"] or langpacks_package_list[i]["meta"]["requires"])
|
||||
local metarecd = (tonumber(rpm.expand("0%{?fedora}")) ~= 0 and langpacks_package_list[i]["meta"]["fedora_recommends"] ~= nil and langpacks_package_list[i]["meta"]["fedora_recommends"] or langpacks_package_list[i]["meta"]["recommends"])
|
||||
local deps = build_deps("", "Requires", drop_duplicate(metadeps))
|
||||
deps = build_deps(deps, "Recommends", drop_duplicate(metarecd))
|
||||
defmetapkg(lang, fclang, langname, deps)
|
||||
end
|
||||
local metadeps = (tonumber(rpm.expand("0%{?fedora}")) ~= 0 and langpacks_package_list[i]["meta"]["fedora_requires"] ~= nil and langpacks_package_list[i]["meta"]["fedora_requires"] or langpacks_package_list[i]["meta"]["requires"])
|
||||
local metarecd = (tonumber(rpm.expand("0%{?fedora}")) ~= 0 and langpacks_package_list[i]["meta"]["fedora_recommends"] ~= nil and langpacks_package_list[i]["meta"]["fedora_recommends"] or langpacks_package_list[i]["meta"]["recommends"])
|
||||
local deps = build_deps("", "Requires", drop_duplicate(metadeps))
|
||||
deps = build_deps(deps, "Recommends", drop_duplicate(metarecd))
|
||||
defmetapkg(lang, fclang, langname, deps)
|
||||
end
|
||||
|
||||
--Generate AppStream files
|
||||
defappstream(langpacks_package_list)
|
||||
|
||||
--Special care of cjk-sans to reduce extra sub-packages and dependencies like core-sans
|
||||
for i = 1, #core_font_package_list["cjk"]["sans"] do
|
||||
table.insert(cjk_sans_deps, core_font_package_list["cjk"]["sans"][i])
|
||||
|
|
@ -1758,59 +1645,19 @@ meta packages for non-CJK languages.
|
|||
# nothing to prep
|
||||
|
||||
%build
|
||||
%{langpacks_metainfo_lpc}
|
||||
%{langpacks_metainfo_lp}
|
||||
%{langpacks_metainfo_df}
|
||||
%{langpacks_metainfo_lf}
|
||||
# nothing to build
|
||||
|
||||
|
||||
%install
|
||||
# Explode the metainfo files into the subpackages so they get added to the
|
||||
# distro-specific AppStream metadata
|
||||
mkdir -p %{buildroot}/usr/share/metainfo
|
||||
DESTDIR=%{buildroot} appstream-util split-appstream org.fedoraproject.LangPacks-Core.xml
|
||||
DESTDIR=%{buildroot} appstream-util split-appstream org.fedoraproject.LangPacks.xml
|
||||
DESTDIR=%{buildroot} appstream-util split-appstream org.fedoraproject.default-fonts.xml
|
||||
DESTDIR=%{buildroot} appstream-util split-appstream org.fedoraproject.langpacks-fonts.xml
|
||||
DESTDIR=%{buildroot} appstream-util split-appstream %{SOURCE0}
|
||||
DESTDIR=%{buildroot} appstream-util split-appstream %{SOURCE1}
|
||||
DESTDIR=%{buildroot} appstream-util split-appstream %{SOURCE2}
|
||||
DESTDIR=%{buildroot} appstream-util split-appstream %{SOURCE3}
|
||||
|
||||
%changelog
|
||||
* Thu Jul 16 2026 Fedora Release Engineering <releng@fedoraproject.org> - 4.3-3
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_45_Mass_Rebuild
|
||||
|
||||
* Tue May 12 2026 Parag Nemade <pnemade AT redhat DOT com> - 4.3-2
|
||||
- Add functionality to only generate default-fonts for any language
|
||||
|
||||
* Mon Mar 02 2026 Jens Petersen <petersen@redhat.com> - 4.3-1
|
||||
- add ii langpack for Sichuan Yi (Nuosu)
|
||||
- add README.md (#2237646)
|
||||
|
||||
* Fri Jan 16 2026 Fedora Release Engineering <releng@fedoraproject.org> - 4.2-6
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_44_Mass_Rebuild
|
||||
|
||||
* Thu Jul 24 2025 Fedora Release Engineering <releng@fedoraproject.org> - 4.2-5
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild
|
||||
|
||||
* Tue Jan 21 2025 Yaakov Selkowitz <yselkowi@redhat.com> - 4.2-4
|
||||
- Recommend ibus-cangjie only on Fedora
|
||||
|
||||
* Fri Jan 17 2025 Fedora Release Engineering <releng@fedoraproject.org> - 4.2-3
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild
|
||||
|
||||
* Thu Nov 14 2024 Mike FABIAN <mfabian@redht.com> - 4.2-2
|
||||
- Resolves: rhbz#2310426 Add ibus-cangjie-engine-cangjie and ibus-cangjie-engine-quick as recommends for zh_HK
|
||||
|
||||
* Tue Oct 22 2024 Akira TAGOH <tagoh@redhat.com> - 4.2-1
|
||||
- Add sub-packages:
|
||||
- got for Gothic
|
||||
- kab for Kabyle
|
||||
- nqo for N'Ko
|
||||
- syr for Syriac
|
||||
|
||||
* Tue Aug 13 2024 Akira TAGOH <tagoh@redhat.com> - 4.1-3
|
||||
- Update package names for renaming
|
||||
google-noto-sans-symbols2-fonts -> google-noto-sans-symbols-2-fonts
|
||||
google-noto-sans-meeteimayek-vf-fonts -> google-noto-sans-meetei-mayek-vf-fonts
|
||||
|
||||
* Wed Jul 17 2024 Parag Nemade <pnemade AT redhat DOT com> - 4.1-2
|
||||
- zh_TW: change default inputmethod to ibus-chewing
|
||||
https://fedoraproject.org/wiki/Changes/IBusChewingForZhTW
|
||||
|
|
|
|||
1060
org.fedoraproject.LangPacks-Core.xml
Normal file
1060
org.fedoraproject.LangPacks-Core.xml
Normal file
File diff suppressed because it is too large
Load diff
1060
org.fedoraproject.LangPacks.xml
Normal file
1060
org.fedoraproject.LangPacks.xml
Normal file
File diff suppressed because it is too large
Load diff
1202
org.fedoraproject.default-fonts.xml
Normal file
1202
org.fedoraproject.default-fonts.xml
Normal file
File diff suppressed because it is too large
Load diff
1038
org.fedoraproject.langpacks-fonts.xml
Normal file
1038
org.fedoraproject.langpacks-fonts.xml
Normal file
File diff suppressed because it is too large
Load diff
|
|
@ -1,5 +0,0 @@
|
|||
summary: Basic smoke test
|
||||
discover:
|
||||
how: fmf
|
||||
execute:
|
||||
how: tmt
|
||||
28
tests/check-default-font-installed.sh
Executable file → Normal file
28
tests/check-default-font-installed.sh
Executable file → Normal file
|
|
@ -1,36 +1,34 @@
|
|||
#!/bin/bash
|
||||
set -e
|
||||
|
||||
echo "First check installed langpacks list"
|
||||
sudo dnf list --installed| grep langpacks
|
||||
|
||||
echo "Check hi language"
|
||||
sudo dnf list --installed|grep google-noto-sans-devanagari-vf-fonts
|
||||
for pkg in `cat /tmp/langpacks-packages-list.txt`; do
|
||||
sudo dnf install $pkg -y --quiet
|
||||
retval=$?
|
||||
echo $retval
|
||||
if [ $retval -ne 0 ]; then
|
||||
echo "langpacks-core-hi failed to install google-noto-sans-devanagari-vf-fonts as default font package"
|
||||
echo "$pkg is not installed"
|
||||
else
|
||||
echo "langpacks-core-hi installed with default font google-noto-sans-devanagari-vf-fonts package"
|
||||
echo "$pkg is successfully installed"
|
||||
fi
|
||||
done
|
||||
|
||||
echo "Check ja language"
|
||||
sudo dnf list --installed|grep google-noto-sans-cjk-vf-fonts
|
||||
# Check hi language
|
||||
sudo dnf list installed|grep lohit-devanagari-fonts
|
||||
retval=$?
|
||||
echo $retval
|
||||
if [ $retval -ne 0 ]; then
|
||||
echo "langpacks-core-ja failed to install google-noto-sans-cjk-vf-fonts as default font package"
|
||||
echo "default-fonts-hi failed to install lohit-devanagari-fonts as default font package"
|
||||
else
|
||||
echo "langpacks-core-ja installed with default font google-noto-sans-cjk-vf-fonts package"
|
||||
echo "default-fonts-hi installed with default font lohit-devanagari-fonts package"
|
||||
fi
|
||||
|
||||
echo "Check zh_CN language"
|
||||
sudo dnf list --installed|grep google-noto-sans-cjk-vf-fonts
|
||||
# Check zh_CN language
|
||||
sudo dnf list installed|grep google-noto-sans-cjk-vf-fonts
|
||||
retval=$?
|
||||
echo $retval
|
||||
if [ $retval -ne 0 ]; then
|
||||
echo "langpacks-core-zh_CN failed to install google-noto-sans-cjk-vf-fonts as default font package"
|
||||
echo "default-fonts-zh_CN failed to install google-noto-sans-cjk-vf-fonts as default font package"
|
||||
else
|
||||
echo "langpacks-core-zh_CN installed with default font google-noto-sans-cjk-vf-fonts package"
|
||||
echo "default-fonts-zh_CN installed with default font google-noto-sans-cjk-vf-fonts package"
|
||||
fi
|
||||
|
||||
|
|
|
|||
92
tests/langpacks-packages-list.txt
Normal file
92
tests/langpacks-packages-list.txt
Normal file
|
|
@ -0,0 +1,92 @@
|
|||
default-fonts-af
|
||||
default-fonts-am
|
||||
default-fonts-ar
|
||||
default-fonts-as
|
||||
default-fonts-ast
|
||||
default-fonts-be
|
||||
default-fonts-bg
|
||||
default-fonts-bn
|
||||
default-fonts-bo
|
||||
default-fonts-br
|
||||
default-fonts-bs
|
||||
default-fonts-ca
|
||||
default-fonts-chr
|
||||
default-fonts-cs
|
||||
default-fonts-cy
|
||||
default-fonts-da
|
||||
default-fonts-de
|
||||
default-fonts-dv
|
||||
default-fonts-dz
|
||||
default-fonts-el
|
||||
default-fonts-en
|
||||
default-fonts-eo
|
||||
default-fonts-es
|
||||
default-fonts-et
|
||||
default-fonts-eu
|
||||
default-fonts-fa
|
||||
default-fonts-fi
|
||||
default-fonts-fr
|
||||
default-fonts-ga
|
||||
default-fonts-gl
|
||||
default-fonts-gu
|
||||
default-fonts-he
|
||||
default-fonts-hi
|
||||
default-fonts-hr
|
||||
default-fonts-hu
|
||||
default-fonts-hy
|
||||
default-fonts-ia
|
||||
default-fonts-id
|
||||
default-fonts-is
|
||||
default-fonts-it
|
||||
default-fonts-iu
|
||||
default-fonts-ja
|
||||
default-fonts-ka
|
||||
default-fonts-kk
|
||||
default-fonts-km
|
||||
default-fonts-kn
|
||||
default-fonts-ko
|
||||
default-fonts-ku
|
||||
default-fonts-lo
|
||||
default-fonts-lt
|
||||
default-fonts-lv
|
||||
default-fonts-mai
|
||||
default-fonts-mk
|
||||
default-fonts-ml
|
||||
default-fonts-mr
|
||||
default-fonts-ms
|
||||
default-fonts-my
|
||||
default-fonts-nb
|
||||
default-fonts-ne
|
||||
default-fonts-nl
|
||||
default-fonts-nn
|
||||
default-fonts-nr
|
||||
default-fonts-nso
|
||||
default-fonts-or
|
||||
default-fonts-pa
|
||||
default-fonts-pl
|
||||
default-fonts-pt
|
||||
default-fonts-ro
|
||||
default-fonts-ru
|
||||
default-fonts-si
|
||||
default-fonts-sk
|
||||
default-fonts-sl
|
||||
default-fonts-sq
|
||||
default-fonts-sr
|
||||
default-fonts-ss
|
||||
default-fonts-sv
|
||||
default-fonts-ta
|
||||
default-fonts-te
|
||||
default-fonts-th
|
||||
default-fonts-tn
|
||||
default-fonts-tr
|
||||
default-fonts-ts
|
||||
default-fonts-uk
|
||||
default-fonts-ur
|
||||
default-fonts-ve
|
||||
default-fonts-vi
|
||||
default-fonts-xh
|
||||
default-fonts-yi
|
||||
default-fonts-zh_CN
|
||||
default-fonts-zh_HK
|
||||
default-fonts-zh_TW
|
||||
default-fonts-zu
|
||||
|
|
@ -1,4 +0,0 @@
|
|||
require:
|
||||
- langpacks-core-ja
|
||||
test: bash ./check-default-font-installed.sh
|
||||
framework: shell
|
||||
39
tests/tests.yml
Normal file
39
tests/tests.yml
Normal file
|
|
@ -0,0 +1,39 @@
|
|||
- hosts: localhost
|
||||
vars:
|
||||
- artifacts: "{{ lookup('env', 'TEST_ARTIFACTS')|default('./artifacts', true) }}"
|
||||
tags:
|
||||
- classic
|
||||
remote_user: root
|
||||
tasks:
|
||||
- name: Install required packages
|
||||
dnf:
|
||||
name:
|
||||
- langpacks-core-hi
|
||||
- langpacks-core-zh_CN
|
||||
|
||||
- name: Install the test files
|
||||
copy: src={{ item.file }} dest=/tmp/{{ item.dest }} mode=0755
|
||||
with_items:
|
||||
- {file: check-default-font-installed.sh, dest: check-default-font-installed.sh }
|
||||
|
||||
- name: Install the test data files
|
||||
copy: src={{ item.file }} dest=/tmp/{{ item.dest }} mode=0644
|
||||
with_items:
|
||||
- {file: langpacks-packages-list.txt, dest: langpacks-packages-list.txt }
|
||||
|
||||
- name: Test block
|
||||
block:
|
||||
- name: Execute the tests
|
||||
shell: |
|
||||
/tmp/check-default-font-installed.sh &> /tmp/test.log && result=pass || result=fail
|
||||
echo -e "results:\n- {result: $result, test: simple}" > /tmp/results.yml
|
||||
|
||||
always:
|
||||
- name: Pull out the logs
|
||||
fetch:
|
||||
dest: "{{ artifacts }}/"
|
||||
src: "{{ item }}"
|
||||
flat: yes
|
||||
with_items:
|
||||
- /tmp/test.log
|
||||
- /tmp/results.yml
|
||||
Loading…
Add table
Add a link
Reference in a new issue