Merge pull request 'master' (#101) from YanTheKaller/ubinstall-gtk:master into master

Reviewed-on: #101
master
Dmitry Razumov 1 month ago
commit f793776a5c

@ -56,6 +56,7 @@
<file>kernel-list-addon.csv</file>
<file>services-list.csv</file>
<file>network-list.csv</file>
<file>languages.csv</file>
<file>filesystems-format-list.csv</file>
</gresource>
</gresources>

@ -0,0 +1,66 @@
LANG;LANG_NAME
af_ZA.UTF-8;Afrikaans
ar_AE.UTF-8;Arabic
as_IN.UTF-8;Assamese
az_AZ.UTF-8;Azerbaijani
be_BY.UTF-8;Belarusian
bg_BG.UTF-8;Bulgarian
bn_IN.UTF-8;Bengali
bs_BA.UTF-8;Bosnian
ca_ES.UTF-8;Catalan
cs_CZ.UTF-8;Czech
da_DK.UTF-8;Danish
de_DE.UTF-8;German
el_GR.UTF-8;Greek
en_GB.UTF-8;English
es_ES.UTF-8;Spanish
et_EE.UTF-8;Estonian
fi_FI.UTF-8;Finnish
fr_FR.UTF-8;French
gu_IN.UTF-8;Gujarati
he_IL.UTF-8;Hebrew
hi_IN.UTF-8;Hindi
hr_HR.UTF-8;Croatian
hu_HU.UTF-8;Hungarian
hy_AM.UTF-8;Armenian
id_ID.UTF-8;Indonesian
is_IS.UTF-8;Icelandic
it_IT.UTF-8;Italian
ja_JP.UTF-8;Japanese
ka_GE.UTF-8;Georgian
kk_KZ.UTF-8;Kazakh
kn_IN.UTF-8;Kannada
ko_KR.UTF-8;Korean
ks_IN.UTF-8;Kashmiri
ku_TR.UTF-8;Kurdish
ky_KG.UTF-8;Kirghiz
lt_LT.UTF-8;Lithuanian
lv_LV.UTF-8;Latvian
mk_MK.UTF-8;Macedonian
ml_IN.UTF-8;Malayalam
mr_IN.UTF-8;Marathi
ms_MY.UTF-8;Malay
mt_MT.UTF-8;Maltese
nb_NO.UTF-8;Bokmal
nl_NL.UTF-8;Dutch
nn_NO.UTF-8;Nynorsk
or_IN.UTF-8;Oriya
pa_IN.UTF-8;Punjabi
pl_PL.UTF-8;Polish
pt_PT.UTF-8;Portuguese
ro_RO.UTF-8;Romanian
ru_RU.UTF-8;Russian
sa_IN.UTF-8;Sanskrit
sk_SK.UTF-8;Slovak
sl_SI.UTF-8;Slovenian
sq_AL.UTF-8;Albanian
sr_ME.UTF-8;Serbian
sr_RS.UTF-8;Serbian
sv_SE.UTF-8;Swedish
ta_IN.UTF-8;Tamil
te_IN.UTF-8;Telugu
th_TH.UTF-8;Thai
tr_TR.UTF-8;Turkish
uk_UA.UTF-8;Ukrainian
vi_VN.UTF-8;Vietnamese
zh_CN.UTF-8;Simplified Chinese
1 LANG LANG_NAME
2 af_ZA.UTF-8 Afrikaans
3 ar_AE.UTF-8 Arabic
4 as_IN.UTF-8 Assamese
5 az_AZ.UTF-8 Azerbaijani
6 be_BY.UTF-8 Belarusian
7 bg_BG.UTF-8 Bulgarian
8 bn_IN.UTF-8 Bengali
9 bs_BA.UTF-8 Bosnian
10 ca_ES.UTF-8 Catalan
11 cs_CZ.UTF-8 Czech
12 da_DK.UTF-8 Danish
13 de_DE.UTF-8 German
14 el_GR.UTF-8 Greek
15 en_GB.UTF-8 English
16 es_ES.UTF-8 Spanish
17 et_EE.UTF-8 Estonian
18 fi_FI.UTF-8 Finnish
19 fr_FR.UTF-8 French
20 gu_IN.UTF-8 Gujarati
21 he_IL.UTF-8 Hebrew
22 hi_IN.UTF-8 Hindi
23 hr_HR.UTF-8 Croatian
24 hu_HU.UTF-8 Hungarian
25 hy_AM.UTF-8 Armenian
26 id_ID.UTF-8 Indonesian
27 is_IS.UTF-8 Icelandic
28 it_IT.UTF-8 Italian
29 ja_JP.UTF-8 Japanese
30 ka_GE.UTF-8 Georgian
31 kk_KZ.UTF-8 Kazakh
32 kn_IN.UTF-8 Kannada
33 ko_KR.UTF-8 Korean
34 ks_IN.UTF-8 Kashmiri
35 ku_TR.UTF-8 Kurdish
36 ky_KG.UTF-8 Kirghiz
37 lt_LT.UTF-8 Lithuanian
38 lv_LV.UTF-8 Latvian
39 mk_MK.UTF-8 Macedonian
40 ml_IN.UTF-8 Malayalam
41 mr_IN.UTF-8 Marathi
42 ms_MY.UTF-8 Malay
43 mt_MT.UTF-8 Maltese
44 nb_NO.UTF-8 Bokmal
45 nl_NL.UTF-8 Dutch
46 nn_NO.UTF-8 Nynorsk
47 or_IN.UTF-8 Oriya
48 pa_IN.UTF-8 Punjabi
49 pl_PL.UTF-8 Polish
50 pt_PT.UTF-8 Portuguese
51 ro_RO.UTF-8 Romanian
52 ru_RU.UTF-8 Russian
53 sa_IN.UTF-8 Sanskrit
54 sk_SK.UTF-8 Slovak
55 sl_SI.UTF-8 Slovenian
56 sq_AL.UTF-8 Albanian
57 sr_ME.UTF-8 Serbian
58 sr_RS.UTF-8 Serbian
59 sv_SE.UTF-8 Swedish
60 ta_IN.UTF-8 Tamil
61 te_IN.UTF-8 Telugu
62 th_TH.UTF-8 Thai
63 tr_TR.UTF-8 Turkish
64 uk_UA.UTF-8 Ukrainian
65 vi_VN.UTF-8 Vietnamese
66 zh_CN.UTF-8 Simplified Chinese

@ -522,7 +522,7 @@ msgstr "Режим конфигурации"
#: source/ubl-strings.h:140
msgid "Attention! Configuration mode was enabled!"
msgstr "Внимание! Включен режим конфигурации"
msgstr "Внимание! Включен режим конфигурации!"
#: source/ubl-strings.h:141
msgid "Configuration will be saved in configuration file"

@ -1,129 +1,130 @@
af_ZA.UTF-8;Afrikaans, South Africa
ar_AE.UTF-8;Arabic, United Arab Emirates
ar_BH.UTF-8;Arabic, Bahrain
ar_DZ.UTF-8;Arabic, Algeria
ar_EG.UTF-8;Arabic, Egypt
ar_IQ.UTF-8;Arabic, Iraq
ar_JO.UTF-8;Arabic, Jordan
ar_KW.UTF-8;Arabic, Kuwait
ar_LY.UTF-8;Arabic, Libya
ar_MA.UTF-8;Arabic, Morocco
ar_OM.UTF-8;Arabic, Oman
ar_QA.UTF-8;Arabic, Qatar
ar_SA.UTF-8;Arabic, Saudi Arabia
ar_TN.UTF-8;Arabic, Tunisia
ar_YE.UTF-8;Arabic, Yemen
as_IN.UTF-8;Assamese, India
az_AZ.UTF-8;Azerbaijani, Azerbaijan
be_BY.UTF-8;Belarusian, Belarus
bg_BG.UTF-8;Bulgarian, Bulgaria
bn_IN.UTF-8;Bengali, India
bs_BA.UTF-8;Bosnian, Bosnia and Herzegovina
ca_ES.UTF-8;Catalan, Spain
cs_CZ.UTF-8;Czech, Czech Republic
da_DK.UTF-8;Danish, Denmark
de_AT.UTF-8;German, Austria
de_BE.UTF-8;German, Belgium
de_CH.UTF-8;German, Switzerland
de_DE.UTF-8;German, Germany
de_LI.UTF-8;German, Liechtenstein
de_LU.UTF-8;German, Luxembourg
el_CY.UTF-8;Greek, Cyprus
el_GR.UTF-8;Greek, Greece
en_AU.UTF-8;English, Australia
en_BW.UTF-8;English, Botswana
en_CA.UTF-8;English, Canada
en_GB.UTF-8;English, United Kingdom
en_HK.UTF-8;English, Hong Kong SAR China
en_IE.UTF-8;English, Ireland
en_IN.UTF-8;English, India
en_MT.UTF-8;English, Malta
en_NZ.UTF-8;English, New Zealand
en_PH.UTF-8;English, Philippines
en_SG.UTF-8;English, Singapore
en_US.UTF-8;English, U.S.A.
en_ZW.UTF-8;English, Zimbabwe
es_AR.UTF-8;Spanish, Argentina
es_BO.UTF-8;Spanish, Bolivia
es_CL.UTF-8;Spanish, Chile
es_CO.UTF-8;Spanish, Colombia
es_CR.UTF-8;Spanish, Costa Rica
es_DO.UTF-8;Spanish, Dominican Republic
es_EC.UTF-8;Spanish, Ecuador
es_ES.UTF-8;Spanish, Spain
es_GT.UTF-8;Spanish, Guatemala
es_HN.UTF-8;Spanish, Honduras
es_MX.UTF-8;Spanish, Mexico
es_NI.UTF-8;Spanish, Nicaragua
es_PA.UTF-8;Spanish, Panama
es_PE.UTF-8;Spanish, Peru
es_PR.UTF-8;Spanish, Puerto Rico
es_PY.UTF-8;Spanish, Paraguay
es_SV.UTF-8;Spanish, El Salvador
es_US.UTF-8;Spanish, U.S.A.
es_UY.UTF-8;Spanish, Uruguay
es_VE.UTF-8;Spanish, Venezuela
et_EE.UTF-8;Estonian, Estonia
fi_FI.UTF-8;Finnish, Finland
fr_BE.UTF-8;French, Belgium
fr_CA.UTF-8;French, Canada
fr_CH.UTF-8;French, Switzerland
fr_FR.UTF-8;French, France
fr_LU.UTF-8;French, Luxembourg
gu_IN.UTF-8;Gujarati, India
he_IL.UTF-8;Hebrew, Israel
hi_IN.UTF-8;Hindi, India
hr_HR.UTF-8;Croatian, Croatia
hu_HU.UTF-8;Hungarian, Hungary
hy_AM.UTF-8;Armenian, Armenia
id_ID.UTF-8;Indonesian, Indonesia
is_IS.UTF-8;Icelandic, Iceland
it_CH.UTF-8;Italian, Switzerla;nd
it_IT.UTF-8;Italian, Italy
ja_JP.UTF-8;Japanese, Japan
ka_GE.UTF-8;Georgian, Georgia
kk_KZ.UTF-8;Kazakh, Kazakhstan
kn_IN.UTF-8;Kannada, India
ko_KR.UTF-8;Korean, Korea
ks_IN.UTF-8;Kashmiri, India
ku_TR.UTF-8;Kurdish, Turkey
ku_TR.UTF-8@sorani;Kurdish (Sorani), Turkey
ky_KG.UTF-8;Kirghiz, Kyrgyzstan
lt_LT.UTF-8;Lithuanian, Lithuania
lv_LV.UTF-8;Latvian, Latvia
mk_MK.UTF-8;Macedonian, Macedonia
ml_IN.UTF-8;Malayalam, India
mr_IN.UTF-8;Marathi, India
ms_MY.UTF-8;Malay, Malaysia
mt_MT.UTF-8;Maltese, Malta
nb_NO.UTF-8;Bokmal, Norway
nl_BE.UTF-8;Dutch, Belgium
nl_NL.UTF-8;Dutch, Netherlands
nn_NO.UTF-8;Nynorsk, Norway
or_IN.UTF-8;Oriya, India
pa_IN.UTF-8;Punjabi, India
pl_PL.UTF-8;Polish, Poland
pt_BR.UTF-8;Portuguese, Brazil
pt_PT.UTF-8;Portuguese, Portugal
ro_RO.UTF-8;Romanian, Romania
ru_RU.UTF-8;Russian, Russia
ru_UA.UTF-8;Russian, Ukraine
sa_IN.UTF-8;Sanskrit, India
sk_SK.UTF-8;Slovak, Slovakia
sl_SI.UTF-8;Slovenian, Slovenia
sq_AL.UTF-8;Albanian, Albania
sr_ME.UTF-8;Serbian, Montenegro
sr_ME.UTF-8@latin;Serbian, Montenegro (Latin)
sr_RS.UTF-8;Serbian, Serbia
sr_RS.UTF-8@latin;Serbian, Serbia (Latin)
sv_SE.UTF-8;Swedish, Sweden
ta_IN.UTF-8;Tamil, India
te_IN.UTF-8;Telugu, India
th_TH.UTF-8;Thai, Thailand
tr_TR.UTF-8;Turkish, Turkey
uk_UA.UTF-8;Ukrainian, Ukraine
vi_VN.UTF-8;Vietnamese, Vietnam
zh_CN.UTF-8;Simplified Chinese, China
zh_HK.UTF-8;Traditional Chinese, Hong Kong SAR China
zh_SG.UTF-8;Chinese, Singapore
zh_TW.UTF-8;Traditional Chinese, Taiwan
LANG_GROUP;LANG;LANG_NAME
af;af_ZA.UTF-8;Afrikaans, South Africa
ar;ar_AE.UTF-8;Arabic, United Arab Emirates
ar;ar_BH.UTF-8;Arabic, Bahrain
ar;ar_DZ.UTF-8;Arabic, Algeria
ar;ar_EG.UTF-8;Arabic, Egypt
ar;ar_IQ.UTF-8;Arabic, Iraq
ar;ar_JO.UTF-8;Arabic, Jordan
ar;ar_KW.UTF-8;Arabic, Kuwait
ar;ar_LY.UTF-8;Arabic, Libya
ar;ar_MA.UTF-8;Arabic, Morocco
ar;ar_OM.UTF-8;Arabic, Oman
ar;ar_QA.UTF-8;Arabic, Qatar
ar;ar_SA.UTF-8;Arabic, Saudi Arabia
ar;ar_TN.UTF-8;Arabic, Tunisia
ar;ar_YE.UTF-8;Arabic, Yemen
as;as_IN.UTF-8;Assamese, India
az;az_AZ.UTF-8;Azerbaijani, Azerbaijan
be;be_BY.UTF-8;Belarusian, Belarus
bg;bg_BG.UTF-8;Bulgarian, Bulgaria
bn;bn_IN.UTF-8;Bengali, India
bs;bs_BA.UTF-8;Bosnian, Bosnia and Herzegovina
ca;ca_ES.UTF-8;Catalan, Spain
cs;cs_CZ.UTF-8;Czech, Czech Republic
da;da_DK.UTF-8;Danish, Denmark
de;de_AT.UTF-8;German, Austria
de;de_BE.UTF-8;German, Belgium
de;de_CH.UTF-8;German, Switzerland
de;de_DE.UTF-8;German, Germany
de;de_LI.UTF-8;German, Liechtenstein
de;de_LU.UTF-8;German, Luxembourg
el;el_CY.UTF-8;Greek, Cyprus
el;el_GR.UTF-8;Greek, Greece
en;en_AU.UTF-8;English, Australia
en;en_BW.UTF-8;English, Botswana
en;en_CA.UTF-8;English, Canada
en;en_GB.UTF-8;English, United Kingdom
en;en_HK.UTF-8;English, Hong Kong SAR China
en;en_IE.UTF-8;English, Ireland
en;en_IN.UTF-8;English, India
en;en_MT.UTF-8;English, Malta
en;en_NZ.UTF-8;English, New Zealand
en;en_PH.UTF-8;English, Philippines
en;en_SG.UTF-8;English, Singapore
en;en_US.UTF-8;English, U.S.A.
en;en_ZW.UTF-8;English, Zimbabwe
es;es_AR.UTF-8;Spanish, Argentina
es;es_BO.UTF-8;Spanish, Bolivia
es;es_CL.UTF-8;Spanish, Chile
es;es_CO.UTF-8;Spanish, Colombia
es;es_CR.UTF-8;Spanish, Costa Rica
es;es_DO.UTF-8;Spanish, Dominican Republic
es;es_EC.UTF-8;Spanish, Ecuador
es;es_ES.UTF-8;Spanish, Spain
es;es_GT.UTF-8;Spanish, Guatemala
es;es_HN.UTF-8;Spanish, Honduras
es;es_MX.UTF-8;Spanish, Mexico
es;es_NI.UTF-8;Spanish, Nicaragua
es;es_PA.UTF-8;Spanish, Panama
es;es_PE.UTF-8;Spanish, Peru
es;es_PR.UTF-8;Spanish, Puerto Rico
es;es_PY.UTF-8;Spanish, Paraguay
es;es_SV.UTF-8;Spanish, El Salvador
es;es_US.UTF-8;Spanish, U.S.A.
es;es_UY.UTF-8;Spanish, Uruguay
es;es_VE.UTF-8;Spanish, Venezuela
et;et_EE.UTF-8;Estonian, Estonia
fi;fi_FI.UTF-8;Finnish, Finland
fr;fr_BE.UTF-8;French, Belgium
fr;fr_CA.UTF-8;French, Canada
fr;fr_CH.UTF-8;French, Switzerland
fr;fr_FR.UTF-8;French, France
fr;fr_LU.UTF-8;French, Luxembourg
gu;gu_IN.UTF-8;Gujarati, India
he;he_IL.UTF-8;Hebrew, Israel
hi;hi_IN.UTF-8;Hindi, India
hr;hr_HR.UTF-8;Croatian, Croatia
hu;hu_HU.UTF-8;Hungarian, Hungary
hy;hy_AM.UTF-8;Armenian, Armenia
id;id_ID.UTF-8;Indonesian, Indonesia
is;is_IS.UTF-8;Icelandic, Iceland
it;it_CH.UTF-8;Italian, Switzerland
it;it_IT.UTF-8;Italian, Italy
ja;ja_JP.UTF-8;Japanese, Japan
ka;ka_GE.UTF-8;Georgian, Georgia
kk;kk_KZ.UTF-8;Kazakh, Kazakhstan
kn;kn_IN.UTF-8;Kannada, India
ko;ko_KR.UTF-8;Korean, Korea
ks;ks_IN.UTF-8;Kashmiri, India
ku;ku_TR.UTF-8;Kurdish, Turkey
ku;ku_TR.UTF-8@sorani;Kurdish (Sorani), Turkey
ky;ky_KG.UTF-8;Kirghiz, Kyrgyzstan
lt;lt_LT.UTF-8;Lithuanian, Lithuania
lv;lv_LV.UTF-8;Latvian, Latvia
mk;mk_MK.UTF-8;Macedonian, Macedonia
ml;ml_IN.UTF-8;Malayalam, India
mr;mr_IN.UTF-8;Marathi, India
ms;ms_MY.UTF-8;Malay, Malaysia
mt;mt_MT.UTF-8;Maltese, Malta
nb;nb_NO.UTF-8;Bokmal, Norway
nl;nl_BE.UTF-8;Dutch, Belgium
nl;nl_NL.UTF-8;Dutch, Netherlands
nn;nn_NO.UTF-8;Nynorsk, Norway
or;or_IN.UTF-8;Oriya, India
pa;pa_IN.UTF-8;Punjabi, India
pl;pl_PL.UTF-8;Polish, Poland
pt;pt_BR.UTF-8;Portuguese, Brazil
pt;pt_PT.UTF-8;Portuguese, Portugal
ro;ro_RO.UTF-8;Romanian, Romania
ru;ru_RU.UTF-8;Russian, Russia
ru;ru_UA.UTF-8;Russian, Ukraine
sa;sa_IN.UTF-8;Sanskrit, India
sk;sk_SK.UTF-8;Slovak, Slovakia
sl;sl_SI.UTF-8;Slovenian, Slovenia
sq;sq_AL.UTF-8;Albanian, Albania
sr;sr_ME.UTF-8;Serbian, Montenegro
sr;sr_ME.UTF-8@latin;Serbian, Montenegro (Latin)
sr;sr_RS.UTF-8;Serbian, Serbia
sr;sr_RS.UTF-8@latin;Serbian, Serbia (Latin)
sv;sv_SE.UTF-8;Swedish, Sweden
ta;ta_IN.UTF-8;Tamil, India
te;te_IN.UTF-8;Telugu, India
th;th_TH.UTF-8;Thai, Thailand
tr;tr_TR.UTF-8;Turkish, Turkey
uk;uk_UA.UTF-8;Ukrainian, Ukraine
vi;vi_VN.UTF-8;Vietnamese, Vietnam
zh;zh_CN.UTF-8;Simplified Chinese, China
zh;zh_HK.UTF-8;Traditional Chinese, Hong Kong SAR China
zh;zh_SG.UTF-8;Chinese, Singapore
zh;zh_TW.UTF-8;Traditional Chinese, Taiwan
1 af_ZA.UTF-8;Afrikaans LANG_GROUP South Africa LANG LANG_NAME
2 ar_AE.UTF-8;Arabic af United Arab Emirates af_ZA.UTF-8 Afrikaans, South Africa
3 ar_BH.UTF-8;Arabic ar Bahrain ar_AE.UTF-8 Arabic, United Arab Emirates
4 ar_DZ.UTF-8;Arabic ar Algeria ar_BH.UTF-8 Arabic, Bahrain
5 ar_EG.UTF-8;Arabic ar Egypt ar_DZ.UTF-8 Arabic, Algeria
6 ar_IQ.UTF-8;Arabic ar Iraq ar_EG.UTF-8 Arabic, Egypt
7 ar_JO.UTF-8;Arabic ar Jordan ar_IQ.UTF-8 Arabic, Iraq
8 ar_KW.UTF-8;Arabic ar Kuwait ar_JO.UTF-8 Arabic, Jordan
9 ar_LY.UTF-8;Arabic ar Libya ar_KW.UTF-8 Arabic, Kuwait
10 ar_MA.UTF-8;Arabic ar Morocco ar_LY.UTF-8 Arabic, Libya
11 ar_OM.UTF-8;Arabic ar Oman ar_MA.UTF-8 Arabic, Morocco
12 ar_QA.UTF-8;Arabic ar Qatar ar_OM.UTF-8 Arabic, Oman
13 ar_SA.UTF-8;Arabic ar Saudi Arabia ar_QA.UTF-8 Arabic, Qatar
14 ar_TN.UTF-8;Arabic ar Tunisia ar_SA.UTF-8 Arabic, Saudi Arabia
15 ar_YE.UTF-8;Arabic ar Yemen ar_TN.UTF-8 Arabic, Tunisia
16 as_IN.UTF-8;Assamese ar India ar_YE.UTF-8 Arabic, Yemen
17 az_AZ.UTF-8;Azerbaijani as Azerbaijan as_IN.UTF-8 Assamese, India
18 be_BY.UTF-8;Belarusian az Belarus az_AZ.UTF-8 Azerbaijani, Azerbaijan
19 bg_BG.UTF-8;Bulgarian be Bulgaria be_BY.UTF-8 Belarusian, Belarus
20 bn_IN.UTF-8;Bengali bg India bg_BG.UTF-8 Bulgarian, Bulgaria
21 bs_BA.UTF-8;Bosnian bn Bosnia and Herzegovina bn_IN.UTF-8 Bengali, India
22 ca_ES.UTF-8;Catalan bs Spain bs_BA.UTF-8 Bosnian, Bosnia and Herzegovina
23 cs_CZ.UTF-8;Czech ca Czech Republic ca_ES.UTF-8 Catalan, Spain
24 da_DK.UTF-8;Danish cs Denmark cs_CZ.UTF-8 Czech, Czech Republic
25 de_AT.UTF-8;German da Austria da_DK.UTF-8 Danish, Denmark
26 de_BE.UTF-8;German de Belgium de_AT.UTF-8 German, Austria
27 de_CH.UTF-8;German de Switzerland de_BE.UTF-8 German, Belgium
28 de_DE.UTF-8;German de Germany de_CH.UTF-8 German, Switzerland
29 de_LI.UTF-8;German de Liechtenstein de_DE.UTF-8 German, Germany
30 de_LU.UTF-8;German de Luxembourg de_LI.UTF-8 German, Liechtenstein
31 el_CY.UTF-8;Greek de Cyprus de_LU.UTF-8 German, Luxembourg
32 el_GR.UTF-8;Greek el Greece el_CY.UTF-8 Greek, Cyprus
33 en_AU.UTF-8;English el Australia el_GR.UTF-8 Greek, Greece
34 en_BW.UTF-8;English en Botswana en_AU.UTF-8 English, Australia
35 en_CA.UTF-8;English en Canada en_BW.UTF-8 English, Botswana
36 en_GB.UTF-8;English en United Kingdom en_CA.UTF-8 English, Canada
37 en_HK.UTF-8;English en Hong Kong SAR China en_GB.UTF-8 English, United Kingdom
38 en_IE.UTF-8;English en Ireland en_HK.UTF-8 English, Hong Kong SAR China
39 en_IN.UTF-8;English en India en_IE.UTF-8 English, Ireland
40 en_MT.UTF-8;English en Malta en_IN.UTF-8 English, India
41 en_NZ.UTF-8;English en New Zealand en_MT.UTF-8 English, Malta
42 en_PH.UTF-8;English en Philippines en_NZ.UTF-8 English, New Zealand
43 en_SG.UTF-8;English en Singapore en_PH.UTF-8 English, Philippines
44 en_US.UTF-8;English en U.S.A. en_SG.UTF-8 English, Singapore
45 en_ZW.UTF-8;English en Zimbabwe en_US.UTF-8 English, U.S.A.
46 es_AR.UTF-8;Spanish en Argentina en_ZW.UTF-8 English, Zimbabwe
47 es_BO.UTF-8;Spanish es Bolivia es_AR.UTF-8 Spanish, Argentina
48 es_CL.UTF-8;Spanish es Chile es_BO.UTF-8 Spanish, Bolivia
49 es_CO.UTF-8;Spanish es Colombia es_CL.UTF-8 Spanish, Chile
50 es_CR.UTF-8;Spanish es Costa Rica es_CO.UTF-8 Spanish, Colombia
51 es_DO.UTF-8;Spanish es Dominican Republic es_CR.UTF-8 Spanish, Costa Rica
52 es_EC.UTF-8;Spanish es Ecuador es_DO.UTF-8 Spanish, Dominican Republic
53 es_ES.UTF-8;Spanish es Spain es_EC.UTF-8 Spanish, Ecuador
54 es_GT.UTF-8;Spanish es Guatemala es_ES.UTF-8 Spanish, Spain
55 es_HN.UTF-8;Spanish es Honduras es_GT.UTF-8 Spanish, Guatemala
56 es_MX.UTF-8;Spanish es Mexico es_HN.UTF-8 Spanish, Honduras
57 es_NI.UTF-8;Spanish es Nicaragua es_MX.UTF-8 Spanish, Mexico
58 es_PA.UTF-8;Spanish es Panama es_NI.UTF-8 Spanish, Nicaragua
59 es_PE.UTF-8;Spanish es Peru es_PA.UTF-8 Spanish, Panama
60 es_PR.UTF-8;Spanish es Puerto Rico es_PE.UTF-8 Spanish, Peru
61 es_PY.UTF-8;Spanish es Paraguay es_PR.UTF-8 Spanish, Puerto Rico
62 es_SV.UTF-8;Spanish es El Salvador es_PY.UTF-8 Spanish, Paraguay
63 es_US.UTF-8;Spanish es U.S.A. es_SV.UTF-8 Spanish, El Salvador
64 es_UY.UTF-8;Spanish es Uruguay es_US.UTF-8 Spanish, U.S.A.
65 es_VE.UTF-8;Spanish es Venezuela es_UY.UTF-8 Spanish, Uruguay
66 et_EE.UTF-8;Estonian es Estonia es_VE.UTF-8 Spanish, Venezuela
67 fi_FI.UTF-8;Finnish et Finland et_EE.UTF-8 Estonian, Estonia
68 fr_BE.UTF-8;French fi Belgium fi_FI.UTF-8 Finnish, Finland
69 fr_CA.UTF-8;French fr Canada fr_BE.UTF-8 French, Belgium
70 fr_CH.UTF-8;French fr Switzerland fr_CA.UTF-8 French, Canada
71 fr_FR.UTF-8;French fr France fr_CH.UTF-8 French, Switzerland
72 fr_LU.UTF-8;French fr Luxembourg fr_FR.UTF-8 French, France
73 gu_IN.UTF-8;Gujarati fr India fr_LU.UTF-8 French, Luxembourg
74 he_IL.UTF-8;Hebrew gu Israel gu_IN.UTF-8 Gujarati, India
75 hi_IN.UTF-8;Hindi he India he_IL.UTF-8 Hebrew, Israel
76 hr_HR.UTF-8;Croatian hi Croatia hi_IN.UTF-8 Hindi, India
77 hu_HU.UTF-8;Hungarian hr Hungary hr_HR.UTF-8 Croatian, Croatia
78 hy_AM.UTF-8;Armenian hu Armenia hu_HU.UTF-8 Hungarian, Hungary
79 id_ID.UTF-8;Indonesian hy Indonesia hy_AM.UTF-8 Armenian, Armenia
80 is_IS.UTF-8;Icelandic id Iceland id_ID.UTF-8 Indonesian, Indonesia
81 it_CH.UTF-8;Italian is Switzerla;nd is_IS.UTF-8 Icelandic, Iceland
82 it_IT.UTF-8;Italian it Italy it_CH.UTF-8 Italian, Switzerland
83 ja_JP.UTF-8;Japanese it Japan it_IT.UTF-8 Italian, Italy
84 ka_GE.UTF-8;Georgian ja Georgia ja_JP.UTF-8 Japanese, Japan
85 kk_KZ.UTF-8;Kazakh ka Kazakhstan ka_GE.UTF-8 Georgian, Georgia
86 kn_IN.UTF-8;Kannada kk India kk_KZ.UTF-8 Kazakh, Kazakhstan
87 ko_KR.UTF-8;Korean kn Korea kn_IN.UTF-8 Kannada, India
88 ks_IN.UTF-8;Kashmiri ko India ko_KR.UTF-8 Korean, Korea
89 ku_TR.UTF-8;Kurdish ks Turkey ks_IN.UTF-8 Kashmiri, India
90 ku_TR.UTF-8@sorani;Kurdish (Sorani) ku Turkey ku_TR.UTF-8 Kurdish, Turkey
91 ky_KG.UTF-8;Kirghiz ku Kyrgyzstan ku_TR.UTF-8@sorani Kurdish (Sorani), Turkey
92 lt_LT.UTF-8;Lithuanian ky Lithuania ky_KG.UTF-8 Kirghiz, Kyrgyzstan
93 lv_LV.UTF-8;Latvian lt Latvia lt_LT.UTF-8 Lithuanian, Lithuania
94 mk_MK.UTF-8;Macedonian lv Macedonia lv_LV.UTF-8 Latvian, Latvia
95 ml_IN.UTF-8;Malayalam mk India mk_MK.UTF-8 Macedonian, Macedonia
96 mr_IN.UTF-8;Marathi ml India ml_IN.UTF-8 Malayalam, India
97 ms_MY.UTF-8;Malay mr Malaysia mr_IN.UTF-8 Marathi, India
98 mt_MT.UTF-8;Maltese ms Malta ms_MY.UTF-8 Malay, Malaysia
99 nb_NO.UTF-8;Bokmal mt Norway mt_MT.UTF-8 Maltese, Malta
100 nl_BE.UTF-8;Dutch nb Belgium nb_NO.UTF-8 Bokmal, Norway
101 nl_NL.UTF-8;Dutch nl Netherlands nl_BE.UTF-8 Dutch, Belgium
102 nn_NO.UTF-8;Nynorsk nl Norway nl_NL.UTF-8 Dutch, Netherlands
103 or_IN.UTF-8;Oriya nn India nn_NO.UTF-8 Nynorsk, Norway
104 pa_IN.UTF-8;Punjabi or India or_IN.UTF-8 Oriya, India
105 pl_PL.UTF-8;Polish pa Poland pa_IN.UTF-8 Punjabi, India
106 pt_BR.UTF-8;Portuguese pl Brazil pl_PL.UTF-8 Polish, Poland
107 pt_PT.UTF-8;Portuguese pt Portugal pt_BR.UTF-8 Portuguese, Brazil
108 ro_RO.UTF-8;Romanian pt Romania pt_PT.UTF-8 Portuguese, Portugal
109 ru_RU.UTF-8;Russian ro Russia ro_RO.UTF-8 Romanian, Romania
110 ru_UA.UTF-8;Russian ru Ukraine ru_RU.UTF-8 Russian, Russia
111 sa_IN.UTF-8;Sanskrit ru India ru_UA.UTF-8 Russian, Ukraine
112 sk_SK.UTF-8;Slovak sa Slovakia sa_IN.UTF-8 Sanskrit, India
113 sl_SI.UTF-8;Slovenian sk Slovenia sk_SK.UTF-8 Slovak, Slovakia
114 sq_AL.UTF-8;Albanian sl Albania sl_SI.UTF-8 Slovenian, Slovenia
115 sr_ME.UTF-8;Serbian sq Montenegro sq_AL.UTF-8 Albanian, Albania
116 sr_ME.UTF-8@latin;Serbian sr Montenegro (Latin) sr_ME.UTF-8 Serbian, Montenegro
117 sr_RS.UTF-8;Serbian sr Serbia sr_ME.UTF-8@latin Serbian, Montenegro (Latin)
118 sr_RS.UTF-8@latin;Serbian sr Serbia (Latin) sr_RS.UTF-8 Serbian, Serbia
119 sv_SE.UTF-8;Swedish sr Sweden sr_RS.UTF-8@latin Serbian, Serbia (Latin)
120 ta_IN.UTF-8;Tamil sv India sv_SE.UTF-8 Swedish, Sweden
121 te_IN.UTF-8;Telugu ta India ta_IN.UTF-8 Tamil, India
122 th_TH.UTF-8;Thai te Thailand te_IN.UTF-8 Telugu, India
123 tr_TR.UTF-8;Turkish th Turkey th_TH.UTF-8 Thai, Thailand
124 uk_UA.UTF-8;Ukrainian tr Ukraine tr_TR.UTF-8 Turkish, Turkey
125 vi_VN.UTF-8;Vietnamese uk Vietnam uk_UA.UTF-8 Ukrainian, Ukraine
126 zh_CN.UTF-8;Simplified Chinese vi China vi_VN.UTF-8 Vietnamese, Vietnam
127 zh_HK.UTF-8;Traditional Chinese zh Hong Kong SAR China zh_CN.UTF-8 Simplified Chinese, China
128 zh_SG.UTF-8;Chinese zh Singapore zh_HK.UTF-8 Traditional Chinese, Hong Kong SAR China
129 zh_TW.UTF-8;Traditional Chinese zh Taiwan zh_SG.UTF-8 Chinese, Singapore
130 zh zh_TW.UTF-8 Traditional Chinese, Taiwan

@ -78,6 +78,7 @@ set(DEPENDFILES
../kernel-list-addon.csv
../services-list.csv
../network-list.csv
../languages.csv
../filesystems-format-list.csv
../icons-builtin/install_type_custom_normal.png
../icons-builtin/install_type_data_only_normal.png

@ -41,6 +41,24 @@ int yon_bootloader_save(main_window *widgets){
yon_config_remove_by_key(GRUB_PASSWORD_parameter_all);
yon_config_remove_by_key(GRUB_SUPERUSERS_parameter);
}
if (!main_config.configure_mode){
int size, users_size, final_size, save_size;
config_str grub_users = yon_config_find_keys(GRUB_PASSWORD_parameter_search,&users_size);
config_str save_parameters = yon_char_parsed_new(&size,GRUB_TIMEOUT_parameter,GRUB_DEFAULT_parameter,AUTOLOGINUSER_parameter,GRUB_SUPERUSERS_parameter,NULL);
config_str final = yon_char_parsed_merge(save_parameters,size,grub_users,users_size,&final_size);
config_str parameters = yon_config_get_save_parameters_by_list(&save_size,final,final_size);
if (parameters){
char *command_parameters = yon_char_parsed_to_string(parameters,save_size," -- ");
char *command = yon_char_unite(ubconfig_dull_command,"--target system ",command_parameters,NULL);
if (!system(command)){}
free(command);
yon_char_parsed_free(parameters,save_size);
}
if (grub_users) yon_char_parsed_free(grub_users,users_size);
if (save_parameters) yon_char_parsed_free(save_parameters,size);
}
yon_bootloader_interface_update(widgets);
return 1;
}

@ -27,11 +27,23 @@ int yon_kernel_save(main_window *widgets){
yon_config_remove_by_key(modules_extra_parameter);
}
yon_config_register(KERNEL_BOOT_parameter,KERNEL_BOOT_parameter_command,enabled_module);
if (!main_config.configure_mode){
int size;
config_str parameters = yon_config_get_save_parameters_by_key(&size,modules_extra_parameter,KERNEL_BOOT_parameter,NULL);
if (parameters){
char *command_parameters = yon_char_parsed_to_string(parameters,size," -- ");
char *command = yon_char_unite(ubconfig_dull_command,"--target system ",command_parameters,NULL);
if (!system(command)){}
free(command);
yon_char_parsed_free(parameters,size);
}
}
return 1;
}
int yon_kernel_addon_save(main_window *widgets){
yon_kernel_save(widgets);
// yon_kernel_save(widgets);
GList *list = gtk_container_get_children(GTK_CONTAINER(widgets->KernelAddonListBox));
char *install_modules = "";
for(GList *iter = list;iter;iter = iter->next){
@ -49,6 +61,17 @@ int yon_kernel_addon_save(main_window *widgets){
yon_config_register(modules_extra_parameter,modules_extra_parameter_command,parameter_new);
free(parameter_new);
}
if (!main_config.configure_mode){
int size;
config_str parameters = yon_config_get_save_parameters_by_key(&size,modules_extra_parameter,NULL);
if (parameters){
char *command_parameters = yon_char_parsed_to_string(parameters,size," -- ");
char *command = yon_char_unite(ubconfig_dull_command,"--target system ",command_parameters,NULL);
if (!system(command)){}
free(command);
yon_char_parsed_free(parameters,size);
}
}
return 1;
}
@ -72,6 +95,17 @@ int yon_os_components_save(main_window *widgets){
} else {
yon_config_remove_by_key(modules_parameter);
}
if (!main_config.configure_mode){
int parameters_size;
config_str parameters = yon_config_get_save_parameters_by_key(&parameters_size,modules_parameter,NULL);
if (parameters){
char *command_parameters = yon_char_parsed_to_string(parameters,parameters_size," -- ");
char *command = yon_char_unite(ubconfig_dull_command,"--target system ",command_parameters,NULL);
if (!system(command)){}
free(command);
yon_char_parsed_free(parameters,parameters_size);
}
}
return 1;
}
@ -189,6 +223,17 @@ int yon_software_save(main_window *widgets){
yon_config_register(modules_extra_parameter,modules_extra_parameter_command,parameter_new);
free(parameter_new);
}
if (!main_config.configure_mode){
int size;
config_str parameters = yon_config_get_save_parameters_by_key(&size,modules_extra_parameter,NULL);
if (parameters){
char *command_parameters = yon_char_parsed_to_string(parameters,size," -- ");
char *command = yon_char_unite(ubconfig_dull_command,"--target system ",command_parameters,NULL);
if (!system(command)){}
free(command);
yon_char_parsed_free(parameters,size);
}
}
return 1;
}
@ -243,6 +288,17 @@ int yon_pacman_software_save(main_window *widgets){
} else {
yon_config_remove_by_key(packages_parameter);
}
if (!main_config.configure_mode){
int size;
config_str parameters = yon_config_get_save_parameters_by_key(&size,packages_parameter,NULL);
if (parameters){
char *command_parameters = yon_char_parsed_to_string(parameters,size," -- ");
char *command = yon_char_unite(ubconfig_dull_command,"--target system ",command_parameters,NULL);
if (!system(command)){}
free(command);
yon_char_parsed_free(parameters,size);
}
}
return 1;
}

