[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#329743: Silly ideas exchanged about the memory impact of translations on D-I



On Sat, Apr 14, 2007 at 06:37:30PM +0200, Christian Perrier wrote:
> > which means that if I install debian using Italian translations
> > (and thus using dejavu fonts, used by more than 40 languages), I "waste"
> > 5.2 Mb rather than just 660 Kb, which is crazy.
> > When using g-i, besides trimming templates.dat, we could delete unused ttf files.
> 
> 
> Should be possible, if we go the way of not allowing users to switch
> languages after a given step.
> 
> That would mean we have to keep track of which font is needed by what
> language. A new field in languagelist?

I've filled in the font infos in the attached patch adding two new fields:

- a field with the name of the udeb
- an optional field with the file of the ttf file which is currently used only for ttf-cjk-compact-udeb which 
  contains ja.ttf, ko.ttf, zh.ttf

I've just realized this infos is not enough to achieve what I
originally proposed: if you're in the special lowmmem mode and want to
remove the ttf files, you need to know the directory where they're
located after "/usr/share/fonts/truetype"; adding the directory would
do it. Before filling more data in I'd like to know what you think
about this.

A couple of examples clarify possible situations (see bottom of this message
for the complete font tree):

1) You want to remove fonts for Thai

udeb: ttf-thai-tlwg-udeb
directory: thai

2) you want to remove Japanese fonts:

udeb: ttf-cjk-compact-udeb
directory: "" (files located directly under "/usr/share/fonts/truetype")
ttf file: ja.ttf

regards,
Davide

/usr/share/fonts/truetype
/usr/share/fonts/truetype/ttf-bpg-georgian
/usr/share/fonts/truetype/ttf-bpg-georgian/BPG_Glaho.ttf
/usr/share/fonts/truetype/thai
/usr/share/fonts/truetype/thai/Loma-Bold.ttf
/usr/share/fonts/truetype/thai/Loma-Oblique.ttf
/usr/share/fonts/truetype/thai/Loma.ttf
/usr/share/fonts/truetype/ja.ttf
/usr/share/fonts/truetype/ttf-dejavu
/usr/share/fonts/truetype/ttf-dejavu/DejaVuSansCondensed-Oblique.ttf
/usr/share/fonts/truetype/ttf-dejavu/DejaVuSans-Oblique.ttf
/usr/share/fonts/truetype/ttf-dejavu/DejaVuSansCondensed-BoldOblique.ttf
/usr/share/fonts/truetype/ttf-dejavu/DejaVuSansMono-Bold.ttf
/usr/share/fonts/truetype/ttf-dejavu/DejaVuSerif.ttf
/usr/share/fonts/truetype/ttf-dejavu/DejaVuSans.ttf
/usr/share/fonts/truetype/ttf-dejavu/DejaVuSansCondensed-Bold.ttf
/usr/share/fonts/truetype/ttf-dejavu/DejaVuSerifCondensed-BoldOblique.ttf
/usr/share/fonts/truetype/ttf-dejavu/DejaVuSerifCondensed-Bold.ttf
/usr/share/fonts/truetype/ttf-dejavu/DejaVuSansCondensed.ttf
/usr/share/fonts/truetype/ttf-dejavu/DejaVuSansMono.ttf
/usr/share/fonts/truetype/ttf-dejavu/DejaVuSerif-Oblique.ttf
/usr/share/fonts/truetype/ttf-dejavu/DejaVuSerifCondensed.ttf
/usr/share/fonts/truetype/ttf-dejavu/DejaVuSerifCondensed-Oblique.ttf
/usr/share/fonts/truetype/ttf-dejavu/DejaVuSerif-BoldOblique.ttf
/usr/share/fonts/truetype/ttf-dejavu/DejaVuSans-BoldOblique.ttf
/usr/share/fonts/truetype/ttf-dejavu/DejaVuSansMono-BoldOblique.ttf
/usr/share/fonts/truetype/ttf-dejavu/DejaVuSans-Bold.ttf
/usr/share/fonts/truetype/ttf-dejavu/DejaVuSerif-Bold.ttf
/usr/share/fonts/truetype/ttf-dejavu/DejaVuSansMono-Oblique.ttf
/usr/share/fonts/truetype/ttf-dejavu/DejaVuSans-ExtraLight.ttf
/usr/share/fonts/truetype/ttf-khmeros
/usr/share/fonts/truetype/ttf-khmeros/KhmerOSsys.ttf
/usr/share/fonts/truetype/ko.ttf
/usr/share/fonts/truetype/ttf-malayalam-fonts
/usr/share/fonts/truetype/ttf-malayalam-fonts/Rachana_w01.ttf
/usr/share/fonts/truetype/ttf-tmuni
/usr/share/fonts/truetype/ttf-tmuni/TibetanMachineUniAlpha.ttf
/usr/share/fonts/truetype/zh.ttf
/usr/share/fonts/truetype/freefont
/usr/share/fonts/truetype/freefont/FreeSans.ttf
/usr/share/fonts/truetype/freefont/FreeSansOblique.ttf
/usr/share/fonts/truetype/freefont/FreeSansBold.ttf
/usr/share/fonts/truetype/ttf-tamil-fonts
/usr/share/fonts/truetype/ttf-tamil-fonts/TSCu_Paranar.ttf
/usr/share/fonts/truetype/ttf-farsiweb
/usr/share/fonts/truetype/ttf-farsiweb/nazli.ttf
/usr/share/fonts/truetype/ttf-farsiweb/nazlib.ttf



