diff options
-rw-r--r-- | src/locale-setup.c | 10 | ||||
-rw-r--r-- | src/vconsole-setup.c | 19 |
2 files changed, 29 insertions, 0 deletions
diff --git a/src/locale-setup.c b/src/locale-setup.c index d2e1b50085..2504216559 100644 --- a/src/locale-setup.c +++ b/src/locale-setup.c @@ -125,6 +125,16 @@ int locale_setup(void) { log_warning("Failed to read /etc/sysconfig/i18n: %s", strerror(-r)); } +#elif defined(TARGET_SUSE) + if (r <= 0 && + (r = parse_env_file("/etc/sysconfig/language", NEWLINE, + "RC_LANG", &variables[VARIABLE_LANG], + NULL)) < 0) { + + if (r != -ENOENT) + log_warning("Failed to read /etc/sysconfig/language: %s", strerror(-r)); + } + #elif defined(TARGET_ARCH) if (r <= 0 && (r = parse_env_file("/etc/rc.conf", NEWLINE, diff --git a/src/vconsole-setup.c b/src/vconsole-setup.c index 21f240182d..0fd426c6e6 100644 --- a/src/vconsole-setup.c +++ b/src/vconsole-setup.c @@ -232,6 +232,25 @@ int main(int argc, char **argv) { vc_keymap = t; } +#elif defined(TARGET_SUSE) + if ((r = parse_env_file("/etc/sysconfig/keyboard", NEWLINE, + "KEYTABLE", &vc_keymap, + NULL)) < 0) { + + if (r != -ENOENT) + log_warning("Failed to read /etc/sysconfig/keyboard: %s", strerror(-r)); + } + + if ((r = parse_env_file("/etc/sysconfig/console", NEWLINE, + "CONSOLE_FONT", &vc_font, + "CONSOLE_SCREENMAP", &vc_font_map, + "CONSOLE_UNICODEMAP", &vc_font_unimap, + NULL)) < 0) { + + if (r != -ENOENT) + log_warning("Failed to read /etc/sysconfig/console: %s", strerror(-r)); + } + #elif defined(TARGET_ARCH) if ((r = parse_env_file("/etc/rc.conf", NEWLINE, "KEYMAP", &vc_keymap, |