@ -20,6 +20,17 @@ int yon_grub_install_save(main_window *widgets){
yon_config_register(AUTOINSTALL_DEVICE,AUTOINSTALL_DEVICE_command,cur_device);
yon_config_register(part_parameter,part_parameter_command,partition);
yon_config_register(AUTOINSTALL_TYPE_INSTALL,AUTOINSTALL_TYPE_INSTALL_command,"grub_install");
if (!main_config.configure_mode){
int size;
config_str parameters = yon_config_get_save_parameters_by_key(&size,AUTOINSTALL_DEVICE,part_parameter,AUTOINSTALL_TYPE_INSTALL,NULL);
if (parameters){
char *command_parameters = yon_char_parsed_to_string(parameters,size," -- ");
char *command = yon_char_unite(ubconfig_dull_command,"--target system ",command_parameters,NULL);
if (!system(command)){}
free(command);
yon_char_parsed_free(parameters,size);
}
}
return 1;
}
@ -43,5 +54,16 @@ int yon_grub_update_save(main_window *widgets){
yon_config_register(AUTOINSTALL_DEVICE,AUTOINSTALL_DEVICE_command,cur_device);
yon_config_register(part_parameter,part_parameter_command,partition);
yon_config_register(AUTOINSTALL_TYPE_INSTALL,AUTOINSTALL_TYPE_INSTALL_command,"grub_update");
if (!main_config.configure_mode){
int size;
config_str parameters = yon_config_get_save_parameters_by_key(&size,AUTOINSTALL_DEVICE,part_parameter,AUTOINSTALL_TYPE_INSTALL,NULL);
if (parameters){
char *command_parameters = yon_char_parsed_to_string(parameters,size," -- ");
char *command = yon_char_unite(ubconfig_dull_command,"--target system ",command_parameters,NULL);
if (!system(command)){}
free(command);
yon_char_parsed_free(parameters,size);
}
}
return 1;
}

