From Fedora Project Wiki

Line 10: Line 10:
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]]
[[Image:nm-applet1.png|frame|center|Fedora 13; GNOME 2.30.0; nm-applet credits]]


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.

Revision as of 22:39, 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).

Fedora 13; GNOME 2.30.0; nm-applet credits

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 in Fedora 13

Dan Williams, upstream maintainer for NetworkManager has provided the community with a very elucidative post about NetworkManager 0.8, which he refers to as "the taste of a new generation". The orignal publication can be consulted here. In addition to the information provided by Dan, we would like to focus that Fedora 13 "Goddard" ships with a stabilized version of NetworkManager 0.8.1 which includes new features, such as:

  • DHCPv6;
  • Bluetooth DUN;
  • Mobile Broadband Status.

In Fedora 13 "Goddard", NetworkManager is installed by default, including the applets for the Desktop Environment installed (GNOME, KDE, Xfce).

NetworkManager - GNOME

Fedora 13 users with GNOME installed will have nm-applet available on gnome-panel. By default it will search available networks and can be easily configured, providing the Fedora 13 user an easy and fast way to configure networking on the fly; either by creating new connections or by editing existing connections. In addition it also provides information on other aspects, like the last time connections were used, signal strength, etc.

Fedora 13; GNOME 2.30.0; nm-applet network information.

Configuring your Network

NetworkManager - KDE

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