-
Notifications
You must be signed in to change notification settings - Fork 5
Configuring Windows TCR
Windows Time zone, culture, and regional settings manager. Configure time zone, language, culture, and home location based on device identity or a configuration identifier.
Note
This module is currently in PREVIEW and may be subject to changes in future releases.
The windowsTCR module manages Windows Time zone, Culture, and Regional settings configuration on devices. It reads one or more configuration profiles from the JSON configuration file and applies the matching profile based on a Configuration Identifier (CID).
The script parameter for passing the CID value is -CultureIdentifier, with -CID, -Culture, and -Region available as aliases.
The CID value is resolved through a layered approach where each enabled method can override the previous value:
-
CultureIdentifier parameter - if explicitly passed via
-CultureIdentifier(or its aliases-CID,-Culture,-Region), this value is used as the starting CID -
Default CID - if no parameter is provided, the value from
settings.defaultCIDis used as the starting CID -
Computer name comparison - if
computerNameComparisonis enabled and a match is found, the CID value is overwritten with the matching configuration identifier -
Location marker - if
locationMarkeris enabled and a matching registry value is found, the CID value is overwritten with the location marker value
This means the location marker takes the highest override priority, followed by computer name comparison. The parameter or default CID serves as the baseline value that can be overridden by the subsequent methods.
For each WindowsTCR configuration, the module performs the following steps:
- Determines which CID configuration to apply (parameter, location marker, computer name match, or default)
- Validates the CID exists in the available configurations
- Applies the following settings:
- Time Zone - sets the system time zone (e.g., "Romance Standard Time")
- Culture - sets language and formatting preferences (e.g., "da-DK", "en-US")
- Home Location - sets the geographic location via GeoID for regional content
- Optionally copies user international settings to the Welcome Screen and new user profiles (
copyUserInternationalSettingsToSystem)
The module also supports additional settings:
-
NTP Server - configures custom NTP servers for time synchronization when
ntpServer.enabledis set totrue
The following shows the windowsTCR configuration structure with settings, computer name comparison, NTP server configuration, and two example regional profiles.
{
"windowsTCR": {
"enabled": true,
"settings": {
"defaultCID": "DEN",
"copyUserInternationalSettingsToSystem": true,
"xamlFile": "gecko.xaml"
},
"computerNameComparison": {
"enabled": false,
"operator": "Contains"
},
"locationMarker": {
"enabled": false,
"root": "HKLM",
"path": "SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\OOBE",
"name": "locationMarker"
},
"ntpServer": {
"enabled": true,
"peerList": [
"time.windows.com",
"time.nist.gov"
]
},
"configurations": [
{
"CID": "DEN",
"description": "Denmark - Danish culture, Copenhagen timezone",
"culture": "da-DK",
"homelocation": 61,
"timezone": "Romance Standard Time"
},
{
"CID": "SWE",
"description": "Sweden - Swedish culture, Stockholm timezone",
"culture": "sv-SE",
"homelocation": 221,
"timezone": "W. Europe Standard Time"
}
]
}
}The following properties are supported in the windowsTCR section.
| Property | Description | Type | Required |
|---|---|---|---|
| windowsTCR | |||
| enabled | Enable or disable the module | Boolean | No |
| settings | |||
| defaultCID | Default CID value used when no CID is specified via parameter or computer name matching | String | No |
| copyUserInternationalSettingsToSystem | Copy user international settings to the Welcome Screen and new user profiles | Boolean | No |
| xamlFile | XAML file for TCR selection UI. Reserved for future use | String | No |
| computerNameComparison | |||
| enabled | Enable CID selection based on computer name pattern matching | Boolean | No |
| operator | Operator for computer name matching - Contains, StartsWith, EndsWith, or Equals
|
String | No |
| locationMarker | |||
| enabled | Enable CID selection based on a registry location marker value | Boolean | No |
| root | Registry root hive - HKLM or HKCU
|
String | No |
| path | Registry path without the root | String | No |
| name | Registry value name containing the CID value | String | No |
| ntpServer | |||
| enabled | Enable NTP server configuration | Boolean | No |
| peerList | List of NTP server addresses for time synchronization | Array | No |
| configurations (array) | |||
| CID | Configuration identifier used to select this profile (e.g., DEN, SWE, FIN) |
String | Yes |
| description | Description of the configuration profile - used for documentation purposes | String | No |
| culture | Culture code for language and formatting (e.g., da-DK, en-US, sv-SE) |
String | Yes |
| homelocation | GeoID for the home location used for regional content | Integer | Yes |
| timezone | Windows time zone identifier (e.g., Romance Standard Time, W. Europe Standard Time) |
String | Yes |
The commands below can be used to inspect or verify the settings configured by this module.
Retrieve the current system time zone.
Get-TimeZone | Select-Object "Id", "DisplayName", "BaseUtcOffset"List all available Windows time zones to find the correct identifier for configuration.
Get-TimeZone -ListAvailable | Sort-Object "Id" | Select-Object "Id", "DisplayName" | Format-Table -AutoSizeRetrieve the current culture settings.
Get-Culture | Select-Object "Name", "DisplayName", "KeyboardLayoutId"Retrieve the current home location GeoID.
Get-WinHomeLocation | Select-Object "GeoId", "HomeLocation"Verify the current NTP server configuration.
w32tm /query /peersFor more information, see the following resources.
- Available languages for Windows - Language packs reference
- Default input profiles - Input locale reference
- Default Time Zones - Time zone reference
- Table of Geographical Locations - GeoID reference
- Cannot set timezone automatically - Troubleshooting reference
Page revised: March 4, 2026
🦎 Windows gecko - Desired state configuration for Windows devices · Repository · License
Windows gecko wiki
Getting Started
Feature Modules
- Configuring Windows Apps
- Configuring Windows branding
- Configuring Windows Config
- Configuring Windows Features
- Configuring Windows Files
- Configuring Windows Groups
- Configuring Windows Registry
- Configuring Windows Run
- Configuring Windows Scheduled Tasks
- Configuring Windows Services
- Configuring Windows TCR
Contributing