I ran a quick test, setting the local to de_DE and it seems I can partially reproduce the issue. The language does get changed, but the decimal separator doesn't.
I ran
sudo locale-gen de_DE.UTF-8
sudo update-locale de_DE.UTF-8
localectl set-locale LANG=de_DE.UTF-8 LANGUAGE="de_DE:de"
and then rebooted just in case
after this,
locale -k LC_NUMERIC
returns
decimal_point=","
thousands_sep="."
grouping=3;3
numeric-decimal-point-wc=44
numeric-thousands-sep-wc=46
numeric-codeset="UTF-8"
whereas Get ( SystemLocaleElements ) lists returns LocaleID.IDStr = German but Num.Decimal is still "."
{
"APIVers" : 1,
"Currency" :
{
"Leading" : true,
"Symbol" : "$"
},
"Date" :
{
"DMQ" :
{
"1stDayOfWeek" : 1,
"DaysOfWeek" :
{
"AbbrvList" :
[
"Sun",
"Mon",
"Tue",
"Wed",
"Thu",
"Fri",
"Sat"
],
"NameList" :
[
"Sunday",
"Monday",
"Tuesday",
"Wednesday",
"Thursday",
"Friday",
"Saturday"
]
},
"Months" :
{
"AbbrvList" :
[
"Jan",
"Feb",
"Mar",
"Apr",
"May",
"Jun",
"Jul",
"Aug",
"Sep",
"Oct",
"Nov",
"Dec"
],
"NameList" :
[
"January",
"February",
"March",
"April",
"May",
"June",
"July",
"August",
"September",
"October",
"November",
"December"
]
},
"Quarters" :
{
"AbbrvList" :
[
"Q1",
"Q2",
"Q3",
"Q4"
],
"NameList" :
[
"1st Quarter",
"2nd Quarter",
"3rd Quarter",
"4th Quarter"
]
}
},
"DateNums" :
{
"0d" : false,
"0m" : false,
"YYyy" : true
},
"DateOrderID" : 0,
"DateOrderName" : "MDY",
"MDY" :
{
"ElementArray" :
{
"NameList" :
[
"M#",
"D#",
"D$",
"D$"
],
"SepList" :
[
" ",
" ",
", ",
""
]
},
"MustUseLocalesSep" : false
},
"Sep" : "/"
},
"LocaleID" :
{
"IDNum" : 25,
"IDStr" : "German",
"ISOLangCode" : "de",
"LID" : "German",
"Name" : "German"
},
"Misc" :
{
"Active" : true,
"Metric" : false
},
"Num" :
{
"1000s" : ",",
"Decimal" : ".",
"Lead0" : true
},
"Text" :
{
"SQuotLead" : "“",
"SQuotTrail" : "”",
"Sep" : ","
},
"Time" :
{
"12h" : true,
"HMS" :
{
"0h" : false,
"24h" : "",
"Seconds" : false
},
"NightDay" :
{
"12hSuffix" : true,
"amStr" : " AM",
"pmStr" : " PM"
},
"Sep" : ":"
}
}