Index: languagelist
===================================================================
--- languagelist	(revision 46440)
+++ languagelist	(working copy)
@@ -1,91 +1,91 @@
 #
 # This is the complete list of languages (locales) to choose from.
 # Language;supported_environments;langcode;countrycode;fallbacklocale;langlist;console-data
-Albanian;2;sq;AL;sq_AL.UTF-8;;kbd=lat0-sun16(utf8)
-Arabic;3;ar;EG;ar_EG.UTF-8;;
-Basque;1;eu;ES;eu_ES.UTF-8;;kbd=lat0-sun16(utf8)
-Belarusian;2;be;BY;be_BY.UTF-8;;cyr
-Bengali;4;bn;BD;bn_BD;;
-Bosnian;2;bs;BA;bs_BA.UTF-8;;kbd=Lat2-Terminus16(utf8)
-Bulgarian;2;bg;BG;bg_BG;;kbd=ruscii_8x16(cp1251)
+Albanian;2;sq;AL;sq_AL.UTF-8;;kbd=lat0-sun16(utf8);ttf-dejavu;
+Arabic;3;ar;EG;ar_EG.UTF-8;;ttf-farsiweb;
+Basque;1;eu;ES;eu_ES.UTF-8;;kbd=lat0-sun16(utf8);ttf-dejavu;
+Belarusian;2;be;BY;be_BY.UTF-8;;cyr;ttf-dejavu;
+Bengali;4;bn;BD;bn_BD;;ttf-freefont;
+Bosnian;2;bs;BA;bs_BA.UTF-8;;kbd=Lat2-Terminus16(utf8);ttf-dejavu;
+Bulgarian;2;bg;BG;bg_BG;;kbd=ruscii_8x16(cp1251);ttf-dejavu;
 # For C locale, set language to 'en' to make sure questions are "translated"
 # to English instead of showing codes.
-C;0;en;;C;
-Catalan;1;ca;ES;ca_ES.UTF-8;;kbd=lat0-sun16(utf8)
+C;0;en;;C;ttf-dejavu;
+Catalan;1;ca;ES;ca_ES.UTF-8;;kbd=lat0-sun16(utf8);ttf-dejavu;
 # Special case for Chinese as the two flavours share the same ISO 639 code
 # Both will trigger countrychooser. Each will be the backup for the other
 # one
