diff --git a/panels/info-overview/cc-info-overview-panel.c b/panels/info-overview/cc-info-overview-panel.c
index 8444d730e..9b46eac0e 100644
--- a/panels/info-overview/cc-info-overview-panel.c
+++ b/panels/info-overview/cc-info-overview-panel.c
@@ -63,6 +63,7 @@ struct _CcInfoOverviewPanel
CcListRow *gnome_version_row;
CcListRow *graphics_row;
CcListRow *hardware_model_row;
+ CcListRow *firmware_version_row;
GtkDialog *hostname_editor;
CcHostnameEntry *hostname_entry;
CcListRow *hostname_row;
@@ -438,6 +439,18 @@ get_hardware_model_string ()
return g_strdup_printf ("%s %s", vendor_string, model_string);
}
+static char *
+get_firmware_version_string ()
+{
+ g_autofree char *firmware_version_string = NULL;
+
+ firmware_version_string = get_hostnamed_property ("FirmwareVersion");
+ if (!firmware_version_string || g_strcmp0 (firmware_version_string, "") == 0)
+ return NULL;
+
+ return g_steal_pointer (&firmware_version_string);
+}
+
static char *
get_kernel_version_string ()
{
@@ -713,6 +726,7 @@ info_overview_panel_setup_overview (CcInfoOverviewPanel *self)
g_autofree char *os_name_text = NULL;
g_autofree char *os_build_text = NULL;
g_autofree char *hardware_model_text = NULL;
+ g_autofree char *firmware_version_text = NULL;
g_autofree char *kernel_version_text = NULL;
g_autofree gchar *graphics_hardware_string = NULL;
@@ -730,6 +744,10 @@ info_overview_panel_setup_overview (CcInfoOverviewPanel *self)
cc_list_row_set_secondary_label (self->hardware_model_row, hardware_model_text);
gtk_widget_set_visible (GTK_WIDGET (self->hardware_model_row), hardware_model_text != NULL);
+ firmware_version_text = get_firmware_version_string ();
+ cc_list_row_set_secondary_label (self->firmware_version_row, firmware_version_text);
+ gtk_widget_set_visible (GTK_WIDGET (self->firmware_version_row), firmware_version_text != NULL);
+
ram_size = get_ram_size_dmi ();
if (ram_size == 0)
ram_size = get_ram_size_libgtop ();
@@ -965,6 +983,7 @@ cc_info_overview_panel_class_init (CcInfoOverviewPanelClass *klass)
gtk_widget_class_bind_template_child (widget_class, CcInfoOverviewPanel, gnome_version_row);
gtk_widget_class_bind_template_child (widget_class, CcInfoOverviewPanel, graphics_row);
gtk_widget_class_bind_template_child (widget_class, CcInfoOverviewPanel, hardware_model_row);
+ gtk_widget_class_bind_template_child (widget_class, CcInfoOverviewPanel, firmware_version_row);
gtk_widget_class_bind_template_child (widget_class, CcInfoOverviewPanel, hostname_editor);
gtk_widget_class_bind_template_child (widget_class, CcInfoOverviewPanel, hostname_entry);
gtk_widget_class_bind_template_child (widget_class, CcInfoOverviewPanel, hostname_row);
diff --git a/panels/info-overview/cc-info-overview-panel.ui b/panels/info-overview/cc-info-overview-panel.ui
index 5465e5ad0..3c2fb993d 100644
--- a/panels/info-overview/cc-info-overview-panel.ui
+++ b/panels/info-overview/cc-info-overview-panel.ui
@@ -52,6 +52,15 @@
+
+
+
+
+