@ -28,6 +28,18 @@ int yon_install_common_save(main_window *widgets){
} else {
yon_config_remove_by_key(part_fs_type_parameter);
}
if (!main_config.configure_mode){
int size;
config_str parameters = yon_config_get_save_parameters_by_key(&size,AUTOINSTALL_TYPE_INSTALL,AUTOINSTALL_DEVICE,part_label_parameter,part_fs_type_parameter,NULL);
if (parameters){
char *command_parameters = yon_char_parsed_to_string(parameters,size," -- ");
char *command = yon_char_unite(ubconfig_dull_command,"--target system ",command_parameters,NULL);
if (!system(command)){}
free(command);
yon_char_parsed_free(parameters,size);
}
}
return 1;
}
@ -87,6 +99,17 @@ int yon_install_separate_save(main_window *widgets){
yon_config_register(AUTOINSTALL_TYPE_INSTALL,AUTOINSTALL_TYPE_INSTALL_command,"next");
yon_config_register(AUTOINSTALL_DEVICE,AUTOINSTALL_DEVICE_command,device);
yon_config_register(part_parameter,part_parameter_command,part);
if (!main_config.configure_mode){
int size;
config_str parameters = yon_config_get_save_parameters_by_key(&size,part_format_parameter,part_label_parameter,part_fs_type_parameter,AUTOINSTALL_DEVICE,part_parameter,NULL);
if (parameters){
char *command_parameters = yon_char_parsed_to_string(parameters,size," -- ");
char *command = yon_char_unite(ubconfig_dull_command,"--target system ",command_parameters,NULL);
if (!system(command)){}
free(command);
yon_char_parsed_free(parameters,size);
}
}
return 1;
}
@ -134,6 +157,17 @@ int yon_install_same_partition_save(main_window *widgets){
yon_config_remove_by_key(part_format_parameter);
yon_config_remove_by_key(part_fs_type_parameter);
}
if (!main_config.configure_mode){
int size;
config_str parameters = yon_config_get_save_parameters_by_key(&size,part_format_parameter,part_size_parameter,part_label_parameter,part_fs_type_parameter,AUTOINSTALL_TYPE_INSTALL,AUTOINSTALL_DEVICE,part_parameter,NULL);
if (parameters){
char *command_parameters = yon_char_parsed_to_string(parameters,size," -- ");
char *command = yon_char_unite(ubconfig_dull_command,"--target system ",command_parameters,NULL);
if (!system(command)){}
free(command);
yon_char_parsed_free(parameters,size);
}
}
return 1;
}
@ -446,11 +480,9 @@ void yon_install_init(main_window *widgets, enum YON_PAGES page){
default:return;
}
char *device = config(AUTOINSTALL_DEVICE);
char *part = config(part_parameter);
if (!yon_char_is_empty(device)){
GtkTreeIter iter;
GtkTreeModel *model = GTK_TREE_MODEL(widgets->DevicesList);
@ -503,7 +535,7 @@ void yon_install_init(main_window *widgets, enum YON_PAGES page){
if (!yon_char_is_empty(parameter)){
gtk_combo_box_set_active_id(GTK_COMBO_BOX(fs_type_combo),parameter);
} else {
gtk_combo_box_set_active(GTK_COMBO_BOX(fs_type_combo),1);
gtk_combo_box_set_active(GTK_COMBO_BOX(fs_type_combo),0);
}
}
if (partition_size_spin&&partition_size_combo){
@ -685,7 +717,7 @@ void on_install_advanced_add_new(GtkWidget *, main_window *widgets){
gtk_box_pack_start(GTK_BOX(widgets->AdvancedPartitionAddBox),part->MainBox,0,0,0);
gtk_widget_show(part->MainBox);
yon_advanced_partition_setup(part,widgets);
on_advanced_parts_added(NULL,NULL,widgets);
on_advanced_parts_added(NULL,NULL,widgets);
}
void on_install_advanced_device_chosen(GtkCellRenderer *, gchar *path, main_window *widgets){

@ -51,6 +51,18 @@ int yon_keyboard_save(main_window *widgets){
} else {
yon_config_remove_by_key(xkboptions_parameter);
}
if (!main_config.configure_mode){
int size;
config_str parameters = yon_config_get_save_parameters_by_key(&size,xkbvariant_parameter,xkblayout_parameter,xkbmodel_parameter,xkboptions_parameter,NULL);
if (parameters){
char *command_parameters = yon_char_parsed_to_string(parameters,size," -- ");
char *command = yon_char_unite(ubconfig_dull_command,"--target system ",command_parameters,NULL);
if (!system(command)){}
free(command);
yon_char_parsed_free(parameters,size);
}
}
return 1;
}

@ -282,6 +282,22 @@ int yon_network_save(main_window *widgets){
}
}
if (!main_config.configure_mode){
int size, users_size, final_size, save_size;
config_str users = yon_config_find_keys(NETWORK_parameter_search,&users_size);
config_str save_parameters = yon_char_parsed_new(&size,DOMAIN_parameter,DOMAIN_admanger_parameter,NTPSERVERS_parameter,hostname_parameter,NULL);
config_str final = yon_char_parsed_merge(save_parameters,size,users,users_size,&final_size);
config_str parameters = yon_config_get_save_parameters_by_list(&save_size,final,final_size);
if (parameters){
char *command_parameters = yon_char_parsed_to_string(parameters,save_size," -- ");
char *command = yon_char_unite(ubconfig_dull_command,"--target system ",command_parameters,NULL);
if (!system(command)){}
free(command);
yon_char_parsed_free(parameters,save_size);
}
if (users)yon_char_parsed_free(users,users_size);
if (save_parameters)yon_char_parsed_free(save_parameters,size);
}
return 1;
}

@ -152,7 +152,7 @@ int yon_page_save(main_window *widgets, enum YON_PAGES page){
return yon_os_components_save(widgets);
break;
case YON_PAGE_KERNEL:
// return yon_kernel_save(widgets);
return yon_kernel_save(widgets);
break;
case YON_PAGE_KERNEL_ADDON:
return yon_kernel_addon_save(widgets);
@ -290,11 +290,6 @@ void yon_configuration_mode_check(main_window *widgets){
} else {
gtk_widget_set_sensitive(widgets->ConfigurationModeMenuItem,0);
}
if (page == YON_PAGE_CONFIGURE_END){
gtk_widget_show(widgets->SaveButton);
} else {
gtk_widget_hide(widgets->SaveButton);
}
}
void yon_page_update(main_window *widgets){

@ -39,6 +39,17 @@ int yon_region_save(main_window *widgets){
} else {
yon_config_remove_by_key(zone_parameter);
}
if (!main_config.configure_mode){
int size;
config_str parameters = yon_config_get_save_parameters_by_key(&size,locale_parameter,lang_parameter,zone_parameter,NULL);
if (parameters){
char *command_parameters = yon_char_parsed_to_string(parameters,size," -- ");
char *command = yon_char_unite(ubconfig_dull_command,"--target system ",command_parameters,NULL);
if (!system(command)){}
free(command);
yon_char_parsed_free(parameters,size);
}
}
return 1;
}

@ -717,7 +717,7 @@ int yon_config_save(main_window *widgets){
yon_ubl_status_box_spawn(GTK_CONTAINER(widgets->StatusBox),ERROR_LABEL,5,BACKGROUND_IMAGE_FAIL_TYPE);
return 0;
}
char *command = yon_debug_output("%s\n",ubconfig_set_command_full(main_config.config_save_path,"",yon_char_parsed_to_string(parameters,size," ")));
char *command = yon_debug_output("%s\n",ubconfig_set_command_full(main_config.config_save_path,"[autoinstall]",yon_char_parsed_to_string(parameters,size," ")));
if (system(command)){
return 0;
}

@ -22,5 +22,16 @@ int yon_install_options_save(GtkWidget *device_tree, GtkWidget *part_tree,char *
if(cur_section) free(cur_section);
if(cur_device) free(cur_device);
if (!main_config.configure_mode){
int size;
config_str parameters = yon_config_get_save_parameters_by_key(&size,AUTOINSTALL_DEVICE,AUTOINSTALL_TYPE_INSTALL,part_parameter,NULL);
if (parameters){
char *command_parameters = yon_char_parsed_to_string(parameters,size," -- ");
char *command = yon_char_unite(ubconfig_dull_command,"--target system ",command_parameters,NULL);
if (!system(command)){}
free(command);
yon_char_parsed_free(parameters,size);
}
}
return 1;
}

@ -210,5 +210,16 @@ int yon_startup_save(main_window *widgets){
} else {
yon_config_remove_by_key(SERVICES_ENABLE_parameter);
}
if (!main_config.configure_mode){
int size;
config_str parameters = yon_config_get_save_parameters_by_key(&size,SERVICES_ENABLE_parameter,NULL);
if (parameters){
char *command_parameters = yon_char_parsed_to_string(parameters,size," -- ");
char *command = yon_char_unite(ubconfig_dull_command,"--target system ",command_parameters,NULL);
if (!system(command)){}
free(command);
yon_char_parsed_free(parameters,size);
}
}
return 1;
}

@ -32,6 +32,22 @@ int yon_users_save(main_window *widgets){
}
}
if (!main_config.configure_mode){
int size, users_size, final_size, save_size;
config_str users = yon_config_find_keys(USERADD_parameter_search,&users_size);
config_str save_parameters = yon_char_parsed_new(&size,root_password_parameter,autologin_parameter,NULL);
config_str final = yon_char_parsed_merge(save_parameters,size,users,users_size,&final_size);
config_str parameters = yon_config_get_save_parameters_by_list(&save_size,final,final_size);
if (parameters){
char *command_parameters = yon_char_parsed_to_string(parameters,size," -- ");
char *command = yon_char_unite(ubconfig_dull_command,"--target system ",command_parameters,NULL);
if (!system(command)){}
free(command);
yon_char_parsed_free(parameters,save_size);
}
if (users)yon_char_parsed_free(users,users_size);
if (save_parameters)yon_char_parsed_free(save_parameters,size);
}
yon_debug_output("%s\n",yon_config_get_all_info());
return 1;
}

