Description: <short summary of the patch>
 TODO: Put a short summary on the line above and replace this paragraph
 with a longer explanation of this change. Complete the meta-information
 with other relevant fields (see below for details). To make it easier, the
 information below has been extracted from the changelog. Adjust it or drop
 it.
 .
 kylin-os-installer (1.1.1.1-0k0.3) v101; urgency=medium
 .
   * BUG: 151914 /etc/timezone文件显示Etc/UTC
   * BUG: 152673 SSD硬盘 麒麟系统安装失败
   * 需求号:无
   * 其它改动说明: 无
   * 其它改动影响域:无
Author: tangzhicheng <tangzhicheng@kylinos.cn>

---
The information above should follow the Patch Tagging Guidelines, please
checkout http://dep.debian.net/deps/dep3/ to learn about the format. Here
are templates for supplementary fields that you might want to add:

Origin: <vendor|upstream|other>, <url of original patch>
Bug: <url in upstream bugtracker>
Bug-Debian: https://bugs.debian.org/<bugnumber>
Bug-Ubuntu: https://launchpad.net/bugs/<bugnumber>
Forwarded: <no|not-needed|url proving that it has been forwarded>
Reviewed-By: <name and email of someone who approved the patch>
Last-Update: 2022-12-29

--- kylin-os-installer-1.1.1.1.orig/Kylin-Installer.pro
+++ kylin-os-installer-1.1.1.1/Kylin-Installer.pro
@@ -24,11 +24,7 @@ CONFIG += ordered \
 TRANSLATIONS += \
     $$PWD/language/zh_CN.ts \
     $$PWD/language/en_US.ts \
-    $$PWD/language/bo_CN.ts \
-    $$PWD/language/kk_CN.ts \
-    $$PWD/language/ug_CN.ts \
-    $$PWD/language/ky_CN.ts \
-    $$PWD/language/zh_HK.ts
+    $$PWD/language/bo_CN.ts
 #INCLUDEPATH += /home/xy/Downloads/workdir/git/2020-6new
 
 
--- kylin-os-installer-1.1.1.1.orig/ky-installer.cfg
+++ kylin-os-installer-1.1.1.1/ky-installer.cfg
@@ -3,9 +3,6 @@
 encrypty=false
 # 加密密钥，如 qwer1234
 encryptyPWD=@ByteArray(qwer1234)
-# true开启lvm逻辑卷安装（不常用），false 为非逻辑卷安装（常用）
-lvm=false
-
 
 [config]
 # 自动登陆，0 为不自动登录
@@ -36,7 +33,7 @@ username=kylin
 # 自动安装，不用改动
 data-unformat=false
 
-# 预安装软件配置清单，软件包名用逗号分隔，前后不要使用引号
+# 预安装软件配置，不要用引导，软件包名用逗号分隔
 #PreinstallApps=wps-office,rc-reader
 
 
@@ -44,7 +41,7 @@ data-unformat=false
 #以下主要用于自动安装的自定义分区和双系统需求，若无此需求，下面的配置无需改动
 [custompartition]
 
-# true为开启pxe自动安装自定义分区，false为关闭。自定义安装不支持加密安装和逻辑卷分区安装。其中自动安装需要在grub.cfg中增加automatic参数
+# true为开启pxe自动安装自定义分区，false为关闭。自定义安装不支持加密安装。其中自动安装需要在grub.cfg中增加automatic参数
 disk-custom=false
 # true为格式化整块磁盘，false为不格式化整块磁盘。不格式化磁盘主要用于安装第二个系统。
 format-disk=true
--- kylin-os-installer-1.1.1.1.orig/language/bo_CN.ts
+++ kylin-os-installer-1.1.1.1/language/bo_CN.ts
@@ -99,14 +99,6 @@ Note that the size must be greater than
         <source>Device for boot loader path:</source>
         <translation>བྱ་རིམ་འགྲོ་ལམ་ཁུར་སྣོན་སྣེ་ཁྲིད།:</translation>
     </message>
-    <message>
-        <source>remove this partition?</source>
-        <translation>ཁུལ་འདི་བསུབ་རྒྱུ་གཏན་འཁེལ་བྱས།</translation>
-    </message>
-    <message>
-        <source>This is a system partition,remove this partition?</source>
-        <translation>ཁུལ་འདི་ནི་མ་ལག་ཁུལ་ཡིན་པ་རེད།་ཁུལ་འདི་གསུབ་དགོས་པ་རེད།</translation>
-    </message>
 </context>
 <context>
     <name>KInstaller::CustomPartitiondelegate</name>
@@ -191,10 +183,6 @@ Note that the size must be greater than
         <source>By default, SSDS serve as system disks and HDDS serve as user data disks</source>
         <translation>བློ་མོས་སྒྲིག་སྦྱོར་དང་། SSDགི་ཁབ་ལེན་སྡེར་མ་དེ་མ་ལག་གི་སྡེར་མར་བརྩིས་པ་དང་། HDDགྱི་ཁབ་ལེན་སྡེར་མ་དེ་སྤྱོད་མཁན་གྱི་གྲངས་གཞིའི་སྡེར་མར་བྱས་ཡོད།</translation>
     </message>
-    <message>
-        <source>lvm</source>
-        <translation>གཏན་ཚིགས་རིག་པ།(lvm)</translation>
-    </message>
 </context>
 <context>
     <name>KInstaller::ImgFrame</name>
--- kylin-os-installer-1.1.1.1.orig/language/en_US.ts
+++ kylin-os-installer-1.1.1.1/language/en_US.ts
@@ -125,22 +125,12 @@ but Huawei machines require greater than
 <context>
     <name>KInstaller::CustomPartitionFrame</name>
     <message>
-        <location filename="../src/plugins/KPartition/custompartitionframe.cpp" line="230"/>
-        <source>remove this partition?</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../src/plugins/KPartition/custompartitionframe.cpp" line="232"/>
-        <source>This is a system partition,remove this partition?</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../src/plugins/KPartition/custompartitionframe.cpp" line="306"/>
+        <location filename="../src/plugins/KPartition/custompartitionframe.cpp" line="296"/>
         <source>Device for boot loader path:</source>
         <translation>Device for boot loader path:</translation>
     </message>
     <message>
-        <location filename="../src/plugins/KPartition/custompartitionframe.cpp" line="307"/>
+        <location filename="../src/plugins/KPartition/custompartitionframe.cpp" line="297"/>
         <source>Revert</source>
         <translatorcomment>Revert</translatorcomment>
         <translation>Revert</translation>
@@ -215,38 +205,33 @@ but Huawei machines require greater than
 <context>
     <name>KInstaller::FullPartitionFrame</name>
     <message>
-        <location filename="../src/plugins/KPartition/quickpartitionframe.cpp" line="150"/>
+        <location filename="../src/plugins/KPartition/quickpartitionframe.cpp" line="143"/>
         <source>This action will  use the original old account as the default account. Please make sure you remember the password of the original account!</source>
         <translation>If this option is checked, the user of the original system and the data under its directory will be retained, and the data in the data partition will also be retained. In case of version matching, the system will save your system activation information and activation status by default.
 Selecting this option will not prompt you to create new users. Please make sure you remember the passwords of these accounts.</translation>
     </message>
     <message>
-        <location filename="../src/plugins/KPartition/quickpartitionframe.cpp" line="249"/>
+        <location filename="../src/plugins/KPartition/quickpartitionframe.cpp" line="226"/>
         <source>Please choose custom way to install, disk size less than 50G!</source>
         <translation>Please choose custom way to install, disk size less than 50G!</translation>
     </message>
     <message>
-        <location filename="../src/plugins/KPartition/quickpartitionframe.cpp" line="250"/>
+        <location filename="../src/plugins/KPartition/quickpartitionframe.cpp" line="227"/>
         <source>Full disk encryption</source>
         <translation>Full disk encryption</translation>
     </message>
     <message>
-        <location filename="../src/plugins/KPartition/quickpartitionframe.cpp" line="251"/>
-        <source>lvm</source>
-        <translation>lvm</translation>
-    </message>
-    <message>
-        <location filename="../src/plugins/KPartition/quickpartitionframe.cpp" line="252"/>
+        <location filename="../src/plugins/KPartition/quickpartitionframe.cpp" line="228"/>
         <source>Factory backup</source>
         <translation>Factory backup</translation>
     </message>
     <message>
-        <location filename="../src/plugins/KPartition/quickpartitionframe.cpp" line="253"/>
+        <location filename="../src/plugins/KPartition/quickpartitionframe.cpp" line="229"/>
         <source>save history date</source>
         <translation>save history date</translation>
     </message>
     <message>
-        <location filename="../src/plugins/KPartition/quickpartitionframe.cpp" line="384"/>
+        <location filename="../src/plugins/KPartition/quickpartitionframe.cpp" line="350"/>
         <source>By default, SSDS serve as system disks and HDDS serve as user data disks</source>
         <translatorcomment>By default, SSDS serve as system disks and HDDS serve as user data disks</translatorcomment>
         <translation>By default, SSDS serve as system disks and HDDS serve as user data disks</translation>
@@ -299,17 +284,17 @@ Selecting this option will not prompt yo
         <translation>Installer is about to exit and the computer will be shut down.</translation>
     </message>
     <message>
-        <location filename="../src/Installer_main/installermainwidget.cpp" line="531"/>
+        <location filename="../src/Installer_main/installermainwidget.cpp" line="517"/>
         <source>back</source>
         <translation>back</translation>
     </message>
     <message>
-        <location filename="../src/Installer_main/installermainwidget.cpp" line="508"/>
+        <location filename="../src/Installer_main/installermainwidget.cpp" line="494"/>
         <source>quit</source>
         <translation>quit</translation>
     </message>
     <message>
-        <location filename="../src/Installer_main/installermainwidget.cpp" line="485"/>
+        <location filename="../src/Installer_main/installermainwidget.cpp" line="471"/>
         <source>keyboard</source>
         <translation>keyboard</translation>
     </message>
@@ -353,12 +338,12 @@ Selecting this option will not prompt yo
 <context>
     <name>KInstaller::LanguageFrame</name>
     <message>
-        <location filename="../src/plugins/KChoiceLanguage/languageframe.cpp" line="233"/>
+        <location filename="../src/plugins/KChoiceLanguage/languageframe.cpp" line="189"/>
         <source>Select Language</source>
         <translation>Select Language</translation>
     </message>
     <message>
-        <location filename="../src/plugins/KChoiceLanguage/languageframe.cpp" line="234"/>
+        <location filename="../src/plugins/KChoiceLanguage/languageframe.cpp" line="190"/>
         <source>Next</source>
         <translation>Next</translation>
     </message>
@@ -366,17 +351,17 @@ Selecting this option will not prompt yo
 <context>
     <name>KInstaller::LicenseFrame</name>
     <message>
-        <location filename="../src/plugins/KyLicense/licenseframe.cpp" line="165"/>
+        <location filename="../src/plugins/KyLicense/licenseframe.cpp" line="161"/>
         <source>Read License Agreement</source>
         <translation>Read License Agreement</translation>
     </message>
     <message>
-        <location filename="../src/plugins/KyLicense/licenseframe.cpp" line="166"/>
+        <location filename="../src/plugins/KyLicense/licenseframe.cpp" line="162"/>
         <source>I have read and agree to the terms of the agreement</source>
         <translation>I have read and agree to the terms of the agreement</translation>
     </message>
     <message>
