From 03aeb5bed092376b165b1f85e85f40e2abc35009 Mon Sep 17 00:00:00 2001 From: Kay Sievers Date: Tue, 21 Sep 2010 15:08:04 +0200 Subject: [PATCH] suse: locale + vconsole compat support --- src/locale-setup.c | 10 ++++++++++ src/vconsole-setup.c | 19 +++++++++++++++++++ 2 files changed, 29 insertions(+) diff --git a/src/locale-setup.c b/src/locale-setup.c index d2e1b5008..250421655 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 21f240182..0fd426c6e 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, -- 2.30.2