#97 Replace comps language support groups with weak dependencies
Closed: Fixed 3 months ago by pnemade. Opened a year ago by petersen.

Currently comps has many language support groups leftover.
It would better to replace these with weak dependencies as far as possible.


I think we need to consider some testcases:

  • how to pull in an optional font for a language
  • similarly for IMEs, and other packages perhaps

I feel this is feasible now for F30:

  • mandatory packages can go into langpacks-* as Requires
  • conditional packages can be Supplements Rich dependencies
  • default packages can be Recommends Weak deps
  • optional packages should probably be dropped or made to be Weak dependency hints

cf https://fedoraproject.org/wiki/Packaging:WeakDependencies

+1 This will make langpacks more usable.

Jens will try to come up with a few example mappings taken from current language groups by the 18th December meeting.

Metadata Update from @pnemade:
- Issue assigned to petersen

6 months ago

Example 1: assamese-support

<langonly>as</langonly>
<packagelist>
  <packagereq type="mandatory">lohit-assamese-fonts</packagereq>
  <packagereq type="mandatory">m17n-db</packagereq>
  <packagereq type="conditional" requires="xorg-x11-server-Xorg">ibus-m17n</packagereq>
  <packagereq type="default">google-noto-sans-bengali-fonts</packagereq>
  <packagereq type="default">google-noto-sans-bengali-ui-fonts</packagereq>
  <packagereq type="default">iok</packagereq>

becomes:

%package as
Summary:    Assamese langpacks meta-package
Requires:   lohit-assamese-fonts
Requires:   m17n-db
Recommends: google-noto-sans-bengali-fonts
Recommends: google-noto-sans-bengali-ui-fonts
Recommends: iok

and ibus-m17n.spec:

Supplements: (xorg-x11-server-Xorg and langpacks-as)

Maybe xorg-x11-server-Xorg could be updated to something more modern now?

Example 2: Chinese

<langonly>zh_CN</langonly>
<packagelist>
  <packagereq type="conditional" requires="xorg-x11-server-Xorg">ibus-libpinyin</packagereq>
  <packagereq type="default">google-noto-sans-cjk-ttc-fonts</packagereq>
  <packagereq type="default">google-noto-serif-cjk-ttc-fonts</packagereq>
  <packagereq type="optional">ibus-table-chinese-erbi</packagereq>
  <packagereq type="optional">ibus-table-chinese-wubi-haifeng</packagereq>
  <packagereq type="optional">ibus-table-chinese-wubi-jidian</packagereq>

becomes

langpacks-zh_CN.noarch having

Recommends: google-noto-sans-cjk-ttc-fonts
Recommends: google-noto-serif-cjk-ttc-fonts
Suggests:   ibus-table-chinese-erbi
Suggests:   ibus-table-chinese-wubi-haifeng
Suggests:   ibus-table-chinese-wubi-jidian

and ibus-libpinyin.spec:

Supplements: (xorg-x11-server-Xorg and (langpacks-zh_CN or langpacks-zh))

(I noticed there is no langpacks-zh_SG.)

You can also do conditional Recommends if that helps any.

For example, you can put in a langpack-zh subpackage:

Recommends: (ibus-libpinyin if xorg-x11-server-Xorg)

This is implemented now in F30+

Thanks all for your comments.

Metadata Update from @pnemade:
- Issue close_status updated to: Fixed
- Issue status updated to: Closed (was: Open)

3 months ago

https://fedoraproject.org/wiki/Changes/Replace_Comps_Language_Group_With_Langpacks

On the wiki page there is noted:

Need to add about this in the Release notes

But this change requires changes in kickstart files, because now langpacks- packages needs to be listed in kickstart files, instead of -support groups. (I hope I got it right.)

I think it is important for administrators do update the package list, otherwise the installation will miss many languages.

Is this change related to kickstart lang option? Will lang --addsupport=... automatically install langpacks-... files for the listed languages?