-Chinese (Simplified);3;zh;CN;zh_CN.UTF-8;zh_CN:zh;
-Chinese (Traditional);3;zh;TW;zh_TW.UTF-8;zh_TW:zh;
-Croatian;2;hr;HR;hr_HR.UTF-8;;kbd=lat2-sun16(utf8)
-Czech;2;cs;CZ;cs_CZ.UTF-8;;kbd=lat2-sun16(utf8)
-Danish;1;da;DK;da_DK.UTF-8;;kbd=lat0-sun16(utf8)
-Dutch;1;nl;NL;nl_NL.UTF-8;;kbd=lat0-sun16(utf8)
-Dzongkha;4;dz;BT;dz_BT;;
-English;0;en;US;en_US.UTF-8;;kbd=lat0-sun16(utf8)
+Chinese (Simplified);3;zh;CN;zh_CN.UTF-8;zh_CN:zh;;ttf-cjk-compact-udeb;zh.ttf
+Chinese (Traditional);3;zh;TW;zh_TW.UTF-8;zh_TW:zh;;ttf-cjk-compact-udeb;zh.ttf
+Croatian;2;hr;HR;hr_HR.UTF-8;;kbd=lat2-sun16(utf8);ttf-dejavu;
+Czech;2;cs;CZ;cs_CZ.UTF-8;;kbd=lat2-sun16(utf8);ttf-dejavu;
+Danish;1;da;DK;da_DK.UTF-8;;kbd=lat0-sun16(utf8);ttf-dejavu;
+Dutch;1;nl;NL;nl_NL.UTF-8;;kbd=lat0-sun16(utf8);ttf-dejavu;
+Dzongkha;4;dz;BT;dz_BT;;;ttf-tmuni
+English;0;en;US;en_US.UTF-8;;kbd=lat0-sun16(utf8);ttf-dejavu;
 # The Esperanto locale *is* (or will be as of 1/11/2006) eo.UTF-8
 # so no country on purpose. The default country is Antarctica because...
 # ...why not..:-)
