[Sugar-devel] Proxy Settings Feature in the recent versions of sugar
Manash Raja
mpdmanash at gmail.com
Sun Apr 3 06:29:00 EDT 2016
Hi all,
The proxy feature implementation looks complete now.
https://github.com/sugarlabs/sugar/pull/665
Hence, please review it and provide suggestions. :)
Shall I update the feature page for the same?
https://wiki.sugarlabs.org/go/Features/Proxy_Settings
Thanks.
Regards
Manash Pratim Das (ManashRaja)
On Wed, Mar 16, 2016 at 3:27 AM, James Cameron <quozl at laptop.org> wrote:
> On Wed, Mar 16, 2016 at 01:57:06AM +0530, Manash Raja wrote:
> > Dear James,
> >
> > Regarding moving to src/jarabe/main.py , as far as I know, there
> > isn't a direct way for python to set the required environment
> > variables (http_proxy) and make it accessible to all other
> > processes. The various method in python for editing the environment
> > variables, keeps the changes limited to only that process or its
> > child processes. Hence if the implementation is done through
> > main.py, other files to run bash scripts have to be introduced.
>
> I disagree. src/jarabe/main.py already sets several environment
> variables that are inherited by activity processes, so there is no
> need to run shell scripts. You should test again. Take particular
> note of variables such as SUGAR_VERSION, and TZ.
>
> SUGAR_VERSION is set during startup with this;
>
> os.environ['SUGAR_VERSION'] = config.version
>
> TZ is set by reading a Gio.Settings instance with this;
>
> def setup_timezone():
> settings = Gio.Settings('org.sugarlabs.date')
> timezone = settings.get_string('timezone')
> if timezone is not None and timezone:
> os.environ['TZ'] = timezone
>
> There is no benefit to using /usr/bin/sugar instead, and your proposed
> change is very resource intensive because of multiple activation of
> gsettings binary.
>
> > So, to me it seems exporting proxy settings to the environment
> > variables at /usr/bin/sugar is a fine implementation. Though we can
> > use variables to reduce gsettings calls in that file.
> >
> > I would definitely look at the branch based development from next time.
> >
> > Tell me if I shall reduce gsettings call in /usr/bin/sugar file and
> continue
> > with the present implementation or look for any other implementation
> that you
> > suggest. Once the feature is final for merge, I will collapse/rebase the
> > commits with new commit message and update the PR.
> >
> > Thanks.
> >
> > Regards.
> > Manash Pratim Das (ManashRaja)
> >
> > On Tue, Mar 15, 2016 at 10:39 AM, James Cameron <[1]quozl at laptop.org>
> wrote:
> >
> > Thanks, that's interesting.
> >
> > Your /usr/bin/sugar (aka bin/[2]sugar.in) will run gsettings many
> times,
> > and this is inefficient, causing unnecessary delay during startup.
> > Perhaps if you move this into src/jarabe/main.py which already uses
> > Gio.Settings?
> >
> > You have worked on your master branch and the pull request is
> > associated with that branch. That's unusual. It is more common to
> > use a new branch with a name that explains the feature. Make a note
> > of that for next time.
> >
> > Your pull request has three commits; 09d363f, 682d0b2, 4fe1a2f.
> > Before merging, we will ask for these and later commits to be
> > collapsed, rebased, or re-written. You may also combine and rewrite
> > the commit messages. Then a push with --force will update the pull
> > request.
> >
> > The [3]http://wiki.sugarlabs.org/go/Features/Proxy_Settings page is
> on a
> > Wiki, and any change can be rolled back.
> >
> > On Tue, Mar 15, 2016 at 09:58:31AM +0530, Manash Raja wrote:
> > > Hi,
> > >
> > > I thank you all for the guidance.
> > >
> > > I modified my PR as per your suggestions and now the
> implementation of
> > the
> > > proxy feature is far better.
> > > @Sam, as you suggested, I have now completely removed the need of
> > re-writing
> > > "proxy.sh" every time the settings changes and am using
> > > "org.gnome.system.proxy" schemas. Now "/usr/bin/sugar" is
> hard-coded to
> > read
> > > the proxy settings from "org.gnome.system.proxy" and export it to
> the
> > > environment variables required for the proxy settings to be
> available
> > easily.
> > >
> > > @Gonzalo, thanks for the link to that important patch from Manuel
> > QuiƱones. And
> > > @James, I have changed my "view.py" and "model.py" files to go
> with
> > Manuel
> > > QuiƱones' way of setting the "org.gnome.system.proxy" schemas via
> > GSettings.
> > > This has hence removed the dependence on polkit for file write
> > permissions and
> > > made us do away with extra files like "set_proxy.py" for running
> root
> > permitted
> > > scripts.
> > >
> > > Also I have removed the "logout.sh" script as now I am using the
> pre-made
> > > "require-restart" feature present in "sectionview" which asks the
> user
> > for
> > > restart.
> > >
> > > Also @James, shall I now therefore submit the GUI changes and the
> changes
> > you
> > > proposed to for this update in the features page? [1][4]
> > wiki.sugarlabs.org/go/
> > > Features/Proxy_Settings
> > >
> > > Here is the patch I submitted: [2][5]
> https://github.com/ManashRaja/sugar/
> > commit/
> > > 4fe1a2fea7f37d036331c1a1ae736c88cc29d62d
> > >
> > > Thanks
> > > Regards
> > > Manash Pratim Das
> > >
> > > On Mon, Mar 14, 2016 at 8:03 AM, James Cameron <[3][6]
> quozl at laptop.org>
> > wrote:
> > >
> > > On Sun, Mar 13, 2016 at 11:18:46PM -0300, Gonzalo Odiard wrote:
> > > > On Sun, Mar 13, 2016 at 11:09 PM, Jerry Vonau <[1][4][7]
> > me at jvonau.ca> wrote:
> > > >
> > > > > Yea that has roots to the old ActivityCentral fork, any
> reason
> > > > > why this has not been 'upstreamed' from
> OneEducation(OLPC-AU) to
> > > > > SugarLabs?
> > > >
> > > > Yes. Was not accepted by sugar upstream.
> > >
> > > Let's have another go then. See what the objections are from
> the
> > > current set of developers.
> > >
> > > > I upstreamed all that was possible, the only changes that
> were
> > > > developed just for OLPC-AU were the changes needed to deal
> with the
> > > > complex network environments common in Australian schools.
> > >
> > > This disease is spreading.
> > >
> > > --
> > > James Cameron
> > > [5][8]http://quozl.netrek.org/
> > > _______________________________________________
> > > Sugar-devel mailing list
> > > [6][9]Sugar-devel at lists.sugarlabs.org
> > > [7][10]http://lists.sugarlabs.org/listinfo/sugar-devel
> > >
> > > References:
> > >
> > > [1] [11]http://wiki.sugarlabs.org/go/Features/Proxy_Settings
> > > [2] [12]https://github.com/ManashRaja/sugar/commit/
> > 4fe1a2fea7f37d036331c1a1ae736c88cc29d62d
> > > [3] mailto:[13]quozl at laptop.org
> > > [4] mailto:[14]me at jvonau.ca
> > > [5] [15]http://quozl.netrek.org/
> > > [6] mailto:[16]Sugar-devel at lists.sugarlabs.org
> > > [7] [17]http://lists.sugarlabs.org/listinfo/sugar-devel
> >
> > --
> > James Cameron
> > [18]http://quozl.netrek.org/
> >
> > References:
> >
> > [1] mailto:quozl at laptop.org
> > [2] http://sugar.in/
> > [3] http://wiki.sugarlabs.org/go/Features/Proxy_Settings
> > [4] http://wiki.sugarlabs.org/go/
> > [5] https://github.com/ManashRaja/sugar/commit/
> > [6] mailto:quozl at laptop.org
> > [7] mailto:me at jvonau.ca
> > [8] http://quozl.netrek.org/
> > [9] mailto:Sugar-devel at lists.sugarlabs.org
> > [10] http://lists.sugarlabs.org/listinfo/sugar-devel
> > [11] http://wiki.sugarlabs.org/go/Features/Proxy_Settings
> > [12]
> https://github.com/ManashRaja/sugar/commit/4fe1a2fea7f37d036331c1a1ae736c88cc29d62d
> > [13] mailto:quozl at laptop.org
> > [14] mailto:me at jvonau.ca
> > [15] http://quozl.netrek.org/
> > [16] mailto:Sugar-devel at lists.sugarlabs.org
> > [17] http://lists.sugarlabs.org/listinfo/sugar-devel
> > [18] http://quozl.netrek.org/
>
> --
> James Cameron
> http://quozl.netrek.org/
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.sugarlabs.org/archive/sugar-devel/attachments/20160403/a0d59e24/attachment.html>
More information about the Sugar-devel
mailing list