diff --git a/src/pages/language/language.cpp b/src/pages/language/language.cpp index 9a67569..b8cec67 100644 --- a/src/pages/language/language.cpp +++ b/src/pages/language/language.cpp @@ -7,12 +7,10 @@ #include #include #include -#include #include #include -#include "base/file.h" #include "base/i18n.h" #include "base/locale.h" #include "base/paths.h" @@ -53,18 +51,7 @@ static std::string trimmed(const std::string& text) std::string Language::systemLanguage() { - std::string language; - if (const auto contents = file::read("/etc/locale.gen")) { - std::istringstream lines(*contents); - std::string line; - while (std::getline(lines, line)) { - if (line.starts_with('#') || trimmed(line).empty()) - continue; - const std::string first = line.substr(0, line.find(' ')); - language = first.substr(0, first.find('.')); - } - } - return language.empty() ? "en_US" : language; + return Locale::systemLanguage(); } std::string Language::defaultConfigPath() diff --git a/src/pages/language/language.h b/src/pages/language/language.h index 1cf47af..c54cc4f 100644 --- a/src/pages/language/language.h +++ b/src/pages/language/language.h @@ -54,7 +54,7 @@ public: cutefish::base::Signal<> savingChanged; cutefish::base::Signal<> errorMessageChanged; - // The language generated in /etc/locale.gen, until the user picks one. + // The system's default language, until the user picks one. static std::string systemLanguage(); static std::string defaultConfigPath(); // From cutefish-services' settings, most preferred first.