Want to help out and hack on NetworkManager?
Join the NetworkManager mailing list to interact with all the other NM hackers. We'd love to hear from you!
Second, read the Design Goals of NetworkManager to get an idea of why things work the way they do.
To checkout and build the latest, hottest sources of the core NetworkManager daemon from git:
git clone git://anongit.freedesktop.org/NetworkManager/NetworkManager.git cd NetworkManager ./autogen.sh --prefix=/usr --sysconfdir=/etc --localstatedir=/var make sudo make install
Make sure to have required build dependencies installed. For example, on Fedora distribution you might want to install these packages. Also, on Fedora-like distributions you can instead build an RPM directly from the NetworkManager git tree via
If you instead want to play with the GTK-based network applet, you need network-manager-applet, too, this time from Gnome git:
git clone git://git.gnome.org/network-manager-applet cd network-manager-applet ./autogen.sh --prefix=/usr --sysconfdir=/etc --localstatedir=/var make sudo make install
There are also VPN service plugins for vpnc, openvpn, and pptp. Each has its own git module, so replace 'vpnc' as appropriate in the following example:
git clone git://git.gnome.org/network-manager-vpnc cd network-manager-vpnc ./autogen.sh --prefix=/usr --sysconfdir=/etc --localstatedir=/var make sudo make install
Actually hacking on it
If you make changes to NetworkManager, we'd love to receive your patch in 'git format-patch' format, but a Unified diff format (ie, diff -u) works too. Then mail the patch to the NetworkManager list or file a bug in GNOME Bugzilla and attach it. Others on the list may make suggestions, please take these into consideration. Eventually, your patch can be checked into the NetworkManager git source repositories.
Stuff to work on
The most up-to-date list of work items is kept in the TODO file in NetworkManager git. If you see anything you'd like to work on, please send a patch!