-        <location filename="../src/plugins/KyLicense/licenseframe.cpp" line="168"/>
+        <location filename="../src/plugins/KyLicense/licenseframe.cpp" line="164"/>
         <source>Next</source>
         <translation>Next</translation>
     </message>
@@ -384,34 +369,35 @@ Selecting this option will not prompt yo
 <context>
     <name>KInstaller::MainPartFrame</name>
     <message>
-        <location filename="../src/plugins/KPartition/mainpartframe.cpp" line="600"/>
+        <location filename="../src/plugins/KPartition/mainpartframe.cpp" line="593"/>
         <source>Custom install</source>
         <translatorcomment>Custom install</translatorcomment>
         <translation>Custom install</translation>
     </message>
     <message>
-        <location filename="../src/plugins/KPartition/mainpartframe.cpp" line="351"/>
+        <location filename="../src/plugins/KPartition/mainpartframe.cpp" line="344"/>
         <source>Coexist Install</source>
         <translation>Coexist Install</translation>
     </message>
     <message>
-        <location filename="../src/plugins/KPartition/mainpartframe.cpp" line="419"/>
+        <location filename="../src/plugins/KPartition/mainpartframe.cpp" line="412"/>
         <source>Confirm Custom Installation</source>
         <translation>Confirm Custom Installation</translation>
     </message>
     <message>
-        <location filename="../src/plugins/KPartition/mainpartframe.cpp" line="312"/>
+        <location filename="../src/plugins/KPartition/mainpartframe.cpp" line="306"/>
         <source>Formatted the whole disk</source>
         <translation>Formatted the whole disk</translation>
     </message>
     <message>
-        <location filename="../src/plugins/KPartition/mainpartframe.cpp" line="302"/>
-        <location filename="../src/plugins/KPartition/mainpartframe.cpp" line="436"/>
+        <location filename="../src/plugins/KPartition/mainpartframe.cpp" line="296"/>
+        <location filename="../src/plugins/KPartition/mainpartframe.cpp" line="338"/>
+        <location filename="../src/plugins/KPartition/mainpartframe.cpp" line="429"/>
         <source>Start Installation</source>
         <translation>Start Installation</translation>
     </message>
     <message>
-        <location filename="../src/plugins/KPartition/mainpartframe.cpp" line="314"/>
+        <location filename="../src/plugins/KPartition/mainpartframe.cpp" line="308"/>
         <source>EFI partition #1 of %1 as vfat;
 boot partition #2 of  %1 as ext4;
 / partition #3 of  %1 as ext4;
@@ -427,7 +413,7 @@ data partition #5 of  %1 as ext4;
 swap partition #6 of  %1 as swap;</translation>
     </message>
     <message>
-        <location filename="../src/plugins/KPartition/mainpartframe.cpp" line="321"/>
+        <location filename="../src/plugins/KPartition/mainpartframe.cpp" line="315"/>
         <source>boot partition #1 of %1 as vfat;
 extend partition #2 of  %1 ;
 / partition #5 of  %1 as ext4;
@@ -443,32 +429,32 @@ data partition #7 of  %1 as ext4;
 swap partition #8 of  %1 as swap;</translation>
     </message>
     <message>
-        <location filename="../src/plugins/KPartition/mainpartframe.cpp" line="427"/>
+        <location filename="../src/plugins/KPartition/mainpartframe.cpp" line="420"/>
         <source>Confirm the above operations</source>
         <translation>Confirm the above operations</translation>
     </message>
     <message>
-        <location filename="../src/plugins/KPartition/mainpartframe.cpp" line="510"/>
+        <location filename="../src/plugins/KPartition/mainpartframe.cpp" line="503"/>
         <source>InvalidId
 </source>
         <translation>InvalidId
 </translation>
     </message>
     <message>
-        <location filename="../src/plugins/KPartition/mainpartframe.cpp" line="513"/>
+        <location filename="../src/plugins/KPartition/mainpartframe.cpp" line="506"/>
         <source>Boot filesystem invalid
 </source>
         <translation>Boot filesystem invalid
 </translation>
     </message>
     <message>
-        <location filename="../src/plugins/KPartition/mainpartframe.cpp" line="528"/>
+        <location filename="../src/plugins/KPartition/mainpartframe.cpp" line="521"/>
         <source>the EFI partition size should be set between 256MB and 2GB
 </source>
         <translation>the EFI partition size should be set between 1GB and 2GB.</translation>
     </message>
     <message>
-        <location filename="../src/plugins/KPartition/mainpartframe.cpp" line="540"/>
+        <location filename="../src/plugins/KPartition/mainpartframe.cpp" line="533"/>
         <source>Root partition size is greater than 15GiB,
 but Huawei machines require greater than 25GiB.
 </source>
@@ -476,139 +462,139 @@ but Huawei machines require greater than
 but Huawei machines require greater than 25GiB.</translation>
     </message>
     <message>
-        <location filename="../src/plugins/KPartition/mainpartframe.cpp" line="519"/>
+        <location filename="../src/plugins/KPartition/mainpartframe.cpp" line="512"/>
         <source>Boot partition too small
 </source>
         <translation>Boot partition too small
 </translation>
     </message>
     <message>
-        <location filename="../src/plugins/KPartition/mainpartframe.cpp" line="516"/>
+        <location filename="../src/plugins/KPartition/mainpartframe.cpp" line="509"/>
         <source>Boot partition not in the first partition
 </source>
         <translation>Boot partition not in the first partition
 </translation>
     </message>
     <message>
-        <location filename="../src/plugins/KPartition/mainpartframe.cpp" line="311"/>
+        <location filename="../src/plugins/KPartition/mainpartframe.cpp" line="305"/>
         <source>Confirm Full Installation</source>
         <translation>Confirm Full Installation</translation>
     </message>
     <message>
-        <location filename="../src/plugins/KPartition/mainpartframe.cpp" line="337"/>
+        <location filename="../src/plugins/KPartition/mainpartframe.cpp" line="331"/>
         <source> set to data device;
 </source>
         <translation> set to data device;</translation>
     </message>
     <message>
-        <location filename="../src/plugins/KPartition/mainpartframe.cpp" line="381"/>
+        <location filename="../src/plugins/KPartition/mainpartframe.cpp" line="374"/>
         <source>bootloader type of Legacy should not contain EFI partition!</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../src/plugins/KPartition/mainpartframe.cpp" line="481"/>
+        <location filename="../src/plugins/KPartition/mainpartframe.cpp" line="474"/>
         <source>BootLoader method %1 inconsistent with the disk partition table 
 type %2.</source>
         <translation>BootLoader method %1 inconsistent with the disk partition table
 type %2.</translation>
     </message>
     <message>
-        <location filename="../src/plugins/KPartition/mainpartframe.cpp" line="484"/>
-        <location filename="../src/plugins/KPartition/mainpartframe.cpp" line="489"/>
+        <location filename="../src/plugins/KPartition/mainpartframe.cpp" line="477"/>
+        <location filename="../src/plugins/KPartition/mainpartframe.cpp" line="482"/>
         <source>BootLoader method %1 inconsistent with the disk partition table 
 type %2, cannot have efi partition.</source>
         <translation>BootLoader method %1 inconsistent with the disk partition table
 type %2, cannot have efi partition.</translation>
     </message>
     <message>
-        <location filename="../src/plugins/KPartition/mainpartframe.cpp" line="522"/>
+        <location filename="../src/plugins/KPartition/mainpartframe.cpp" line="515"/>
         <source>No boot partition
 </source>
         <translation>No boot partition
 </translation>
     </message>
     <message>
-        <location filename="../src/plugins/KPartition/mainpartframe.cpp" line="525"/>
+        <location filename="../src/plugins/KPartition/mainpartframe.cpp" line="518"/>
         <source>No Efi partition
 </source>
         <translation>No Efi partition
 </translation>
     </message>
     <message>
-        <location filename="../src/plugins/KPartition/mainpartframe.cpp" line="531"/>
+        <location filename="../src/plugins/KPartition/mainpartframe.cpp" line="524"/>
         <source>Only one EFI partition is allowed
 </source>
         <translation>Only one EFI partition is allowed
 </translation>
     </message>
     <message>
-        <location filename="../src/plugins/KPartition/mainpartframe.cpp" line="534"/>
+        <location filename="../src/plugins/KPartition/mainpartframe.cpp" line="527"/>
         <source>Efi partition number invalid
 </source>
         <translation>Efi partition number invalid
 </translation>
     </message>
     <message>
-        <location filename="../src/plugins/KPartition/mainpartframe.cpp" line="537"/>
+        <location filename="../src/plugins/KPartition/mainpartframe.cpp" line="530"/>
         <source>No root partition
 </source>
         <translation>No root partition
 </translation>
     </message>
     <message>
-        <location filename="../src/plugins/KPartition/mainpartframe.cpp" line="553"/>
+        <location filename="../src/plugins/KPartition/mainpartframe.cpp" line="546"/>
         <source>No backup partition
 </source>
         <translation>No backup partition
 </translation>
     </message>
     <message>
-        <location filename="../src/plugins/KPartition/mainpartframe.cpp" line="562"/>
+        <location filename="../src/plugins/KPartition/mainpartframe.cpp" line="555"/>
         <source>This machine not support EFI partition
 </source>
         <translation>This machine not support EFI partition
 </translation>
     </message>
     <message>
-        <location filename="../src/plugins/KPartition/mainpartframe.cpp" line="599"/>
+        <location filename="../src/plugins/KPartition/mainpartframe.cpp" line="592"/>
         <source>Full install</source>
         <translation>Full install</translation>
     </message>
     <message>
-        <location filename="../src/plugins/KPartition/mainpartframe.cpp" line="544"/>
+        <location filename="../src/plugins/KPartition/mainpartframe.cpp" line="537"/>
         <source>Partition too small
 </source>
         <translation>Partition too small</translation>
     </message>
     <message>
-        <location filename="../src/plugins/KPartition/mainpartframe.cpp" line="547"/>
+        <location filename="../src/plugins/KPartition/mainpartframe.cpp" line="540"/>
         <source>BackUp partition too small
 </source>
         <translation>BackUp partition too small
 </translation>
     </message>
     <message>
-        <location filename="../src/plugins/KPartition/mainpartframe.cpp" line="550"/>
+        <location filename="../src/plugins/KPartition/mainpartframe.cpp" line="543"/>
         <source>Repeated mountpoint
 </source>
         <translation>Repeated mountpoint
 </translation>
     </message>
     <message>
-        <location filename="../src/plugins/KPartition/mainpartframe.cpp" line="565"/>
+        <location filename="../src/plugins/KPartition/mainpartframe.cpp" line="558"/>
         <source>The filesystem type FAT16 or FAT32 is not fully-function filesystem,
 except EFI partition, other partition not proposed</source>
         <translation>The filesystem type FAT16 or FAT32 is not fully-function filesystem,
 except EFI partition, other partition not proposed.</translation>
     </message>
     <message>
-        <location filename="../src/plugins/KPartition/mainpartframe.cpp" line="598"/>
+        <location filename="../src/plugins/KPartition/mainpartframe.cpp" line="591"/>
         <source>Choose Installation Method</source>
         <translation>Choose Installation Method</translation>
     </message>
     <message>
-        <location filename="../src/plugins/KPartition/mainpartframe.cpp" line="462"/>
-        <location filename="../src/plugins/KPartition/mainpartframe.cpp" line="602"/>
+        <location filename="../src/plugins/KPartition/mainpartframe.cpp" line="455"/>
+        <location filename="../src/plugins/KPartition/mainpartframe.cpp" line="595"/>
         <source>Next</source>
         <translation>Next</translation>
     </message>