-Esperanto;2;eo;AQ;eo;;kbd=LatArCyrHeb-16(utf8)
-Estonian;2;et;EE;et_EE.UTF-8;;kbd=lat0-sun16(utf8)
-Finnish;1;fi;FI;fi_FI.UTF-8;;kbd=lat0-sun16(utf8)
-French;1;fr;FR;fr_FR.UTF-8;;kbd=lat9u-16(utf8)
-Galician;1;gl;ES;gl_ES.UTF-8;;kbd=lat0-sun16(utf8)
-Georgian;4;ka;GE;ka_GE;;kbd=ka8x16thin(utf8)
-German;1;de;DE;de_DE.UTF-8;;kbd=lat0-sun16(utf8)
-Greek;2;el;GR;el_GR.UTF-8;;kbd=iso07.f16(utf8)
-Gujarati;4;gu;IN;gu_IN;;
-Hebrew;3;he;IL;he_IL.UTF-8;;kbd=LatArCyrHeb-16(utf8)
-Hindi;4;hi;IN;hi_IN;;
-Hungarian;2;hu;HU;hu_HU.UTF-8;;kbd=lat2-sun16(utf8)
-#X Icelandic;1;is;IS;is_IS.UTF-8;;kbd=lat9u-16(utf8)
-Indonesian;1;id;ID;id_ID.UTF-8;;kbd=lat0-sun16(utf8)
-#X Irish;1;ga;IE;ga_IE.UTF-8;;kbd=lat0-sun16(utf8)
-Italian;1;it;IT;it_IT.UTF-8;;kbd=lat0-sun16(utf8)
-Japanese;3;ja;JP;ja_JP.UTF-8;;
-#X Kannada;4;kn;IN;kn_IN;;
-#X Kazakh;2;kk;KZ;kk_KZ;;kbd=ruscii_8x16(koi8-r)
-Khmer;4;km;KH;km_KH;;
-Korean;3;ko;KR;ko_KR.UTF-8;;
-Kurdish;2;ku;TR;ku_TR.UTF-8;;kbd=Lat15-Terminus16(utf8)
-#X Lao;4;lo;LA;lo_LA;;
-Latvian;2;lv;LV;lv_LV.UTF-8;;kbd=lat7-14(utf8)
-Lithuanian;2;lt;LT;lt_LT.UTF-8;;kbd=LatArCyrHeb-16(utf8)
-#X Malagasy;1;mg;MG;mg_MG.UTF-8;mg_MG:fr_FR:fr:en;kbd=lat0-sun16(utf8)
-#X Malay;1;ms;MY;ms_MY.UTF-8;;kbd=lat0-sun16(utf8)
-Malayalam;4;ml;IN;ml_IN;;
-#X Marathi;4;mr;IN;mr_IN;;
-Macedonian;2;mk;MK;mk_MK.UTF-8;;kbd=iso05.f16(utf8)
-Nepali;4;ne;NP;ne_NP;;
+Esperanto;2;eo;AQ;eo;;kbd=LatArCyrHeb-16(utf8);ttf-dejavu;
+Estonian;2;et;EE;et_EE.UTF-8;;kbd=lat0-sun16(utf8);ttf-dejavu;
+Finnish;1;fi;FI;fi_FI.UTF-8;;kbd=lat0-sun16(utf8);ttf-dejavu;
+French;1;fr;FR;fr_FR.UTF-8;;kbd=lat9u-16(utf8);ttf-dejavu;
+Galician;1;gl;ES;gl_ES.UTF-8;;kbd=lat0-sun16(utf8);ttf-dejavu;
+Georgian;4;ka;GE;ka_GE;;kbd=ka8x16thin(utf8);ttf-bpg-georgian-fonts
+German;1;de;DE;de_DE.UTF-8;;kbd=lat0-sun16(utf8);ttf-dejavu;
+Greek;2;el;GR;el_GR.UTF-8;;kbd=iso07.f16(utf8);ttf-dejavu;
+Gujarati;4;gu;IN;gu_IN;;;ttf-freefont;
+Hebrew;3;he;IL;he_IL.UTF-8;;kbd=LatArCyrHeb-16(utf8);ttf-dejavu;
+Hindi;4;hi;IN;hi_IN;;;ttf-freefont;
+Hungarian;2;hu;HU;hu_HU.UTF-8;;kbd=lat2-sun16(utf8);ttf-dejavu;
+#X Icelandic;1;is;IS;is_IS.UTF-8;;kbd=lat9u-16(utf8);ttf-dejavu;
+Indonesian;1;id;ID;id_ID.UTF-8;;kbd=lat0-sun16(utf8);ttf-dejavu;
+#X Irish;1;ga;IE;ga_IE.UTF-8;;kbd=lat0-sun16(utf8);ttf-dejavu;
+Italian;1;it;IT;it_IT.UTF-8;;kbd=lat0-sun16(utf8);ttf-dejavu;
+Japanese;3;ja;JP;ja_JP.UTF-8;;;ttf-cjk-compact-udeb;ja.ttf
+#X Kannada;4;kn;IN;kn_IN;;;ttf-freefont;
+#X Kazakh;2;kk;KZ;kk_KZ;;kbd=ruscii_8x16(koi8-r);ttf-dejavu;
+Khmer;4;km;KH;km_KH;;;ttf-khmeros
+Korean;3;ko;KR;ko_KR.UTF-8;;;ttf-cjk-compact-udeb;ko.ttf
+Kurdish;2;ku;TR;ku_TR.UTF-8;;kbd=Lat15-Terminus16(utf8);ttf-dejavu;
+#X Lao;4;lo;LA;lo_LA;;;ttf-dejavu;
+Latvian;2;lv;LV;lv_LV.UTF-8;;kbd=lat7-14(utf8);ttf-dejavu;
+Lithuanian;2;lt;LT;lt_LT.UTF-8;;kbd=LatArCyrHeb-16(utf8);ttf-dejavu;
+#X Malagasy;1;mg;MG;mg_MG.UTF-8;mg_MG:fr_FR:fr:en;kbd=lat0-sun16(utf8);ttf-dejavu;
+#X Malay;1;ms;MY;ms_MY.UTF-8;;kbd=lat0-sun16(utf8);ttf-dejavu;
+Malayalam;4;ml;IN;ml_IN;;;ttf-malayalam-fonts
+#X Marathi;4;mr;IN;mr_IN;;;ttf-freefont;
+Macedonian;2;mk;MK;mk_MK.UTF-8;;kbd=iso05.f16(utf8);ttf-dejavu;
+Nepali;4;ne;NP;ne_NP;;;ttf-freefont;
 # The Sami translation is really incomplete. We however keep Sami on request
 # of Skolelinux as a kind of reward to them..:-). They need to be able to 
 # choose Sami as an option so that the Sami locale is set as default
