diff -Nrup a/source/blender/blentranslation/intern/blt_lang.c b/source/blender/blentranslation/intern/blt_lang.c --- a/source/blender/blentranslation/intern/blt_lang.c 2021-04-21 16:23:41.000000000 +0200 +++ b/source/blender/blentranslation/intern/blt_lang.c 2021-06-04 11:50:24.706492789 +0200 @@ -83,7 +83,6 @@ static void free_locales(void) static void fill_locales(void) { - const char *const languages_path = BKE_appdir_folder_id(BLENDER_DATAFILES, "locale"); char languages[FILE_MAX]; LinkNode *lines = NULL, *line; char *str; @@ -91,8 +90,7 @@ static void fill_locales(void) free_locales(); - BLI_join_dirfile(languages, FILE_MAX, languages_path, "languages"); - line = lines = BLI_file_read_as_lines(languages); + line = lines = BLI_file_read_as_lines("/usr/share/blender/locale/languages"); /* This whole "parsing" code is a bit weak, in that it expects strictly formatted input file... * Should not be a problem, though, as this file is script-generated! */ @@ -198,7 +196,7 @@ EnumPropertyItem *BLT_lang_RNA_enum_prop void BLT_lang_init(void) { #ifdef WITH_INTERNATIONAL - const char *const messagepath = BKE_appdir_folder_id(BLENDER_DATAFILES, "locale"); + const char *const messagepath = "/usr/share/locale"; #endif /* Make sure LANG is correct and wouldn't cause #std::runtime_error. */ diff -Nrup a/source/creator/CMakeLists.txt b/source/creator/CMakeLists.txt --- a/source/creator/CMakeLists.txt 2021-04-21 16:23:41.000000000 +0200 +++ b/source/creator/CMakeLists.txt 2021-06-04 11:51:41.870125849 +0200 @@ -395,7 +395,8 @@ install( # localization if(WITH_INTERNATIONAL) set(_locale_dir "${CMAKE_SOURCE_DIR}/release/datafiles/locale") - set(_locale_target_dir ${TARGETDIR_VER}/datafiles/locale) + set(_locale_target_dir "share/locale") + set(_languages_target_dir "share/blender/locale") file(GLOB _po_files "${_locale_dir}/po/*.po") foreach(_po_file ${_po_files}) @@ -412,7 +413,7 @@ if(WITH_INTERNATIONAL) # Generate INSTALL rules install( FILES ${_locale_dir}/languages - DESTINATION ${_locale_target_dir} + DESTINATION ${_languages_target_dir} ) foreach(_mo_file ${_all_mo_files})