@@ -671,7 +657,7 @@ except EFI partition, other partition no
         <translation>Mount point starts with &apos;/&apos;</translation>
     </message>
     <message>
-        <location filename="../src/plugins/KPartition/modifypartitionframe.cpp" line="472"/>
+        <location filename="../src/plugins/KPartition/modifypartitionframe.cpp" line="448"/>
         <source>close</source>
         <translation>close</translation>
     </message>
@@ -693,32 +679,32 @@ except EFI partition, other partition no
 <context>
     <name>KInstaller::SlideShow</name>
     <message>
-        <location filename="../src/Installer_main/uilt/slidershow.cpp" line="243"/>
+        <location filename="../src/Installer_main/uilt/slidershow.cpp" line="65"/>
         <source>Multi platform support, suitable for mainstream CPU platforms at home and abroad.</source>
         <translation>Multi platform support, suitable for mainstream CPU platforms at home and abroad.</translation>
     </message>
     <message>
-        <location filename="../src/Installer_main/uilt/slidershow.cpp" line="244"/>
+        <location filename="../src/Installer_main/uilt/slidershow.cpp" line="66"/>
         <source>Ukui desktop environment meets personalized needs.</source>
         <translation>Ukui desktop environment meets personalized needs.</translation>
     </message>
     <message>
-        <location filename="../src/Installer_main/uilt/slidershow.cpp" line="245"/>
+        <location filename="../src/Installer_main/uilt/slidershow.cpp" line="67"/>
         <source>The system is updated and upgraded more conveniently.</source>
         <translation>The system is updated and upgraded more conveniently.</translation>
     </message>
     <message>
-        <location filename="../src/Installer_main/uilt/slidershow.cpp" line="246"/>
+        <location filename="../src/Installer_main/uilt/slidershow.cpp" line="68"/>
         <source>Security center, all-round protection of data security.</source>
         <translation>Security center, all-round protection of data security.</translation>
     </message>
     <message>
-        <location filename="../src/Installer_main/uilt/slidershow.cpp" line="247"/>
+        <location filename="../src/Installer_main/uilt/slidershow.cpp" line="69"/>
         <source>Software store, featured software recommendation.</source>
         <translation>Software store, featured software recommendation.</translation>
     </message>
     <message>
-        <location filename="../src/Installer_main/uilt/slidershow.cpp" line="248"/>
+        <location filename="../src/Installer_main/uilt/slidershow.cpp" line="70"/>
         <source>Provide technical support and professional after-sales service.</source>
         <translation>Provide technical support and professional after-sales service.</translation>
     </message>
--- kylin-os-installer-1.1.1.1.orig/language/zh_CN.ts
+++ kylin-os-installer-1.1.1.1/language/zh_CN.ts
@@ -119,22 +119,12 @@ but Huawei machines require greater than
 <context>
     <name>KInstaller::CustomPartitionFrame</name>
     <message>
-        <location filename="../src/plugins/KPartition/custompartitionframe.cpp" line="230"/>
-        <source>remove this partition?</source>
-        <translation>确定删除此分区?</translation>
-    </message>
-    <message>
-        <location filename="../src/plugins/KPartition/custompartitionframe.cpp" line="232"/>
-        <source>This is a system partition,remove this partition?</source>
-        <translation>此分区为系统分区，确定删除此分区?</translation>
-    </message>
-    <message>
-        <location filename="../src/plugins/KPartition/custompartitionframe.cpp" line="306"/>
+        <location filename="../src/plugins/KPartition/custompartitionframe.cpp" line="296"/>
         <source>Device for boot loader path:</source>
         <translation>引导加载程序路径：</translation>
     </message>
     <message>
-        <location filename="../src/plugins/KPartition/custompartitionframe.cpp" line="307"/>
+        <location filename="../src/plugins/KPartition/custompartitionframe.cpp" line="297"/>
         <source>Revert</source>
         <translatorcomment>还原</translatorcomment>
         <translation>还原</translation>
@@ -209,38 +199,33 @@ but Huawei machines require greater than
 <context>
     <name>KInstaller::FullPartitionFrame</name>
     <message>
-        <location filename="../src/plugins/KPartition/quickpartitionframe.cpp" line="150"/>
+        <location filename="../src/plugins/KPartition/quickpartitionframe.cpp" line="143"/>
         <source>This action will  use the original old account as the default account. Please make sure you remember the password of the original account!</source>
         <translation>勾选该选项将保留原来系统的用户及其目录下的数据，同时也会保留data分区中的数据。在版本匹配的情况下，系统会默认保存您的系统激活信息与激活状态。
 选择该选项将不会再提示您新建用户，请确保你记这些账户的密码。</translation>
     </message>
     <message>
-        <location filename="../src/plugins/KPartition/quickpartitionframe.cpp" line="249"/>
+        <location filename="../src/plugins/KPartition/quickpartitionframe.cpp" line="226"/>
         <source>Please choose custom way to install, disk size less than 50G!</source>
         <translation>请选择自定义方式进行安装，磁盘大小小于50G！</translation>
     </message>
     <message>
-        <location filename="../src/plugins/KPartition/quickpartitionframe.cpp" line="250"/>
+        <location filename="../src/plugins/KPartition/quickpartitionframe.cpp" line="227"/>
         <source>Full disk encryption</source>
         <translation>全盘加密</translation>
     </message>
     <message>
-        <location filename="../src/plugins/KPartition/quickpartitionframe.cpp" line="251"/>
-        <source>lvm</source>
-        <translation>逻辑卷(lvm)</translation>
-    </message>
-    <message>
-        <location filename="../src/plugins/KPartition/quickpartitionframe.cpp" line="252"/>
+        <location filename="../src/plugins/KPartition/quickpartitionframe.cpp" line="228"/>
         <source>Factory backup</source>
         <translation>出厂备份</translation>
     </message>
     <message>
-        <location filename="../src/plugins/KPartition/quickpartitionframe.cpp" line="253"/>
+        <location filename="../src/plugins/KPartition/quickpartitionframe.cpp" line="229"/>
         <source>save history date</source>
         <translation>保留用户及其数据</translation>
     </message>
     <message>
-        <location filename="../src/plugins/KPartition/quickpartitionframe.cpp" line="384"/>
+        <location filename="../src/plugins/KPartition/quickpartitionframe.cpp" line="350"/>
         <source>By default, SSDS serve as system disks and HDDS serve as user data disks</source>
         <translation>默认安装，SSD磁盘作为系统盘，HDD磁盘作为用户数据盘</translation>
     </message>
@@ -292,17 +277,17 @@ but Huawei machines require greater than
         <translation>安装程序即将退出，计算机将关机。</translation>
     </message>
     <message>
-        <location filename="../src/Installer_main/installermainwidget.cpp" line="531"/>
+        <location filename="../src/Installer_main/installermainwidget.cpp" line="517"/>
         <source>back</source>
         <translation>上一步</translation>
     </message>
     <message>
-        <location filename="../src/Installer_main/installermainwidget.cpp" line="508"/>
+        <location filename="../src/Installer_main/installermainwidget.cpp" line="494"/>
         <source>quit</source>
         <translation>退出</translation>
     </message>
     <message>
-        <location filename="../src/Installer_main/installermainwidget.cpp" line="485"/>
+        <location filename="../src/Installer_main/installermainwidget.cpp" line="471"/>
         <source>keyboard</source>
         <translation>键盘</translation>
     </message>
@@ -346,12 +331,12 @@ but Huawei machines require greater than
 <context>
     <name>KInstaller::LanguageFrame</name>
     <message>
-        <location filename="../src/plugins/KChoiceLanguage/languageframe.cpp" line="233"/>
+        <location filename="../src/plugins/KChoiceLanguage/languageframe.cpp" line="189"/>
         <source>Select Language</source>
         <translation>选择语言</translation>
     </message>
     <message>
-        <location filename="../src/plugins/KChoiceLanguage/languageframe.cpp" line="234"/>
+        <location filename="../src/plugins/KChoiceLanguage/languageframe.cpp" line="190"/>
         <source>Next</source>
         <translation>下一步</translation>
     </message>
@@ -359,17 +344,17 @@ but Huawei machines require greater than
 <context>
     <name>KInstaller::LicenseFrame</name>
     <message>
-        <location filename="../src/plugins/KyLicense/licenseframe.cpp" line="165"/>
+        <location filename="../src/plugins/KyLicense/licenseframe.cpp" line="161"/>
         <source>Read License Agreement</source>
         <translation>阅读许可协议</translation>
     </message>
     <message>
-        <location filename="../src/plugins/KyLicense/licenseframe.cpp" line="166"/>
+        <location filename="../src/plugins/KyLicense/licenseframe.cpp" line="162"/>
         <source>I have read and agree to the terms of the agreement</source>
         <translation>我已经阅读并同意协议条款</translation>
     </message>
     <message>
-        <location filename="../src/plugins/KyLicense/licenseframe.cpp" line="168"/>
+        <location filename="../src/plugins/KyLicense/licenseframe.cpp" line="164"/>
         <source>Next</source>
         <translation>下一步</translation>
     </message>
@@ -377,34 +362,35 @@ but Huawei machines require greater than
 <context>
     <name>KInstaller::MainPartFrame</name>
     <message>
-        <location filename="../src/plugins/KPartition/mainpartframe.cpp" line="600"/>
+        <location filename="../src/plugins/KPartition/mainpartframe.cpp" line="593"/>
         <source>Custom install</source>
         <translatorcomment>自定义安装</translatorcomment>
         <translation>自定义安装</translation>
     </message>
     <message>
-        <location filename="../src/plugins/KPartition/mainpartframe.cpp" line="351"/>
+        <location filename="../src/plugins/KPartition/mainpartframe.cpp" line="344"/>
         <source>Coexist Install</source>
         <translation>并存安装</translation>
     </message>
     <message>
-        <location filename="../src/plugins/KPartition/mainpartframe.cpp" line="419"/>
+        <location filename="../src/plugins/KPartition/mainpartframe.cpp" line="412"/>
         <source>Confirm Custom Installation</source>
         <translation>确认自定义安装</translation>
     </message>
     <message>
-        <location filename="../src/plugins/KPartition/mainpartframe.cpp" line="312"/>
+        <location filename="../src/plugins/KPartition/mainpartframe.cpp" line="306"/>
         <source>Formatted the whole disk</source>
         <translation>格式化整个磁盘。</translation>
     </message>
     <message>
-        <location filename="../src/plugins/KPartition/mainpartframe.cpp" line="302"/>
-        <location filename="../src/plugins/KPartition/mainpartframe.cpp" line="436"/>
+        <location filename="../src/plugins/KPartition/mainpartframe.cpp" line="296"/>
+        <location filename="../src/plugins/KPartition/mainpartframe.cpp" line="338"/>
+        <location filename="../src/plugins/KPartition/mainpartframe.cpp" line="429"/>
         <source>Start Installation</source>
         <translation>开始安装</translation>
     </message>
     <message>
-        <location filename="../src/plugins/KPartition/mainpartframe.cpp" line="314"/>
+        <location filename="../src/plugins/KPartition/mainpartframe.cpp" line="308"/>
         <source>EFI partition #1 of %1 as vfat;
 boot partition #2 of  %1 as ext4;
 / partition #3 of  %1 as ext4;
@@ -420,7 +406,7 @@ swap partition #6 of  %1 as swap;
 %1 设备上第 6 分区为 swap, 将设为 swap;</translation>
     </message>
     <message>