@ -196,6 +196,17 @@ void on_source_accept(GtkWidget *,source_window *window){
free(parameter_string);
on_subwindow_close(window->Window);
if (!main_config.configure_mode){
int size;
config_str parameters = yon_config_get_save_parameters_by_key(&size,locale_parameter,lang_parameter,zone_parameter,NULL);
if (parameters){
char *command_parameters = yon_char_parsed_to_string(parameters,size," -- ");
char *command = yon_char_unite(ubconfig_dull_command,"--target system ",command_parameters,NULL);
if (!system(command)){}
free(command);
yon_char_parsed_free(parameters,size);
}
}
}
source_window *yon_source_window_new(){
@ -299,9 +310,63 @@ void config_init(){
// void *on_setup_system_configuration(void *data);
// void on_locale_changed(GtkWidget *,main_window *){
//
// }
void on_locale_changed(GtkWidget *,main_window *widgets){
GtkTreeIter iter;
GtkTreeModel *model;
if (!gtk_tree_selection_get_selected(gtk_tree_view_get_selection(GTK_TREE_VIEW(widgets->LanguagesTree)),&model,&iter)) return;
gtk_tree_model_filter_refilter(GTK_TREE_MODEL_FILTER(widgets->InstallerCountryFilter));
char *config_code = config(installer_lang_parameter);
if (yon_char_is_empty(config_code)){
config_code = yon_char_new(setlocale(LC_ALL,NULL));
if (strstr(config_code,".")){
yon_char_divide_search_self(config_code,".",-1);
}
}
GtkTreeIter itar;
for_iter(widgets->InstallerCountryFilter,&iter){
gtk_tree_model_filter_convert_iter_to_child_iter(GTK_TREE_MODEL_FILTER(widgets->InstallerCountryFilter),&itar,&iter);
char *target;
gtk_tree_model_get(GTK_TREE_MODEL(widgets->InstallerCountryList),&itar,2,&target,-1);
if (!strcmp(config_code,target)){
gtk_tree_model_filter_convert_child_iter_to_iter(GTK_TREE_MODEL_FILTER(widgets->InstallerCountryFilter),&iter,&itar);
gtk_tree_selection_select_iter(gtk_tree_view_get_selection(GTK_TREE_VIEW(widgets->CountryLanguagesTree)),&iter);
break;
}
}
}
void on_installer_language_changed(GtkWidget *self, main_window *widgets){
char *window_language;
GtkTreeIter iter;
GtkTreeModel *model;
if (!gtk_tree_selection_get_selected(gtk_tree_view_get_selection(GTK_TREE_VIEW(widgets->CountryLanguagesTree)),&model,&iter)) return;
gtk_tree_model_get(model,&iter,2,&window_language,-1);
if (!yon_char_is_empty(window_language)){
yon_config_register(installer_lang_parameter,installer_lang_parameter_command,(char*)window_language);
}
char *active_lang_id = gtk_tree_model_get_string_from_iter(model,&iter);
int size;
config_str parameters = yon_config_get_save_parameters_by_key(&size,installer_lang_parameter,NULL);
char *command_parameters = yon_char_parsed_to_string(parameters,size," ");
char *command = yon_char_unite(ubconfig_dull_command,"--target system ",command_parameters,NULL);
g_signal_handlers_block_by_func(G_OBJECT(widgets->MainWindow),G_CALLBACK(on_yon_exit),widgets);
if (!system(command)){};
gtk_widget_destroy(widgets->MainWindow);
setlocale(LC_ALL, window_language);
textdomain(LocaleName);
g_setenv("LANGUAGE",window_language,1);
yon_main_window_create(widgets);
char *path = yon_char_unite(yon_ubl_user_get_home_directory(),"/.config/",LocaleName,"/",LocaleName,".conf",NULL);
yon_window_config_setup(GTK_WINDOW(widgets->MainWindow));
yon_window_config_load(path);
g_signal_handlers_block_by_func(G_OBJECT(self),G_CALLBACK(on_locale_changed),widgets);
model = GTK_TREE_MODEL(widgets->InstallerLanguageList);
gtk_tree_model_get_iter_from_string(model,&iter,active_lang_id);
g_signal_handlers_unblock_by_func(G_OBJECT(self),G_CALLBACK(on_locale_changed),widgets);
}
void on_additional_software_toggled(GtkWidget *, char *path, main_window *widgets){
GtkTreeIter iter;
@ -351,22 +416,138 @@ gboolean on_yon_exit(GtkWidget *,GdkEvent*, main_window *widgets){
gtk_main_quit();
return 1;
}
}
return 1;
}
typedef struct{
char *locale_name;
char *code;
char *localised_name;
char *code_full;
} locale_struct;
void set_locales_list(main_window *widgets){
gtk_list_store_clear(widgets->InstallerLanguageList);
gtk_list_store_clear(widgets->InstallerCountryList);
GHashTable *localisations = g_hash_table_new(g_str_hash,g_str_equal);
int locales_size;
config_str locales = yon_dir_get_contents(locales_list_command,&locales_size);
dictionary *locale_dict = NULL;
for (int i=0;i<locales_size;i++){
if (!strcmp(locales[i],".")) continue;
if (!strcmp(locales[i],"..")) continue;
char *path = yon_char_unite(locales_list_command,locales[i],NULL);
int info_size;
config_str code_info = yon_file_open(path,&info_size);
char *code = yon_char_parsed_check_exist_begins_with(code_info,info_size,"lang_ab");
if (yon_char_is_empty(code)) continue;
yon_char_remove_last_symbol(code,'\n');
yon_char_remove_last_symbol(code,'"');
free(yon_char_divide_search(code,"\"",-1));
{
char *region = yon_char_parsed_check_exist_begins_with(code_info,info_size,"territory");
if (!yon_char_is_empty(region)){
yon_char_remove_last_symbol(region,'\n');
yon_char_remove_last_symbol(region,'"');
free(yon_char_divide_search(region,"\"",-1));
}
char *lang_name = yon_char_parsed_check_exist_begins_with(code_info,info_size,"language");
if (!yon_char_is_empty(lang_name)){
yon_char_remove_last_symbol(lang_name,'\n');
yon_char_remove_last_symbol(lang_name,'"');
free(yon_char_divide_search(lang_name,"\"",-1));
}
char *tooltip = yon_char_parsed_check_exist_begins_with(code_info,info_size,"title");
if (!yon_char_is_empty(tooltip)){
yon_char_remove_last_symbol(tooltip,'\n');
yon_char_remove_last_symbol(tooltip,'"');
free(yon_char_divide_search(tooltip,"\"",-1));
}
GtkTreeIter iter;
char *country = yon_char_unite(lang_name," (",region,")",NULL);
gtk_list_store_append(widgets->InstallerCountryList,&iter);
gtk_list_store_set(widgets->InstallerCountryList,&iter,0,code,1,_(country),2,locales[i],3,_(tooltip),-1);
}
if (!g_hash_table_contains(localisations,code)) {
locale_struct *locale = malloc(sizeof(locale_struct));
memset(locale,0,sizeof(locale_struct));
locale->locale_name = yon_char_parsed_check_exist_begins_with(code_info,info_size,"language");
locale->code = code;
locale->localised_name = yon_char_parsed_check_exist_begins_with(code_info,info_size,"lang_name");
locale->code_full = yon_char_new(locales[i]);
if (!yon_char_is_empty(locale->locale_name)){
yon_char_remove_last_symbol(locale->locale_name,'\n');
yon_char_remove_last_symbol(locale->locale_name,'"');
}
if (!yon_char_is_empty(locale->localised_name)){
yon_char_remove_last_symbol(locale->localised_name,'\n');
yon_char_remove_last_symbol(locale->localised_name,'"');
}
yon_dictionary_add_or_create_if_exists_with_data(locale_dict,locales[i],locale);
free(yon_char_divide_search(locale->locale_name,"\"",-1));
free(yon_char_divide_search(locale->localised_name,"\"",-1));
g_hash_table_add(localisations,code);
}
yon_char_parsed_free(code_info,info_size);
}
yon_char_parsed_free(locales,locales_size);
GtkTreeIter iter;
dictionary *dict;
char *config_val = yon_char_new(config(installer_lang_parameter));
char *config_code = NULL;
if (yon_char_is_empty(config_val)) config_val = yon_char_new(setlocale(LC_ALL,NULL));
if(strstr(config_val,"_")){
config_code = yon_char_divide_search(config_val,"_",-1);
free(config_val);
}
for_dictionaries(dict,locale_dict){
locale_struct *locale = yon_dictionary_get_data(dict,locale_struct*);
gtk_list_store_append(widgets->InstallerLanguageList,&iter);
gtk_list_store_set(widgets->InstallerLanguageList,&iter,0,locale->code,1,locale->locale_name,2,_(locale->localised_name),3,locale->code_full,-1);
if (!yon_char_is_empty(config_code)){
if (!strcmp(config_code,locale->code)){
g_signal_handlers_block_by_func(G_OBJECT(widgets->CountryLanguagesTree),G_CALLBACK(on_installer_language_changed),widgets);
gtk_tree_selection_select_iter(gtk_tree_view_get_selection(GTK_TREE_VIEW(widgets->LanguagesTree)),&iter);
on_locale_changed(NULL,widgets);
g_signal_handlers_unblock_by_func(G_OBJECT(widgets->CountryLanguagesTree),G_CALLBACK(on_installer_language_changed),widgets);
}
}
}
}
gboolean on_country_filter(GtkTreeModel *self, GtkTreeIter *iter, main_window *widgets){
GtkTreeIter itar;
GtkTreeModel *model;
if (!gtk_tree_selection_get_selected(gtk_tree_view_get_selection(GTK_TREE_VIEW(widgets->LanguagesTree)),&model,&itar)) return 0;
char *cur_code,*country;
gtk_tree_model_get(self,iter,0,&cur_code,1,&country,-1);
char *code;
gtk_tree_model_get(model,&itar,0,&code,-1);
if (!strcmp(code,cur_code)){
char *config_lang = config(installer_lang_parameter);
if (!yon_char_is_empty(config_lang)&&!strcmp(cur_code,config_lang)){
if (gtk_tree_model_filter_convert_child_iter_to_iter(GTK_TREE_MODEL_FILTER(widgets->InstallerCountryFilter),iter,&itar)){
gtk_tree_selection_select_iter(gtk_tree_view_get_selection(GTK_TREE_VIEW(widgets->CountryLanguagesTree)),&itar);
}
}
return 1;
}
return 0;
return 1;
}
/**yon_main_window_complete(main_window *widgets)
* [EN]
*
* [RU]
* Функция настройки основного окна приложения. [widgets] - структура со стандартным интерфейсом.
*/
main_window *yon_main_window_complete(){
main_window *widgets=NULL;
widgets = yon_remalloc(widgets,sizeof(main_window));
void yon_main_window_create(main_window *widgets){
GtkBuilder *builder = gtk_builder_new_from_resource(glade_path);
gtk_builder_add_callback_symbol(builder,"yon_gtk_widget_set_sensitive_from_toggle_button",G_CALLBACK(yon_gtk_widget_set_sensitive_from_toggle_button));
gtk_builder_add_callback_symbol(builder,"on_toggle_button_switch_on",G_CALLBACK(on_toggle_button_switch_on));
@ -375,262 +556,268 @@ main_window *yon_main_window_complete(){
gtk_builder_set_translation_domain(builder,template_ui_LocaleName);
{
widgets->DevicesList=GTK_LIST_STORE(gtk_builder_get_object(builder,"DevicesList"));
widgets->LanguagesList=GTK_LIST_STORE(gtk_builder_get_object(builder,"LanguagesList"));
widgets->PartitionsList = GTK_LIST_STORE(gtk_builder_get_object(builder,"PartitionsList"));
main_config.kernel_unchosen_radio = yon_gtk_builder_get_widget(builder,"KernelUnchosenRadio");
widgets->MainWindow=yon_gtk_builder_get_widget(builder,"MainWindow");
widgets->StatusBox = yon_gtk_builder_get_widget(builder,"StatusBox");
widgets->StatusBox2 = yon_gtk_builder_get_widget(builder,"StatusBox2");
widgets->Notebook = yon_gtk_builder_get_widget(builder,"Notebook");
widgets->MainSpinner=yon_gtk_builder_get_widget(builder,"MainSpinner");
widgets->EnableVNCMenuItem = yon_gtk_builder_get_widget(builder,"EnableVNCMenuItem");
widgets->DocumentationMenuItem = yon_ubl_menu_item_documentation_new(DOCUMENTATION_LABEL);
widgets->AboutMenuItem = yon_ubl_menu_item_about_new(ABOUT_LABEL);
widgets->SaveButton = yon_gtk_builder_get_widget(builder,"SaveButton");
widgets->LoadGlobalConfigurationMenuItem = yon_gtk_builder_get_widget(builder,"LoadGlobalConfigurationMenuItem");
widgets->LoadLocalConfigurationMenuItem = yon_gtk_builder_get_widget(builder,"LoadLocalConfigurationMenuItem");
widgets->LoadExternalConfigurationMenuItem = yon_gtk_builder_get_widget(builder,"LoadExternalConfigurationMenuItem");
widgets->SaveGlobalLocalConfigurationMenuItem = yon_gtk_builder_get_widget(builder,"SaveGlobalLocalConfigurationMenuItem");
widgets->SaveGlobalConfigurationMenuItem = yon_gtk_builder_get_widget(builder,"SaveGlobalConfigurationMenuItem");
widgets->SaveLocalConfigurationMenuItem = yon_gtk_builder_get_widget(builder,"SaveLocalConfigurationMenuItem");
widgets->SaveExternalConfigurationMenuItem = yon_gtk_builder_get_widget(builder,"SaveExternalConfigurationMenuItem");
widgets->SlidesImage = yon_gtk_builder_get_widget(builder,"SlidesImage");
widgets->LicenceLabel = yon_gtk_builder_get_widget(builder,"LicenceLabel");
widgets->menu1=yon_gtk_builder_get_widget(builder,"menu1");
widgets->menu2=yon_gtk_builder_get_widget(builder,"menu2");
widgets->ConfigurationModeMenuItem = yon_gtk_builder_get_widget(builder,"ConfigurationModeMenuItem");
widgets->CancelInstallButton=yon_gtk_builder_get_widget(builder,"CancelInstallButton");
widgets->BackButton=yon_gtk_builder_get_widget(builder,"BackButton");
widgets->NextButton=yon_gtk_builder_get_widget(builder,"NextButton");
widgets->WelcomeToggle=yon_gtk_builder_get_widget(builder,"WelcomeToggle");
widgets->LicenceToggle=yon_gtk_builder_get_widget(builder,"LicenceToggle");
widgets->LocationToggle=yon_gtk_builder_get_widget(builder,"LocationToggle");
widgets->KeyboardToggle=yon_gtk_builder_get_widget(builder,"KeyboardToggle");
widgets->SectionsToggle=yon_gtk_builder_get_widget(builder,"SectionsToggle");
widgets->UsersToggle=yon_gtk_builder_get_widget(builder,"UsersToggle");
widgets->SummaryToggle=yon_gtk_builder_get_widget(builder,"SummaryToggle");
widgets->CompletionToggle=yon_gtk_builder_get_widget(builder,"CompletionToggle");
widgets->InstallationToggle=yon_gtk_builder_get_widget(builder,"InstallationToggle");
widgets->StartScenarioButton=yon_gtk_builder_get_widget(builder,"StartScenarioButton");
widgets->SourceButton=yon_gtk_builder_get_widget(builder,"SourceButton");
widgets->SkipInstallationButton=yon_gtk_builder_get_widget(builder,"SkipInstallationButton");
widgets->InstallationRadio=yon_gtk_builder_get_widget(builder,"InstallationRadio");
widgets->InstallationNearRadio=yon_gtk_builder_get_widget(builder,"InstallationNearRadio");
widgets->InstallationLinuxRadio=yon_gtk_builder_get_widget(builder,"InstallationLinuxRadio");
widgets->InstallationWindowsRadio=yon_gtk_builder_get_widget(builder,"InstallationWindowsRadio");
widgets->InstallationOptionsRadio=yon_gtk_builder_get_widget(builder,"InstallationOptionsRadio");
widgets->GrubInstallRadio = yon_gtk_builder_get_widget(builder,"GrubInstallRadio");
widgets->GrubUpdateRadio = yon_gtk_builder_get_widget(builder,"GrubUpdateRadio");
widgets->SeparateRadio = yon_gtk_builder_get_widget(builder,"SeparateRadio");
widgets->OSRadio = yon_gtk_builder_get_widget(builder,"OSRadio");
widgets->UserDataOnlyRadio = yon_gtk_builder_get_widget(builder,"UserDataOnlyRadio");
widgets->CommonInstallationDevicesTree = yon_gtk_builder_get_widget(builder,"CommonInstallationDevicesTree");
widgets->CommonInstallationFilesystemTypeCombo = yon_gtk_builder_get_widget(builder,"CommonInstallationFilesystemTypeCombo");
widgets->CommonInstallationSectionNameEntry = yon_gtk_builder_get_widget(builder,"CommonInstallationSectionNameEntry");
widgets->CommonFormatSwitch = yon_gtk_builder_get_widget(builder,"CommonFormatSwitch");
widgets->GpartedCommonButton = yon_gtk_builder_get_widget(builder,"GpartedCommonButton");
widgets->SamePlaceDeviceTree = yon_gtk_builder_get_widget(builder,"SamePlaceDeviceTree");
widgets->SamePlacePartTree = yon_gtk_builder_get_widget(builder,"SamePlacePartTree");
widgets->SameInstallationFormatSwitch = yon_gtk_builder_get_widget(builder,"SameInstallationFormatSwitch");
widgets->SameInstallationFormatRevealer = yon_gtk_builder_get_widget(builder,"SameInstallationFormatRevealer");
widgets->SameInstallationFilesystemTypeCombo = yon_gtk_builder_get_widget(builder,"SameInstallationFilesystemTypeCombo");
widgets->SameInstallationSectionNameEntry = yon_gtk_builder_get_widget(builder,"SameInstallationSectionNameEntry");
widgets->GpartedSameButton = yon_gtk_builder_get_widget(builder,"GpartedSameButton");
widgets->NextInstallationFilesystemTypeCombo = yon_gtk_builder_get_widget(builder,"NextInstallationFilesystemTypeCombo");
widgets->NextInstallationFormatSwitch = yon_gtk_builder_get_widget(builder,"NextInstallationFormatSwitch");
widgets->NextInstallationFormatRevealer = yon_gtk_builder_get_widget(builder,"NextInstallationFormatRevealer");
widgets->NextInstallationSectionNameEntry = yon_gtk_builder_get_widget(builder,"NextInstallationSectionNameEntry");
widgets->NextInstallationSizeSpin = yon_gtk_builder_get_widget(builder,"NextInstallationFormatSizeSpin");
widgets->NextInstallationSizeTypeSpin = yon_gtk_builder_get_widget(builder,"NextInstallationFormatSizeCombo");
widgets->NextInstallationSysDevicesTree = yon_gtk_builder_get_widget(builder,"NextInstallationSysDevicesTree");
widgets->NextInstallationSysSectionTree = yon_gtk_builder_get_widget(builder,"NextInstallationSysSectionTree");
widgets->GpartedNextInstallationButton = yon_gtk_builder_get_widget(builder,"GpartedNextInstallationButton");
widgets->AdvancedDeviceChosenCell = GTK_CELL_RENDERER(gtk_builder_get_object(builder,"AdvancedDeviceChosenCell"));
widgets->AdvancedPartChosenCell = GTK_CELL_RENDERER(gtk_builder_get_object(builder,"AdvancedPartChosenCell"));
widgets->AdvancedDeviceTree = yon_gtk_builder_get_widget(builder,"AdvancedDeviceTree");
widgets->AdvancedVirtualDeviceCombo = yon_gtk_builder_get_widget(builder,"AdvancedVirtualDeviceCombo");
widgets->AdvancedPartitionTree = yon_gtk_builder_get_widget(builder,"AdvancedPartitionTree");
widgets->AdvancedPartitionAddBox = yon_gtk_builder_get_widget(builder,"AdvancedPartitionAddBox");
widgets->AdvancedAddButton = yon_gtk_builder_get_widget(builder,"AdvancedAddButton");
widgets->AdvancedLoadTypeSwitch = yon_gtk_builder_get_widget(builder,"AdvancedLoadTypeSwitch");
widgets->AdvancedBiosSectorSwitch = yon_gtk_builder_get_widget(builder,"AdvancedBiosSectorSwitch");
widgets->AdvancedEFISwitch = yon_gtk_builder_get_widget(builder,"AdvancedEFISwitch");
widgets->AdvancedSwapSwitch = yon_gtk_builder_get_widget(builder,"AdvancedSwapSwitch");
widgets->AdvancedSwapAutoSwitch = yon_gtk_builder_get_widget(builder,"AdvancedSwapAutoSwitch");
widgets->AdvancedSwapRamSwitch = yon_gtk_builder_get_widget(builder,"AdvancedSwapRamSwitch");
widgets->AdvancedSwapFixedSwitch = yon_gtk_builder_get_widget(builder,"AdvancedSwapFixedSwitch");
widgets->AdvancedSwapFixedSpin = yon_gtk_builder_get_widget(builder,"AdvancedSwapFixedSpin");
widgets->advanced_partition_order = g_sequence_new(NULL);
widgets->GrubInstallDevicesTree = yon_gtk_builder_get_widget(builder,"GrubInstallDevicesTree");
widgets->GrubInstallPartitionTree = yon_gtk_builder_get_widget(builder,"GrubInstallPartitionTree");
widgets->GpartedGrubInstallButton = yon_gtk_builder_get_widget(builder,"GpartedGrubInstallButton");
widgets->GrubUpdateDevicesTree = yon_gtk_builder_get_widget(builder,"GrubUpdateDevicesTree");
widgets->GrubUpdatePartitionTree = yon_gtk_builder_get_widget(builder,"GrubUpdatePartitionTree");
widgets->GpartedGrubUpdateButton = yon_gtk_builder_get_widget(builder,"GpartedGrubUpdateButton");
widgets->OSDevicesTree = yon_gtk_builder_get_widget(builder,"OSDevicesTree");
widgets->OSSysSectionTree = yon_gtk_builder_get_widget(builder,"OSSysSectionTree");
widgets->GpartedOSButton = yon_gtk_builder_get_widget(builder,"GpartedOSButton");
widgets->OSFormatSwitch = yon_gtk_builder_get_widget(builder,"OSFormatSwitch");
widgets->OSFormatSizeSpin = yon_gtk_builder_get_widget(builder,"OSFormatSizeSpin");
widgets->OSFormatSizeCombo = yon_gtk_builder_get_widget(builder,"OSFormatSizeCombo");
widgets->OSFormatPartitionEntry = yon_gtk_builder_get_widget(builder,"OSFormatPartitionEntry");
widgets->OSFilesystemTypeCombo = yon_gtk_builder_get_widget(builder,"OSFilesystemTypeCombo");
widgets->OSFormatFSMarkEntry = yon_gtk_builder_get_widget(builder,"OSFormatFSMarkEntry");
widgets->OSFormatEncryptionCombo = yon_gtk_builder_get_widget(builder,"OSFormatEncryptionCombo");
widgets->OSFormatEncryptionEntry = yon_gtk_builder_get_widget(builder,"OSFormatEncryptionEntry");
widgets->UserdataDevicesTree = yon_gtk_builder_get_widget(builder,"UserdataDevicesTree");
widgets->UserdataSysSectionTree = yon_gtk_builder_get_widget(builder,"UserdataSysSectionTree");
widgets->GpartedUserdataButton = yon_gtk_builder_get_widget(builder,"UserdataGpartedButton");
widgets->UserdataFormatSwitch = yon_gtk_builder_get_widget(builder,"UserdataFormatSwitch");
widgets->UserdataFormatSizeSpin = yon_gtk_builder_get_widget(builder,"UserdataFormatSizeSpin");
widgets->UserdataFormatSizeCombo = yon_gtk_builder_get_widget(builder,"UserdataFormatSizeCombo");
widgets->UserdataFormatPartitionEntry = yon_gtk_builder_get_widget(builder,"UserdataFormatPartitionEntry");
widgets->UserdataFilesystemTypeCombo = yon_gtk_builder_get_widget(builder,"UserdataFilesystemTypeCombo");
widgets->UserdataFormatFSMarkEntry = yon_gtk_builder_get_widget(builder,"UserdataFormatFSMarkEntry");
widgets->UserdataFormatEncryptionCombo = yon_gtk_builder_get_widget(builder,"UserdataFormatEncryptionCombo");
widgets->UserdataFormatEncryptionEntry = yon_gtk_builder_get_widget(builder,"UserdataFormatEncryptionEntry");
widgets->LanguagesFilter = GTK_TREE_MODEL(gtk_builder_get_object(builder,"LanguagesFilter"));
widgets->LayoutsFilter = GTK_TREE_MODEL(gtk_builder_get_object(builder,"LayoutsFilter"));
widgets->LayoutList = GTK_TREE_STORE(gtk_builder_get_object(builder,"LayoutList"));
widgets->LanguageCombo=yon_gtk_builder_get_widget(builder,"LanguageCombo");
widgets->RegionCombo=yon_gtk_builder_get_widget(builder,"RegionCombo");
widgets->ZoneCombo=yon_gtk_builder_get_widget(builder,"ZoneCombo");
widgets->AvailableLanguagesEntry=yon_gtk_builder_get_widget(builder,"AvailableLanguagesEntry");
widgets->AvailableLanguagesButton=yon_gtk_builder_get_widget(builder,"AvailableLanguagesButton");
widgets->LanguagesCombo=yon_gtk_builder_get_widget(builder,"LanguagesCombo");
widgets->KeyboardModelCombo=yon_gtk_builder_get_widget(builder,"KeyboardModelCombo");
widgets->LayoutBindingCombo=yon_gtk_builder_get_widget(builder,"LayoutBindingCombo");
widgets->LayoutTree=yon_gtk_builder_get_widget(builder,"LayoutTree");
widgets->AddButton=yon_gtk_builder_get_widget(builder,"AddButton");
widgets->RemoveButton=yon_gtk_builder_get_widget(builder,"RemoveButton");
widgets->RegionSensitiveSwitch = yon_gtk_builder_get_widget(builder,"RegionSensitiveSwitch");
widgets->UserImage=yon_gtk_builder_get_widget(builder,"UserImage");
widgets->UserRootNameEntry=yon_gtk_builder_get_widget(builder,"UserRootNameEntry");
widgets->UserRootLoginEntry=yon_gtk_builder_get_widget(builder,"UserRootLoginEntry");
widgets->UserRootPasswordCombo=yon_gtk_builder_get_widget(builder,"UserRootPasswordCombo");
widgets->UserRootPasswordEntry=yon_gtk_builder_get_widget(builder,"UserRootPasswordEntry");
widgets->UserRootPasswordButton=yon_gtk_builder_get_widget(builder,"UserRootPasswordButton");
widgets->UserAutologinSwitch=yon_gtk_builder_get_widget(builder,"UserAutologinSwitch");
widgets->UserAddBox=yon_gtk_builder_get_widget(builder,"UserAddBox");
widgets->UserAddButton=yon_gtk_builder_get_widget(builder,"UserAddButton");
widgets->HotnameEntry=yon_gtk_builder_get_widget(builder,"HotnameEntry");
widgets->mainSettingsButton=yon_gtk_builder_get_widget(builder,"mainSettingsButton");
widgets->RegionImage = yon_gtk_builder_get_widget(builder,"RegionImage");
widgets->RegionBox = yon_gtk_builder_get_widget(builder,"RegionBox");
widgets->RegionAspect = yon_gtk_builder_get_widget(builder,"RegionAspect");
widgets->KeyboardImage = yon_gtk_builder_get_widget(builder,"KeyboardImage");
widgets->KeyboardBox = yon_gtk_builder_get_widget(builder,"KeyboardBox");
widgets->KeyboardLayoutChosenCell = GTK_CELL_RENDERER(gtk_builder_get_object(builder,"KeyboardLayoutChosenCell"));
widgets->AdditionalSoftwareList = GTK_LIST_STORE(gtk_builder_get_object(builder,"AdditionalSoftwareList"));
widgets->AdditionalSoftwareTree = yon_gtk_builder_get_widget(builder,"AdditionalSoftwareTree");
widgets->AdditionalSoftwareCell = GTK_CELL_RENDERER(gtk_builder_get_object(builder,"AdditionalSoftwareCell"));
widgets->InstallationProgress = yon_gtk_builder_get_widget(builder,"InstallationProgress");
widgets->InstallationLabel = yon_gtk_builder_get_widget(builder,"InstallationLabel");
widgets->ReadShortLogButton = yon_gtk_builder_get_widget(builder,"ReadShortLogButton");
widgets->PackageInstallationProgress = yon_gtk_builder_get_widget(builder,"PackageInstallationProgress");
widgets->PackageInstallationLabel = yon_gtk_builder_get_widget(builder,"PackageInstallationLabel");
widgets->ReadFullLogButton = yon_gtk_builder_get_widget(builder,"ReadFullLogButton");
widgets->KernelListBox = yon_gtk_builder_get_widget(builder,"KernelListBox");
widgets->KernelInstallLabel = yon_gtk_builder_get_widget(builder,"KernelInstallLabel");
widgets->KernelEnableLabel = yon_gtk_builder_get_widget(builder,"KernelEnableLabel");
widgets->KernelNameLabel = yon_gtk_builder_get_widget(builder,"KernelNameLabel");
widgets->KernelTagsLabel = yon_gtk_builder_get_widget(builder,"KernelTagsLabel");
widgets->KernelModulesLabel = yon_gtk_builder_get_widget(builder,"KernelModulesLabel");
widgets->KernelDescriptionLabel = yon_gtk_builder_get_widget(builder,"KernelDescriptionLabel");
widgets->KernelSizeGroup = GTK_SIZE_GROUP(gtk_builder_get_object(builder,"TagsSizeGroup"));
widgets->KernelAddonListBox = yon_gtk_builder_get_widget(builder,"KernelAddonListBox");
widgets->KernelAddonInstallLabel = yon_gtk_builder_get_widget(builder,"KernelAddonInstallLabel");
widgets->KernelAddonNameLabel = yon_gtk_builder_get_widget(builder,"KernelAddonNameLabel");
widgets->KernelAddonModulesLabel = yon_gtk_builder_get_widget(builder,"KernelAddonModulesLabel");
widgets->KernelAddonDescriptionLabel = yon_gtk_builder_get_widget(builder,"KernelAddonDescriptionLabel");
widgets->OSSoftwareListBox = yon_gtk_builder_get_widget(builder,"OSSoftwareListBox");
widgets->OSSoftwareInstallLabel = yon_gtk_builder_get_widget(builder,"OSSoftwareInstallLabel");
widgets->OSSoftwareNameLabel = yon_gtk_builder_get_widget(builder,"OSSoftwareNameLabel");
widgets->OSSoftwareTagsLabel = yon_gtk_builder_get_widget(builder,"OSSoftwareTagsLabel");
widgets->OSSoftwareDescriptionLabel = yon_gtk_builder_get_widget(builder,"OSSoftwareDescriptionLabel");
widgets->PacmanSoftwareSearchEntry = yon_gtk_builder_get_widget(builder,"PacmanSoftwareSearchEntry");
widgets->PacmanSoftwareStatusImage = yon_gtk_builder_get_widget(builder,"PacmanSoftwareStatusImage");
widgets->PacmanSoftwareStatusLabel = yon_gtk_builder_get_widget(builder,"PacmanSoftwareStatusLabel");
widgets->PacmanSoftwareStatusButton = yon_gtk_builder_get_widget(builder,"PacmanSoftwareStatusButton");
widgets->PacmanLoadingOverlay = yon_gtk_builder_get_widget(builder,"PacmanLoadingOverlay");
widgets->PacmanSoftwareAllPackagesTree = yon_gtk_builder_get_widget(builder,"PacmanSoftwareAllPackagesTree");
widgets->PacmanSoftwareAllList = GTK_LIST_STORE(gtk_builder_get_object(builder,"PacmanSoftwareAllList"));
widgets->PacmanSoftwareAllCell = GTK_CELL_RENDERER(gtk_builder_get_object(builder,"PacmanSoftwareAllCell"));
widgets->PacmanSoftwareChosenPackagesTree = yon_gtk_builder_get_widget(builder,"PacmanSoftwareChosenPackagesTree");
widgets->PacmanSoftwareChosenList = GTK_LIST_STORE(gtk_builder_get_object(builder,"PacmanSoftwareChosenList"));
widgets->PacmanSoftwareChosenCell = GTK_CELL_RENDERER(gtk_builder_get_object(builder,"PacmanSoftwareChosenCell"));
widgets->StartupImage = yon_gtk_builder_get_widget(builder,"StartupImage");
widgets->StartupServicesTree = yon_gtk_builder_get_widget(builder,"StartupServicesTree");
widgets->StartupServicesAddButton = yon_gtk_builder_get_widget(builder,"StartupServicesAddButton");
widgets->StartupServicesEditButton = yon_gtk_builder_get_widget(builder,"StartupServicesEditButton");
widgets->StartupServicesRemoveButton = yon_gtk_builder_get_widget(builder,"StartupServicesRemoveButton");
widgets->StartupChosenCell = GTK_CELL_RENDERER(gtk_builder_get_object(builder,"StartupChosenCell"));
widgets->StartupList = GTK_LIST_STORE(gtk_builder_get_object(builder,"StartupList"));
widgets->BootloaderImage = yon_gtk_builder_get_widget(builder,"BootloaderImage");
widgets->BootloadTimerSwitch = yon_gtk_builder_get_widget(builder,"BootloadTimerSwitch");
widgets->BootloadTimerSpin = yon_gtk_builder_get_widget(builder,"BootloadTimerSpin");
widgets->BootloadDefaultOSEntry = yon_gtk_builder_get_widget(builder,"BootloadDefaultOSEntry");
widgets->BootloadDefaulOSButton = yon_gtk_builder_get_widget(builder,"BootloadDefaulOSButton");
widgets->BootloadNoPasswordSwitch = yon_gtk_builder_get_widget(builder,"BootloadNoPasswordSwitch");
widgets->BootloadUserTree = yon_gtk_builder_get_widget(builder,"BootloadUserTree");
widgets->BootloadUserAddButton = yon_gtk_builder_get_widget(builder,"BootloadUserAddButton");
widgets->BootloadUserRemoveButton = yon_gtk_builder_get_widget(builder,"BootloadUserRemoveButton");
widgets->BootloadUsersList = GTK_LIST_STORE(gtk_builder_get_object(builder,"BootloadUsersList"));
widgets->NetworkImage = yon_gtk_builder_get_widget(builder,"NetworkImage");
widgets->NetworkDomainSwitch = yon_gtk_builder_get_widget(builder,"NetworkDomainSwitch");
widgets->NetworkDomainNameEntry = yon_gtk_builder_get_widget(builder,"NetworkDomainNameEntry");
widgets->NetworkDomainAdminEntry = yon_gtk_builder_get_widget(builder,"NetworkDomainAdminEntry");
widgets->NetworkDomainPasswordEntry = yon_gtk_builder_get_widget(builder,"NetworkDomainPasswordEntry");
widgets->NetworkNTPServerSwitch = yon_gtk_builder_get_widget(builder,"NetworkNTPServerSwitch");
widgets->NetworkNTPCombo = yon_gtk_builder_get_widget(builder,"NetworkNTPCombo");
widgets->NetworkNTPEntry = yon_gtk_builder_get_widget(builder,"NetworkNTPEntry");
widgets->NetworkConnectionsBox = yon_gtk_builder_get_widget(builder,"NetworkConnectionsBox");
widgets->NetworkConnectionsAddButton = yon_gtk_builder_get_widget(builder,"NetworkConnectionsAddButton");
widgets->HostnameSensitiveSwitch = yon_gtk_builder_get_widget(builder,"HostnameSensitiveSwitch");
widgets->AutoHostnameCheck=yon_gtk_builder_get_widget(builder,"AutoHostnameCheck");
widgets->network_connections = NULL;
widgets->pacmanchosen = g_hash_table_new_full(g_str_hash,g_str_equal,free,NULL);
main_config.status_box = widgets->StatusBox;
widgets->DevicesList=GTK_LIST_STORE(gtk_builder_get_object(builder,"DevicesList"));
widgets->LanguagesList=GTK_LIST_STORE(gtk_builder_get_object(builder,"LanguagesList"));
widgets->PartitionsList = GTK_LIST_STORE(gtk_builder_get_object(builder,"PartitionsList"));
main_config.kernel_unchosen_radio = yon_gtk_builder_get_widget(builder,"KernelUnchosenRadio");
widgets->MainWindow=yon_gtk_builder_get_widget(builder,"MainWindow");
widgets->StatusBox = yon_gtk_builder_get_widget(builder,"StatusBox");
widgets->StatusBox2 = yon_gtk_builder_get_widget(builder,"StatusBox2");
widgets->Notebook = yon_gtk_builder_get_widget(builder,"Notebook");
widgets->MainSpinner=yon_gtk_builder_get_widget(builder,"MainSpinner");
widgets->EnableVNCMenuItem = yon_gtk_builder_get_widget(builder,"EnableVNCMenuItem");
widgets->DocumentationMenuItem = yon_ubl_menu_item_documentation_new(DOCUMENTATION_LABEL);
widgets->AboutMenuItem = yon_ubl_menu_item_about_new(ABOUT_LABEL);
widgets->LoadGlobalConfigurationMenuItem = yon_gtk_builder_get_widget(builder,"LoadGlobalConfigurationMenuItem");
widgets->LoadLocalConfigurationMenuItem = yon_gtk_builder_get_widget(builder,"LoadLocalConfigurationMenuItem");
widgets->LoadExternalConfigurationMenuItem = yon_gtk_builder_get_widget(builder,"LoadExternalConfigurationMenuItem");
widgets->SaveGlobalLocalConfigurationMenuItem = yon_gtk_builder_get_widget(builder,"SaveGlobalLocalConfigurationMenuItem");
widgets->SaveGlobalConfigurationMenuItem = yon_gtk_builder_get_widget(builder,"SaveGlobalConfigurationMenuItem");
widgets->SaveLocalConfigurationMenuItem = yon_gtk_builder_get_widget(builder,"SaveLocalConfigurationMenuItem");
widgets->SaveExternalConfigurationMenuItem = yon_gtk_builder_get_widget(builder,"SaveExternalConfigurationMenuItem");
widgets->SlidesImage = yon_gtk_builder_get_widget(builder,"SlidesImage");
widgets->LicenceLabel = yon_gtk_builder_get_widget(builder,"LicenceLabel");
widgets->menu1=yon_gtk_builder_get_widget(builder,"menu1");
widgets->menu2=yon_gtk_builder_get_widget(builder,"menu2");
widgets->ConfigurationModeMenuItem = yon_gtk_builder_get_widget(builder,"ConfigurationModeMenuItem");
widgets->CancelInstallButton=yon_gtk_builder_get_widget(builder,"CancelInstallButton");
widgets->BackButton=yon_gtk_builder_get_widget(builder,"BackButton");
widgets->NextButton=yon_gtk_builder_get_widget(builder,"NextButton");
widgets->WelcomeToggle=yon_gtk_builder_get_widget(builder,"WelcomeToggle");
widgets->LicenceToggle=yon_gtk_builder_get_widget(builder,"LicenceToggle");
widgets->LocationToggle=yon_gtk_builder_get_widget(builder,"LocationToggle");
widgets->KeyboardToggle=yon_gtk_builder_get_widget(builder,"KeyboardToggle");
widgets->SectionsToggle=yon_gtk_builder_get_widget(builder,"SectionsToggle");
widgets->UsersToggle=yon_gtk_builder_get_widget(builder,"UsersToggle");
widgets->SummaryToggle=yon_gtk_builder_get_widget(builder,"SummaryToggle");
widgets->CompletionToggle=yon_gtk_builder_get_widget(builder,"CompletionToggle");
widgets->InstallationToggle=yon_gtk_builder_get_widget(builder,"InstallationToggle");
widgets->StartScenarioButton=yon_gtk_builder_get_widget(builder,"StartScenarioButton");
widgets->SourceButton=yon_gtk_builder_get_widget(builder,"SourceButton");
widgets->SkipInstallationButton=yon_gtk_builder_get_widget(builder,"SkipInstallationButton");
widgets->InstallationRadio=yon_gtk_builder_get_widget(builder,"InstallationRadio");
widgets->InstallationNearRadio=yon_gtk_builder_get_widget(builder,"InstallationNearRadio");
widgets->InstallationLinuxRadio=yon_gtk_builder_get_widget(builder,"InstallationLinuxRadio");
widgets->InstallationWindowsRadio=yon_gtk_builder_get_widget(builder,"InstallationWindowsRadio");
widgets->InstallationOptionsRadio=yon_gtk_builder_get_widget(builder,"InstallationOptionsRadio");
widgets->GrubInstallRadio = yon_gtk_builder_get_widget(builder,"GrubInstallRadio");
widgets->GrubUpdateRadio = yon_gtk_builder_get_widget(builder,"GrubUpdateRadio");
widgets->SeparateRadio = yon_gtk_builder_get_widget(builder,"SeparateRadio");
widgets->OSRadio = yon_gtk_builder_get_widget(builder,"OSRadio");
widgets->UserDataOnlyRadio = yon_gtk_builder_get_widget(builder,"UserDataOnlyRadio");
widgets->CommonInstallationDevicesTree = yon_gtk_builder_get_widget(builder,"CommonInstallationDevicesTree");
widgets->CommonInstallationFilesystemTypeCombo = yon_gtk_builder_get_widget(builder,"CommonInstallationFilesystemTypeCombo");
widgets->CommonInstallationSectionNameEntry = yon_gtk_builder_get_widget(builder,"CommonInstallationSectionNameEntry");
widgets->CommonFormatSwitch = yon_gtk_builder_get_widget(builder,"CommonFormatSwitch");
widgets->GpartedCommonButton = yon_gtk_builder_get_widget(builder,"GpartedCommonButton");
widgets->SamePlaceDeviceTree = yon_gtk_builder_get_widget(builder,"SamePlaceDeviceTree");
widgets->SamePlacePartTree = yon_gtk_builder_get_widget(builder,"SamePlacePartTree");
widgets->SameInstallationFormatSwitch = yon_gtk_builder_get_widget(builder,"SameInstallationFormatSwitch");
widgets->SameInstallationFormatRevealer = yon_gtk_builder_get_widget(builder,"SameInstallationFormatRevealer");
widgets->SameInstallationFilesystemTypeCombo = yon_gtk_builder_get_widget(builder,"SameInstallationFilesystemTypeCombo");
widgets->SameInstallationSectionNameEntry = yon_gtk_builder_get_widget(builder,"SameInstallationSectionNameEntry");
widgets->GpartedSameButton = yon_gtk_builder_get_widget(builder,"GpartedSameButton");
widgets->NextInstallationFilesystemTypeCombo = yon_gtk_builder_get_widget(builder,"NextInstallationFilesystemTypeCombo");
widgets->NextInstallationFormatSwitch = yon_gtk_builder_get_widget(builder,"NextInstallationFormatSwitch");
widgets->NextInstallationFormatRevealer = yon_gtk_builder_get_widget(builder,"NextInstallationFormatRevealer");
widgets->NextInstallationSectionNameEntry = yon_gtk_builder_get_widget(builder,"NextInstallationSectionNameEntry");
widgets->NextInstallationSizeSpin = yon_gtk_builder_get_widget(builder,"NextInstallationFormatSizeSpin");
widgets->NextInstallationSizeTypeSpin = yon_gtk_builder_get_widget(builder,"NextInstallationFormatSizeCombo");
widgets->NextInstallationSysDevicesTree = yon_gtk_builder_get_widget(builder,"NextInstallationSysDevicesTree");
widgets->NextInstallationSysSectionTree = yon_gtk_builder_get_widget(builder,"NextInstallationSysSectionTree");
widgets->GpartedNextInstallationButton = yon_gtk_builder_get_widget(builder,"GpartedNextInstallationButton");
widgets->AdvancedDeviceChosenCell = GTK_CELL_RENDERER(gtk_builder_get_object(builder,"AdvancedDeviceChosenCell"));
widgets->AdvancedPartChosenCell = GTK_CELL_RENDERER(gtk_builder_get_object(builder,"AdvancedPartChosenCell"));
widgets->AdvancedDeviceTree = yon_gtk_builder_get_widget(builder,"AdvancedDeviceTree");
widgets->AdvancedVirtualDeviceCombo = yon_gtk_builder_get_widget(builder,"AdvancedVirtualDeviceCombo");
widgets->AdvancedPartitionTree = yon_gtk_builder_get_widget(builder,"AdvancedPartitionTree");
widgets->AdvancedPartitionAddBox = yon_gtk_builder_get_widget(builder,"AdvancedPartitionAddBox");
widgets->AdvancedAddButton = yon_gtk_builder_get_widget(builder,"AdvancedAddButton");
widgets->AdvancedLoadTypeSwitch = yon_gtk_builder_get_widget(builder,"AdvancedLoadTypeSwitch");
widgets->AdvancedBiosSectorSwitch = yon_gtk_builder_get_widget(builder,"AdvancedBiosSectorSwitch");
widgets->AdvancedEFISwitch = yon_gtk_builder_get_widget(builder,"AdvancedEFISwitch");
widgets->AdvancedSwapSwitch = yon_gtk_builder_get_widget(builder,"AdvancedSwapSwitch");
widgets->AdvancedSwapAutoSwitch = yon_gtk_builder_get_widget(builder,"AdvancedSwapAutoSwitch");
widgets->AdvancedSwapRamSwitch = yon_gtk_builder_get_widget(builder,"AdvancedSwapRamSwitch");
widgets->AdvancedSwapFixedSwitch = yon_gtk_builder_get_widget(builder,"AdvancedSwapFixedSwitch");
widgets->AdvancedSwapFixedSizeSwitch = yon_gtk_builder_get_widget(builder,"AdvancedSwapFixedSizeSwitch");
widgets->AdvancedSwapFixedSpin = yon_gtk_builder_get_widget(builder,"AdvancedSwapFixedSpin");
widgets->AdvancedSwapRevealer = yon_gtk_builder_get_widget(builder,"AdvancedSwapRevealer");
widgets->AdvancedLoadTypeRevealer = yon_gtk_builder_get_widget(builder,"AdvancedLoadTypeRevealer");
widgets->advanced_partition_order = g_sequence_new(NULL);
widgets->GrubInstallDevicesTree = yon_gtk_builder_get_widget(builder,"GrubInstallDevicesTree");
widgets->GrubInstallPartitionTree = yon_gtk_builder_get_widget(builder,"GrubInstallPartitionTree");
widgets->GpartedGrubInstallButton = yon_gtk_builder_get_widget(builder,"GpartedGrubInstallButton");
widgets->GrubUpdateDevicesTree = yon_gtk_builder_get_widget(builder,"GrubUpdateDevicesTree");
widgets->GrubUpdatePartitionTree = yon_gtk_builder_get_widget(builder,"GrubUpdatePartitionTree");
widgets->GpartedGrubUpdateButton = yon_gtk_builder_get_widget(builder,"GpartedGrubUpdateButton");
widgets->OSDevicesTree = yon_gtk_builder_get_widget(builder,"OSDevicesTree");
widgets->OSSysSectionTree = yon_gtk_builder_get_widget(builder,"OSSysSectionTree");
widgets->GpartedOSButton = yon_gtk_builder_get_widget(builder,"GpartedOSButton");
widgets->OSFormatSwitch = yon_gtk_builder_get_widget(builder,"OSFormatSwitch");
widgets->OSFormatSizeSpin = yon_gtk_builder_get_widget(builder,"OSFormatSizeSpin");
widgets->OSFormatSizeCombo = yon_gtk_builder_get_widget(builder,"OSFormatSizeCombo");
widgets->OSFormatPartitionEntry = yon_gtk_builder_get_widget(builder,"OSFormatPartitionEntry");
widgets->OSFilesystemTypeCombo = yon_gtk_builder_get_widget(builder,"OSFilesystemTypeCombo");
widgets->OSFormatFSMarkEntry = yon_gtk_builder_get_widget(builder,"OSFormatFSMarkEntry");
widgets->OSFormatEncryptionCombo = yon_gtk_builder_get_widget(builder,"OSFormatEncryptionCombo");
widgets->OSFormatEncryptionEntry = yon_gtk_builder_get_widget(builder,"OSFormatEncryptionEntry");
widgets->UserdataDevicesTree = yon_gtk_builder_get_widget(builder,"UserdataDevicesTree");
widgets->UserdataSysSectionTree = yon_gtk_builder_get_widget(builder,"UserdataSysSectionTree");
widgets->GpartedUserdataButton = yon_gtk_builder_get_widget(builder,"UserdataGpartedButton");
widgets->UserdataFormatSwitch = yon_gtk_builder_get_widget(builder,"UserdataFormatSwitch");
widgets->UserdataFormatSizeSpin = yon_gtk_builder_get_widget(builder,"UserdataFormatSizeSpin");
widgets->UserdataFormatSizeCombo = yon_gtk_builder_get_widget(builder,"UserdataFormatSizeCombo");
widgets->UserdataFormatPartitionEntry = yon_gtk_builder_get_widget(builder,"UserdataFormatPartitionEntry");
widgets->UserdataFilesystemTypeCombo = yon_gtk_builder_get_widget(builder,"UserdataFilesystemTypeCombo");
widgets->UserdataFormatFSMarkEntry = yon_gtk_builder_get_widget(builder,"UserdataFormatFSMarkEntry");
widgets->UserdataFormatEncryptionCombo = yon_gtk_builder_get_widget(builder,"UserdataFormatEncryptionCombo");
widgets->UserdataFormatEncryptionEntry = yon_gtk_builder_get_widget(builder,"UserdataFormatEncryptionEntry");
widgets->LanguagesFilter = GTK_TREE_MODEL(gtk_builder_get_object(builder,"LanguagesFilter"));
widgets->LayoutsFilter = GTK_TREE_MODEL(gtk_builder_get_object(builder,"LayoutsFilter"));
widgets->LayoutList = GTK_TREE_STORE(gtk_builder_get_object(builder,"LayoutList"));
widgets->LanguagesTree=yon_gtk_builder_get_widget(builder,"LanguagesTree");
widgets->CountryLanguagesTree=yon_gtk_builder_get_widget(builder,"CountryLanguagesTree");
widgets->InstallerCountryList=GTK_LIST_STORE(gtk_builder_get_object(builder,"InstallerCountryList"));
widgets->InstallerCountryFilter=GTK_TREE_MODEL(gtk_builder_get_object(builder,"InstallerCountryFilter"));
widgets->InstallerLanguageList=GTK_LIST_STORE(gtk_builder_get_object(builder,"InstallerLanguageList"));
// widgets->LanguageCombo=yon_gtk_builder_get_widget(builder,"LanguageCombo");
widgets->RegionCombo=yon_gtk_builder_get_widget(builder,"RegionCombo");
widgets->ZoneCombo=yon_gtk_builder_get_widget(builder,"ZoneCombo");
widgets->AvailableLanguagesEntry=yon_gtk_builder_get_widget(builder,"AvailableLanguagesEntry");
widgets->AvailableLanguagesButton=yon_gtk_builder_get_widget(builder,"AvailableLanguagesButton");
widgets->LanguagesCombo=yon_gtk_builder_get_widget(builder,"LanguagesCombo");
widgets->KeyboardModelCombo=yon_gtk_builder_get_widget(builder,"KeyboardModelCombo");
widgets->LayoutBindingCombo=yon_gtk_builder_get_widget(builder,"LayoutBindingCombo");
widgets->LayoutTree=yon_gtk_builder_get_widget(builder,"LayoutTree");
widgets->AddButton=yon_gtk_builder_get_widget(builder,"AddButton");
widgets->RemoveButton=yon_gtk_builder_get_widget(builder,"RemoveButton");
widgets->RegionSensitiveSwitch = yon_gtk_builder_get_widget(builder,"RegionSensitiveSwitch");
widgets->UserImage=yon_gtk_builder_get_widget(builder,"UserImage");
widgets->UserRootNameEntry=yon_gtk_builder_get_widget(builder,"UserRootNameEntry");
widgets->UserRootLoginEntry=yon_gtk_builder_get_widget(builder,"UserRootLoginEntry");
widgets->UserRootPasswordCombo=yon_gtk_builder_get_widget(builder,"UserRootPasswordCombo");
widgets->UserRootPasswordEntry=yon_gtk_builder_get_widget(builder,"UserRootPasswordEntry");
widgets->UserRootPasswordButton=yon_gtk_builder_get_widget(builder,"UserRootPasswordButton");
widgets->UserAutologinSwitch=yon_gtk_builder_get_widget(builder,"UserAutologinSwitch");
widgets->UserAddBox=yon_gtk_builder_get_widget(builder,"UserAddBox");
widgets->UserAddButton=yon_gtk_builder_get_widget(builder,"UserAddButton");
widgets->HotnameEntry=yon_gtk_builder_get_widget(builder,"HotnameEntry");
widgets->mainSettingsButton=yon_gtk_builder_get_widget(builder,"mainSettingsButton");
widgets->RegionImage = yon_gtk_builder_get_widget(builder,"RegionImage");
widgets->RegionBox = yon_gtk_builder_get_widget(builder,"RegionBox");
widgets->RegionAspect = yon_gtk_builder_get_widget(builder,"RegionAspect");
widgets->KeyboardImage = yon_gtk_builder_get_widget(builder,"KeyboardImage");
widgets->KeyboardBox = yon_gtk_builder_get_widget(builder,"KeyboardBox");
widgets->KeyboardLayoutChosenCell = GTK_CELL_RENDERER(gtk_builder_get_object(builder,"KeyboardLayoutChosenCell"));
widgets->AdditionalSoftwareList = GTK_LIST_STORE(gtk_builder_get_object(builder,"AdditionalSoftwareList"));
widgets->AdditionalSoftwareTree = yon_gtk_builder_get_widget(builder,"AdditionalSoftwareTree");
widgets->AdditionalSoftwareCell = GTK_CELL_RENDERER(gtk_builder_get_object(builder,"AdditionalSoftwareCell"));
widgets->InstallationProgress = yon_gtk_builder_get_widget(builder,"InstallationProgress");
widgets->InstallationLabel = yon_gtk_builder_get_widget(builder,"InstallationLabel");
widgets->ReadShortLogButton = yon_gtk_builder_get_widget(builder,"ReadShortLogButton");
widgets->PackageInstallationProgress = yon_gtk_builder_get_widget(builder,"PackageInstallationProgress");
widgets->PackageInstallationLabel = yon_gtk_builder_get_widget(builder,"PackageInstallationLabel");
widgets->ReadFullLogButton = yon_gtk_builder_get_widget(builder,"ReadFullLogButton");
widgets->KernelListBox = yon_gtk_builder_get_widget(builder,"KernelListBox");
widgets->KernelInstallLabel = yon_gtk_builder_get_widget(builder,"KernelInstallLabel");
widgets->KernelEnableLabel = yon_gtk_builder_get_widget(builder,"KernelEnableLabel");
widgets->KernelNameLabel = yon_gtk_builder_get_widget(builder,"KernelNameLabel");
widgets->KernelTagsLabel = yon_gtk_builder_get_widget(builder,"KernelTagsLabel");
widgets->KernelModulesLabel = yon_gtk_builder_get_widget(builder,"KernelModulesLabel");
widgets->KernelDescriptionLabel = yon_gtk_builder_get_widget(builder,"KernelDescriptionLabel");
widgets->KernelSizeGroup = GTK_SIZE_GROUP(gtk_builder_get_object(builder,"TagsSizeGroup"));
widgets->KernelAddonListBox = yon_gtk_builder_get_widget(builder,"KernelAddonListBox");
widgets->KernelAddonInstallLabel = yon_gtk_builder_get_widget(builder,"KernelAddonInstallLabel");
widgets->KernelAddonNameLabel = yon_gtk_builder_get_widget(builder,"KernelAddonNameLabel");
widgets->KernelAddonModulesLabel = yon_gtk_builder_get_widget(builder,"KernelAddonModulesLabel");
widgets->KernelAddonDescriptionLabel = yon_gtk_builder_get_widget(builder,"KernelAddonDescriptionLabel");
widgets->OSSoftwareListBox = yon_gtk_builder_get_widget(builder,"OSSoftwareListBox");
widgets->OSSoftwareInstallLabel = yon_gtk_builder_get_widget(builder,"OSSoftwareInstallLabel");
widgets->OSSoftwareNameLabel = yon_gtk_builder_get_widget(builder,"OSSoftwareNameLabel");
widgets->OSSoftwareTagsLabel = yon_gtk_builder_get_widget(builder,"OSSoftwareTagsLabel");
widgets->OSSoftwareDescriptionLabel = yon_gtk_builder_get_widget(builder,"OSSoftwareDescriptionLabel");
widgets->PacmanSoftwareSearchEntry = yon_gtk_builder_get_widget(builder,"PacmanSoftwareSearchEntry");
widgets->PacmanSoftwareStatusImage = yon_gtk_builder_get_widget(builder,"PacmanSoftwareStatusImage");
widgets->PacmanSoftwareStatusLabel = yon_gtk_builder_get_widget(builder,"PacmanSoftwareStatusLabel");
widgets->PacmanSoftwareStatusButton = yon_gtk_builder_get_widget(builder,"PacmanSoftwareStatusButton");
widgets->PacmanLoadingOverlay = yon_gtk_builder_get_widget(builder,"PacmanLoadingOverlay");
widgets->PacmanSoftwareAllPackagesTree = yon_gtk_builder_get_widget(builder,"PacmanSoftwareAllPackagesTree");
widgets->PacmanSoftwareAllList = GTK_LIST_STORE(gtk_builder_get_object(builder,"PacmanSoftwareAllList"));
widgets->PacmanSoftwareAllCell = GTK_CELL_RENDERER(gtk_builder_get_object(builder,"PacmanSoftwareAllCell"));
widgets->PacmanSoftwareChosenPackagesTree = yon_gtk_builder_get_widget(builder,"PacmanSoftwareChosenPackagesTree");
widgets->PacmanSoftwareChosenList = GTK_LIST_STORE(gtk_builder_get_object(builder,"PacmanSoftwareChosenList"));
widgets->PacmanSoftwareChosenCell = GTK_CELL_RENDERER(gtk_builder_get_object(builder,"PacmanSoftwareChosenCell"));
widgets->StartupImage = yon_gtk_builder_get_widget(builder,"StartupImage");
widgets->StartupServicesTree = yon_gtk_builder_get_widget(builder,"StartupServicesTree");
widgets->StartupServicesAddButton = yon_gtk_builder_get_widget(builder,"StartupServicesAddButton");
widgets->StartupServicesEditButton = yon_gtk_builder_get_widget(builder,"StartupServicesEditButton");
widgets->StartupServicesRemoveButton = yon_gtk_builder_get_widget(builder,"StartupServicesRemoveButton");
widgets->StartupChosenCell = GTK_CELL_RENDERER(gtk_builder_get_object(builder,"StartupChosenCell"));
widgets->StartupList = GTK_LIST_STORE(gtk_builder_get_object(builder,"StartupList"));
widgets->BootloaderImage = yon_gtk_builder_get_widget(builder,"BootloaderImage");
widgets->BootloadTimerSwitch = yon_gtk_builder_get_widget(builder,"BootloadTimerSwitch");
widgets->BootloadTimerSpin = yon_gtk_builder_get_widget(builder,"BootloadTimerSpin");
widgets->BootloadDefaultOSEntry = yon_gtk_builder_get_widget(builder,"BootloadDefaultOSEntry");
widgets->BootloadDefaulOSButton = yon_gtk_builder_get_widget(builder,"BootloadDefaulOSButton");
widgets->BootloadNoPasswordSwitch = yon_gtk_builder_get_widget(builder,"BootloadNoPasswordSwitch");
widgets->BootloadUserTree = yon_gtk_builder_get_widget(builder,"BootloadUserTree");
widgets->BootloadUserAddButton = yon_gtk_builder_get_widget(builder,"BootloadUserAddButton");
widgets->BootloadUserRemoveButton = yon_gtk_builder_get_widget(builder,"BootloadUserRemoveButton");
widgets->BootloadUsersList = GTK_LIST_STORE(gtk_builder_get_object(builder,"BootloadUsersList"));
widgets->NetworkImage = yon_gtk_builder_get_widget(builder,"NetworkImage");
widgets->NetworkDomainSwitch = yon_gtk_builder_get_widget(builder,"NetworkDomainSwitch");
widgets->NetworkDomainNameEntry = yon_gtk_builder_get_widget(builder,"NetworkDomainNameEntry");
widgets->NetworkDomainAdminEntry = yon_gtk_builder_get_widget(builder,"NetworkDomainAdminEntry");
widgets->NetworkDomainPasswordEntry = yon_gtk_builder_get_widget(builder,"NetworkDomainPasswordEntry");
widgets->NetworkNTPServerSwitch = yon_gtk_builder_get_widget(builder,"NetworkNTPServerSwitch");
widgets->NetworkNTPCombo = yon_gtk_builder_get_widget(builder,"NetworkNTPCombo");
widgets->NetworkNTPEntry = yon_gtk_builder_get_widget(builder,"NetworkNTPEntry");
widgets->NetworkConnectionsBox = yon_gtk_builder_get_widget(builder,"NetworkConnectionsBox");
widgets->NetworkConnectionsAddButton = yon_gtk_builder_get_widget(builder,"NetworkConnectionsAddButton");
widgets->HostnameSensitiveSwitch = yon_gtk_builder_get_widget(builder,"HostnameSensitiveSwitch");
widgets->AutoHostnameCheck=yon_gtk_builder_get_widget(builder,"AutoHostnameCheck");
widgets->network_connections = NULL;
widgets->pacmanchosen = g_hash_table_new_full(g_str_hash,g_str_equal,free,NULL);
main_config.status_box = widgets->StatusBox;
}
g_signal_connect(G_OBJECT(widgets->MainWindow),"delete-event",G_CALLBACK(on_yon_exit),widgets);
GtkWidget *menu = yon_gtk_builder_get_widget(builder,"menu2");
@ -645,11 +832,6 @@ main_window *yon_main_window_complete(){
g_signal_connect(G_OBJECT(widgets->EnableVNCMenuItem),"activate",G_CALLBACK(on_vnc_toggled),widgets);
// g_signal_connect(G_OBJECT(widgets->SaveGlobalLocalConfigurationMenuItem),"activate",G_CALLBACK(on_config_global_local_save),widgets);
// g_signal_connect(G_OBJECT(widgets->SaveGlobalConfigurationMenuItem),"activate",G_CALLBACK(on_config_global_save),widgets);
// g_signal_connect(G_OBJECT(widgets->SaveLocalConfigurationMenuItem),"activate",G_CALLBACK(on_config_local_save),widgets);
// g_signal_connect(G_OBJECT(widgets->SaveExternalConfigurationMenuItem),"activate",G_CALLBACK(on_config_custom_save),widgets);
g_signal_connect(G_OBJECT(widgets->ReadFullLogButton),"clicked",G_CALLBACK(on_process_log_view),widgets);
g_signal_connect(G_OBJECT(widgets->ReadShortLogButton),"clicked",G_CALLBACK(on_summary_log_view),widgets);
@ -676,8 +858,6 @@ main_window *yon_main_window_complete(){
g_signal_connect(G_OBJECT(widgets->OSDevicesTree),"cursor-changed",G_CALLBACK(on_device_selection_changed),widgets);
g_signal_connect(G_OBJECT(widgets->ConfigurationModeMenuItem),"toggled",G_CALLBACK(on_configuration_mode_switch),widgets);
// g_signal_connect(G_OBJECT(widgets->DocumentationMenuItem),"activate",G_CALLBACK(on_open_documentation_confirmation),widgets);
// g_signal_connect(G_OBJECT(widgets->AboutMenuItem),"activate",G_CALLBACK(on_about),widgets);
g_signal_connect(G_OBJECT(widgets->SamePlacePartTree),"cursor-changed",G_CALLBACK(on_partition_changed),widgets);
g_signal_connect(G_OBJECT(widgets->NextInstallationSysSectionTree),"cursor-changed",G_CALLBACK(on_partition_changed),widgets);
@ -690,6 +870,8 @@ main_window *yon_main_window_complete(){
g_signal_connect(G_OBJECT(widgets->BootloadDefaulOSButton),"clicked",G_CALLBACK(yon_menu_window_open),widgets);
gtk_tree_model_filter_set_visible_column(GTK_TREE_MODEL_FILTER(widgets->LayoutsFilter),3);
g_signal_connect(G_OBJECT(widgets->LanguagesTree),"cursor-changed",G_CALLBACK(on_locale_changed),widgets);
g_signal_connect(G_OBJECT(widgets->CountryLanguagesTree),"cursor-changed",G_CALLBACK(on_installer_language_changed),widgets);
// g_signal_connect(G_OBJECT(widgets->LanguageCombo),"changed",G_CALLBACK(on_locale_changed),widgets);
g_signal_connect(G_OBJECT(widgets->AdditionalSoftwareCell),"toggled",G_CALLBACK(on_additional_software_toggled),widgets);
g_signal_connect(G_OBJECT(widgets->StartupChosenCell),"toggled",G_CALLBACK(on_srartup_services_toggled),widgets);
@ -727,6 +909,11 @@ main_window *yon_main_window_complete(){
g_signal_connect(G_OBJECT(widgets->HotnameEntry),"changed",G_CALLBACK(on_hostname_entry_changed),widgets);
g_signal_connect(G_OBJECT(widgets->NetworkConnectionsAddButton),"clicked",G_CALLBACK(on_connection_add),widgets);
g_signal_connect(G_OBJECT(widgets->NetworkNTPCombo),"changed",G_CALLBACK(on_ntp_sync),widgets);
yon_gtk_revealer_set_from_switch(GTK_REVEALER(widgets->AdvancedLoadTypeRevealer),GTK_SWITCH(widgets->AdvancedLoadTypeSwitch));
yon_gtk_revealer_set_from_switch(GTK_REVEALER(widgets->AdvancedSwapRevealer),GTK_SWITCH(widgets->AdvancedSwapSwitch));
g_signal_connect(G_OBJECT(widgets->AdvancedSwapFixedSwitch),"state-set",G_CALLBACK(yon_gtk_widget_set_sensitive_from_switch),widgets->AdvancedSwapFixedSpin);
g_signal_connect(G_OBJECT(widgets->AdvancedSwapFixedSwitch),"state-set",G_CALLBACK(yon_gtk_widget_set_sensitive_from_switch),widgets->AdvancedSwapFixedSizeSwitch);
g_signal_connect(G_OBJECT(widgets->AdvancedAddButton),"clicked",G_CALLBACK(on_install_advanced_add_new),widgets);
g_signal_connect(G_OBJECT(widgets->AdvancedDeviceChosenCell),"toggled",G_CALLBACK(on_install_advanced_device_chosen),widgets);
@ -738,6 +925,7 @@ main_window *yon_main_window_complete(){
g_signal_connect(G_OBJECT(widgets->SourceButton),"clicked",G_CALLBACK(on_source_clicked),widgets);
g_signal_connect(G_OBJECT(widgets->SkipInstallationButton),"clicked",G_CALLBACK(on_system_setup_pass),widgets);
gtk_tree_model_filter_set_visible_func(GTK_TREE_MODEL_FILTER(widgets->InstallerCountryFilter),(GtkTreeModelFilterVisibleFunc)on_country_filter,widgets,NULL);
{
if (main_config.lock_load_global == 1){
@ -789,13 +977,44 @@ main_window *yon_main_window_complete(){
}
gtk_builder_connect_signals(builder,NULL);
// yon_load_proceed(YON_CONFIG_LOCAL);
on_config_global_load(NULL,widgets);
// yon_interface_update(widgets);
if (!yon_char_is_empty(config(AUTOINSTALL_TYPE_INSTALL))){
gtk_widget_show(widgets->StartScenarioButton);
} else {
gtk_widget_hide(widgets->StartScenarioButton);
}
// char *locale = config(installer_lang_parameter);
// if (!yon_char_is_empty(locale)){
// locale = setlocale(LC_ALL,NULL);
// }
// yon_ubl_window_init(TITLE_LABEL,DESCRIPTION_LABEL,locale,CssPath,LocaleName,version_application,WIKI_LINK);
set_locales_list(widgets);
// {
// char *parameter = config(installer_lang_parameter);
// if (yon_char_is_empty(parameter)){
// parameter=setlocale(LC_ALL,NULL);
// }
// GList *list = gtk_container_get_children(GTK_CONTAINER(widgets->LanguagesBox));
// GList *iter;
// for (iter = list;iter;iter=iter->next){
// char *lang = g_object_get_data(G_OBJECT(iter->data),"language");
// if (!strcmp(lang,parameter)){
// gtk_flow_box_select_child(GTK_FLOW_BOX(widgets->LanguagesBox),GTK_FLOW_BOX_CHILD(iter->data));
// }
// }
// }
}
/**yon_main_window_complete(main_window *widgets)
* [EN]
*
* [RU]
* Функция настройки основного окна приложения. [widgets] - структура со стандартным интерфейсом.
*/
main_window *yon_main_window_complete(){
main_window *widgets=NULL;
widgets = yon_remalloc(widgets,sizeof(main_window));
yon_main_window_create(widgets);
return widgets;
}
@ -810,6 +1029,7 @@ int main(int argc, char *argv[]){
gtk_init(&argc,&argv);
main_window *widgets = NULL;
widgets = yon_main_window_complete();
on_config_global_load(NULL,widgets);
if (widgets){};
char *path = yon_char_unite(yon_ubl_user_get_home_directory(),"/.config/",LocaleName,"/",LocaleName,".conf",NULL);
yon_window_config_setup(GTK_WINDOW(widgets->MainWindow));
@ -822,9 +1042,7 @@ int main(int argc, char *argv[]){
GTK_STYLE_PROVIDER(css),
-1);
if (getuid()!=0){
textdomain(template_ui_LocaleName);
yon_ubl_status_box_render(ROOT_WARNING_LABEL,BACKGROUND_IMAGE_FAIL_TYPE);
textdomain(LocaleName);
yon_ubl_status_box_render(yon_char_get_localised_from_lib(ROOT_WARNING_LABEL),BACKGROUND_IMAGE_FAIL_TYPE);
}
gtk_main();
return 0;

@ -51,14 +51,15 @@
#define regions_path "/com/ublinux/images/map-time-zone.png"
#define keyboard_path "/com/ublinux/images/keyboard.png"
#define users_path "/com/ublinux/images/clear_install_disk.png"
#define startup_path "/com/ublinux/images/clear_install_disk.png"
#define bootloader_path "/com/ublinux/images/clear_install_disk.png"
#define network_icon_path "/com/ublinux/images/clear_install_disk.png"
#define users_path "/com/ublinux/images/keyboard.png"
#define startup_path "/com/ublinux/images/keyboard.png"
#define bootloader_path "/com/ublinux/images/keyboard.png"
#define network_icon_path "/com/ublinux/images/keyboard.png"
#define licence_path "/usr/share/ublinux/agreement/EULA.txt"
#define languages_path "/usr/share/ubinstall-gtk/csv/locales.csv"
// #define installer_languages_path "resource:///com/ublinux/csv/languages.csv"
#define zone_path "/usr/share/zoneinfo/"
@ -71,6 +72,8 @@
#define network_path "resource:///com/ublinux/csv/network-list.csv"
#define fs_types_path "resource:///com/ublinux/csv/filesystems-format-list.csv"
#define locales_list_command "/usr/share/i18n/locales/"
#define slide_0_path "/com/ublinux/images/slide-0.png"
#define slide_repeat_path "/com/ublinux/images/slide-1.png", \
@ -225,6 +228,8 @@ layout && /description:/ {\
#define NETWORK_parameter_command(target) yon_char_unite("ubconfig get autoinstall AUTOINSTALL['ubconfig set [network] NETWORK[",target,"@connmod]']",NULL)
#define NETWORK_devdown_parameter_command(target) yon_char_unite("ubconfig get autoinstall AUTOINSTALL['ubconfig set [network] NETWORK[",target,"@devdown]']",NULL)
#define NETWORK(target) yon_char_unite("NETWORK[",target,"@connmod]",NULL)
#define installer_lang_parameter "AUTOINSTALL[installer_lang]"
#define installer_lang_parameter_command "ubconfig --source global get [autoinstall] AUTOINSTALL[installer_lang]"
#define source_parameter "AUTOINSTALL[source]"
#define source_parameter_command "ubconfig --source global get [autoinstall] AUTOINSTALL[source]"
@ -418,8 +423,6 @@ typedef struct {
GtkWidget *SaveLocalConfigurationMenuItem;
GtkWidget *SaveExternalConfigurationMenuItem;
GtkWidget *SaveButton;
GtkWidget *MainWindow;
GtkWidget *StartScenarioButton;
@ -438,7 +441,12 @@ typedef struct {
GtkWidget *SummaryToggle;
GtkWidget *CompletionToggle;
GtkWidget *InstallationToggle;
GtkWidget *LanguageCombo;
GtkWidget *LanguagesTree;
GtkWidget *CountryLanguagesTree;
GtkListStore *InstallerCountryList;
GtkListStore *InstallerLanguageList;
GtkTreeModel *InstallerCountryFilter;
// GtkWidget *LanguageCombo;
GtkWidget *RegionCombo;
GtkWidget *ZoneCombo;
GtkWidget *AvailableLanguagesEntry;
@ -663,6 +671,8 @@ typedef struct {
GtkWidget *AdvancedSwapFixedSpin;
GtkWidget *AdvancedSwapFixedSwitch;
GtkWidget *AdvancedSwapFixedSizeSwitch;
GtkWidget *AdvancedSwapRevealer;
GtkWidget *AdvancedLoadTypeRevealer;
dictionary *advanced_sections;
GSequence *advanced_partition_order;
@ -1119,4 +1129,8 @@ void yon_source_element_add(char *key,void*,source_window *window);
source_element *yon_source_element_new();
void on_system_setup_pass(GtkWidget *, main_window *widgets);
void yon_resize_images_update(main_window *widgets);
void on_vnc_toggled(GtkWidget *self, main_window *widgets);
void on_vnc_toggled(GtkWidget *self, main_window *widgets);
void yon_main_window_create(main_window *widgets);
void set_locales_list(main_window *widgets);
void on_installer_language_changed(GtkWidget *self, main_window *widgets);
gboolean on_country_filter(GtkTreeModel *self, GtkTreeIter *iter, main_window *widgets);

@ -0,0 +1,64 @@
#include "ubinstall-gtk.h"
typedef struct {
char *section;
int sys_section;
int user_section;
int format;
int size;
char size_letter;
char *part_label;
char *fs_type;
char *fs_label;
char *encryption;
char *encryption_password;
} advanced_section;
int sections_size=0;
advanced_section *sections[2] = {NULL};
advanced_section *yon_advanced_section_new(){
if (sections_size>=2) return NULL;
advanced_section *section = malloc(sizeof(advanced_section));
memset(section,0,sizeof(advanced_section));
sections[sections_size] = section;
sections_size++;
return section;
}
void yon_advanced_section_remove(int pos){
switch(pos){
case 0:
free(sections[0]);
if (sections[1]){
sections[0]=sections[1];
sections[1]=NULL;
} else {
sections[0]=NULL;
}
sections_size--;
break;
case 1:
if (sections[1]){
free(sections[1]);
sections[1]=NULL;
sections_size--;
}
break;
default: return;
}
}
// add section from tree view
void yon_advanced_add(main_window *widgets){
}
//new section from button
void yon_advanced_new(main_window *widgets){
}

@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
<!-- Generated with glade 3.38.2 -->
<!-- Generated with glade 3.40.0 -->
<interface domain="ubinstall-gtk">
<requires lib="gtk+" version="3.24"/>
<!-- interface-css-provider-path ubinstall-gtk.css -->
@ -50,6 +50,33 @@
<column type="gboolean"/>
</columns>
</object>
<object class="GtkListStore" id="InstallerCountryList">
<columns>
<!-- column-name LangId -->
<column type="gchararray"/>
<!-- column-name Country -->
<column type="gchararray"/>
<!-- column-name LangCode -->
<column type="gchararray"/>
<!-- column-name Tooltip -->
<column type="gchararray"/>
</columns>
</object>
<object class="GtkTreeModelFilter" id="InstallerCountryFilter">
<property name="child-model">InstallerCountryList</property>
</object>
<object class="GtkListStore" id="InstallerLanguageList">
<columns>
<!-- column-name LangCode -->
<column type="gchararray"/>
<!-- column-name LanguageName -->
<column type="gchararray"/>
<!-- column-name LanguageLocalised -->
<column type="gchararray"/>
<!-- column-name LangCodeFull -->
<column type="gchararray"/>
</columns>
</object>
<object class="GtkRadioButton" id="KernelUnchosenRadio">
<property name="visible">True</property>
<property name="sensitive">False</property>
@ -273,11 +300,26 @@
<property name="can-focus">False</property>
<property name="icon-name">com.ublinux.libublsettingsui-gtk3.increase-symbolic</property>
</object>
<object class="GtkImage" id="image25">
<property name="visible">True</property>
<property name="can-focus">False</property>
<property name="icon-name">com.ublinux.libublsettingsui-gtk3.fork-symbolic</property>
</object>
<object class="GtkImage" id="image26">
<property name="visible">True</property>
<property name="can-focus">False</property>
<property name="icon-name">com.ublinux.libublsettingsui-gtk3.sync-symbolic</property>
</object>
<object class="GtkImage" id="image27">
<property name="visible">True</property>
<property name="can-focus">False</property>
<property name="icon-name">com.ublinux.libublsettingsui-gtk3.flag-symbolic</property>
</object>
<object class="GtkImage" id="image28">
<property name="visible">True</property>
<property name="can-focus">False</property>
<property name="icon-name">com.ublinux.libublsettingsui-gtk3.flag-finish-symbolic</property>
</object>
<object class="GtkImage" id="image3">
<property name="visible">True</property>
<property name="can-focus">False</property>
@ -383,54 +425,6 @@
</object>
</child>
</object>
<object class="GtkMenu" id="menu3">
<property name="visible">True</property>
<property name="can-focus">False</property>
<property name="reserve-toggle-size">False</property>
<child>
<object class="GtkMenuItem" id="SaveGlobalLocalConfigurationMenuItem">
<property name="visible">True</property>
<property name="can-focus">False</property>
<property name="label" translatable="yes">Save configuration</property>
<style>
<class name="menuitemtop"/>
</style>
</object>
</child>
<child>
<object class="GtkMenuItem" id="SaveGlobalConfigurationMenuItem">
<property name="visible">True</property>
<property name="can-focus">False</property>
<property name="label" translatable="yes">Save to global configuration</property>
<style>
<class name="menuitemmiddle"/>
</style>
</object>
</child>
<child>
<object class="GtkMenuItem" id="SaveLocalConfigurationMenuItem">
<property name="visible">True</property>
<property name="can-focus">False</property>
<property name="label" translatable="yes">Save to local configuration</property>
<style>
<class name="menuitemmiddle"/>
</style>
</object>
</child>
<child>
<object class="GtkMenuItem" id="SaveExternalConfigurationMenuItem">
<property name="visible">True</property>
<property name="can-focus">False</property>
<property name="label" translatable="yes">Save to specific file</property>
<style>
<class name="menuitembottom"/>
</style>
</object>
</child>
<style>
<class name="thin"/>
</style>
</object>
<object class="GtkWindow" id="MainWindow">
<property name="width-request">800</property>
<property name="height-request">500</property>
@ -759,6 +753,7 @@ agreement</property>
<property name="margin-top">5</property>
<property name="margin-bottom">5</property>
<property name="tab-pos">left</property>
<property name="show-tabs">False</property>
<child>
<object class="GtkBox">
<property name="visible">True</property>
@ -768,7 +763,6 @@ agreement</property>
<object class="GtkBox">
<property name="visible">True</property>
<property name="can-focus">False</property>
<property name="valign">center</property>
<property name="orientation">vertical</property>
<property name="spacing">20</property>
<child>
@ -809,32 +803,126 @@ and help you install UBLinux on your computer</property>
</packing>
</child>
<child>
<object class="GtkImage">
<object class="GtkBox">
<property name="visible">True</property>
<property name="can-focus">False</property>
<property name="halign">center</property>
<property name="valign">center</property>
<property name="pixel-size">128</property>
<property name="resource">/com/ublinux/images/language.png</property>
</object>
<packing>
<property name="expand">False</property>
<property name="fill">True</property>
<property name="position">2</property>
</packing>
</child>
<child>
<object class="GtkComboBoxText" id="LanguageCombo">
<property name="can-focus">False</property>
<property name="halign">center</property>
<property name="active">0</property>
<items>
<item id="ru" translatable="yes">Русский</item>
<item id="us" translatable="yes">English</item>
</items>
<property name="orientation">vertical</property>
<property name="spacing">5</property>
<child>
<object class="GtkImage">
<property name="visible">True</property>
<property name="can-focus">False</property>
<property name="halign">center</property>
<property name="valign">center</property>
<property name="pixel-size">128</property>
<property name="resource">/com/ublinux/images/language.png</property>
</object>
<packing>
<property name="expand">False</property>
<property name="fill">True</property>
<property name="position">0</property>
</packing>
</child>
<child>
<object class="GtkBox">
<property name="visible">True</property>
<property name="can-focus">False</property>
<property name="spacing">5</property>
<property name="homogeneous">True</property>
<child>
<object class="GtkScrolledWindow">
<property name="visible">True</property>
<property name="can-focus">True</property>
<property name="hscrollbar-policy">never</property>
<property name="shadow-type">in</property>
<property name="min-content-height">132</property>
<child>
<object class="GtkTreeView" id="LanguagesTree">
<property name="visible">True</property>
<property name="can-focus">True</property>
<property name="model">InstallerLanguageList</property>
<property name="headers-visible">False</property>
<child internal-child="selection">
<object class="GtkTreeSelection"/>
</child>
<child>
<object class="GtkTreeViewColumn">
<property name="expand">True</property>
<child>
<object class="GtkCellRendererText"/>
<attributes>
<attribute name="text">2</attribute>
</attributes>
</child>
</object>
</child>
<child>
<object class="GtkTreeViewColumn">
<property name="title" translatable="yes">column</property>
<child>
<object class="GtkCellRendererText"/>
<attributes>
<attribute name="text">1</attribute>
</attributes>
</child>
</object>
</child>
</object>
</child>
</object>
<packing>
<property name="expand">True</property>
<property name="fill">True</property>
<property name="position">0</property>
</packing>
</child>
<child>
<object class="GtkScrolledWindow">
<property name="visible">True</property>
<property name="can-focus">True</property>
<property name="hscrollbar-policy">never</property>
<property name="shadow-type">in</property>
<property name="min-content-height">132</property>
<child>
<object class="GtkTreeView" id="CountryLanguagesTree">
<property name="visible">True</property>
<property name="can-focus">True</property>
<property name="model">InstallerCountryFilter</property>
<property name="headers-visible">False</property>
<property name="search-column">1</property>
<property name="tooltip-column">3</property>
<child internal-child="selection">
<object class="GtkTreeSelection"/>
</child>
<child>
<object class="GtkTreeViewColumn">
<child>
<object class="GtkCellRendererText"/>
<attributes>
<attribute name="text">1</attribute>
</attributes>
</child>
</object>
</child>
</object>
</child>
</object>
<packing>
<property name="expand">True</property>
<property name="fill">True</property>
<property name="position">1</property>
</packing>
</child>
</object>
<packing>
<property name="expand">True</property>
<property name="fill">True</property>
<property name="position">1</property>
</packing>
</child>
</object>
<packing>
<property name="expand">False</property>
<property name="expand">True</property>
<property name="fill">True</property>
<property name="position">3</property>
</packing>
@ -842,7 +930,7 @@ and help you install UBLinux on your computer</property>
</object>
<packing>
<property name="expand">True</property>
<property name="fill">False</property>
<property name="fill">True</property>
<property name="position">0</property>
</packing>
</child>
@ -4310,11 +4398,11 @@ and help you install UBLinux on your computer</property>
<object class="GtkScrolledWindow">
<property name="visible">True</property>
<property name="can-focus">True</property>
<property name="shadow-type">in</property>
<child>
<object class="GtkViewport">
<property name="visible">True</property>
<property name="can-focus">False</property>
<property name="shadow-type">none</property>
<child>
<object class="GtkBox" id="NetworkConnectionsBox">
<property name="visible">True</property>
@ -4330,7 +4418,7 @@ and help you install UBLinux on your computer</property>
</child>
</object>
<packing>
<property name="expand">False</property>
<property name="expand">True</property>
<property name="fill">True</property>
<property name="position">0</property>
</packing>
@ -7177,8 +7265,6 @@ separately into the selected partition.</property>
<object class="GtkRevealer" id="AdvancedLoadTypeRevealer">
<property name="visible">True</property>
<property name="can-focus">False</property>
<property name="transition-type">none</property>
<property name="reveal-child">True</property>
<child>
<object class="GtkBox">
<property name="visible">True</property>
@ -7307,6 +7393,7 @@ separately into the selected partition.</property>
<object class="GtkFrame">
<property name="visible">True</property>
<property name="can-focus">False</property>
<property name="valign">start</property>
<property name="label-xalign">0</property>
<property name="shadow-type">none</property>
<child>
@ -7381,8 +7468,6 @@ separately into the selected partition.</property>
<object class="GtkRevealer" id="AdvancedSwapRevealer">
<property name="visible">True</property>
<property name="can-focus">False</property>
<property name="transition-type">none</property>
<property name="reveal-child">True</property>
<child>
<object class="GtkBox">
<property name="visible">True</property>
@ -7514,6 +7599,7 @@ separately into the selected partition.</property>
<child>
<object class="GtkSpinButton" id="AdvancedSwapFixedSpin">
<property name="visible">True</property>
<property name="sensitive">False</property>
<property name="can-focus">True</property>
</object>
<packing>
@ -7547,8 +7633,9 @@ separately into the selected partition.</property>
</packing>
</child>
<child>
<object class="GtkSwitch" id="SwapFixedSizeSwitch">
<object class="GtkSwitch" id="AdvancedSwapFixedSizeSwitch">
<property name="visible">True</property>
<property name="sensitive">False</property>
<property name="can-focus">True</property>
</object>
<packing>
@ -10512,6 +10599,7 @@ separately into the selected partition.</property>
<property name="label" translatable="yes">Start installation scenario</property>
<property name="can-focus">True</property>
<property name="receives-default">True</property>
<property name="image">image27</property>
</object>
<packing>
<property name="expand">False</property>
@ -10524,6 +10612,7 @@ separately into the selected partition.</property>
<property name="label" translatable="yes">Source</property>
<property name="can-focus">True</property>
<property name="receives-default">True</property>
<property name="image">image25</property>
</object>
<packing>
<property name="expand">False</property>
@ -10536,6 +10625,7 @@ separately into the selected partition.</property>
<property name="label" translatable="yes">Skip installation</property>
<property name="can-focus">True</property>
<property name="receives-default">True</property>
<property name="image">image28</property>
</object>
<packing>
<property name="expand">False</property>
@ -10651,49 +10741,55 @@ separately into the selected partition.</property>
<property name="position">1</property>
</packing>
</child>
<child>
<object class="GtkMenuButton" id="SaveButton">
<property name="can-focus">True</property>
<property name="focus-on-click">False</property>
<property name="receives-default">True</property>
<property name="popup">menu3</property>
<child>
<object class="GtkBox">
<property name="visible">True</property>
<property name="can-focus">False</property>
<child>
<object class="GtkLabel" id="headerSaveConfigLabel">
<property name="visible">True</property>
<property name="can-focus">False</property>
<property name="label" translatable="yes">Save</property>
</object>
<packing>
<property name="expand">False</property>
<property name="fill">True</property>
<property name="position">0</property>
</packing>
</child>
<child>
<object class="GtkImage">
<property name="visible">True</property>
<property name="can-focus">False</property>
<property name="icon-name">pan-down-symbolic</property>
</object>
<packing>
<property name="expand">False</property>
<property name="fill">True</property>
<property name="position">1</property>
</packing>
</child>
</object>
</child>
</object>
<packing>
<property name="pack-type">end</property>
<property name="position">2</property>
</packing>
</child>
</object>
</child>
</object>
<object class="GtkMenu" id="menu3">
<property name="visible">True</property>
<property name="can-focus">False</property>
<property name="reserve-toggle-size">False</property>
<child>
<object class="GtkMenuItem" id="SaveGlobalLocalConfigurationMenuItem">
<property name="visible">True</property>
<property name="can-focus">False</property>
<property name="label" translatable="yes">Save configuration</property>
<style>
<class name="menuitemtop"/>
</style>
</object>
</child>
<child>
<object class="GtkMenuItem" id="SaveGlobalConfigurationMenuItem">
<property name="visible">True</property>
<property name="can-focus">False</property>
<property name="label" translatable="yes">Save to global configuration</property>
<style>
<class name="menuitemmiddle"/>
</style>
</object>
</child>
<child>
<object class="GtkMenuItem" id="SaveLocalConfigurationMenuItem">
<property name="visible">True</property>
<property name="can-focus">False</property>
<property name="label" translatable="yes">Save to local configuration</property>
<style>
<class name="menuitemmiddle"/>
</style>
</object>
</child>
<child>
<object class="GtkMenuItem" id="SaveExternalConfigurationMenuItem">
<property name="visible">True</property>
<property name="can-focus">False</property>
<property name="label" translatable="yes">Save to specific file</property>
<style>
<class name="menuitembottom"/>
</style>
</object>
</child>
<style>
<class name="thin"/>
</style>
</object>
</interface>

Loading…
Cancel
Save