locale-setup: default to C.UTF-8
Most distributions already were shipping a C.UTF-8 locale and even Fedora now supports the C.UTF-8 locale, and there's clear indication that this is going upstream too. Hence, let's default to it now too, if nothing else is set. Note that this is only a fallback if noting else is set, and since distros generally configure a default for this behaviour shouldn't really change in installed systems. On new systems this makes vconsole.conf redundant.
This commit is contained in:
parent
cd45734f87
commit
0db9bd200f
|
@ -79,16 +79,28 @@ int locale_setup(char ***environment) {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!strv_isempty(add)) {
|
if (strv_isempty(add)) {
|
||||||
char **e;
|
/* If no locale is configured then default to C.UTF-8. */
|
||||||
|
|
||||||
e = strv_env_merge(2, *environment, add);
|
add = strv_new("LANG=C.UTF-8");
|
||||||
if (!e) {
|
if (!add) {
|
||||||
|
r = -ENOMEM;
|
||||||
|
goto finish;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if (strv_isempty(*environment))
|
||||||
|
strv_free_and_replace(*environment, add);
|
||||||
|
else {
|
||||||
|
char **merged;
|
||||||
|
|
||||||
|
merged = strv_env_merge(2, *environment, add);
|
||||||
|
if (!merged) {
|
||||||
r = -ENOMEM;
|
r = -ENOMEM;
|
||||||
goto finish;
|
goto finish;
|
||||||
}
|
}
|
||||||
|
|
||||||
strv_free_and_replace(*environment, e);
|
strv_free_and_replace(*environment, merged);
|
||||||
}
|
}
|
||||||
|
|
||||||
r = 0;
|
r = 0;
|
||||||
|
|
Loading…
Reference in a new issue