diff --git a/control-center-network-add-domain-suffix-match.patch b/control-center-network-add-domain-suffix-match.patch new file mode 100644 index 0000000..a434b8d --- /dev/null +++ b/control-center-network-add-domain-suffix-match.patch @@ -0,0 +1,1085 @@ +From 4b5380184b9c1c39f2a5b8d48dc9a8cad9a85ed9 mon sep 17 00:00:00 2001 +From: Jonathan Kang +Date: Tue, 19 Sep 2017 11:15:36 +0800 +Subject: [PATCH 1/2] wifi: Use GtkGrid for Wi-Fi Security settings page + +GtkTable is deprecated. Use GtkGrid instead. + +https://bugzilla.gnome.org/show_bug.cgi?id=787882 +--- + .../network/wireless-security/eap-method-peap.ui | 97 +++++++++------------- + panels/network/wireless-security/eap-method-tls.ui | 77 ++++++----------- + .../network/wireless-security/eap-method-ttls.ui | 49 ++++------- + 3 files changed, 80 insertions(+), 143 deletions(-) + +diff --git a/panels/network/wireless-security/eap-method-peap.ui b/panels/network/wireless-security/eap-method-peap.ui +index 8b8959cd6..37dddd643 100644 +--- a/panels/network/wireless-security/eap-method-peap.ui ++++ b/panels/network/wireless-security/eap-method-peap.ui +@@ -35,11 +35,9 @@ + False + False + +- ++ + True + False +- 5 +- 2 + 6 + 6 + +@@ -52,20 +50,20 @@ + eap_peap_anon_identity_entry + + +- GTK_FILL +- ++ 0 ++ 0 + + + + + True + True ++ True + True + + + 1 +- 2 +- ++ 0 + + + +@@ -78,24 +76,19 @@ + eap_peap_ca_cert_button + + ++ 0 + 1 +- 2 +- GTK_FILL +- + + + + + True + False ++ True + + + 1 +- 2 + 1 +- 2 +- GTK_FILL +- GTK_FILL + + + +@@ -103,32 +96,46 @@ + No CA certificate is _required + True + True ++ True + False + True + True + + + 1 +- 2 + 2 +- 3 +- GTK_FILL +- + + + +- ++ ++ True ++ False ++ 1 ++ PEAP _version ++ True ++ eap_peap_version_combo ++ ++ ++ 0 ++ 3 ++ ++ ++ ++ + True + False ++ True ++ model9 + +- ++ ++ ++ 0 ++ + + + +- 2 +- 5 +- 6 +- GTK_FILL ++ 1 ++ 3 + + + +@@ -141,16 +148,15 @@ + eap_peap_inner_auth_combo + + ++ 0 + 4 +- 5 +- GTK_FILL +- + + + + + True + False ++ True + model8 + + +@@ -161,48 +167,21 @@ + + + 1 +- 2 + 4 +- 5 +- GTK_FILL +- GTK_FILL + + + +- +- True +- False +- 1 +- PEAP _version +- True +- eap_peap_version_combo +- +- +- 3 +- 4 +- GTK_FILL +- +- +- +- +- ++ + True + False +- model9 + +- +- +- 0 +- ++ + + + +- 1 +- 2 +- 3 +- 4 +- GTK_FILL +- GTK_FILL ++ 0 ++ 5 ++ 2 + + + +diff --git a/panels/network/wireless-security/eap-method-tls.ui b/panels/network/wireless-security/eap-method-tls.ui +index 886767de9..a399460fa 100644 +--- a/panels/network/wireless-security/eap-method-tls.ui ++++ b/panels/network/wireless-security/eap-method-tls.ui +@@ -7,12 +7,10 @@ + False + False + +- ++ + True + False + start +- 6 +- 2 + 6 + 6 + +@@ -28,20 +26,20 @@ + eap_tls_identity_entry + + +- GTK_FILL +- ++ 0 ++ 0 + + + + + True + True ++ True + True + + + 1 +- 2 +- ++ 0 + + + +@@ -54,10 +52,19 @@ + eap_tls_user_cert_button + + ++ 0 ++ 1 ++ ++ ++ ++ ++ True ++ False ++ True ++ ++ ++ 1 + 1 +- 2 +- GTK_FILL +- + + + +@@ -70,24 +77,19 @@ + eap_tls_ca_cert_button + + ++ 0 + 2 +- 3 +- GTK_FILL +- + + + + + True + False ++ True + + + 1 +- 2 + 2 +- 3 +- GTK_FILL +- GTK_FILL + + + +@@ -95,17 +97,14 @@ + No CA certificate is _required + True + True ++ True + False + True + True + + + 1 +- 2 + 3 +- 4 +- GTK_FILL +- + + + +@@ -118,24 +117,19 @@ + eap_tls_private_key_button + + ++ 0 + 4 +- 5 +- GTK_FILL +- + + + + + True + False ++ True + + + 1 +- 2 + 4 +- 5 +- GTK_FILL +- GTK_FILL + + + +@@ -148,25 +142,21 @@ + eap_tls_private_key_password_entry + + ++ 0 + 5 +- 6 +- GTK_FILL +- + + + + + True + True ++ True + False + True + + + 1 +- 2 + 5 +- 6 +- + + + +@@ -174,31 +164,14 @@ + Sho_w password + True + True ++ True + False + True + True + + + 1 +- 2 + 6 +- 7 +- GTK_FILL +- +- +- +- +- +- True +- False +- +- +- 1 +- 2 +- 1 +- 2 +- GTK_FILL +- GTK_FILL + + + +diff --git a/panels/network/wireless-security/eap-method-ttls.ui b/panels/network/wireless-security/eap-method-ttls.ui +index 4047f9fc8..0b23c54ba 100644 +--- a/panels/network/wireless-security/eap-method-ttls.ui ++++ b/panels/network/wireless-security/eap-method-ttls.ui +@@ -18,11 +18,9 @@ + False + False + +- ++ + True + False +- 4 +- 2 + 6 + 6 + +@@ -35,20 +33,20 @@ + eap_ttls_anon_identity_entry + + +- GTK_FILL +- ++ 0 ++ 0 + + + + + True + True ++ True + True + + + 1 +- 2 +- ++ 0 + + + +@@ -61,24 +59,19 @@ + eap_ttls_ca_cert_button + + ++ 0 + 1 +- 2 +- GTK_FILL +- + + + + + True + False ++ True + + + 1 +- 2 + 1 +- 2 +- GTK_FILL +- GTK_FILL + + + +@@ -87,38 +80,35 @@ + True + True + False ++ start ++ True + True + True + + + 1 +- 2 + 2 +- 3 +- GTK_FILL +- + + + + + True + False +- 1 +- _Inner authentication ++ _Inner authentication: + True + eap_ttls_inner_auth_combo ++ 1 + + ++ 0 + 3 +- 4 +- GTK_FILL +- +- +- ++ ++ + + + True + False ++ True + model6 + + +@@ -129,11 +119,7 @@ + + + 1 +- 2 + 3 +- 4 +- GTK_FILL +- GTK_FILL + + + +@@ -146,10 +132,9 @@ + + + +- 2 ++ 0 + 4 +- 5 +- GTK_FILL ++ 2 + + + +-- +2.13.5 + + +From e48d32e5699d824dc229f131246229f077709f84 Mon Sep 17 00:00:00 2001 +From: Jonathan Kang +Date: Tue, 19 Sep 2017 17:00:18 +0800 +Subject: [PATCH 2/2] wifi: Add domain-suffix-match entry + +domain-suffix-match has been supported in nm-connection-editor for a +while. So users can edit that property in nm-connection-editor. But +it's still not available in gnome-control-center yet. + +Fix that by adding domain-suffix-match entry in tls, ttls and peap +security settings page. + +https://bugzilla.gnome.org/show_bug.cgi?id=787882 +--- + panels/network/wireless-security/eap-method-peap.c | 21 ++++++++++ + .../network/wireless-security/eap-method-peap.ui | 43 ++++++++++++++++---- + panels/network/wireless-security/eap-method-tls.c | 29 ++++++++++++- + panels/network/wireless-security/eap-method-tls.ui | 47 +++++++++++++++++----- + panels/network/wireless-security/eap-method-ttls.c | 21 ++++++++++ + .../network/wireless-security/eap-method-ttls.ui | 39 +++++++++++++++--- + 6 files changed, 175 insertions(+), 25 deletions(-) + +diff --git a/panels/network/wireless-security/eap-method-peap.c b/panels/network/wireless-security/eap-method-peap.c +index 402887c87..e94c0ef4f 100644 +--- a/panels/network/wireless-security/eap-method-peap.c ++++ b/panels/network/wireless-security/eap-method-peap.c +@@ -114,6 +114,10 @@ add_to_size_group (EAPMethod *parent, GtkSizeGroup *group) + g_assert (widget); + gtk_size_group_add_widget (group, widget); + ++ widget = GTK_WIDGET (gtk_builder_get_object (parent->builder, "eap_peap_domain_label")); ++ g_assert (widget); ++ gtk_size_group_add_widget (group, widget); ++ + widget = GTK_WIDGET (gtk_builder_get_object (parent->builder, "eap_peap_version_label")); + g_assert (widget); + gtk_size_group_add_widget (group, widget); +@@ -159,6 +163,12 @@ fill_connection (EAPMethod *parent, NMConnection *connection, NMSettingSecretFla + if (text && strlen (text)) + g_object_set (s_8021x, NM_SETTING_802_1X_ANONYMOUS_IDENTITY, text, NULL); + ++ widget = GTK_WIDGET (gtk_builder_get_object (parent->builder, "eap_peap_domain_entry")); ++ g_assert (widget); ++ text = gtk_entry_get_text (GTK_ENTRY (widget)); ++ if (text && strlen (text)) ++ g_object_set (s_8021x, NM_SETTING_802_1X_DOMAIN_SUFFIX_MATCH, text, NULL); ++ + widget = GTK_WIDGET (gtk_builder_get_object (parent->builder, "eap_peap_ca_cert_button")); + g_assert (widget); + filename = gtk_file_chooser_get_filename (GTK_FILE_CHOOSER (widget)); +@@ -424,11 +434,22 @@ eap_method_peap_new (WirelessSecurity *ws_parent, + (GCallback) wireless_security_changed_cb, + ws_parent); + ++ widget = GTK_WIDGET (gtk_builder_get_object (parent->builder, "eap_peap_domain_entry")); ++ if (s_8021x && nm_setting_802_1x_get_domain_suffix_match (s_8021x)) ++ gtk_entry_set_text (GTK_ENTRY (widget), nm_setting_802_1x_get_domain_suffix_match (s_8021x)); ++ g_signal_connect (G_OBJECT (widget), "changed", ++ (GCallback) wireless_security_changed_cb, ++ ws_parent); ++ + if (secrets_only) { + widget = GTK_WIDGET (gtk_builder_get_object (parent->builder, "eap_peap_anon_identity_label")); + gtk_widget_hide (widget); + widget = GTK_WIDGET (gtk_builder_get_object (parent->builder, "eap_peap_anon_identity_entry")); + gtk_widget_hide (widget); ++ widget = GTK_WIDGET (gtk_builder_get_object (parent->builder, "eap_peap_domain_label")); ++ gtk_widget_hide (widget); ++ widget = GTK_WIDGET (gtk_builder_get_object (parent->builder, "eap_peap_domain_entry")); ++ gtk_widget_hide (widget); + widget = GTK_WIDGET (gtk_builder_get_object (parent->builder, "eap_peap_ca_cert_label")); + gtk_widget_hide (widget); + widget = GTK_WIDGET (gtk_builder_get_object (parent->builder, "eap_peap_ca_cert_button")); +diff --git a/panels/network/wireless-security/eap-method-peap.ui b/panels/network/wireless-security/eap-method-peap.ui +index 37dddd643..1f5e7e599 100644 +--- a/panels/network/wireless-security/eap-method-peap.ui ++++ b/panels/network/wireless-security/eap-method-peap.ui +@@ -67,6 +67,33 @@ + + + ++ ++ True ++ False ++ _Domain: ++ True ++ eap_peap_domain_entry ++ 1 ++ ++ ++ 0 ++ 1 ++ ++ ++ ++ ++ True ++ True ++ True ++ True ++ Suffix of the server certificate name. ++ ++ ++ 1 ++ 1 ++ ++ ++ + + True + False +@@ -77,7 +104,7 @@ + + + 0 +- 1 ++ 2 + + + +@@ -88,7 +115,7 @@ + + + 1 +- 1 ++ 2 + + + +@@ -103,7 +130,7 @@ + + + 1 +- 2 ++ 3 + + + +@@ -117,7 +144,7 @@ + + + 0 +- 3 ++ 4 + + + +@@ -135,7 +162,7 @@ + + + 1 +- 3 ++ 4 + + + +@@ -149,7 +176,7 @@ + + + 0 +- 4 ++ 5 + + + +@@ -167,7 +194,7 @@ + + + 1 +- 4 ++ 5 + + + +@@ -180,7 +207,7 @@ + + + 0 +- 5 ++ 6 + 2 + + +diff --git a/panels/network/wireless-security/eap-method-tls.c b/panels/network/wireless-security/eap-method-tls.c +index 8d17fa459..278e98364 100644 +--- a/panels/network/wireless-security/eap-method-tls.c ++++ b/panels/network/wireless-security/eap-method-tls.c +@@ -148,6 +148,10 @@ add_to_size_group (EAPMethod *parent, GtkSizeGroup *group) + g_assert (widget); + gtk_size_group_add_widget (group, widget); + ++ widget = GTK_WIDGET (gtk_builder_get_object (parent->builder, "eap_tls_domain_label")); ++ g_assert (widget); ++ gtk_size_group_add_widget (group, widget); ++ + widget = GTK_WIDGET (gtk_builder_get_object (parent->builder, "eap_tls_user_cert_label")); + g_assert (widget); + gtk_size_group_add_widget (group, widget); +@@ -190,6 +194,12 @@ fill_connection (EAPMethod *parent, NMConnection *connection, NMSettingSecretFla + g_assert (widget); + g_object_set (s_8021x, NM_SETTING_802_1X_IDENTITY, gtk_entry_get_text (GTK_ENTRY (widget)), NULL); + ++ widget = GTK_WIDGET (gtk_builder_get_object (parent->builder, "eap_tls_domain_entry")); ++ g_assert (widget); ++ g_object_set (s_8021x, ++ parent->phase2 ? NM_SETTING_802_1X_PHASE2_DOMAIN_SUFFIX_MATCH : NM_SETTING_802_1X_DOMAIN_SUFFIX_MATCH, ++ gtk_entry_get_text (GTK_ENTRY (widget)), NULL); ++ + /* TLS private key */ + widget = GTK_WIDGET (gtk_builder_get_object (parent->builder, "eap_tls_private_key_password_entry")); + g_assert (widget); +@@ -393,7 +403,7 @@ setup_filepicker (GtkBuilder *builder, + filter = eap_method_default_file_chooser_filter_new (privkey); + gtk_file_chooser_add_filter (GTK_FILE_CHOOSER (widget), filter); + +- /* For some reason, GTK+ calls set_current_filter (..., NULL) from ++ /* For some reason, GTK+ calls set_current_filter (..., NULL) from + * gtkfilechooserdefault.c::show_and_select_files_finished_loading() on our + * dialog; so force-reset the filter to what we want it to be whenever + * it gets cleared. +@@ -491,6 +501,19 @@ eap_method_tls_new (WirelessSecurity *ws_parent, + if (s_8021x && nm_setting_802_1x_get_identity (s_8021x)) + gtk_entry_set_text (GTK_ENTRY (widget), nm_setting_802_1x_get_identity (s_8021x)); + ++ widget = GTK_WIDGET (gtk_builder_get_object (parent->builder, "eap_tls_domain_entry")); ++ g_assert (widget); ++ g_signal_connect (G_OBJECT (widget), "changed", ++ (GCallback) wireless_security_changed_cb, ++ ws_parent); ++ if (phase2) { ++ if (s_8021x && nm_setting_802_1x_get_phase2_domain_suffix_match (s_8021x)) ++ gtk_entry_set_text (GTK_ENTRY (widget), nm_setting_802_1x_get_phase2_domain_suffix_match (s_8021x)); ++ } else { ++ if (s_8021x && nm_setting_802_1x_get_domain_suffix_match (s_8021x)) ++ gtk_entry_set_text (GTK_ENTRY (widget), nm_setting_802_1x_get_domain_suffix_match (s_8021x)); ++ } ++ + setup_filepicker (parent->builder, "eap_tls_user_cert_button", + _("Choose your personal certificate"), + ws_parent, parent, s_8021x, +@@ -540,6 +563,10 @@ eap_method_tls_new (WirelessSecurity *ws_parent, + if (secrets_only) { + widget = GTK_WIDGET (gtk_builder_get_object (parent->builder, "eap_tls_identity_entry")); + gtk_widget_set_sensitive (widget, FALSE); ++ widget = GTK_WIDGET (gtk_builder_get_object (parent->builder, "eap_tls_domain_label")); ++ gtk_widget_hide (widget); ++ widget = GTK_WIDGET (gtk_builder_get_object (parent->builder, "eap_tls_domain_entry")); ++ gtk_widget_hide (widget); + widget = GTK_WIDGET (gtk_builder_get_object (parent->builder, "eap_tls_user_cert_label")); + gtk_widget_hide (widget); + widget = GTK_WIDGET (gtk_builder_get_object (parent->builder, "eap_tls_user_cert_button")); +diff --git a/panels/network/wireless-security/eap-method-tls.ui b/panels/network/wireless-security/eap-method-tls.ui +index a399460fa..60fe59f06 100644 +--- a/panels/network/wireless-security/eap-method-tls.ui ++++ b/panels/network/wireless-security/eap-method-tls.ui +@@ -43,6 +43,33 @@ + + + ++ ++ True ++ False ++ _Domain: ++ True ++ eap_tls_domain_entry ++ 1 ++ ++ ++ 0 ++ 1 ++ ++ ++ ++ ++ True ++ True ++ True ++ True ++ Suffix of the server certificate name. ++ ++ ++ 1 ++ 1 ++ ++ ++ + + True + False +@@ -53,7 +80,7 @@ + + + 0 +- 1 ++ 2 + + + +@@ -64,7 +91,7 @@ + + + 1 +- 1 ++ 2 + + + +@@ -78,7 +105,7 @@ + + + 0 +- 2 ++ 3 + + + +@@ -89,7 +116,7 @@ + + + 1 +- 2 ++ 3 + + + +@@ -104,7 +131,7 @@ + + + 1 +- 3 ++ 4 + + + +@@ -118,7 +145,7 @@ + + + 0 +- 4 ++ 5 + + + +@@ -129,7 +156,7 @@ + + + 1 +- 4 ++ 5 + + + +@@ -143,7 +170,7 @@ + + + 0 +- 5 ++ 6 + + + +@@ -156,7 +183,7 @@ + + + 1 +- 5 ++ 6 + + + +@@ -171,7 +198,7 @@ + + + 1 +- 6 ++ 7 + + + +diff --git a/panels/network/wireless-security/eap-method-ttls.c b/panels/network/wireless-security/eap-method-ttls.c +index 2d9de48d6..9cd2c205f 100644 +--- a/panels/network/wireless-security/eap-method-ttls.c ++++ b/panels/network/wireless-security/eap-method-ttls.c +@@ -114,6 +114,10 @@ add_to_size_group (EAPMethod *parent, GtkSizeGroup *group) + g_assert (widget); + gtk_size_group_add_widget (group, widget); + ++ widget = GTK_WIDGET (gtk_builder_get_object (parent->builder, "eap_ttls_domain_label")); ++ g_assert (widget); ++ gtk_size_group_add_widget (group, widget); ++ + widget = GTK_WIDGET (gtk_builder_get_object (parent->builder, "eap_ttls_inner_auth_label")); + g_assert (widget); + gtk_size_group_add_widget (group, widget); +@@ -154,6 +158,12 @@ fill_connection (EAPMethod *parent, NMConnection *connection, NMSettingSecretFla + if (text && strlen (text)) + g_object_set (s_8021x, NM_SETTING_802_1X_ANONYMOUS_IDENTITY, text, NULL); + ++ widget = GTK_WIDGET (gtk_builder_get_object (parent->builder, "eap_ttls_domain_entry")); ++ g_assert (widget); ++ text = gtk_entry_get_text (GTK_ENTRY (widget)); ++ if (text && strlen (text)) ++ g_object_set (s_8021x, NM_SETTING_802_1X_DOMAIN_SUFFIX_MATCH, text, NULL); ++ + widget = GTK_WIDGET (gtk_builder_get_object (parent->builder, "eap_ttls_ca_cert_button")); + g_assert (widget); + filename = gtk_file_chooser_get_filename (GTK_FILE_CHOOSER (widget)); +@@ -451,6 +461,13 @@ eap_method_ttls_new (WirelessSecurity *ws_parent, + (GCallback) wireless_security_changed_cb, + ws_parent); + ++ widget = GTK_WIDGET (gtk_builder_get_object (parent->builder, "eap_ttls_domain_entry")); ++ if (s_8021x && nm_setting_802_1x_get_domain_suffix_match (s_8021x)) ++ gtk_entry_set_text (GTK_ENTRY (widget), nm_setting_802_1x_get_domain_suffix_match (s_8021x)); ++ g_signal_connect (G_OBJECT (widget), "changed", ++ (GCallback) wireless_security_changed_cb, ++ ws_parent); ++ + widget = inner_auth_combo_init (method, connection, s_8021x, secrets_only); + inner_auth_combo_changed_cb (widget, (gpointer) method); + +@@ -459,6 +476,10 @@ eap_method_ttls_new (WirelessSecurity *ws_parent, + gtk_widget_hide (widget); + widget = GTK_WIDGET (gtk_builder_get_object (parent->builder, "eap_ttls_anon_identity_entry")); + gtk_widget_hide (widget); ++ widget = GTK_WIDGET (gtk_builder_get_object (parent->builder, "eap_ttls_domain_label")); ++ gtk_widget_hide (widget); ++ widget = GTK_WIDGET (gtk_builder_get_object (parent->builder, "eap_ttls_domain_entry")); ++ gtk_widget_hide (widget); + widget = GTK_WIDGET (gtk_builder_get_object (parent->builder, "eap_ttls_ca_cert_label")); + gtk_widget_hide (widget); + widget = GTK_WIDGET (gtk_builder_get_object (parent->builder, "eap_ttls_ca_cert_button")); +diff --git a/panels/network/wireless-security/eap-method-ttls.ui b/panels/network/wireless-security/eap-method-ttls.ui +index 0b23c54ba..c679cdf0b 100644 +--- a/panels/network/wireless-security/eap-method-ttls.ui ++++ b/panels/network/wireless-security/eap-method-ttls.ui +@@ -50,6 +50,33 @@ + + + ++ ++ True ++ False ++ _Domain: ++ True ++ eap_ttls_domain_entry ++ 1 ++ ++ ++ 0 ++ 1 ++ ++ ++ ++ ++ True ++ True ++ True ++ True ++ Suffix of the server certificate name. ++ ++ ++ 1 ++ 1 ++ ++ ++ + + True + False +@@ -60,7 +87,7 @@ + + + 0 +- 1 ++ 2 + + + +@@ -71,7 +98,7 @@ + + + 1 +- 1 ++ 2 + + + +@@ -87,7 +114,7 @@ + + + 1 +- 2 ++ 3 + + + +@@ -101,7 +128,7 @@ + + + 0 +- 3 ++ 4 + + + +@@ -119,7 +146,7 @@ + + + 1 +- 3 ++ 4 + + + +@@ -133,7 +160,7 @@ + + + 0 +- 4 ++ 5 + 2 + + +-- +2.13.5 + diff --git a/gnome-control-center-disable-error-message-for-NM.patch b/gnome-control-center-disable-error-message-for-NM.patch index 2920f37..a9c26f1 100644 --- a/gnome-control-center-disable-error-message-for-NM.patch +++ b/gnome-control-center-disable-error-message-for-NM.patch @@ -1,19 +1,8 @@ -diff --git a/panels/network/cc-network-panel.c b/panels/network/cc-network-panel.c -index ad019a380..9b5119b77 100644 ---- a/panels/network/cc-network-panel.c -+++ b/panels/network/cc-network-panel.c -@@ -64,8 +64,10 @@ struct _CcNetworkPanel - /* widgets */ - GtkWidget *box_proxy; - GtkWidget *box_vpn; -+ GtkWidget *box_vpn1; - GtkWidget *box_wired; - GtkWidget *empty_listbox; -+ GtkWidget *label_NM_warning; - - /* wireless dialog stuff */ - CmdlineOperation arg_operation; -@@ -734,10 +736,23 @@ panel_check_network_manager_version (CcNetworkPanel *panel) +Index: gnome-control-center-3.26.1/panels/network/cc-network-panel.c +=================================================================== +--- gnome-control-center-3.26.1.orig/panels/network/cc-network-panel.c ++++ gnome-control-center-3.26.1/panels/network/cc-network-panel.c +@@ -765,10 +765,24 @@ panel_check_network_manager_version (CcN GtkWidget *label; gchar *markup; const gchar *version; @@ -23,7 +12,8 @@ index ad019a380..9b5119b77 100644 + GVariant *variant; + + connection = g_bus_get_sync (G_BUS_TYPE_SYSTEM, NULL, NULL); -+ proxy = g_dbus_proxy_new_sync (connection, G_DBUS_PROXY_FLAGS_NONE, NULL, ++ proxy = g_dbus_proxy_new_sync (connection, G_DBUS_PROXY_FLAGS_NONE, ++ NULL, + "org.freedesktop.systemd1", + "/org/freedesktop/systemd1/unit/wickedd_2ddhcp6_2eservice", + "org.freedesktop.systemd1.Unit", @@ -38,14 +28,24 @@ index ad019a380..9b5119b77 100644 gtk_container_remove (GTK_CONTAINER (panel), gtk_bin_get_child (GTK_BIN (panel))); box = gtk_box_new (GTK_ORIENTATION_VERTICAL, 20); -@@ -760,9 +775,17 @@ panel_check_network_manager_version (CcNetworkPanel *panel) +@@ -791,9 +805,27 @@ panel_check_network_manager_version (CcN gtk_widget_show_all (box); g_free (markup); + } else if (g_strcmp0 (state, "active") == 0) { -+ gtk_widget_hide (panel->box_vpn1); -+ gtk_widget_hide (panel->box_wired); -+ gtk_widget_show (panel->label_NM_warning); ++ gtk_container_remove (GTK_CONTAINER (panel), gtk_bin_get_child (GTK_BIN (panel))); ++ ++ box = gtk_box_new (GTK_ORIENTATION_VERTICAL, 20); ++ gtk_box_set_homogeneous (GTK_BOX (box), TRUE); ++ gtk_widget_set_vexpand (box, TRUE); ++ gtk_container_add (GTK_CONTAINER (panel), box); ++ ++ label = gtk_label_new (_("Please use YaST2 to configure your network.")); ++ gtk_label_set_line_wrap (GTK_LABEL (label), TRUE); ++ gtk_widget_set_valign (label, GTK_ALIGN_CENTER); ++ gtk_box_pack_start (GTK_BOX (box), label, TRUE, TRUE, 0); ++ ++ gtk_widget_show_all (box); } else { manager_running (panel->client, NULL, panel); } @@ -56,46 +56,97 @@ index ad019a380..9b5119b77 100644 } static void -@@ -816,9 +839,11 @@ cc_network_panel_class_init (CcNetworkPanelClass *klass) +Index: gnome-control-center-3.26.1/panels/network/cc-wifi-panel.c +=================================================================== +--- gnome-control-center-3.26.1.orig/panels/network/cc-wifi-panel.c ++++ gnome-control-center-3.26.1/panels/network/cc-wifi-panel.c +@@ -120,16 +120,35 @@ static void + check_main_stack_page (CcWifiPanel *self) + { + const gchar *nm_version; ++ const gchar *state; ++ GDBusConnection *connection; ++ GDBusProxy *proxy; ++ GVariant *variant; ++ ++ connection = g_bus_get_sync (G_BUS_TYPE_SYSTEM, NULL, NULL); ++ proxy = g_dbus_proxy_new_sync (connection, G_DBUS_PROXY_FLAGS_NONE, ++ NULL, ++ "org.freedesktop.systemd1", ++ "/org/freedesktop/systemd1/unit/wickedd_2ddhcp6_2eservice", ++ "org.freedesktop.systemd1.Unit", ++ NULL, NULL); ++ variant = g_dbus_proxy_get_cached_property (proxy, "ActiveState"); ++ state = g_variant_get_string (variant, NULL); - gtk_widget_class_bind_template_child (widget_class, CcNetworkPanel, box_proxy); - gtk_widget_class_bind_template_child (widget_class, CcNetworkPanel, box_vpn); -+ gtk_widget_class_bind_template_child (widget_class, CcNetworkPanel, box_vpn1); - gtk_widget_class_bind_template_child (widget_class, CcNetworkPanel, box_wired); - gtk_widget_class_bind_template_child (widget_class, CcNetworkPanel, empty_listbox); - gtk_widget_class_bind_template_child (widget_class, CcNetworkPanel, sizegroup); -+ gtk_widget_class_bind_template_child (widget_class, CcNetworkPanel, label_NM_warning); + nm_version = nm_client_get_version (self->client); - gtk_widget_class_bind_template_callback (widget_class, create_connection_cb); +- if (!nm_version) ++ if (!nm_version && g_strcmp0 (state, "inactive") == 0) + gtk_stack_set_visible_child_name (self->main_stack, "nm-not-running"); ++ else if (g_strcmp0 (state, "active") == 0) ++ gtk_stack_set_visible_child_name (self->main_stack, "wicked-running"); + else if (self->devices->len == 0) + gtk_stack_set_visible_child_name (self->main_stack, "no-wifi-devices"); + else + gtk_stack_set_visible_child_name (self->main_stack, "wifi-connections"); + ++ g_object_unref (connection); ++ g_object_unref (proxy); ++ g_variant_unref (variant); } -diff --git a/panels/network/network.ui b/panels/network/network.ui -index 93b770d0d..0a35c3270 100644 ---- a/panels/network/network.ui -+++ b/panels/network/network.ui -@@ -79,7 +79,7 @@ - - - -- -+ - True - False - vertical -@@ -168,6 +168,14 @@ - vertical - - -+ -+ -+ False -+ False -+ 0 -+ Please use YaST2 to configure your network. -+ -+ - - - --- -2.13.4 - + + static void +Index: gnome-control-center-3.26.1/panels/network/wifi.ui +=================================================================== +--- gnome-control-center-3.26.1.orig/panels/network/wifi.ui ++++ gnome-control-center-3.26.1/panels/network/wifi.ui +@@ -298,6 +298,48 @@ + nm-not-running + + ++ ++ ++ ++ ++ True ++ False ++ True ++ center ++ center ++ vertical ++ 18 ++ 18 ++ ++ ++ True ++ False ++ face-sad-symbolic ++ 128 ++ ++ ++ ++ ++ ++ True ++ False ++ True ++ Please use YaST2 to configure your network. ++ ++ ++ ++ ++ ++ end ++ ++ ++ ++ ++ wicked-running ++ ++ + + + diff --git a/gnome-control-center.changes b/gnome-control-center.changes index 3fc7d64..a651c00 100644 --- a/gnome-control-center.changes +++ b/gnome-control-center.changes @@ -1,3 +1,15 @@ +------------------------------------------------------------------- +Tue Oct 10 01:46:32 UTC 2017 - sckang@suse.com + +- Add control-center-network-add-domain-suffix-match.patch: + wifi: Add domain-suffix-match entry (bgo#787882, bsc#1047509). + +------------------------------------------------------------------- +Mon Oct 9 07:18:58 UTC 2017 - sckang@suse.com + +- Rebase gnome-control-center-disable-error-message-for-NM.patch + on 3.26.1. + ------------------------------------------------------------------- Wed Oct 4 11:27:11 UTC 2017 - zaitor@opensuse.org diff --git a/gnome-control-center.spec b/gnome-control-center.spec index f075131..1a8c488 100644 --- a/gnome-control-center.spec +++ b/gnome-control-center.spec @@ -37,8 +37,10 @@ Source: http://download.gnome.org/sources/gnome-control-center/3.26/%{na # PATCH-FEATURE-OPENSUSE gnome-control-center-follow-polkit-permissions-for-tz.patch boo#904058 badshah400@gmail.com -- Follow polkit permissions for allowing/locking timezone setting changes Patch1: gnome-control-center-follow-polkit-permissions-for-tz.patch -# PATCH-NEEDS-REBASE gnome-control-center-disable-error-message-for-NM.patch bsc#989801 sckang@suse.com -- network: Improve the check for whether NM or wicked is running was:PATCH-FIX-OPENSUSE +# PATCH-FIX-OPENSUSE gnome-control-center-disable-error-message-for-NM.patch bsc#989801 sckang@suse.com -- network: Improve the check for whether NM or wicked is running was:PATCH-FIX-OPENSUSE Patch2: gnome-control-center-disable-error-message-for-NM.patch +# PATCH-FIX-UPSTREAM control-center-network-add-domain-suffix-match.patch bgo#787882 bsc#1047509 sckang@suse.com -- wifi: Add domain-suffix-match entry +Patch3: control-center-network-add-domain-suffix-match.patch ### SLE only patches get 1000 or more as number. @@ -194,8 +196,8 @@ GNOME control center. %prep %setup -q %patch1 -p1 -# Needs rebase, again... -#patch2 -p1 +%patch2 -p1 +%patch3 -p1 # SLE only patches 1000+ %if !0%{?is_opensuse}