[systemd-devel] [PATCH 2/3] util: Add welcome message for Ubuntu
Andrew Edmunds
Andrew.Edmunds at yahoo.com.au
Mon Oct 25 06:23:21 PDT 2010
The approved method for determining the installed release of
Ubuntu is to execute "lsb_release". However, this is in /usr/bin and
is implemented in python so it is not safe to execute at this early
stage of booting. This code parses /etc/lsb-release which is
where "lsb_release" looks for the information.
---
src/util.c | 14 ++++++++++++++
1 files changed, 14 insertions(+), 0 deletions(-)
diff --git a/src/util.c b/src/util.c
index 58f67b0..fa5d90b 100644
--- a/src/util.c
+++ b/src/util.c
@@ -3025,6 +3025,20 @@ void status_welcome(void) {
status_printf("Welcome to Debian \x1B[1;31m%s\x1B[0m!\n", r); /* Light Red for Debian */
free(r);
+#elif defined(TARGET_UBUNTU)
+ char *desc = NULL;
+ char *codename = NULL;
+
+ if (parse_env_file("/etc/lsb-release", NEWLINE,
+ "DISTRIB_DESCRIPTION", &desc,
+ "DISTRIB_CODENAME", &codename, NULL) < 0)
+ return;
+ if (desc && codename)
+ /* Light Red for Ubuntu */
+ status_printf("Welcome to \x1B[1;31m%s\x1B[0m (%s)\n",
+ desc, codename);
+ free(desc);
+ free(codename);
#elif defined(TARGET_ARCH)
status_printf("Welcome to \x1B[1;36mArch Linux\x1B[0m!\n"); /* Cyan for Arch */
#else
--
1.7.1
More information about the systemd-devel
mailing list