-        <location filename="../src/plugins/KPartition/mainpartframe.cpp" line="321"/>
+        <location filename="../src/plugins/KPartition/mainpartframe.cpp" line="315"/>
         <source>boot partition #1 of %1 as vfat;
 extend partition #2 of  %1 ;
 / partition #5 of  %1 as ext4;
@@ -436,32 +422,32 @@ swap partition #8 of  %1 as swap;
 %1 设备上第 8 分区为 swap, 将设为 swap;</translation>
     </message>
     <message>
-        <location filename="../src/plugins/KPartition/mainpartframe.cpp" line="427"/>
+        <location filename="../src/plugins/KPartition/mainpartframe.cpp" line="420"/>
         <source>Confirm the above operations</source>
         <translation>确认以上操作</translation>
     </message>
     <message>
-        <location filename="../src/plugins/KPartition/mainpartframe.cpp" line="510"/>
+        <location filename="../src/plugins/KPartition/mainpartframe.cpp" line="503"/>
         <source>InvalidId
 </source>
         <translation>无效
 </translation>
     </message>
     <message>
-        <location filename="../src/plugins/KPartition/mainpartframe.cpp" line="513"/>
+        <location filename="../src/plugins/KPartition/mainpartframe.cpp" line="506"/>
         <source>Boot filesystem invalid
 </source>
         <translation>Boot分区文件系统不可用
 </translation>
     </message>
     <message>
-        <location filename="../src/plugins/KPartition/mainpartframe.cpp" line="528"/>
+        <location filename="../src/plugins/KPartition/mainpartframe.cpp" line="521"/>
         <source>the EFI partition size should be set between 256MB and 2GB
 </source>
         <translation>Efi分区大小应设置在256MB到2GB之间。</translation>
     </message>
     <message>
-        <location filename="../src/plugins/KPartition/mainpartframe.cpp" line="540"/>
+        <location filename="../src/plugins/KPartition/mainpartframe.cpp" line="533"/>
         <source>Root partition size is greater than 15GiB,
 but Huawei machines require greater than 25GiB.
 </source>
@@ -469,136 +455,136 @@ but Huawei machines require greater than
 </translation>
     </message>
     <message>
-        <location filename="../src/plugins/KPartition/mainpartframe.cpp" line="519"/>
+        <location filename="../src/plugins/KPartition/mainpartframe.cpp" line="512"/>
         <source>Boot partition too small
 </source>
         <translation>Boot分区太小
 </translation>
     </message>
     <message>
-        <location filename="../src/plugins/KPartition/mainpartframe.cpp" line="311"/>
+        <location filename="../src/plugins/KPartition/mainpartframe.cpp" line="305"/>
         <source>Confirm Full Installation</source>
         <translation>确认全盘安装</translation>
     </message>
     <message>
-        <location filename="../src/plugins/KPartition/mainpartframe.cpp" line="337"/>
+        <location filename="../src/plugins/KPartition/mainpartframe.cpp" line="331"/>
         <source> set to data device;
 </source>
         <translation> 设为数据盘</translation>
     </message>
     <message>
-        <location filename="../src/plugins/KPartition/mainpartframe.cpp" line="381"/>
+        <location filename="../src/plugins/KPartition/mainpartframe.cpp" line="374"/>
         <source>bootloader type of Legacy should not contain EFI partition!</source>
         <translation>系统为legacy启动方式时,不可含有efi分区!</translation>
     </message>
     <message>
-        <location filename="../src/plugins/KPartition/mainpartframe.cpp" line="481"/>
+        <location filename="../src/plugins/KPartition/mainpartframe.cpp" line="474"/>
         <source>BootLoader method %1 inconsistent with the disk partition table 
 type %2.</source>
         <translation>引导加载程序方法 %1 与磁盘分区表 %2 不一致</translation>
     </message>
     <message>
-        <location filename="../src/plugins/KPartition/mainpartframe.cpp" line="484"/>
-        <location filename="../src/plugins/KPartition/mainpartframe.cpp" line="489"/>
+        <location filename="../src/plugins/KPartition/mainpartframe.cpp" line="477"/>
+        <location filename="../src/plugins/KPartition/mainpartframe.cpp" line="482"/>
         <source>BootLoader method %1 inconsistent with the disk partition table 
 type %2, cannot have efi partition.</source>
         <translation>引导加载程序方法 %1 与磁盘分区表 %2 不一致，不可使用efi分区</translation>
     </message>
     <message>
-        <location filename="../src/plugins/KPartition/mainpartframe.cpp" line="516"/>
+        <location filename="../src/plugins/KPartition/mainpartframe.cpp" line="509"/>
         <source>Boot partition not in the first partition
 </source>
         <translation>Boot分区必须为第一分区!</translation>
     </message>
     <message>
-        <location filename="../src/plugins/KPartition/mainpartframe.cpp" line="522"/>
+        <location filename="../src/plugins/KPartition/mainpartframe.cpp" line="515"/>
         <source>No boot partition
 </source>
         <translation>未找到boot分区
 </translation>
     </message>
     <message>
-        <location filename="../src/plugins/KPartition/mainpartframe.cpp" line="525"/>
+        <location filename="../src/plugins/KPartition/mainpartframe.cpp" line="518"/>
         <source>No Efi partition
 </source>
         <translation>未找到Efi分区
 </translation>
     </message>
     <message>
-        <location filename="../src/plugins/KPartition/mainpartframe.cpp" line="531"/>
+        <location filename="../src/plugins/KPartition/mainpartframe.cpp" line="524"/>
         <source>Only one EFI partition is allowed
 </source>
         <translation>只允许一个EFI分区存在
 </translation>
     </message>
     <message>
-        <location filename="../src/plugins/KPartition/mainpartframe.cpp" line="534"/>
+        <location filename="../src/plugins/KPartition/mainpartframe.cpp" line="527"/>
         <source>Efi partition number invalid
 </source>
         <translation>Efi分区编号不可用
 </translation>
     </message>
     <message>
-        <location filename="../src/plugins/KPartition/mainpartframe.cpp" line="537"/>
+        <location filename="../src/plugins/KPartition/mainpartframe.cpp" line="530"/>
         <source>No root partition
 </source>
         <translation>未找到根分区。
 </translation>
     </message>
     <message>
-        <location filename="../src/plugins/KPartition/mainpartframe.cpp" line="553"/>
+        <location filename="../src/plugins/KPartition/mainpartframe.cpp" line="546"/>
         <source>No backup partition
 </source>
         <translation>未找到备份还原分区。
 </translation>
     </message>
     <message>
-        <location filename="../src/plugins/KPartition/mainpartframe.cpp" line="562"/>
+        <location filename="../src/plugins/KPartition/mainpartframe.cpp" line="555"/>
         <source>This machine not support EFI partition
 </source>
         <translation>当前这台机器不支持EFI分区!</translation>
     </message>
     <message>
-        <location filename="../src/plugins/KPartition/mainpartframe.cpp" line="599"/>
+        <location filename="../src/plugins/KPartition/mainpartframe.cpp" line="592"/>
         <source>Full install</source>
         <translation>全盘安装</translation>
     </message>
     <message>
-        <location filename="../src/plugins/KPartition/mainpartframe.cpp" line="544"/>
+        <location filename="../src/plugins/KPartition/mainpartframe.cpp" line="537"/>
         <source>Partition too small
 </source>
         <translation>分区太小
 </translation>
     </message>
     <message>
-        <location filename="../src/plugins/KPartition/mainpartframe.cpp" line="547"/>
+        <location filename="../src/plugins/KPartition/mainpartframe.cpp" line="540"/>
         <source>BackUp partition too small
 </source>
         <translation>备份还原分区太小
 </translation>
     </message>
     <message>
-        <location filename="../src/plugins/KPartition/mainpartframe.cpp" line="550"/>
+        <location filename="../src/plugins/KPartition/mainpartframe.cpp" line="543"/>
         <source>Repeated mountpoint
 </source>
         <translation>存在重复挂载的分区
 </translation>
     </message>
     <message>
-        <location filename="../src/plugins/KPartition/mainpartframe.cpp" line="565"/>
+        <location filename="../src/plugins/KPartition/mainpartframe.cpp" line="558"/>
         <source>The filesystem type FAT16 or FAT32 is not fully-function filesystem,
 except EFI partition, other partition not proposed</source>
         <translation>FAT16和FAT32是不完整的文件系统，
 除了EFI分区外，其他分区不建议使用。</translation>
     </message>
     <message>
-        <location filename="../src/plugins/KPartition/mainpartframe.cpp" line="598"/>
+        <location filename="../src/plugins/KPartition/mainpartframe.cpp" line="591"/>
         <source>Choose Installation Method</source>
         <translation>选择安装方式</translation>
     </message>
     <message>
-        <location filename="../src/plugins/KPartition/mainpartframe.cpp" line="462"/>
-        <location filename="../src/plugins/KPartition/mainpartframe.cpp" line="602"/>
+        <location filename="../src/plugins/KPartition/mainpartframe.cpp" line="455"/>
+        <location filename="../src/plugins/KPartition/mainpartframe.cpp" line="595"/>
         <source>Next</source>
         <translation>下一步</translation>
     </message>
@@ -661,7 +647,7 @@ except EFI partition, other partition no
         <translation>挂载点要以“/”开头</translation>
     </message>
     <message>
-        <location filename="../src/plugins/KPartition/modifypartitionframe.cpp" line="472"/>
+        <location filename="../src/plugins/KPartition/modifypartitionframe.cpp" line="448"/>
         <source>close</source>
         <translation>关闭</translation>
     </message>
@@ -683,32 +669,32 @@ except EFI partition, other partition no
 <context>
     <name>KInstaller::SlideShow</name>
     <message>
-        <location filename="../src/Installer_main/uilt/slidershow.cpp" line="243"/>
+        <location filename="../src/Installer_main/uilt/slidershow.cpp" line="65"/>
         <source>Multi platform support, suitable for mainstream CPU platforms at home and abroad.</source>
         <translation>多平台支持，适配国内外主流CPU平台。</translation>
     </message>
     <message>
-        <location filename="../src/Installer_main/uilt/slidershow.cpp" line="244"/>
+        <location filename="../src/Installer_main/uilt/slidershow.cpp" line="66"/>
         <source>Ukui desktop environment meets personalized needs.</source>
         <translation>UKUI桌面环境，满足个性化需求。</translation>
     </message>
     <message>
-        <location filename="../src/Installer_main/uilt/slidershow.cpp" line="245"/>
+        <location filename="../src/Installer_main/uilt/slidershow.cpp" line="67"/>
         <source>The system is updated and upgraded more conveniently.</source>
         <translation>系统更新，升级更便捷。</translation>
     </message>
     <message>
-        <location filename="../src/Installer_main/uilt/slidershow.cpp" line="246"/>
+        <location filename="../src/Installer_main/uilt/slidershow.cpp" line="68"/>
         <source>Security center, all-round protection of data security.</source>
         <translation>安全中心，全方位保护数据安全。</translation>
     </message>
     <message>
-        <location filename="../src/Installer_main/uilt/slidershow.cpp" line="247"/>
+        <location filename="../src/Installer_main/uilt/slidershow.cpp" line="69"/>
         <source>Software store, featured software recommendation.</source>
         <translation>软件商店，精选软件推荐。</translation>
     </message>
     <message>
