diff --git a/extra/networkmanager/NetworkManager.conf b/extra/networkmanager/NetworkManager.conf new file mode 100644 index 000000000..c37b59680 --- /dev/null +++ b/extra/networkmanager/NetworkManager.conf @@ -0,0 +1,2 @@ +[main] +plugins=keyfile diff --git a/extra/networkmanager/PKGBUILD b/extra/networkmanager/PKGBUILD new file mode 100644 index 000000000..e3b671acd --- /dev/null +++ b/extra/networkmanager/PKGBUILD @@ -0,0 +1,72 @@ +# $Id: PKGBUILD 161859 2012-06-15 19:32:00Z heftig $ +# Maintainer: Jan de Groot +# Contributor: Wael Nasreddine +# Contributor: Tor Krill +# Contributor: Will Rea +# Contributor: Valentine Sinitsyn + +pkgname=networkmanager +_pkgname=NetworkManager +pkgver=0.9.5.96 +pkgrel=0 +pkgdesc="Network Management daemon" +arch=('arm' 'i686' 'x86_64') +license=('GPL') +url="http://www.gnome.org/projects/$_pkgname/" +depends=('dbus-glib' 'iproute2' 'libnl' 'nss' 'polkit' 'udev' 'wpa_supplicant' 'ppp' 'dhcpcd' + 'libsoup') +makedepends=('intltool' 'dhclient' 'iptables' 'gobject-introspection') +optdepends=('modemmanager: for modem management service' + 'dhclient: alternative DHCP/DHCPv6 client' + 'iptables: Connection sharing' + 'dnsmasq: Connection sharing' + 'bluez: Bluetooth support' + 'openresolv: openresolv support') +options=('!libtool') +backup=('etc/NetworkManager/NetworkManager.conf') +install=networkmanager.install +source=(http://ftp.gnome.org/pub/gnome/sources/$_pkgname/${pkgver:0:3}/$_pkgname-$pkgver.tar.xz + NetworkManager.conf disable_set_hostname.patch dnsmasq-path.patch) +sha256sums=('ed6b699c7637fba542dabadbc276da88844443c5532026dac5ee1fa052249c60' + '44b048804c7c0b8b3b0c29b8632b6ad613c397d0a1635ec918e10c0fbcdadf21' + '25056837ea92e559f09563ed817e3e0cd9333be861b8914e45f62ceaae2e0460' + '65124505048cc8396daf0242c9f5d532fa669b4bbca305998c248ab2329490cb') + +build() { + cd $_pkgname-$pkgver + + patch -Np1 -i ../disable_set_hostname.patch + patch -Np1 -i ../dnsmasq-path.patch + + ./configure \ + --prefix=/usr \ + --sysconfdir=/etc \ + --localstatedir=/var \ + --libexecdir=/usr/lib/networkmanager \ + --with-crypto=nss \ + --with-distro=arch \ + --with-dhclient=/usr/sbin/dhclient \ + --with-dhcpcd=/sbin/dhcpcd \ + --with-iptables=/usr/sbin/iptables \ + --with-systemdsystemunitdir=/usr/lib/systemd/system \ + --with-udev-dir=/usr/lib/udev \ + --with-resolvconf=/usr/sbin/resolvconf \ + --with-session-tracking=ck \ + --disable-static \ + --enable-more-warnings=no \ + --disable-wimax + + make +} + +package() { + cd $_pkgname-$pkgver + make DESTDIR="$pkgdir" install + + install -m644 ../NetworkManager.conf "$pkgdir/etc/NetworkManager/" + + rm -r "$pkgdir/var/run" + + # Provide native service for arch-daemons generator + ln -s NetworkManager.service "$pkgdir/usr/lib/systemd/system/networkmanager.service" +} diff --git a/extra/networkmanager/disable_set_hostname.patch b/extra/networkmanager/disable_set_hostname.patch new file mode 100644 index 000000000..ee95dd0e1 --- /dev/null +++ b/extra/networkmanager/disable_set_hostname.patch @@ -0,0 +1,19 @@ +diff -Nur NetworkManager-0.9.0.orig/src/nm-policy.c NetworkManager-0.9.0/src/nm-policy.c +--- NetworkManager-0.9.0.orig/src/nm-policy.c 2011-08-23 06:41:02.099686450 +0000 ++++ NetworkManager-0.9.0/src/nm-policy.c 2011-08-23 06:43:38.227791737 +0000 +@@ -302,6 +302,7 @@ + return; + } + ++#if 0 + /* Try automatically determined hostname from the best device's IP config */ + if (!best4) + best4 = get_best_ip4_device (policy->manager, &best_req4); +@@ -356,6 +357,7 @@ + } + } + ++#endif + /* If no automatically-configured hostname, try using the hostname from + * when NM started up. + */ diff --git a/extra/networkmanager/dnsmasq-path.patch b/extra/networkmanager/dnsmasq-path.patch new file mode 100644 index 000000000..c0e713266 --- /dev/null +++ b/extra/networkmanager/dnsmasq-path.patch @@ -0,0 +1,30 @@ +diff -u -r NetworkManager-0.9.2.0/src/dns-manager/nm-dns-dnsmasq.c NetworkManager-0.9.2.0-dnsmasq/src/dns-manager/nm-dns-dnsmasq.c +--- NetworkManager-0.9.2.0/src/dns-manager/nm-dns-dnsmasq.c 2011-10-10 23:38:20.000000000 +0200 ++++ NetworkManager-0.9.2.0-dnsmasq/src/dns-manager/nm-dns-dnsmasq.c 2012-03-06 09:07:24.137460927 +0100 +@@ -52,8 +52,11 @@ + find_dnsmasq (void) + { + static const char *paths[] = { ++ "/usr/local/bin/dnsmasq", + "/usr/local/sbin/dnsmasq", ++ "/usr/bin/dnsmasq", + "/usr/sbin/dnsmasq", ++ "/bin/dnsmasq", + "/sbin/dnsmasq", + NULL + }; +diff -u -r NetworkManager-0.9.2.0/src/dnsmasq-manager/nm-dnsmasq-manager.c NetworkManager-0.9.2.0-dnsmasq/src/dnsmasq-manager/nm-dnsmasq-manager.c +--- NetworkManager-0.9.2.0/src/dnsmasq-manager/nm-dnsmasq-manager.c 2011-04-19 07:06:22.000000000 +0200 ++++ NetworkManager-0.9.2.0-dnsmasq/src/dnsmasq-manager/nm-dnsmasq-manager.c 2012-03-06 09:07:58.603851818 +0100 +@@ -170,8 +170,11 @@ + nm_find_dnsmasq (void) + { + static const char *dnsmasq_binary_paths[] = { ++ "/usr/local/bin/dnsmasq", + "/usr/local/sbin/dnsmasq", ++ "/usr/bin/dnsmasq", + "/usr/sbin/dnsmasq", ++ "/bin/dnsmasq", + "/sbin/dnsmasq", + NULL + }; diff --git a/extra/networkmanager/networkmanager.install b/extra/networkmanager/networkmanager.install new file mode 100644 index 000000000..de40c17ed --- /dev/null +++ b/extra/networkmanager/networkmanager.install @@ -0,0 +1,9 @@ +post_upgrade() { + (( $(vercmp 0.8.3 $2) > 0 )) && cat <