-Northern Sami;1;se;NO;se_NO.UTF-8;se_NO:nb_NO:nb:no_NO:no:nn_NO:nn:da:sv:en;kbd=lat0-sun(utf8)
-Norwegian Bokmaal;1;nb;NO;nb_NO.UTF-8;nb_NO:nb:no_NO:no:nn_NO:nn:da:sv:en;kbd=lat0-sun16(utf8)
-Norwegian Nynorsk;1;nn;NO;nn_NO.UTF-8;nn_NO:nn:no_NO:no:nb_NO:nb:da:sv:en;kbd=lat0-sun16(utf8)
-#X Persian;3;fa;IR;fa_IR;;kbd=iso06.f16(utf8)
-Polish;2;pl;PL;pl_PL.UTF-8;;kbd=lat2-sun16(utf8)
-Portuguese;1;pt;PT;pt_PT.UTF-8;pt:pt_BR:en;kbd=lat0-sun16(utf8)
-Portuguese (Brazil);1;pt;BR;pt_BR.UTF-8;pt_BR:pt:en;kbd=lat1-16(utf8)
-Punjabi (Gurmukhi);4;pa;IN;pa_IN;;
-Romanian;2;ro;RO;ro_RO.UTF-8;;kbd=Lat2-Terminus16(utf8)
-Russian;2;ru;RU;ru_RU.UTF-8;;cyr
-#X Sanskrit;4;sa;IN;sa_IN;;
+Northern Sami;1;se;NO;se_NO.UTF-8;se_NO:nb_NO:nb:no_NO:no:nn_NO:nn:da:sv:en;kbd=lat0-sun(utf8);ttf-dejavu;
+Norwegian Bokmaal;1;nb;NO;nb_NO.UTF-8;nb_NO:nb:no_NO:no:nn_NO:nn:da:sv:en;kbd=lat0-sun16(utf8);ttf-dejavu;
+Norwegian Nynorsk;1;nn;NO;nn_NO.UTF-8;nn_NO:nn:no_NO:no:nb_NO:nb:da:sv:en;kbd=lat0-sun16(utf8);ttf-dejavu;
+#X Persian;3;fa;IR;fa_IR;;kbd=iso06.f16(utf8);ttf-farsiweb;
+Polish;2;pl;PL;pl_PL.UTF-8;;kbd=lat2-sun16(utf8);ttf-dejavu;
+Portuguese;1;pt;PT;pt_PT.UTF-8;pt:pt_BR:en;kbd=lat0-sun16(utf8);ttf-dejavu;
+Portuguese (Brazil);1;pt;BR;pt_BR.UTF-8;pt_BR:pt:en;kbd=lat1-16(utf8);ttf-dejavu;
+Punjabi (Gurmukhi);4;pa;IN;pa_IN;;;ttf-freefont;
+Romanian;2;ro;RO;ro_RO.UTF-8;;kbd=Lat2-Terminus16(utf8);ttf-dejavu;
+Russian;2;ru;RU;ru_RU.UTF-8;;cyr;ttf-dejavu;
+#X Sanskrit;4;sa;IN;sa_IN;;;ttf-freefont;
 # Serbian commented for consistency: too incomplete