-        <location filename="../src/Installer_main/uilt/slidershow.cpp" line="248"/>
+        <location filename="../src/Installer_main/uilt/slidershow.cpp" line="70"/>
         <source>Provide technical support and professional after-sales service.</source>
         <translation>技术支持，提供专业的售后服务。</translation>
     </message>
@@ -1153,8 +1139,8 @@ you will not be able to access the disk
         <location filename="../src/plugins/KPartition/partman/operationdisk.cpp" line="205"/>
         <source>Format %1 partition, %2
 </source>
-        <translation>格式化分区 %1,%2
-</translation>
+        <translation>格式化分区 {1 ?} {2
+?}</translation>
     </message>
     <message>
         <location filename="../src/plugins/KPartition/partman/operationdisk.cpp" line="208"/>
@@ -1167,8 +1153,8 @@ you will not be able to access the disk
         <location filename="../src/plugins/KPartition/partman/operationdisk.cpp" line="213"/>
         <source>%1 partition mountPoint %2
 </source>
-        <translation>%1 分区挂载点 %2
-</translation>
+        <translation>分区挂载点 {1 ?} {2
+?}</translation>
     </message>
     <message>
         <location filename="../src/plugins/KPartition/partman/operationdisk.cpp" line="217"/>
@@ -1284,7 +1270,7 @@ you will not be able to access the disk
     <message>
         <location filename="../src/plugins/PluginService/sysInfo/kpasswordcheck.cpp" line="92"/>
         <source>The password contains too few digits</source>
-        <translation>密码包含的数字字符太少</translation>
+        <translation>密码包含的数字字符少于 %ld 位</translation>
     </message>
     <message>
         <location filename="../src/plugins/PluginService/sysInfo/kpasswordcheck.cpp" line="97"/>
--- kylin-os-installer-1.1.1.1.orig/scripts/in_chroot/00setup-timezone
+++ kylin-os-installer-1.1.1.1/scripts/in_chroot/00setup-timezone
@@ -19,6 +19,7 @@ if echo "${TIMEZONE}" | grep -q Urumqi;
     TIMEZONE=Asia/Shanghai
 fi
 
+echo "${TIMEZONE}"  >/etc/timezone
 
 msg "设置时区为 ${TIMEZONE}"
 ln -sf /usr/share/zoneinfo/"${TIMEZONE}" /etc/localtime
--- kylin-os-installer-1.1.1.1.orig/scripts/oem.sh
+++ kylin-os-installer-1.1.1.1/scripts/oem.sh
@@ -57,8 +57,8 @@ set_timezone()
         timeZone=Asia/Shanghai
     fi
 
+    echo "${TIMEZONE}"  >/etc/timezone
     ln -sf /usr/share/zoneinfo/$timeZone /etc/localtime
-
     hwclock -w
 }
 
--- kylin-os-installer-1.1.1.1.orig/scripts/prepare/00umount
+++ kylin-os-installer-1.1.1.1/scripts/prepare/00umount
@@ -21,25 +21,6 @@ if grep -q '/target' /proc/mounts; then
     umount -l /target || true
 fi
 
-delete_lvm() {
-    local DEVICE=$1
-    vg_path="/dev/$(pvdisplay -c | grep -i "$DEVICE" | awk -F ":" '{print $2}')" || true
-    pv_name=$(pvdisplay -c | grep -i "$DEVICE" | awk -F ":" '{print $1}') || true
-    
-    if [ -n "$pv_name" ]; then
-        if [ -f "$vg_path" ]; then
-                lvremove -f $vg_path/* || true
-        fi
-        vgremove -f $vg_path || true
-        pvremove -f $pv_name || true
-    fi
-}
-lvm_disk=$(get_value devpath)
-delete_lvm ${lvm_disk}
-lvm_data=$(get_value data-device)
-if [[ -n ${lvm_data} ]]; then
-	delete_lvm ${lvm_data}
-fi
 format_disk=$(get_value format-disk)
 
 if [[ ${format_disk} == "false" ]]; then
--- kylin-os-installer-1.1.1.1.orig/scripts/prepare/10partition
+++ kylin-os-installer-1.1.1.1/scripts/prepare/10partition
@@ -42,7 +42,8 @@ parted -s "${disk}" mkpart extended "${s
 
 ### root
 start=$((start + 1))
-if [[ "${isluks_lvm}" == "true" ]] || [[ "${lvm}" == "true" ]]; then
+
+if [[ "${isluks_lvm}" == "true" ]]; then
   parted -s "${disk}" mkpart logical ext4 "${start}"MiB 100%
 else
   parted -s "${disk}" mkpart logical ext4 "${start}"MiB "${end}"MiB
@@ -110,54 +111,6 @@ if [[ "${isluks_lvm}" == "true" ]]; then
         lvcreate --wipesignatures n -L "${root_size}" -n root kylin-vg
         lvcreate --wipesignatures n -L "${backup_size}" -n backup kylin-vg
         lvcreate --wipesignatures n -L "${data_size}" -n data kylin-vg
-  fi
-  
-  if [[ "${disk_custom}" == "true" ]]; then
-        lvcreate --wipesignatures n -l "${data_size}" -n swap kylin-vg
-  else
-        lvcreate --wipesignatures n -l 100%free -n swap kylin-vg
-  fi
-
-  return 0
-fi
-
-
-if [[ "${lvm}" == "true" ]]; then
-  parted -s "${disk}" set 1 boot on
-  partprobe "${disk}"
-  sync
-  if echo "${disk}" | grep -q nvme; then
-    disk=${disk}p
-  fi
-  sleep 1
-
-  if [[ -n ${data_device} ]]; then
-        umount -l "${data_device}" || true
-        parted -s "${data_device}" mktable msdos
-        parted -s "${data_device}" mkpart primary ext4 1MiB 100%
-        if echo "${data_device}" | grep -q nvme; then
-                data_device=${data_device}p
-        fi
-        data_uuid=$(lsblk -ro name,uuid | grep "${data_device##*/}1 " | awk '{print $2}')
-        pvcreate -ffy /dev/"${data_device##*/}"1
-        vgcreate kylin-vg1 /dev/"${data_device##*/}"1
-        lvcreate --wipesignatures n -l 100%free -n data kylin-vg1
-
-  	root_uuid=$(lsblk -ro name,uuid | grep "${disk##*/}5 " | awk '{print $2}')
-  	echo "${disk##*/}5 UUID=${root_uuid} none luks" >/etc/crypttab
-        echo "${data_device##*/}1 UUID=${data_uuid} none luks" >>/etc/crypttab
-  	pvcreate -ffy /dev/"${disk##*/}"5
-  	vgcreate kylin-vg /dev/"${disk##*/}"5
-  	lvcreate --wipesignatures n -L "${root_size}" -n root kylin-vg
-  	lvcreate --wipesignatures n -L "${backup_size}" -n backup kylin-vg
-  else
-        root_uuid=$(lsblk -ro name,uuid | grep "${disk##*/}5 " | awk '{print $2}')
-        echo "${disk##*/}5 UUID=${root_uuid} none luks" >/etc/crypttab
-        pvcreate -ffy /dev/"${disk##*/}"5
-        vgcreate kylin-vg /dev/"${disk##*/}"5
-        lvcreate --wipesignatures n -L "${root_size}" -n root kylin-vg
-        lvcreate --wipesignatures n -L "${backup_size}" -n backup kylin-vg
-        lvcreate --wipesignatures n -L "${data_size}" -n data kylin-vg
   fi
   
   if [[ "${disk_custom}" == "true" ]]; then
--- kylin-os-installer-1.1.1.1.orig/scripts/prepare/10partition-efi
+++ kylin-os-installer-1.1.1.1/scripts/prepare/10partition-efi
@@ -45,7 +45,7 @@ parted -s "${disk}" mkpart "boot" ext4 "
 start=${end}
 end=$((end + root_size))
 
-if [[ "${isluks_lvm}" == "true" ]] || [[ "${lvm}" == "true" ]]; then
+if [[ "${isluks_lvm}" == "true" ]]; then
   parted -s "${disk}" mkpart "SYSROOT" ext4 "${start}"MiB 100%
 else
   parted -s "${disk}" mkpart "SYSROOT" ext4 "${start}"MiB "${end}"MiB
@@ -125,47 +125,6 @@ if [[ "${isluks_lvm}" == "true" ]]; then
   return 0
 fi
 
-if [[ "${lvm}" == "true" ]]; then
-  parted -s "${disk}" set 1 esp on
-  partprobe "${disk}"
-  sync
-  if echo "${disk}" | grep -q nvme; then
-    disk=${disk}p
-  fi
-  sleep 1
-  if [[ -n ${data_device} ]]; then
-        umount -l "${data_device}" || true
-        parted -s "${data_device}" mktable gpt
-        parted -s "${data_device}" mkpart "data" ext4 1MiB 100%
-  	partprobe "${data_device}"
-  	sync
-        if echo "${data_device}" | grep -q nvme; then
-                data_device=${data_device}p
-        fi
-        pvcreate -ffy /dev/"${data_device##*/}"1
-        vgcreate kylin-vg1 /dev/"${data_device##*/}"1
-        lvcreate --wipesignatures n -l 100%free -n data kylin-vg1
-
-  	pvcreate -ffy /dev/"${disk##*/}"3
-  	vgcreate kylin-vg /dev/"${disk##*/}"3
-  	lvcreate --wipesignatures n -L "${root_size}" -n root kylin-vg
-  	lvcreate --wipesignatures n -L "${backup_size}" -n backup kylin-vg
-
-  else
-        pvcreate -ffy /dev/"${disk##*/}"3
-        vgcreate kylin-vg /dev/"${disk##*/}"3
-        lvcreate --wipesignatures n -L "${root_size}" -n root kylin-vg
-        lvcreate --wipesignatures n -L "${backup_size}" -n backup kylin-vg
-        lvcreate --wipesignatures n -L "${data_size}" -n data kylin-vg
-  fi
-
-  if [[ "${disk_custom}" == "true" ]]; then
-        lvcreate --wipesignatures n -l "${data_size}" -n swap kylin-vg
-  else
-        lvcreate --wipesignatures n -l 100%free -n swap kylin-vg
-  fi
-  return 0
-fi
 
 ### backup
 start=${end}
--- kylin-os-installer-1.1.1.1.orig/scripts/prepare/13mount-target
+++ kylin-os-installer-1.1.1.1/scripts/prepare/13mount-target
@@ -35,7 +35,7 @@ do_mkfs_efi(){
   if [[ "${is_990_9a0}" == "true" ]]; then
     sudo mkfs.vfat -s1 -n ESP "${disk}1"
   else
-    sudo mkfs.vfat -n ESP "${disk}1"
+    sudo mkfs.vfat -n ESP "${disk}1" || sudo mkfs.vfat -F16 -n ESP "${disk}1"
   fi
 }
 
@@ -72,18 +72,6 @@ if [[ "${is_efi}" == "true" ]]; then
   	part_data="${disk}5"
   	part_swap="${disk}6"
   fi 
-  
-  if [[ "${lvm}" == "true" ]]; then
-    part_root="/dev/kylin-vg/root"
-    part_backup="/dev/kylin-vg/backup"
-    if [[ -n ${data_device} ]]; then
-            part_data="/dev/kylin-vg1/data"
-    else
-            part_data="/dev/kylin-vg/data"
-    fi
-    part_swap="/dev/kylin-vg/swap"
-  fi
-  
   if [[ "${isluks_lvm}" == "true" ]]; then
     part_root="/dev/mapper/kylin--vg-root"
     part_backup="/dev/mapper/kylin--vg-backup"
