assert(fd >= 0);
- /* First, unlock termios */
- zero(termios);
- ioctl(fd, TIOCSLCKTRMIOS, &termios);
+ /* We leave locked terminal attributes untouched, so that
+ * Plymouth may set whatever it wants to set, and we don't
+ * interfere with that. */
/* Disable exclusive mode, just in case */
ioctl(fd, TIOCNXCL);
status_printf("Welcome to \x1B[0;32m%s\x1B[0m!\n", r); /* Green for SUSE */
free(r);
+
+#elif defined(TARGET_GENTOO)
+ char *r;
+
+ if (read_one_line_file("/etc/gentoo-release", &r) < 0)
+ return;
+
+ truncate_nl(r);
+
+ status_printf("Welcome to \x1B[1;34m%s\x1B[0m!\n", r); /* Light Blue for Gentoo */
+
+ free(r);
+
+#elif defined(TARGET_DEBIAN)
+ char *r;
+
+ if (read_one_line_file("/etc/debian_version", &r) < 0)
+ return;
+
+ truncate_nl(r);
+
+ status_printf("Welcome to Debian \x1B[1;31m%s\x1B[0m!\n", r); /* Light Red for Debian */
+
+ free(r);
+#elif defined(TARGET_ARCH)
+ status_printf("Welcome to \x1B[1;36mArch Linux\x1B[0m!\n"); /* Cyan for Arch */
#else
#warning "You probably should add a welcome text logic here."
#endif
[SIGPIPE] = "PIPE",
[SIGALRM] = "ALRM",
[SIGTERM] = "TERM",
- [SIGSTKFLT] = "STKFLT",
+#ifdef SIGSTKFLT
+ [SIGSTKFLT] = "STKFLT", /* Linux on SPARC doesn't know SIGSTKFLT */
+#endif
[SIGCHLD] = "CHLD",
[SIGCONT] = "CONT",
[SIGSTOP] = "STOP",