216
216
"LC_IDENTIFICATION", &data[PROP_LC_IDENTIFICATION],
220
r = parse_env_file("/etc/default/locale", NEWLINE,
221
"LANG", &data[PROP_LANG],
222
"LANGUAGE", &data[PROP_LANGUAGE],
223
"LC_CTYPE", &data[PROP_LC_CTYPE],
224
"LC_NUMERIC", &data[PROP_LC_NUMERIC],
225
"LC_TIME", &data[PROP_LC_TIME],
226
"LC_COLLATE", &data[PROP_LC_COLLATE],
227
"LC_MONETARY", &data[PROP_LC_MONETARY],
228
"LC_MESSAGES", &data[PROP_LC_MESSAGES],
229
"LC_PAPER", &data[PROP_LC_PAPER],
230
"LC_NAME", &data[PROP_LC_NAME],
231
"LC_ADDRESS", &data[PROP_LC_ADDRESS],
232
"LC_TELEPHONE", &data[PROP_LC_TELEPHONE],
233
"LC_MEASUREMENT", &data[PROP_LC_MEASUREMENT],
234
"LC_IDENTIFICATION", &data[PROP_LC_IDENTIFICATION],
219
237
if (r == -ENOENT) {
354
372
static int write_data_locale(void) {
375
const char *path = "/etc/locale.conf";
358
r = load_env_file("/etc/locale.conf", &l);
377
r = load_env_file(path, &l);
378
if (r < 0 && r == -ENOENT) {
379
path = "/etc/default/locale";
380
r = load_env_file(path, &l);
359
382
if (r < 0 && r != -ENOENT)
387
410
if (strv_isempty(l)) {
390
if (unlink("/etc/locale.conf") < 0)
413
if (unlink(path) < 0)
391
414
return errno == ENOENT ? 0 : -errno;
396
r = write_env_file_label("/etc/locale.conf", l);
419
r = write_env_file_label(path, l);