diff --git a/src/modules/locale/LocalePage.cpp b/src/modules/locale/LocalePage.cpp index 39a8b27c2..efe00e53b 100644 --- a/src/modules/locale/LocalePage.cpp +++ b/src/modules/locale/LocalePage.cpp @@ -25,6 +25,7 @@ #include "GlobalStorage.h" #include "JobQueue.h" #include "LCLocaleDialog.h" +#include "Settings.h" #include #include @@ -471,6 +472,15 @@ LocalePage::updateGlobalStorage() Calamares::JobQueue::instance()->globalStorage() ->insert( "locationZone", location.zone ); + // If we're in chroot mode (normal install mode), then we immediately set the + // timezone on the live system. + if ( Calamares::Settings::instance()->doChroot() ) + { + QProcess ::execute( "timedatectl", // depends on systemd + { "set-timezone", + location.region + '/' + location.zone } ); + } + m_selectedLocaleConfiguration = guessLocaleConfiguration(); updateLocaleLabels(); }