-#X Serbian;2;sr;CS;sr_YU.UTF-8@cyrillic;;kbd=iso05.f16(utf8)
-Slovak;2;sk;SK;sk_SK.UTF-8;;kbd=lat2-sun16(utf8)
-Slovenian;2;sl;SI;sl_SI.UTF-8;;kbd=lat2-sun16(utf8)
-Spanish;1;es;ES;es_ES.UTF-8;;kbd=lat0-sun16(utf8)
-Swedish;1;sv;SE;sv_SE.UTF-8;;kbd=lat0-sun16(utf8)
-Tagalog;1;tl;PH;tl_PH.UTF-8;;kbd=lat0-sun16(utf8)
-Tamil;4;ta;IN;ta_IN;;
-#X Telugu;4;te;IN;te_IN;;
-Thai;4;th;TH;th_TH.UTF-8;;
-Turkish;2;tr;TR;tr_TR.UTF-8;;kbd=Lat15-Terminus16(utf8)
-Ukrainian;2;uk;UA;uk_UA.UTF-8;;kbd=ruscii_8x16(utf8)
-#X Urdu;3;ur;PK;ur_PK.UTF-8;;
-#X Valencian-Catalan;1;ca@valencia;ES;ca_ES.UTF-8@valencia;;kbd=lat0-sun16(utf8)
-Vietnamese;3;vi;VN;vi_VN.UTF-8;;
-#X Welsh;2;cy;GB;cy_GB.UTF-8;;kbd=iso14.f16(utf8)
-Wolof;2;wo;SN;wo_SN;wo:fr:en;
-#X Xhosa;2;xh;ZA;xh_ZA.UTF-8;;kbd=lat0-sun16(utf8)
+#X Serbian;2;sr;CS;sr_YU.UTF-8@cyrillic;;kbd=iso05.f16(utf8);ttf-dejavu;
+Slovak;2;sk;SK;sk_SK.UTF-8;;kbd=lat2-sun16(utf8);ttf-dejavu;
+Slovenian;2;sl;SI;sl_SI.UTF-8;;kbd=lat2-sun16(utf8);ttf-dejavu;
+Spanish;1;es;ES;es_ES.UTF-8;;kbd=lat0-sun16(utf8);ttf-dejavu;
+Swedish;1;sv;SE;sv_SE.UTF-8;;kbd=lat0-sun16(utf8);ttf-dejavu;
+Tagalog;1;tl;PH;tl_PH.UTF-8;;kbd=lat0-sun16(utf8);ttf-dejavu;
+Tamil;4;ta;IN;ta_IN;;;ttf-tamil-fonts
+#X Telugu;4;te;IN;te_IN;;;ttf-telugu-fonts
+Thai;4;th;TH;th_TH.UTF-8;;;ttf-thai-tlwg-udeb
+Turkish;2;tr;TR;tr_TR.UTF-8;;kbd=Lat15-Terminus16(utf8);ttf-dejavu;
+Ukrainian;2;uk;UA;uk_UA.UTF-8;;kbd=ruscii_8x16(utf8);ttf-dejavu;
+#X Urdu;3;ur;PK;ur_PK.UTF-8;;;ttf-nafees
+#X Valencian-Catalan;1;ca@valencia;ES;ca_ES.UTF-8@valencia;;kbd=lat0-sun16(utf8);ttf-dejavu;
+Vietnamese;3;vi;VN;vi_VN.UTF-8;;;ttf-dejavu;
+#X Welsh;2;cy;GB;cy_GB.UTF-8;;kbd=iso14.f16(utf8);ttf-dejavu;
+Wolof;2;wo;SN;wo_SN;wo:fr:en;;ttf-dejavu;
+#X Xhosa;2;xh;ZA;xh_ZA.UTF-8;;kbd=lat0-sun16(utf8);ttf-dejavu;

Attachment: signature.asc
Description: Digital signature


Reply to: