I have managed to build NetworkManager-0.5.1, http://people.redhat.com/dcbw/NetworkManager/ written by Dan Williams of RedHat. Discussion and required garballs attached. =================================================================================== Discussion ---------- In the author's own words, "Networking on Linux should not suck like it does right now for the desktop user". OK... I might not have quite phased it that way in a public forum, but I certainly agree with the sentiment. So what is NetworkManager? [from the README] NetworkManager attempts to keep an active network connection available at all times. It is intended only for the desktop use-case, and is not intended for usage on servers. At this time, it does not support static IP addresses on network interfaces, and requires DHCP to be used instead. The point of NetworkManager is to make networking configuration and setup as painless and automatic as possible. If using DHCP, NetworkManager is _intended_ to replace default routes, obtain IP addresses from a DHCP server, and change nameservers whenever it sees fit. If you have special needs, we'd like to hear about them, but understand that NetworkManager is not intended to serve the needs of all users. Sounds good... What do you need to build it? If you are running FC4, you will most likely need only the NetworkManager.tar.gz garball, which I installed under geektoys. Build Requirements ------------------ Based on a review of the configuration file a slew of LIBDEPS were added to the GARNOME Makefile for NetworkManager. Also required: * wireless-tools >= 28pre9 * dhcdbd http://people.redhat.com/jvdias/dhcdbd/ which depends on dhclient-script extensions present in dhclient versions >= 3.0.2-12. dhclient is part of the dhcp package. What is dhcdbd? [from the README] dhcdbd exists to : o provide D-BUS control of the ISC dhclient software, o store DHCP configuration parameters (options) persistently o providing access to DHCP options over D-BUS o notify applications of changes to DHCP IP interface configura dhcdbd is designed to be started as a D-BUS service from a service description file, by default /usr/share/dbus-1/services/dhcdbd.service; hence the default bus it will connect to is the "STARTER" bus, and it must be installed setuid to root. A garball to build dhcdbd in the bootstrap directory is attached. Building NetworkManager ------------------------ On my system I first updated: * wireless-tools to 28pre10 * dhcp to 3.0.-8 * built dhcdbd-1.9 within the GARNOME tree rather than the system tree to satify dbus/hal version requirements. A minor problem was encountered compiling ./src/NetworkManagerDevice.c This file includes: * <iwlib.h> [from wireless-tools] * <linux/mii.h> [kernel header]. <linux/mii.h> includes <linux/if.h> <iwlib.h> includes the following code: #ifdef HEADERS_KERNEL /* Traditionally we have used kernel headers, included in wireless.h */ #include <linux/socket.h> /* for "struct sockaddr" et al */ #include <linux/if.h> /* for IFNAMSIZ and co... */ #else /* !HEADERS_KERNEL */ /* Glibc systems headers are supposedly less problematic than kernel ones */ #include <sys/socket.h> /* for "struct sockaddr" et al */ #include <net/if.h> /* for IFNAMSIZ and co... */ #endif /* !HEADERS_KERNEL */ Consequently, two different sets of definitions for the device structures defined in if.h are included, which caused the compilation to fail. I worked around this problem by editing <iwlib.h> to use the kernel headers. With this change, NetworkManager-0.5.1 builds and installs under GARNOME-2.12.1. -Joseph -- joseph_sacco [at] comcast [dot] net
Attachment:
dhcdbd.tar.gz
Description: application/compressed-tar
Attachment:
network-manager.tar.gz
Description: application/compressed-tar