summarylogtreecommitdiffstats
diff options
context:
space:
mode:
authorAlejandro2016-04-30 08:43:51 +0200
committerAlejandro2016-04-30 08:43:51 +0200
commitbafc52505bd486949466034dd47f96b6e2869d7e (patch)
tree96bfc6c9c2c5ba3c0f5a22681ee6f84677de1a8f
parent1838783d800fffe96c6eface7faea15c8ccf9338 (diff)
downloadaur-bafc52505bd486949466034dd47f96b6e2869d7e.tar.gz
New version 1.2
-rw-r--r--.SRCINFO43
-rw-r--r--NetworkManager.conf6
-rw-r--r--PKGBUILD76
-rw-r--r--dhcpv6-mixed.patch34
-rw-r--r--disable_set_hostname.patch19
-rw-r--r--disable_wifi_scan_when_connected.patch6
-rw-r--r--hidepid.patch54
-rw-r--r--networkmanager.install9
8 files changed, 164 insertions, 83 deletions
diff --git a/.SRCINFO b/.SRCINFO
index 4a9662ee1ed6..6eca6cc785c1 100644
--- a/.SRCINFO
+++ b/.SRCINFO
@@ -1,17 +1,15 @@
pkgbase = networkmanager-noscan
pkgdesc = Network Management daemon with Wi-Fi scanning disabled when already connected (improves reliability of the connection in several Wireless cards)
- pkgver = 1.0.12
- pkgrel = 1
+ pkgver = 1.2.0
+ pkgrel = 4
url = http://www.gnome.org/projects/NetworkManager/
arch = i686
arch = x86_64
license = GPL2
license = LGPL2.1
checkdepends = libx11
- checkdepends = python-gobject
checkdepends = python-dbus
makedepends = intltool
- makedepends = dhcpcd
makedepends = dhclient
makedepends = iptables
makedepends = gobject-introspection
@@ -20,49 +18,50 @@ pkgbase = networkmanager-noscan
makedepends = modemmanager
makedepends = dbus-glib
makedepends = iproute2
- makedepends = libnl
makedepends = nss
makedepends = polkit
makedepends = wpa_supplicant
- makedepends = dhcp-client
makedepends = libsoup
makedepends = systemd
+ makedepends = libgudev
makedepends = libmm-glib
makedepends = rp-pppoe
makedepends = libnewt
makedepends = libndp
makedepends = libteam
makedepends = vala
+ makedepends = perl-yaml
+ makedepends = python-gobject
+ provides = networkmanager
+ conflicts = networkmanager
+ replaces = networkmanager
+ source = https://download.gnome.org/sources/NetworkManager/1.2/NetworkManager-1.2.0.tar.xz
+ source = hidepid.patch
+ source = dhcpv6-mixed.patch
+ source = NetworkManager.conf
+ source = disable_wifi_scan_when_connected.patch
+ sha256sums = e947cf30fa3d19dce88e6f6af51f06dc282b7db7996f946aaa37b03526ef2a80
+ sha256sums = 1de5b511b6b4a933739b0ef48ede1830fa3d6dea2277c1302b12b08fa83a73f1
+ sha256sums = f7771790485f24d788fe35f5922ad044a29c6d89b34458d9e99938503b2a3b39
+ sha256sums = 452e4f77c1de92b1e08f6f58674a6c52a2b2d65b7deb0ba436e9afa91ee15103
+ sha256sums = 3dfabdccd97074c948c924ece87935576e64675bdfef478e800a6da882861c2d
+
+pkgname = networkmanager-noscan
depends = libnm-glib
depends = iproute2
- depends = libnl
depends = polkit
depends = wpa_supplicant
- depends = dhcp-client
depends = libsoup
depends = libmm-glib
depends = libnewt
depends = libndp
depends = libteam
- depends = libgudev
optdepends = dnsmasq: connection sharing
optdepends = bluez: Bluetooth support
optdepends = openresolv: resolvconf support
optdepends = ppp: dialup connection support
optdepends = rp-pppoe: ADSL support
+ optdepends = dhclient: External DHCP client
optdepends = modemmanager: cellular network support
- provides = networkmanager
- conflicts = networkmanager
- replaces = networkmanager
backup = etc/NetworkManager/NetworkManager.conf
- source = http://ftp.gnome.org/pub/gnome/sources/NetworkManager/1.0/NetworkManager-1.0.12.tar.xz
- source = NetworkManager.conf
- source = disable_set_hostname.patch
- source = disable_wifi_scan_when_connected.patch
- sha256sums = 3a470f8c60109b1acb5784ddc2423501706b5fe34c793a6faee87e591eb04a9e
- sha256sums = 2c6a647b5aec9f3c356d5d95251976a21297c6e64bd8d2a59339f8450a86cb3b
- sha256sums = 25056837ea92e559f09563ed817e3e0cd9333be861b8914e45f62ceaae2e0460
- sha256sums = c14204de91e8b055982771aa11b57feee2fa42f04eee003e621252b320be1e31
-
-pkgname = networkmanager-noscan
diff --git a/NetworkManager.conf b/NetworkManager.conf
index 66822962823b..e1306035f725 100644
--- a/NetworkManager.conf
+++ b/NetworkManager.conf
@@ -1,12 +1,8 @@
[main]
plugins=keyfile
-dhcp=dhclient
+dhcp=internal
dns=default
-## Set static hostname
-#[keyfile]
-#hostname=foobar
-
## HTTP-based connectivity check
#[connectivity]
#uri=http://nmcheck.gnome.org/check_network_status.txt
diff --git a/PKGBUILD b/PKGBUILD
index 750b86dfc971..c4ce3c948243 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -6,39 +6,43 @@ pkgname=networkmanager-noscan
provides=('networkmanager')
replaces=('networkmanager')
conflicts=('networkmanager')
-
-pkgver=1.0.12
-pkgrel=1
+pkgver=1.2.0
+pkgrel=4
pkgdesc="Network Management daemon with Wi-Fi scanning disabled when already connected (improves reliability of the connection in several Wireless
cards)"
arch=(i686 x86_64)
license=(GPL2 LGPL2.1)
url="http://www.gnome.org/projects/NetworkManager/"
_pppver=2.4.7
-depends=(libnm-glib iproute2 libnl polkit wpa_supplicant dhcp-client libsoup
- libmm-glib libnewt libndp libteam libgudev)
-optdepends=('dnsmasq: connection sharing'
- 'bluez: Bluetooth support'
- 'openresolv: resolvconf support'
- 'ppp: dialup connection support'
- 'rp-pppoe: ADSL support'
- 'modemmanager: cellular network support')
-backup=('etc/NetworkManager/NetworkManager.conf')
-makedepends=(intltool dhcpcd dhclient iptables gobject-introspection gtk-doc "ppp=$_pppver"
- modemmanager dbus-glib iproute2 libnl nss polkit wpa_supplicant dhcp-client libsoup
- systemd libmm-glib rp-pppoe libnewt libndp libteam vala)
-checkdepends=(libx11 python-gobject python-dbus)
-source=(http://ftp.gnome.org/pub/gnome/sources/NetworkManager/${pkgver:0:3}/NetworkManager-$pkgver.tar.xz
- NetworkManager.conf disable_set_hostname.patch disable_wifi_scan_when_connected.patch)
-sha256sums=('3a470f8c60109b1acb5784ddc2423501706b5fe34c793a6faee87e591eb04a9e'
- '2c6a647b5aec9f3c356d5d95251976a21297c6e64bd8d2a59339f8450a86cb3b'
- '25056837ea92e559f09563ed817e3e0cd9333be861b8914e45f62ceaae2e0460'
- 'c14204de91e8b055982771aa11b57feee2fa42f04eee003e621252b320be1e31')
+makedepends=(intltool dhclient iptables gobject-introspection gtk-doc
+ "ppp=$_pppver" modemmanager dbus-glib iproute2 nss polkit
+ wpa_supplicant libsoup systemd libgudev libmm-glib rp-pppoe
+ libnewt libndp libteam vala perl-yaml python-gobject)
+checkdepends=(libx11 python-dbus)
+source=(https://download.gnome.org/sources/NetworkManager/${pkgver:0:3}/NetworkManager-$pkgver.tar.xz
+ hidepid.patch dhcpv6-mixed.patch
+ NetworkManager.conf
+ disable_wifi_scan_when_connected.patch)
+sha256sums=('e947cf30fa3d19dce88e6f6af51f06dc282b7db7996f946aaa37b03526ef2a80'
+ '1de5b511b6b4a933739b0ef48ede1830fa3d6dea2277c1302b12b08fa83a73f1'
+ 'f7771790485f24d788fe35f5922ad044a29c6d89b34458d9e99938503b2a3b39'
+ '452e4f77c1de92b1e08f6f58674a6c52a2b2d65b7deb0ba436e9afa91ee15103'
+ '3dfabdccd97074c948c924ece87935576e64675bdfef478e800a6da882861c2d')
prepare() {
cd NetworkManager-$pkgver
- patch -Np1 -i ../disable_set_hostname.patch
+
+ # https://bugs.archlinux.org/task/48984
+ patch -Np1 -i ../hidepid.patch
+
+ # https://bugs.archlinux.org/task/49081
+ patch -Np1 -i ../dhcpv6-mixed.patch
+
+ # disable wifi scans when connected
patch -Np1 -i ../disable_wifi_scan_when_connected.patch
+
+ 2to3 -w libnm src tools
+
NOCONFIGURE=1 ./autogen.sh
}
@@ -51,7 +55,7 @@ build() {
--libexecdir=/usr/lib/networkmanager \
--with-crypto=nss \
--with-dhclient=/usr/bin/dhclient \
- --with-dhcpcd=/usr/bin/dhcpcd \
+ --without-dhcpcd \
--with-dnsmasq=/usr/bin/dnsmasq \
--with-iptables=/usr/bin/iptables \
--with-systemdsystemunitdir=/usr/lib/systemd/system \
@@ -67,12 +71,31 @@ build() {
--enable-more-warnings=no \
--disable-wimax \
--enable-modify-system \
- --enable-doc
+ --enable-doc \
+ --enable-gtk-doc
+
+ sed -i -e 's/ -shared / -Wl,-O1,--as-needed\0 /g' -e 's/ if test "$export_dynamic" = yes && test -n "$export_dynamic_flag_spec"; then/ func_append compile_command " -Wl,-O1,--as-needed"\n func_append finalize_command " -Wl,-O1,--as-needed"\n\0/' libtool
make
}
+check() {
+ cd NetworkManager-$pkgver
+ make -k check
+}
+
package() {
+ depends=(libnm-glib iproute2 polkit wpa_supplicant libsoup libmm-glib
+ libnewt libndp libteam)
+ optdepends=('dnsmasq: connection sharing'
+ 'bluez: Bluetooth support'
+ 'openresolv: resolvconf support'
+ 'ppp: dialup connection support'
+ 'rp-pppoe: ADSL support'
+ 'dhclient: External DHCP client'
+ 'modemmanager: cellular network support')
+ backup=('etc/NetworkManager/NetworkManager.conf')
+
cd NetworkManager-$pkgver
make DESTDIR="$pkgdir" install
make DESTDIR="$pkgdir" -C libnm uninstall
@@ -88,5 +111,6 @@ package() {
install -m755 -d "$pkgdir/etc/NetworkManager/dnsmasq.d"
rm -r "$pkgdir/var/run"
+ rmdir -p --ignore-fail-on-non-empty \
+ "$pkgdir"/usr/{share/{vala/vapi,gir-1.0},lib/girepository-1.0}
}
-
diff --git a/dhcpv6-mixed.patch b/dhcpv6-mixed.patch
new file mode 100644
index 000000000000..1a6b1575138b
--- /dev/null
+++ b/dhcpv6-mixed.patch
@@ -0,0 +1,34 @@
+From 50dc5fecabc2c3434d7a652b4f5642556b4e87bf Mon Sep 17 00:00:00 2001
+From: Dan Williams <dcbw@redhat.com>
+Date: Mon, 25 Apr 2016 15:39:50 -0500
+Subject: dhcp/systemd: actually hook up information-only mode
+
+Fixes: 89d1e466157839096b446068a780cb2563424a5a
+Tested-by: Celti on IRC
+(cherry picked from commit 8c8a577a30acc0b5f1d4765493f6547f275477b0)
+
+diff --git a/src/dhcp-manager/nm-dhcp-systemd.c b/src/dhcp-manager/nm-dhcp-systemd.c
+index 5d49c27..1674341 100644
+--- a/src/dhcp-manager/nm-dhcp-systemd.c
++++ b/src/dhcp-manager/nm-dhcp-systemd.c
+@@ -857,6 +857,7 @@ dhcp6_event_cb (sd_dhcp6_client *client, int event, gpointer user_data)
+ nm_dhcp_client_set_state (NM_DHCP_CLIENT (user_data), NM_DHCP_STATE_FAIL, NULL, NULL);
+ break;
+ case SD_DHCP6_CLIENT_EVENT_IP_ACQUIRE:
++ case SD_DHCP6_CLIENT_EVENT_INFORMATION_REQUEST:
+ bound6_handle (self);
+ break;
+ default:
+@@ -893,6 +894,9 @@ ip6_start (NMDhcpClient *client,
+ return FALSE;
+ }
+
++ if (info_only)
++ sd_dhcp6_client_set_information_request (priv->client6, 1);
++
+ /* NM stores the entire DUID which includes the uint16 "type", while systemd
+ * wants the type passed separately from the following data.
+ */
+--
+cgit v0.10.2
+
diff --git a/disable_set_hostname.patch b/disable_set_hostname.patch
deleted file mode 100644
index ee95dd0e1c03..000000000000
--- a/disable_set_hostname.patch
+++ /dev/null
@@ -1,19 +0,0 @@
-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/disable_wifi_scan_when_connected.patch b/disable_wifi_scan_when_connected.patch
index 232e7a548895..8fc66482af7c 100644
--- a/disable_wifi_scan_when_connected.patch
+++ b/disable_wifi_scan_when_connected.patch
@@ -1,5 +1,7 @@
---- NetworkManager-1.0.0.orig/src/devices/wifi/nm-device-wifi.c 2015-02-09 09:44:12.098688713 +0100
-+++ NetworkManager-1.0.0/src/devices/wifi/nm-device-wifi.c 2015-02-09 09:44:45.430954930 +0100
+--- NetworkManager-1.2.0.orig/src/devices/wifi/nm-device-wifi.c
+2015-02-09 09:44:12.098688713 +0100
++++ NetworkManager-1.2.0/src/devices/wifi/nm-device-wifi.c
+2015-02-09 09:44:45.430954930 +0100
@@ -1362,15 +1362,13 @@
case NM_DEVICE_STATE_IP_CHECK:
case NM_DEVICE_STATE_SECONDARIES:
diff --git a/hidepid.patch b/hidepid.patch
new file mode 100644
index 000000000000..439b98d505f0
--- /dev/null
+++ b/hidepid.patch
@@ -0,0 +1,54 @@
+From 4f06ae603e268f237d439afe3f3e7e662a0c2727 Mon Sep 17 00:00:00 2001
+From: Thomas Haller <thaller@redhat.com>
+Date: Fri, 22 Apr 2016 11:36:26 +0200
+Subject: auth: allow failures to read process start_time from /proc/$PID/stat
+ with hidepid
+
+When mounting /proc with hidepid, we might fail to read the
+start-time of the process from /proc/$PID/stat. In this case,
+we should just accept a start-time of zero.
+
+On the other side of authentication, polkit should accept a zero
+start-time too.
+
+nm_utils_get_start_time_for_pid() has other uses in NetworkManager,
+mostly when killing a process from a PIDFILE or during
+nm_utils_kill_process_sync(). In both these cases, this will only
+succeed if we try to kill a process that also runs a root.
+
+For processes started by the current instance, we don't care about the
+PIDFILE and use nm_utils_kill_child_?sync() -- so there is no problem
+with hidepid there.
+
+https://bugzilla.gnome.org/show_bug.cgi?id=764502
+(cherry picked from commit 3d505b3f87c9cb9bfdc9b9a1fc67f57330701d03)
+
+diff --git a/src/nm-auth-subject.c b/src/nm-auth-subject.c
+index 494d52d..86b873f 100644
+--- a/src/nm-auth-subject.c
++++ b/src/nm-auth-subject.c
+@@ -360,9 +360,18 @@ constructed (GObject *object)
+ priv->unix_process.start_time = nm_utils_get_start_time_for_pid (priv->unix_process.pid, NULL, NULL);
+
+ if (!priv->unix_process.start_time) {
+- /* could not detect the process start time. The subject is invalid, but don't
+- * assert against it. */
+- _clear_private (priv);
++ /* Is the process already gone? Then fail creation of the auth subject
++ * by clearing the type. */
++ if (kill (priv->unix_process.pid, 0) != 0)
++ _clear_private (priv);
++
++ /* Otherwise, although we didn't detect a start_time, the process is still around.
++ * That could be due to procfs mounted with hidepid. So just accept the request.
++ *
++ * Polkit on the other side, will accept 0 and try to lookup /proc/$PID/stat
++ * itself (and if it fails to do so, assume a start-time of 0 and proceed).
++ * The only combination that would fail here, is when NM is able to read the
++ * start-time, but polkit is not. */
+ }
+ return;
+ default:
+--
+cgit v0.10.2
+
diff --git a/networkmanager.install b/networkmanager.install
deleted file mode 100644
index de40c17ed1be..000000000000
--- a/networkmanager.install
+++ /dev/null
@@ -1,9 +0,0 @@
-post_upgrade() {
- (( $(vercmp 0.8.3 $2) > 0 )) && cat <<MSG
-ATTENTION:
- /etc/NetworkManager/nm-system-settings.conf has been replaced
- by /etc/NetworkManager/NetworkManager.conf. Make sure you move
- any custom settings to the new config file.
-MSG
- true
-}