[recipes/os-info: 1/2] wip: os info



commit 145b011d3dd74a8ceae11b7b43c38627e21a7f11
Author: Matthias Clasen <mclasen redhat com>
Date:   Sat Feb 18 20:52:35 2017 -0500

    wip: os info

 src/gr-about-dialog.c |   40 ++++++++++++++++++++++++++++++++++++++++
 1 files changed, 40 insertions(+), 0 deletions(-)
---
diff --git a/src/gr-about-dialog.c b/src/gr-about-dialog.c
index d6ca308..a86a7df 100644
--- a/src/gr-about-dialog.c
+++ b/src/gr-about-dialog.c
@@ -156,6 +156,46 @@ add_built_logo (GrAboutDialog *about)
 }
 
 static void
+get_os_information (char **os_name,
+                    char **bits,
+                    char **desktop,
+                    char **gnome_version)
+{
+        g_autofree char *buffer;
+        const char *value;
+
+        *os_name = NULL;
+        *bits = NULL;
+        *desktop = NULL;
+        *gnome_version = NULL;
+
+        if (g_file_get_contents ("/etc/os-release", &buffer, NULL, NULL)) {
+                char *start, *end;
+
+                start = end = NULL;
+                if ((start = strstr (buffer, "PRETTY_NAME=\"")) != NULL) {
+                        start += strlen ("PRETTY_NAME=\"");
+                        end = strchr (start, '"');
+                }
+
+                if (start != NULL && end != NULL) {
+                        *os_name = g_strndup (start, end - start);
+                }
+        }
+
+        if (GLIB_SIZEOF_VOID_P == 8)
+                *bits = g_strdup ("64-bit");
+        else
+                *bits = g_strdup ("32-bit");
+
+        value = g_getenv ("XDG_CURRENT_DESKTOP");
+        if (value) {
+                g_auto(GStrv) strv = g_strsplit (value, ":", 0);
+                *desktop = g_strdup (strv[0]);
+        }
+}
+
+static void
 get_flatpak_information (char **flatpak_version,
                          char **app_id,
                          char **app_arch,


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]