chiark / gitweb /
suse: locale + vconsole compat support
authorKay Sievers <kay.sievers@vrfy.org>
Tue, 21 Sep 2010 13:08:04 +0000 (15:08 +0200)
committerKay Sievers <kay.sievers@vrfy.org>
Tue, 21 Sep 2010 13:08:04 +0000 (15:08 +0200)
src/locale-setup.c
src/vconsole-setup.c

index d2e1b50085b4f514f25dd9f03da4097ab747df7e..2504216559c264df4affcbc3f14ff34f67ca49cb 100644 (file)
@@ -125,6 +125,16 @@ int locale_setup(void) {
                         log_warning("Failed to read /etc/sysconfig/i18n: %s", strerror(-r));
         }
 
                         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,
 #elif defined(TARGET_ARCH)
         if (r <= 0 &&
             (r = parse_env_file("/etc/rc.conf", NEWLINE,
index 21f240182dcf78eb5020bc5a33d5977a11637be1..0fd426c6e6f193eb938badecd6cfa4f10bedf657 100644 (file)
@@ -232,6 +232,25 @@ int main(int argc, char **argv) {
                         vc_keymap = t;
                 }
 
                         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,
 #elif defined(TARGET_ARCH)
                 if ((r = parse_env_file("/etc/rc.conf", NEWLINE,
                                         "KEYMAP", &vc_keymap,