diff options
Diffstat (limited to 'rpms/sugar/0064-sugar-session-export-manual-Gnome-proxy-settings-as-.patch')
-rw-r--r-- | rpms/sugar/0064-sugar-session-export-manual-Gnome-proxy-settings-as-.patch | 73 |
1 files changed, 73 insertions, 0 deletions
diff --git a/rpms/sugar/0064-sugar-session-export-manual-Gnome-proxy-settings-as-.patch b/rpms/sugar/0064-sugar-session-export-manual-Gnome-proxy-settings-as-.patch new file mode 100644 index 0000000..a5aa53e --- /dev/null +++ b/rpms/sugar/0064-sugar-session-export-manual-Gnome-proxy-settings-as-.patch @@ -0,0 +1,73 @@ +From 005a15f4c6954d5a2d25f3762b1f702117e854e2 Mon Sep 17 00:00:00 2001 +From: Jerry Vonau <jvonau@shaw.ca> +Date: Mon, 12 Dec 2011 19:09:06 +0100 +Subject: [PATCH sugar 64/74] sugar-session: export manual Gnome proxy + settings as $http_proxy + +Some applications and tools and even some parts of Sugar will use the +http_proxy environment variable if set, but don't use the Gnome (GConf) proxy +settings. + +After changing the GConf proxy settings, Sugar needs to be restarted for the +http_proxy environment variable to be updated. + +[factored out into separate function; some clean-ups; added description] +Signed-off-by: Sascha Silbe <silbe@activitycentral.com> +--- + bin/sugar-session | 26 ++++++++++++++++++++++++++ + 1 files changed, 26 insertions(+), 0 deletions(-) + +diff --git a/bin/sugar-session b/bin/sugar-session +index ee0048d..7eaa8f1 100755 +--- a/bin/sugar-session ++++ b/bin/sugar-session +@@ -2,6 +2,7 @@ + # Copyright (C) 2006, Red Hat, Inc. + # Copyright (C) 2009, One Laptop Per Child Association Inc + # Copyright (C) 2010, Plan Ceibal <comunidad@plan.ceibal.edu.uy> ++# Copyright (C) 2011, OLPC-AU. + # + # This program is free software; you can redistribute it and/or modify + # it under the terms of the GNU General Public License as published by +@@ -211,6 +212,30 @@ def setup_accessibility_cb(): + accessibility_manager = accessibility.AccessibilityManager() + accessibility_manager.setup_accessibility() + ++ ++def export_proxy_settings(): ++ """Export manual proxy settings from GConf as environment variables ++ ++ Some applications and tools and even some parts of Sugar will use ++ the http_proxy environment variable if set, but don't use the Gnome ++ (GConf) proxy settings. ++ """ ++ client = gconf.client_get_default() ++ if client.get_string('/system/proxy/mode') != 'manual': ++ return ++ ++ http_host = client.get_string('/system/http_proxy/host') ++ http_port = client.get_int('/system/http_proxy/port') ++ use_auth = client.get_bool('/system/http_proxy/use_authentication') ++ proxy_info = '%s:%d' % (http_host, http_port) ++ if use_auth: ++ user = client.get_string('/system/http_proxy/authentication_user') ++ pword = client.get_string('/system/http_proxy/authentication_password') ++ proxy_info = '%s:%s@%s' % (user, pword, proxy_info) ++ ++ os.environ['http_proxy'] = 'http://%s/' % proxy_info ++ ++ + def main(): + try: + from sugar import env +@@ -253,6 +278,7 @@ def main(): + if timezone is not None and timezone: + os.environ['TZ'] = timezone + ++ export_proxy_settings() + set_fonts() + + # this must be added early, so that it executes and unfreezes the screen +-- +1.7.6 + |