From Fedora Project Wiki

Line 9: Line 9:
The graphical applet is available for [http://www.gnome.org GNOME], [http://www.kde.org KDE] and [http://www.xfce.org Xfce] and follows the [http://standards.freedesktop.org/systemtray-spec/systemtray-spec-0.2.html Systray Protocol] from [http://www.opendesktop.org OpenDesktop].
The graphical applet is available for [http://www.gnome.org GNOME], [http://www.kde.org KDE] and [http://www.xfce.org Xfce] and follows the [http://standards.freedesktop.org/systemtray-spec/systemtray-spec-0.2.html Systray Protocol] from [http://www.opendesktop.org OpenDesktop].
Currently the NetworkManager Project upstream maintainer is [http://fedoraproject.org/wiki/DanWilliams Dan Williams] (2005).
Currently the NetworkManager Project upstream maintainer is [http://fedoraproject.org/wiki/DanWilliams Dan Williams] (2005).
[[Image:nm-applet1.png|center|nw-applet, Fedora 13, GNOME 2.30.0]]


For most users NetworkManager is mainly associated with '''nm-applet''' and '''[http://en.opensuse.org/KNetworkManager KNetworkManager]''', the latest was started by Novell in 2008 and is a part of the K Desktop Environment. This applets allow any user to configure in a friendly way their Linux networks and has become a very important application to succeed in therms of user friendliness.
For most users NetworkManager is mainly associated with '''nm-applet''' and '''[http://en.opensuse.org/KNetworkManager KNetworkManager]''', the latest was started by Novell in 2008 and is a part of the K Desktop Environment. This applets allow any user to configure in a friendly way their Linux networks and has become a very important application to succeed in therms of user friendliness.
Line 20: Line 22:
* Virtual Private Networks (OpenVPN, vpnc, openconnect, PTPP)
* Virtual Private Networks (OpenVPN, vpnc, openconnect, PTPP)
* Dial-up (PPP) and xDSL (PPPoE).
* Dial-up (PPP) and xDSL (PPPoE).
[[Image:nm-applet1.png|center|GNOME 2.30, Fedora 13, nw-applet]]


= NetworkManager =
= NetworkManager =

Revision as of 22:08, 15 April 2010



FedoraMarketing.png


Note.png
NOTE:
The template shouldn't be Marketing. To be changed before release.

NetworkManager .

NetworkManager Project was initiated by Red Hat back in 2004 aiming to provide Linux users with "pain free" networking experience. NetworkManager is divided into 2 different components:

  • a service that manages and reports network changes;
  • a graphical desktop applet that allow users to manipulate network connections.

The graphical applet is available for GNOME, KDE and Xfce and follows the Systray Protocol from OpenDesktop. Currently the NetworkManager Project upstream maintainer is Dan Williams (2005).

nw-applet, Fedora 13, GNOME 2.30.0

For most users NetworkManager is mainly associated with nm-applet and KNetworkManager, the latest was started by Novell in 2008 and is a part of the K Desktop Environment. This applets allow any user to configure in a friendly way their Linux networks and has become a very important application to succeed in therms of user friendliness. Currently NetworkManager supports the following:

  • Wired Ethernet Devices;
  • Wireless Ethernet Devices;
    • Unencrypted;
    • WEP;
    • WPA Personal and WPA Enterprise;
  • Mobile Broadband Devices (GSM, CDMA, UMTS, etc);
  • Virtual Private Networks (OpenVPN, vpnc, openconnect, PTPP)
  • Dial-up (PPP) and xDSL (PPPoE).

NetworkManager

NetworkManager aims to provide a "pain free networking" experience for Linux users. Fedora 13 ships with a stabilized snapshot of NetworkManager 0.8.1 which includes extended functionality; for example DHCPv6, Bluetooth DUN and Mobile Broadband Status.
Most users will associate NetworkManager directly with their applets; nm-applet and KNetworkManager.
NetworkManager's upstream project maintainer since 2005, Dan Williams provided the community a very in-depth post about NetworkManager 0.8, identifying it as "the taste of a new generation", which can be consulted here.

From a very objective approach, Fedora 13 is the result of a community effort and many times "The Cathedral and the Bazaar" (link) is pointed as a reference to better understand it's "modus operandi". NetworkManager, despite being started by Red Hat, also has a great effort from the community, and following this line, on behalf of Fedora's Marketing Team, I've interviewed Dan Williams regarding some aspects of the NetworkManager development.

Interview with Dan Williams

Dan Williams is a Senior Software Engineer in the Red Hat Desktop, being involved since 2003 with OpenOffice.org and became upstream project maintainer for NetworkManager in 2005. He was heavily involved in OLPC (2005-2007) helping planning and implementing core features of Sugar and OLPC Wireless.
Dan characterizes his involvement with Fedora and FOSS Communities as an advocate for users by attending kernel wifi summits and being involved on Linux wireless mailing lists.

"It's been a great ride over the last 7 years." - Dan Williams

Given the nature of FOSS contributions, sometimes natural barriers arise to new potential developers, according to Dan, one of the most relevant is the lack of upstream guidance. Sometimes a potential developer shows up, often upstream developers don't have much time available to help nurture new developers through some of the initial stages. Dan's points that documentation has a very important role here, as new potential developers can be forwarded avoiding the to repeat the effort every time when new developers join.
NetworkManager provides a good grounds for developers seeking knowledge and experience in the fields of:

  • D-Bus;
  • GObject;
  • PolicyKit;
  • Networking System Interaction;
  • 3G Modems;
  • netlink API's;
  • etc;

As an advice for potential developers willing to join NetworkManager:

  • "Keep asking questions; no question is too stupid or embarrassing to ask. Then, when you understand the solution to your question, tell us how to improve the documentation so other people benefit too. Since we've been involved in the project for a long time, we don't always know what the initial roadblocks are to building the source, understanding the

architecture, etc."

    • Dan Williams (2010)


Dan also points the feedback from users to the success of NetworkManager. Even non-developers have a key role in the development of NetworkManager, providing good bug reports. A comprehensive article is available here.

  • "The #1 and #2 items missing from many bug reports is what package version of NM you've experienced the bug with, and what hardware you're using. As the Fedora project, we should work harder to automate the collection of this information like Ubuntu has done with Launchpad. This stuff should really be automatic, but for now we'll need users to

do it for us."

    • Dan Williams (2010)

When inquired about the distribution/tools used for the development of NetworkManager:

  • "I develop mainly on Fedora, though occasionally I do a build on Ubuntu when I need to dig into a problem there and the Ubuntu team hasn't been able to debug it further.

I use gnome-terminal with multiple tabs for workflow (usually have NetowrkManager's directory open in one tab, ModemManager's in another, and network-manager-applet's in a third), and GEdit for actual coding. No, I don't use emacs or vi, mainly because I started coding on Mac OS long ago and all the tools there are GUI development environments. GEdit does 95% of what most people really need from an editor, and I've never been a fan modal editors like emacs/vi probably because I used something else first."

    • Dan Williams (2010)

Fedora Foundations by Dan Williams

Freedom: it's about Free Software; we don't make compromises. If it's not free, or it's patent encumbered, we don't ship it. You're completely free to redistribute, remix, and modify anything we ship.
Friends: both working on Fedora and using Fedora should be fun; we shouldn't discriminate or make users feel unwelcome. Our discussions should be civilized, avoid personal attacks, and simply get to the bottom of the issue. Obviously there will be disagreements, but these need to be settled nicely.
Features: we build new features through the community. We don't develop them behind closed doors, almost all of what we do is out there in git repositories and on wiki pages. We have lots of different users, and we try to add new features that help all these users out, not just one particular group.
First: we're cutting-edge; we drive new features into Fedora before most other distros get them, but we also try to ensure those features are stable enough for our users. This is hard to get right, but we seem to be doing it pretty well so far...

Interview unedited

The full contents of the interview (by email) to Dan Williams can be found here.

Biography

Dan Williams is a Senior Software Engineer on Red Hat Desktop Team since 2003. Dan's first commitment was to OpenOffice.org due to his involvement with OOo Mac OS X port.
In 2004 Dan was invited by Havoc to start working on NetworkManager, and in 2005 became the NetworkManager upstream project maintainer.
Dan was also part of the original Red Hat team working on OLPC with John Palmieri, Marco Pessenti-Gritti, Chris Blizzard, David Woodhouse, Marcelo Tosatti, Seth Nickel, Bryan Clark, et all.

Screenshots (nm-applet)

Nm-applet.png Nm-applet1.png Nm-applet2.png Nm-applet4.png

Resource Links