lang de_DE.UTF-8 --addsupport=af,ak,am,ar,as,ast,az,be,ber,bg,bn,br,bs,ca,cop,cs,csb,cv,cy,da,de,dsb,dz,el,en,en_AU,en_CA,en_GB,eo,es,et,eu,fa,fi,fj,fo,fr,fur,fy,ga,gd,gl,grc,gu,gv,haw,he,hi,hil,hr,hsb,ht,hu,hy,ia,id,is,it,ja,kk,km,kn,ko,ku,ky,la,lb,ln,lt,lv,mai,mg,mi,mk,ml,mn,mos,mr,ms,mt,nb,nds,ne,nl,nn,no,nr,nso,ny,oc,om,or,pa,pl,pt,pt_BR,pt_PT,qu,quh,ro,ru,rw,sa,sc,se,shs,si,sk,sl,smj,so,sq,sr,ss,st,sv,sw,ta,te,tet,th,ti,tk,tl,tn,tpi,tr,ts,ug,uk,ur,uz,ve,vi,wa,xh,yi,zh,zh_CN,zh_TW,zu

So I think that this change should be listed in the release notes!

https://fedoraproject.org/wiki/Changes/Replace_Comps_Language_Group_With_Langpacks

On the wiki page there is noted:

Need to add about this in the Release notes

But this change requires changes in kickstart files, because now langpacks- packages needs to be listed in kickstart files, instead of -support groups. (I hope I got it right.)

@imsedgar I think the required changes were already done in the kickstart files. Please provide the Fedora kickstart file where "<lang>-support" to langpacks-<lang> has not happened. You can see one example of the change here -> https://pagure.io/fedora-kickstarts/blob/master/f/l10n/fedora-live-workstation-de_DE.ks

I think it is important for administrators do update the package list, otherwise the installation will miss many languages.
Is this change related to kickstart lang option? Will lang --addsupport=... automatically install langpacks-... files for the listed languages?

lang de_DE.UTF-8 --addsupport=af,ak,am,ar,as,ast,az,be,ber,bg,bn,br,bs,ca,cop,cs,csb,cv,cy,da,de,dsb,dz,el,en,en_AU,en_CA,en_GB,eo,es,et,eu,fa,fi,fj,fo,fr,fur,fy,ga,gd,gl,grc,gu,gv,haw,he,hi,hil,hr,hsb,ht,hu,hy,ia,id,is,it,ja,kk,km,kn,ko,ku,ky,la,lb,ln,lt,lv,mai,mg,mi,mk,ml,mn,mos,mr,ms,mt,nb,nds,ne,nl,nn,no,nr,nso,ny,oc,om,or,pa,pl,pt,pt_BR,pt_PT,qu,quh,ro,ru,rw,sa,sc,se,shs,si,sk,sl,smj,so,sq,sr,ss,st,sv,sw,ta,te,tet,th,ti,tk,tl,tn,tpi,tr,ts,ug,uk,ur,uz,ve,vi,wa,xh,yi,zh,zh_CN,zh_TW,zu

This change is not about kickstart lang option but wherever in kickstart files you are using <lang>-support packages, now use langpacks-<lang> as package name and drop all packages related to that langpacks-<lang> package in the kickstart file. This has already implemented in Fedora kickstart files.

So I think that this change should be listed in the release notes!
It will be!!

Thanks for your reply.

@imsedgar I think the required changes were already done in the kickstart files. Please provide the Fedora kickstart file where "<lang>-support" to langpacks-<lang> has not happened. You can see one example of the change here -> https://pagure.io/fedora-kickstarts/blob/master/f/l10n/fedora-live-workstation-de_DE.ks

My objection concerned the custom kickstart files that the administrators create themselves for there own systems - not the ones provided by Fedora.

So I think that this change should be listed in the release notes!
It will be!!

Fine! This was the reason why I wrote the previous comment.

There is no change for the usage of --addsupport option. You can add multiple language supports and for each such language if there is corresponding langpacks-<lang> is available then that package also gets installed which will pull langpack packages :)

Login to comment on this ticket.

Metadata