No edit summary |
No edit summary |
||
Line 20: | Line 20: | ||
==Timeline== | ==Timeline== | ||
*Implement NMSettingProxy | *Find proxy setting propagation sources {{Background color|green|Done}} | ||
*Get NetworkManager & build on Fedora {{Background color|green|Done}} | |||
*Understand NetworkManager codebase {{Background color|green|Done}} | |||
*Implement NMSettingProxy {{Background color|yellow|Current}} | |||
*Implement NMProxyManager and its DBUS Interfaces | *Implement NMProxyManager and its DBUS Interfaces | ||
*Write dispatcher scripts (using gsettings, kwriteconfig, profile.d scripts) | *Write dispatcher scripts (using gsettings, kwriteconfig, profile.d scripts) | ||
Line 30: | Line 33: | ||
==Current Progress== | ==Current Progress== | ||
:This section will be changing continuously. | |||
===Proxy Setting Propagation sources=== | |||
===Building NetworkManager on Fedora=== | |||
===Codebase: files to change=== | |||
===Adding NMSettingProxy=== | |||
Currently doing. |
Revision as of 14:53, 28 April 2013
Integrate Proxy Settings with NetworkManager
Overview
Currently Proxy Settings are handled separately (by gnome-control-center in gnome) from NetworkManager. However, since proxy settings are connection dependent, they have to be updated as connections get (de-)activated. NetworkManager which handles that is the perfect place to do it.
Needs Addressed
It makes proxy setting configuration and its propagation to all desktop and console processes automated on a per-connection basis instead of the user setting them each time manually on connection changes.
Relevant Experience: I understand the D-BUS architecture and NetworkManager's code base. I have also thoroughly investigated how applications (of gnome, kde and terminal) seek proxy information as a first step. That said, I understand the concepts of networking and can effortlessly read and write programs in C\C++\bash.
Implementation
An NMProxyManager Gobject derivative class will be added to NetworkManager and initialized during start. This new module will expose the proxy settings over DBUS and call relevant executables to set the proxy settings, as connections get activated\deactivated. For settings, an NMSettingProxy subclass of NMSetting has to be implemented.
Timeline
- Find proxy setting propagation sources Template:Background color
- Get NetworkManager & build on Fedora Template:Background color
- Understand NetworkManager codebase Template:Background color
- Implement NMSettingProxy Template:Background color
- Implement NMProxyManager and its DBUS Interfaces
- Write dispatcher scripts (using gsettings, kwriteconfig, profile.d scripts)
- Make them build-configurable (update Makefiles)
- Test it on gnome, kde and console applications
- Send a pull request
Current Progress
- This section will be changing continuously.
Proxy Setting Propagation sources
Building NetworkManager on Fedora
Codebase: files to change
Adding NMSettingProxy
Currently doing.