@@ -180,16 +168,6 @@ else
   	part_swap="${disk}8"
   fi
 
-  if [[ "${lvm}" == "true" ]]; then
-    part_root="/dev/kylin-vg/root"
-    part_backup="/dev/kylin-vg/backup"
-    if [[ -n ${data_device} ]]; then
-            part_data="/dev/kylin-vg1/data"
-    else
-            part_data="/dev/kylin-vg/data"
-    fi
-    part_swap="/dev/kylin-vg/swap"
-  fi
   if [[ "${isluks_lvm}" == "true" ]]; then
     part_root="/dev/mapper/kylin--vg-root"
     part_backup="/dev/mapper/kylin--vg-backup"
--- kylin-os-installer-1.1.1.1.orig/scripts/prepare/13mount-target-custom
+++ kylin-os-installer-1.1.1.1/scripts/prepare/13mount-target-custom
@@ -49,7 +49,7 @@ do_mkfs_efi(){
   if [[ "${is_990_9a0}" == "true" ]]; then
     sudo mkfs.vfat -s1 -n ESP "${part_efi}"
   else
-    sudo mkfs.vfat -n ESP "${part_efi}"
+    sudo mkfs.vfat -n ESP "${part_efi}" || sudo mkfs.vfat -F16 -n ESP "${part_efi}"
   fi
 }
 
--- kylin-os-installer-1.1.1.1.orig/scripts/utils
+++ kylin-os-installer-1.1.1.1/scripts/utils
@@ -367,8 +367,6 @@ readonly is_ghost=$(get_value ghost)
 
 readonly isluks_lvm=$(get_value encrypty)
 
