32 lines
		
	
	
		
			1.0 KiB
		
	
	
	
		
			Bash
		
	
	
		
			Executable File
		
	
	
	
	
			
		
		
	
	
			32 lines
		
	
	
		
			1.0 KiB
		
	
	
	
		
			Bash
		
	
	
		
			Executable File
		
	
	
	
	
| #!/bin/bash
 | |
| 
 | |
| LANGUAGE_CODE="$1"
 | |
| COUNTRY_CODE="$2"
 | |
| LOCALE="${LANGUAGE_CODE}_${COUNTRY_CODE}.UTF-8"
 | |
| LIBREOFFICE_CODE="$3"
 | |
| ONLY_LXQT="$4"
 | |
| 
 | |
| # Special handling for language packs for Chinese
 | |
| if [[ "$LANGUAGE_CODE" == "zh" ]]; then
 | |
|     if [[ "$COUNTRY_CODE" == "CN" || "$COUNTRY_CODE" == "SG" || "$COUNTRY_CODE" == "MY" ]]; then
 | |
|         LANG_PACK_SUFFIX="zh-hans"
 | |
|     else
 | |
|         LANG_PACK_SUFFIX="zh-hant"
 | |
|     fi
 | |
| else
 | |
|     LANG_PACK_SUFFIX="$LANGUAGE_CODE"
 | |
| fi
 | |
| 
 | |
| if [ -z "$ONLY_LXQT" ]; then
 | |
|     apt-get -y install language-pack-gnome-"$LANG_PACK_SUFFIX" language-pack-kde-"$LANG_PACK_SUFFIX"
 | |
|     # Install LibreOffice language pack only if LIBREOFFICE_CODE is provided
 | |
|     # and it's not English without a specific variant
 | |
|     if [[ "$LANGUAGE_CODE" != "en" ]] || [[ "$LANGUAGE_CODE" == "en" && ( "$COUNTRY_CODE" == "GB" || "$COUNTRY_CODE" == "ZA" ) ]]; then
 | |
|         apt-get -y install libreoffice-l10n-"$LIBREOFFICE_CODE"
 | |
|     fi
 | |
| fi
 | |
| 
 | |
| locale-gen "$LOCALE"
 | |
| update-locale LANGUAGE="$LOCALE" LANG="$LOCALE" LC_ALL="$LOCALE"
 | |
| systemctl restart sddm
 |