-readonly lvm=$(get_value lvm)
-
 run_scripts_dir() {
     name=$1
     for i in ${name}/*; do
--- kylin-os-installer-1.1.1.1.orig/src/plugins/KChoiceLanguage/languageframe.cpp
+++ kylin-os-installer-1.1.1.1/src/plugins/KChoiceLanguage/languageframe.cpp
@@ -11,6 +11,7 @@
 #include <QTextStream>
 #include "../PluginService/klinguist.h"
 #include "../PluginService/ksystemenv.h"
+#include "../PluginService/ksystemsetting_unit.h"
 #include "../PluginService/kdir.h"
 #include "../PluginService/ui_unit/keyeventcontrol.h"
 #include "../PluginService/ui_unit/xrandrobject.h"
@@ -30,14 +31,6 @@ LanguageFrame::LanguageFrame(QWidget *pa
     emulang.append(pir1);
   #endif
 
- #ifdef LANGUAGE_ZH_HK
-   QPair<QString,QPair<PushButtonCheck*,QString>> pir5;
-   pir5.first="zh_HK";
-   pir5.second.first=NULL;
-   pir5.second.second="中文(繁體)";
-   emulang.append(pir5);
- #endif
-
  #ifdef LANGUAGE_EN_US
     QPair<QString,QPair<PushButtonCheck*,QString>> pir2;
     pir2.first="en_US";
@@ -50,7 +43,7 @@ LanguageFrame::LanguageFrame(QWidget *pa
     QPair<QString,QPair<PushButtonCheck*,QString>> pir3;
     pir3.first="bo_CN";
     pir3.second.first=NULL;
-    pir3.second.second="བོད་ཡིག";//藏语
+    pir3.second.second="བོད་ཡིག";
     emulang.append(pir3);
    #endif
 
@@ -58,59 +51,22 @@ LanguageFrame::LanguageFrame(QWidget *pa
     QPair<QString,QPair<PushButtonCheck*,QString>> pir4;
     pir4.first="ru_RU";
     pir4.second.first=NULL;
-    pir4.second.second="русский язык";//俄语
+    pir4.second.second="русский язык";
     emulang.append(pir4);
   #endif
-
- #ifdef LANGUAGE_UG_CN
-   QPair<QString,QPair<PushButtonCheck*,QString>> pir6;
-   pir6.first="ug_CN";
-   pir6.second.first=NULL;
-   pir6.second.second="Uyghur";//维吾尔语
-   emulang.append(pir6);
- #endif
-
-#ifdef LANGUAGE_KK_CN
-  QPair<QString,QPair<PushButtonCheck*,QString>> pir7;
-  pir7.first="kk_CN";
-  pir7.second.first=NULL;
-  pir7.second.second="Қазақ";//哈萨克语
-  emulang.append(pir7);
-#endif
-
-#ifdef LANGUAGE_KY_CN
-  QPair<QString,QPair<PushButtonCheck*,QString>> pir8;
-  pir8.first="ky_CN";
-  pir8.second.first=NULL;
-  pir8.second.second="قىرعىز تىلى";//柯尔克孜语
-  emulang.append(pir8);
-#endif
-
     //翻译列表，按照从上倒下的按键顺序排列
   //  emulang.append(qMakePair("zh_CN","中文(简体)"));
 //    emulang.append(qMakePair("en_US","English"));
 //    emulang.append(qMakePair("bo_CN","བོད་ཡིག"));
 //    emulang.append(qMakePair("ru_RU","русский язык"));
 
-    QList<LanguageSetInINI> LanguageList = ReadLanguageIni();//获取安装器已支持语言的列表
-    for (int i = 0; i < LanguageList.size(); ++i)
-    {
-        if(LanguageList.at(i).lsInCurrentList)//加载显示语言列表
-        {
-            QPair<QString,QPair<PushButtonCheck*,QString>> pir;
-            pir.first=LanguageList.at(i).Language;
-            pir.second.first=NULL;
-            pir.second.second=LanguageList.at(i).display;
-            emulang.append(pir);
-        }
-    }
 
     m_pQtTranslator = new QTranslator;
     m_pCurTranslator = new QTranslator;
     this->initNextBnt();
     initUI();
     addStyleSheet();
-//    readSettingIni();
+    readSettingIni();
     this->setFocus();
 }
 
@@ -124,16 +80,16 @@ void LanguageFrame::initUI()
     gLayoutl->setColumnStretch(1, 2);
     gLayoutl->setColumnStretch(2, 3);
 
-    int lay_index=0;
-    gLayoutl->addItem(new QSpacerItem(10, 40, QSizePolicy::Expanding, QSizePolicy::Preferred), lay_index, 1, 1, 1);
-    lay_index++;
+    gLayoutl->addItem(new QSpacerItem(10, 40, QSizePolicy::Expanding, QSizePolicy::Preferred), 0, 1, 1, 1);
     m_mainTitle = new QLabel();
     m_mainTitle->setObjectName("mainTitle");
-    gLayoutl->addWidget(m_mainTitle, lay_index, 1, 1, 1, Qt::AlignCenter);
-    lay_index++;
-    gLayoutl->addItem(new QSpacerItem(10, 40, QSizePolicy::Expanding, QSizePolicy::Preferred), lay_index, 1, 1, 1);
-    lay_index++;
 
+    gLayoutl->addWidget(m_mainTitle, 1, 1, 1, 1, Qt::AlignCenter);
+    gLayoutl->addItem(new QSpacerItem(10, 40, QSizePolicy::Expanding, QSizePolicy::Preferred), 2, 1, 1, 1);
+
+
+
+    int lay_index=3;
     for(int k=0;k< emulang.count();k++)
     {
         PushButtonCheck *m_Btn = new PushButtonCheck(emulang.at(k).second.second);
@@ -152,11 +108,7 @@ void LanguageFrame::initUI()
        m_curSystenlocal=QLocale::system().name();
        if (m_curSystenlocal == emulang.at(k).first || (m_curSystenlocal == "C" && emulang.at(k).first == "en_US") )
        {
-               changeLanguage(m_Btn);//默认语言为当前系统语言
-       }
-       else if(0 == k)
-       {
-               changeLanguage(m_Btn);//如果ky-langcurrent.cfg中的当前显示语言列表中不含当前系统语言时，则默认语言为此列表中第一个语言
+               changeLanguage(m_Btn);
        }
         gLayoutl->addWidget(m_Btn, lay_index, 1, 1, 1, Qt::AlignCenter);
         lay_index++;
@@ -164,7 +116,7 @@ void LanguageFrame::initUI()
         lay_index++;
     }
 
-    gLayoutl->addItem(new QSpacerItem(10, 200, QSizePolicy::Expanding, QSizePolicy::Expanding), lay_index, 1, 1, 1);
+    gLayoutl->addItem(new QSpacerItem(lay_index, 200, QSizePolicy::Expanding, QSizePolicy::Expanding), 10, 1, 1, 1);
     translateStr();
 
 }
@@ -192,9 +144,7 @@ void LanguageFrame::readSettingIni()
 
 void LanguageFrame::writeSettingIni()
 {
-    QString strLang = ReadSettingIni("config", "language");
-    if(strLang != m_curSystenlocal)
-        WriteSettingToIni("config", "language", m_curSystenlocal);
+    WriteSettingToIni("config", "language", m_curSystenlocal);
 }
 
 void LanguageFrame::changeLanguage(PushButtonCheck* obj)
@@ -216,8 +166,8 @@ void LanguageFrame::changeLanguage(PushB
         qApp->installTranslator(m_pQtTranslator);
     }
 
-    qDebug()<<"language qm file path="<<langPath;
-    qDebug()<<"current language="<<m_curSystenlocal;
+    qDebug()<<"path5="<<langPath;
+    qDebug()<<"path6="<<m_curSystenlocal;
     unsetenv("LANG");
     setenv("LANG", obj->objectName().toStdString().c_str(),1);
     writeSettingIni();
@@ -271,7 +221,7 @@ void LanguageFrame::keyPressEvent(QKeyEv
                 break;
         }
 
-        if ((++k) >= emulang.count())
+        if ((++k) == emulang.count())
             k=0;
         m_curSystenlocal = emulang.at(k).first;
         changeLanguage(emulang.at(k).second.first);//bug131879
--- kylin-os-installer-1.1.1.1.orig/src/plugins/KChoiceLanguage/languageframe.h
+++ kylin-os-installer-1.1.1.1/src/plugins/KChoiceLanguage/languageframe.h
@@ -9,20 +9,18 @@
 #include "../PluginService/ui_unit/comboxdelegate.h"
 #include "../PluginService/ui_unit/comboxlistmodel.h"
 #include "../PluginService/ui_unit/middleframemanager.h"
-#include "../PluginService/ksystemsetting_unit.h"
 #include <QEvent>
 #include <QPushButton>
 #include "pushbuttoncheck.h"
 #include <QPair>
 
-//#define LANGUAGE_ZH_CN
-//#define LANGUAGE_EN_US
-//#define LANGUAGE_BO_CN
-////#define LANGUAGE_RU_RU
-//#define LANGUAGE_ZH_HK
-//#define LANGUAGE_UG_CN
-//#define LANGUAGE_KK_CN
-//#define LANGUAGE_KY_CN
+
+#define LANGUAGE_ZH_CN
+#define LANGUAGE_EN_US
+#define LANGUAGE_BO_CN
+//#define LANGUAGE_RU_RU
+
+
 
 using namespace KServer;
 namespace KInstaller {
--- kylin-os-installer-1.1.1.1.orig/src/plugins/KPartition/custompartitionframe.cpp
+++ kylin-os-installer-1.1.1.1/src/plugins/KPartition/custompartitionframe.cpp
@@ -224,22 +224,12 @@ void CustomPartitionFrame::slotCreatePar
 void CustomPartitionFrame::slotDeletePartition(Device::Ptr dev, Partition::Ptr part)
 {
     qDebug() << "slotDeletePartition" ;
-    MessageBox *message=new MessageBox;
-
-    if(part->m_OSname.isEmpty())
-        message->setMessageInfo(tr("remove this partition?"));
-    else
-        message->setMessageInfo(tr("This is a system partition,remove this partition?"));
-    if (message->exec() == QDialog::Rejected && message->execid == 1){
-        qDebug() << "Delete Partition cancel" ;
-        return;
-    }
-
     if(part) {
         m_delegate->deletePartition(part);
         m_delegate->refreshShow();
         repaintDevice();
     }
+
 }
 void CustomPartitionFrame::slotRestorePartition()
 {
--- kylin-os-installer-1.1.1.1.orig/src/plugins/KPartition/custompartitionframe.h
+++ kylin-os-installer-1.1.1.1/src/plugins/KPartition/custompartitionframe.h
@@ -58,7 +58,7 @@ public slots:
 public:
     QList<TableWidgetView*> m_tableViews;               //分区列表
     QGridLayout* gridLayout;                            //自定义安装的总界面
-    DiskPartitionColorProgress* m_colorProgressFrame;   //分区大小比例条，位于总界面最上面
+    DiskPartitionColorProgress* m_colorProgressFrame;   //分区进度条，位于总界面最上面
     //新建分区表New partition table,还原revert
     QPushButton* m_revertBtn;
     QLabel* m_mainTitle;
--- kylin-os-installer-1.1.1.1.orig/src/plugins/KPartition/delegate/partition_delegate.cpp
+++ kylin-os-installer-1.1.1.1/src/plugins/KPartition/delegate/partition_delegate.cpp
@@ -156,6 +156,12 @@ void PartitionDelegate::addSelectDevice(
     m_selDevices.append(device);
 }
 
+void PartitionDelegate::removeSelectDevice(QString devpath)
+{
+    if(devpath.isEmpty())
+        m_selDevices.clear();
+}
+
 void PartitionDelegate::createDeviceTable(Device::Ptr& dev)
 {
     Device::Ptr newDev(new Device(*dev));
--- kylin-os-installer-1.1.1.1.orig/src/plugins/KPartition/delegate/partition_delegate.h
+++ kylin-os-installer-1.1.1.1/src/plugins/KPartition/delegate/partition_delegate.h
@@ -60,6 +60,7 @@ public:
     }
 
     virtual void addSelectDevice(Device::Ptr device);
+    virtual void removeSelectDevice(QString devpath);
 
     virtual void onDeviceRefreshed(DeviceList devices);
 
--- kylin-os-installer-1.1.1.1.orig/src/plugins/KPartition/frames/encryptsetframe.cpp
+++ kylin-os-installer-1.1.1.1/src/plugins/KPartition/frames/encryptsetframe.cpp
@@ -150,6 +150,7 @@ void EncryptSetFrame::initPasswdWidget()
     m_pPasswordPrompt->setMinimumWidth(332);
     m_pPasswordPrompt->setWordWrap(true);
     m_pPasswordPrompt->setText(tr("The password contains less than two types of characters"));
+    m_pPasswordPrompt->setVisible(false);
 
     m_pPasswordPromptHBoxLayout->addItem(new QSpacerItem(114, 6, QSizePolicy::Fixed));
     m_pPasswordPromptHBoxLayout->addWidget(m_pPasswordPrompt);
@@ -211,6 +212,7 @@ void EncryptSetFrame::initConmfirmPasswd
     m_pConfirmTipInfoLabel->setFixedWidth(332);
     m_pConfirmTipInfoLabel->setObjectName("confirmTipInfoLabel");
     m_pConfirmTipInfoLabel->setText(tr("The two passwords are different"));
+    m_pConfirmTipInfoLabel->setVisible(false);
 
     m_pConfirmTipInfoHBoxLayout->addItem(new QSpacerItem(114, 10, QSizePolicy::Fixed));
     m_pConfirmTipInfoHBoxLayout->addWidget(m_pConfirmTipInfoLabel);
@@ -418,20 +420,22 @@ void EncryptSetFrame::checkPasswd(QStrin
     m_LabelState = LabelState::Pwd;
     pwd = m_pPasswordBox->text();
     m_state = KCheckPassWD(pwd, errstr, "");
-    if(m_state == CheckState::OK) {
+    if(pwd.isEmpty()) {
         m_pPasswordPrompt->setVisible(false);
-        pwdIsOK = true;
-        m_flag = true;
-    } else if(pwd.isEmpty()) {
-        m_pPasswordPrompt->setVisible(true);
         pwdIsOK = false;
         m_flag = true;
+    } else if(m_state == CheckState::OK) {
+        m_pPasswordPrompt->setVisible(false);
+        pwdIsOK = true;
+        m_flag = true;
     } else {
+        m_pPasswordPrompt->setText(errstr);
         m_pPasswordPrompt->setVisible(true);
         pwdIsOK = false;
         m_flag = false;
     }
     translateStr();
+    checkComfirmPasswd(m_pPasswordCanfirmBox->text());
 }
 
 void EncryptSetFrame::checkComfirmPasswd(QString comfirmpwd)
@@ -442,7 +446,10 @@ void EncryptSetFrame::checkComfirmPasswd
     if (comfirmpwd.isEmpty()==true) {
         cpwdIsOK = false;
         m_flag = true;
-        m_pConfirmTipInfoLabel->setVisible(true);
+        if(pwd.isEmpty())
+            m_pConfirmTipInfoLabel->setVisible(false);
+        else
+            m_pConfirmTipInfoLabel->setVisible(true);
     } else if (comfirmpwd.compare(pwd)==0) {
         m_pConfirmTipInfoLabel->setVisible(false);
         cpwdIsOK = true;
--- kylin-os-installer-1.1.1.1.orig/src/plugins/KPartition/mainpartframe.cpp
+++ kylin-os-installer-1.1.1.1/src/plugins/KPartition/mainpartframe.cpp
@@ -156,6 +156,10 @@ void MainPartFrame::showQuikPartFrame()
         if(m_quickDelegate->selectedDevices().length() > 0) {
             getChoiceDisk(true);
         }
+        else
+        {
+            getChoiceDisk(false);
+        }
         m_mainStackWidget->setCurrentWidget(m_fullPartFrame);
         enumCheckBtn = InstallBtn::QuikPart;
         m_customInstallBtn->setChecked(false);
@@ -661,7 +665,6 @@ void MainPartFrame::DiskNumCheck(int num
 {
     m_loadpic->hide();
     m_fullPartFrame->m_encryptBox->show();
-    m_fullPartFrame->m_lvm->show();
     m_fullPartFrame->m_firstback->show();
     m_fullInstallBtn->setEnabled(true);
     m_customInstallBtn->setEnabled(true);
--- kylin-os-installer-1.1.1.1.orig/src/plugins/KPartition/mainpartframe.h
+++ kylin-os-installer-1.1.1.1/src/plugins/KPartition/mainpartframe.h
@@ -72,7 +72,7 @@ public:
 
     QPushButton* m_fullInstallBtn = nullptr;
     QPushButton* m_customInstallBtn = nullptr;
-    QPushButton* m_coexistInstallBtn = nullptr;
+//    QPushButton* m_coexistInstallBtn = nullptr;
     QLabel* m_mainTitle = nullptr;
     QLabel* promptLabel = nullptr;
     CustomPartitiondelegate* m_partDelegate;
--- kylin-os-installer-1.1.1.1.orig/src/plugins/KPartition/quickpartitionframe.cpp
+++ kylin-os-installer-1.1.1.1/src/plugins/KPartition/quickpartitionframe.cpp
@@ -69,12 +69,8 @@ void FullPartitionFrame::initUI()
     m_encryptBox->setHidden(true);
     m_encryptBox->setObjectName("encryptBox");
 
-    //全盘lvm安装
-    m_lvm = new QCheckBox;
-    m_lvm->setHidden(true);
-    m_lvm->setObjectName("lvm");
+    //全盘安装加密
 
-    //保留数据安装
     m_savehistory = new QCheckBox;
     m_savehistory->setDisabled(true);
     m_savehistory->setVisible(false);
@@ -85,8 +81,6 @@ void FullPartitionFrame::initUI()
     midhlayout->addItem(new QSpacerItem(40, 10, QSizePolicy::MinimumExpanding, QSizePolicy::Minimum));
     midhlayout->addWidget(m_encryptBox,Qt::AlignRight);
     midhlayout->addItem(new QSpacerItem(40, 10, QSizePolicy::MinimumExpanding, QSizePolicy::Minimum));
-    midhlayout->addWidget(m_lvm,Qt::AlignRight);
-    midhlayout->addItem(new QSpacerItem(40, 10, QSizePolicy::MinimumExpanding, QSizePolicy::Minimum));
     midhlayout->addWidget(m_savehistory,Qt::AlignRight);
     midhlayout->addItem(new QSpacerItem(1000, 10, QSizePolicy::Expanding, QSizePolicy::Minimum));
 
@@ -142,7 +136,6 @@ void FullPartitionFrame::initAllConnect(
     connect(this, &FullPartitionFrame::leftCliked, slistDisk, &LevelScrollDiskView::checkDiskLeft);
     connect(this, &FullPartitionFrame::rightClicked, slistDisk, &LevelScrollDiskView::checkDiskRight);
     connect(m_encryptBox, &QCheckBox::clicked, this, &FullPartitionFrame::setEncryptyToDisk);
-    connect(m_lvm, &QCheckBox::clicked, this, &FullPartitionFrame::setLvmToDisk);
     connect(m_savehistory,&QCheckBox::clicked,[=]() {
         if (m_savehistory->isChecked()==true) {
             message=new MessageBox;
@@ -153,7 +146,6 @@ void FullPartitionFrame::initAllConnect(
             if (ret == QDialog::Accepted) {
                 qDebug() << "Accepted:" << ret;
             	m_encryptBox->setDisabled(true);
-            	m_lvm->setDisabled(true);
             	foreach (DiskInfoView* p,  slistDisk->m_disklist) {
                 	p->dataSel->setDisabled(true);
             	}
@@ -162,7 +154,6 @@ void FullPartitionFrame::initAllConnect(
             }
         } else {
             m_encryptBox->setDisabled(false);
-            m_lvm->setDisabled(false);
             foreach (DiskInfoView* p,  slistDisk->m_disklist) {
                 p->dataSel->setDisabled(false);
             }
@@ -173,23 +164,9 @@ void FullPartitionFrame::initAllConnect(
       if(m_encryptBox->isChecked()==true)
         {
      m_savehistory->setDisabled(true);
-     m_lvm->setDisabled(true);
         }
     else{
      m_savehistory->setDisabled(false);
-     m_lvm->setDisabled(false);
-    }
-    });
-
-    connect(m_lvm,&QCheckBox::clicked,[=](){
-      if(m_lvm->isChecked()==true)
-        {
-     m_savehistory->setDisabled(true);
-     m_encryptBox->setDisabled(true);
-        }
-    else{
-     m_savehistory->setDisabled(false);
-     m_encryptBox->setDisabled(false);
     }
     });
 
@@ -248,7 +225,6 @@ void FullPartitionFrame::translateStr()
 {
     m_tip->setText(tr("Please choose custom way to install, disk size less than 50G!"));//请选择自定义方式进行安装！
     m_encryptBox->setText(tr("Full disk encryption"));
-    m_lvm->setText(tr("lvm"));
     m_firstback->setText(tr("Factory backup"));
     m_savehistory->setText(tr("save history date"));
 //     promptLabel->setText(tr("Quick installation will format the entire hard drive!"
@@ -261,6 +237,7 @@ void FullPartitionFrame::currentDiskID(Q
     m_savehistory->setDisabled(true);
     m_savehistory->setVisible(false);
     if(devpath.isEmpty()) {
+        m_quickDelegate->removeSelectDevice(devpath);
         emit signalSeclectedListItem(false);
         qDebug() << "devPath is error";
         return;
@@ -344,16 +321,6 @@ void FullPartitionFrame::setEncryptyToDi
 
 }
 
-
-void FullPartitionFrame::setLvmToDisk()
-{
-    if(m_lvm->isChecked()) {
-            WriteSettingToIni("Encrypty", "lvm", "true");
-    } else {
-            WriteSettingToIni("Encrypty", "lvm", "false");
-    }
-
-}
 void FullPartitionFrame::DataDiskCheck(bool value)
 {
         //m_encryptBox->setDisabled(value);
--- kylin-os-installer-1.1.1.1.orig/src/plugins/KPartition/quickpartitionframe.h
+++ kylin-os-installer-1.1.1.1/src/plugins/KPartition/quickpartitionframe.h
@@ -56,7 +56,6 @@ public slots:
     void currentDiskID(QString devpath);
     void repaintDevices(DeviceList devs);
     void setEncryptyToDisk();
-    void setLvmToDisk();
     void DataDiskCheck(bool value);
     void defaultOption(QString objectName);
 
@@ -80,8 +79,6 @@ public:
     int num=1;
     //加密
     QCheckBox* m_encryptBox;
-    //lvm
-    QCheckBox* m_lvm;
     //出厂备份
     QCheckBox* m_firstback;
     //保留历史数据
--- kylin-os-installer-1.1.1.1.orig/src/plugins/KTimeZone/resource.qrc
+++ kylin-os-installer-1.1.1.1/src/plugins/KTimeZone/resource.qrc
@@ -50,6 +50,5 @@
         <file>res/file/zone_en</file>
         <file>res/png/bg.png</file>
         <file>res/file/zone_bo</file>
-        <file>res/file/zone_hk</file>
     </qresource>
 </RCC>
--- kylin-os-installer-1.1.1.1.orig/src/plugins/KTimeZone/timezonemodel.cpp
+++ kylin-os-installer-1.1.1.1/src/plugins/KTimeZone/timezonemodel.cpp
@@ -9,14 +9,12 @@ QString getZoneList()
 {
     QString tmp = KServer::ReadSettingIni("config", "language");
     QString lang = "";
-     if(tmp.contains("en_US", Qt::CaseInsensitive)) {
-        lang = ":/res/file/zone_en";//英文
+     if(tmp.contains("zh_CN", Qt::CaseInsensitive)) {
+        lang = ":/res/file/zone_ch";
      } else if(tmp.contains("bo_CN", Qt::CaseInsensitive)) {
-        lang = ":/res/file/zone_bo";  //藏文  bug140681时区列表未藏化
-     } else if(tmp.contains("zh_HK", Qt::CaseInsensitive)) {
-         lang = ":/res/file/zone_hk";//中文繁体
+        lang = ":/res/file/zone_bo";  //bug140681时区列表未藏化
      } else {
-         lang = ":/res/file/zone_ch";//中文简体
+         lang = ":/res/file/zone_en";
       }
     return (QString)lang;
 }
--- kylin-os-installer-1.1.1.1.orig/src/plugins/KyLicense/licenseframe.cpp
+++ kylin-os-installer-1.1.1.1/src/plugins/KyLicense/licenseframe.cpp
@@ -88,17 +88,13 @@ QString LicenseFrame::readSettingIni()
 void LicenseFrame::loadLicense()
 {
     // 打开需要显示的许可协议文件
-    if(readSettingIni() == "en_US") {       //英文
+    if(readSettingIni() == "en_US") {
         path = ":/res/file/EULAE";
-    } else if(readSettingIni() == "bo_CN")  //藏文 BUG120265安装语言选择“藏文”，用户使用许可协议语言不是藏
+    } else if(readSettingIni() == "bo_CN")//BUG120265安装语言选择“藏文”，用户使用许可协议语言不是藏
     {
         path = ":/res/file/EULABO";
-    } else if(readSettingIni() == "zh_HK")  //中文繁体
-    {
-        path = ":/res/file/EULAHK";
-    }
-    else
-        path = ":/res/file/EULA";           //中文简体
+    } else
+        path = ":/res/file/EULA";
 
     license_text->clear();
     QFile file(path);
--- kylin-os-installer-1.1.1.1.orig/src/plugins/KyLicense/resource.qrc
+++ kylin-os-installer-1.1.1.1/src/plugins/KyLicense/resource.qrc
@@ -12,6 +12,5 @@
         <file>res/svg/discheckboxcheck.svg</file>
         <file>res/svg/checkboxcheck-hover.svg</file>
         <file>res/file/EULABO</file>
-        <file>res/file/EULAHK</file>
     </qresource>
 </RCC>
--- kylin-os-installer-1.1.1.1.orig/src/plugins/PluginService/ksystemsetting_unit.cpp
+++ kylin-os-installer-1.1.1.1/src/plugins/PluginService/ksystemsetting_unit.cpp
@@ -1,18 +1,20 @@
 ﻿#include "ksystemsetting_unit.h"
 #include <QSettings>
 #include <QFile>
-#include <QDebug>
 
 
 #define USER_INSTALL_CFG    "/usr/share/kylin-os-installer/ky-installer.cfg"
 #define CDROM_INSTALL_CFG   "/cdrom/ky-installer.cfg"
 //#define TMP_INSTALL_CFG   "/tmp/ky-installer.cfg"
-#define LANGUAGE_SUPPORT_CFG    "/usr/share/kylin-os-installer/language/ky-langsupport.cfg"
-#define LANGUAGE_CURRENT_CFG    "/usr/share/kylin-os-installer/language/ky-langcurrent.cfg"
+
 
 using namespace std;
 namespace KServer {
 
+
+
+
+
 QString ReadSettingIni(QString group, QString key)
 {
     QSettings setting(USER_INSTALL_CFG, QSettings::IniFormat);
@@ -35,99 +37,6 @@ QString AutoReadSettingIni(QString group
     return (QString)value;
 }
 
-QList<LanguageSetInINI> ReadLanguageIni(void)
-{
-    QString group("Language");
-    QMap<QString,int> LanguageShowMap;//<语言，显示顺序号>
-    QSettings setting1(LANGUAGE_CURRENT_CFG, QSettings::IniFormat);
-    setting1.setIniCodec("UTF-8");
-    setting1.beginGroup(group);
-    QStringList keys = setting1.allKeys();//默认按ASCII排序
-    QFile qfileCurrent(LANGUAGE_CURRENT_CFG);
-    qfileCurrent.open(QIODevice::ReadOnly);
-    QString strCurrentAll = qfileCurrent.readAll();
-    qfileCurrent.close();
-    int nGroupPos = strCurrentAll.indexOf("["+group+"]");
-    if(-1 == nGroupPos)
-        nGroupPos = 0;
-    for (int i = 0; i < keys.size(); ++i)
-    {
-        QString strKey = keys.at(i);
-        strKey.trimmed();
-        if(strKey.indexOf("#") == 0)//去掉注释
-        {
-            continue;
-        }
-
-        int nP = keys.size()+i;
-        int ntmp = strCurrentAll.indexOf(strKey, nGroupPos);
-        if(-1 != ntmp)
-            nP = ntmp;
-        LanguageShowMap.insert(strKey,nP);//排序改为按文件中出现的顺序来显示对应按钮
-    }
-    setting1.endGroup();
-
-    QMap<int, LanguageSetInINI> LanguageMap;//<显示顺序号，内容>
-    QString LValue;
-    QSettings setting2(LANGUAGE_SUPPORT_CFG, QSettings::IniFormat);
-    setting2.setIniCodec("UTF-8");
-    setting2.beginGroup(group);
-    QStringList keys2 = setting2.allKeys();
-    for (int i = 0; i < keys2.size(); ++i)
-    {
-        int n = keys2.size()*1000 + i;
-        LanguageSetInINI langTmp;
-
-        LValue =setting2.value(keys2.at(i)).toString();
-        LValue.trimmed();
-        if(LValue.isEmpty())
-        {
-            continue;
-        }
-        langTmp.display = LValue;
-        langTmp.Language = keys2.at(i).trimmed();
-        QMap<QString, int>::const_iterator inOrder = LanguageShowMap.find(langTmp.Language);
-        if(inOrder != LanguageShowMap.end())
-        {
-            langTmp.lsInCurrentList = true;
-            n = inOrder.value();
-        }
-        LanguageMap.insert(n, langTmp);
-    }
-    setting2.endGroup();
-
-    //按LANGUAGE_CURRENT_CFG文件内标号顺序来重排
-    QList<LanguageSetInINI> LanguageListOrdered;//已按显示顺序号排序的语言列表
-    QMap<int, LanguageSetInINI>::const_iterator iOrder = LanguageMap.constBegin();
-      while (iOrder != LanguageMap.constEnd()) {
-          LanguageListOrdered.append(iOrder.value());
-          ++iOrder;
-      }
-
-      //语言选择界面中，中文简体按钮是必须要提供的，不可屏蔽
-      bool ch = false;
-      int iLCN = 0;
-      for (; iLCN < LanguageListOrdered.size(); ++iLCN)
-      {
-          if(LanguageListOrdered.at(iLCN).Language == "zh_CN")
-          {
-              ch = true;
-              LanguageListOrdered[iLCN].lsInCurrentList = true;//不可屏蔽中文简体
-              break;
-          }
-      }
-      if(!ch)//如果没有中文简体，就新增中文简体，并且第一个显示
-      {
-          LanguageSetInINI langCNTmp;
-          langCNTmp.display = "中文(简体)";
-          langCNTmp.Language = "zh_CN";
-          langCNTmp.lsInCurrentList = true;
-          LanguageListOrdered.insert(0, langCNTmp);
-      }
-
-    return LanguageListOrdered;
-}
-
 //bool WritePwdToIni(QString group, QString key, QString value)
 //{
 //    FILE *file = fopen(GetKylinInstallPath() + "/ky-installer.cfg", "wb+");
--- kylin-os-installer-1.1.1.1.orig/src/plugins/PluginService/ksystemsetting_unit.h
+++ kylin-os-installer-1.1.1.1/src/plugins/PluginService/ksystemsetting_unit.h
@@ -16,13 +16,8 @@ struct DiskPartitionSetting
     bool uefiRequired = false;
 };
 
-struct LanguageSetInINI
-{
-    LanguageSetInINI(){}
-    QString Language;//此语言对应的QLocale::system().name()值。例如中文简体语言对应值：zh_CN
-    QString display;//此语言在 安装器选择语言界面中对应的按钮上 显示的文本。例如中文简体语言对应值：中文(简体)
-    bool lsInCurrentList = false;//此语言是否在安装器中展示
-};
+
+
 
 //从systemsetting.ini文件中，读取当前语言设置
 //QString ReadSettingIniSet(QString key);
@@ -45,7 +40,6 @@ bool WriteSettingToIni(QString group, QS
 bool WritePwdToIni(QString group, QString key, QString value);
 QString ReadSettingIni(QString group, QString key);
 QString AutoReadSettingIni(QString group, QString key);
-QList<LanguageSetInINI> ReadLanguageIni(void);
 
 bool getSettingBool(QString key);
 
