Package: release.debian.org
Severity: normal
User: release.debian....@packages.debian.org
Usertags: unblock

Please unblock package network-manager

It contains a fix for RC bug #760998 and an improved systemd integration
for NetworkManager-wait-online.service.

There is still one open RC bug (#755202), but I'm a bit clueless about
this one. I neither have a proper reproducer nor a proper log file which
would help me find the root cause.

So I thought it's worthwile to at least get the fix for #760998 in now.


debdiff is attached.

Thanks for considering,
Michael

unblock network-manager/0.9.10.0-7

-- System Information:
Debian Release: 8.0
  APT prefers unstable
  APT policy: (500, 'unstable'), (200, 'experimental')
Architecture: amd64 (x86_64)
Foreign Architectures: i386

Kernel: Linux 3.16.0-4-amd64 (SMP w/4 CPU cores)
Locale: LANG=de_DE.utf8, LC_CTYPE=de_DE.utf8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash
Init: systemd (via /run/systemd/system)
diff --git a/debian/changelog b/debian/changelog
index 97a668b..a03f7d5 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,3 +1,14 @@
+network-manager (0.9.10.0-7) unstable; urgency=medium
+
+  * Don't make NetworkManager D-Bus activatable. If the daemon has been
+    stopped manually, we don't want it to be autostarted by client requests.
+    (Closes: #760998)
+  * Don't block network.target on NetworkManager-wait-online.service. While at
+    it, add a few other minor fixes like the addition of Documentation or
+    RemainAfterExit=yes.
+
+ -- Michael Biebl <bi...@debian.org>  Tue, 31 Mar 2015 07:06:07 +0200
+
 network-manager (0.9.10.0-6) unstable; urgency=medium
 
   * Detect at runtime whether to start ModemManager. When not running under
diff --git a/debian/network-manager.preinst b/debian/network-manager.preinst
index 62aadf1..6191628 100644
--- a/debian/network-manager.preinst
+++ b/debian/network-manager.preinst
@@ -25,6 +25,12 @@ case "$1" in
 	    fi
 	fi
 
+	if dpkg --compare-versions "$2" lt "0.9.10.0-7"; then
+	    if [ -L /etc/systemd/system/dbus-org.freedesktop.NetworkManager.service ]; then
+	        rm -f /etc/systemd/system/dbus-org.freedesktop.NetworkManager.service
+	    fi
+	fi
+
 	# Upgrade from previous versions
 	if dpkg --compare-versions "$2" lt "0.9.7.997-2"; then
 	    # Move old pid file to /var/run/NetworkManager so the init script
diff --git a/debian/patches/0019-Don-t-make-NetworkManager-D-Bus-activatable.patch b/debian/patches/0019-Don-t-make-NetworkManager-D-Bus-activatable.patch
new file mode 100644
index 0000000..ce02836
--- /dev/null
+++ b/debian/patches/0019-Don-t-make-NetworkManager-D-Bus-activatable.patch
@@ -0,0 +1,40 @@
+From: Michael Biebl <bi...@debian.org>
+Date: Sun, 29 Mar 2015 22:57:50 +0200
+Subject: Don't make NetworkManager D-Bus activatable
+
+If the NetworkManager daemon has been stopped manually we don't want it
+to be autostarted by a client request.
+---
+ data/Makefile.am               | 7 -------
+ data/NetworkManager.service.in | 1 -
+ 2 files changed, 8 deletions(-)
+
+diff --git a/data/Makefile.am b/data/Makefile.am
+index e91361a..a7c8070 100644
+--- a/data/Makefile.am
++++ b/data/Makefile.am
+@@ -19,13 +19,6 @@ endif
+ NetworkManager-dispatcher.service: NetworkManager-dispatcher.service.in
+ 	$(edit) $< >$@
+ 
+-servicedir = $(datadir)/dbus-1/system-services
+-service_in_files = org.freedesktop.NetworkManager.service.in
+-service_DATA = $(service_in_files:.service.in=.service)
+-
+-$(service_DATA): $(service_in_files) Makefile
+-	$(edit) $< >$@
+-
+ install-exec-local:
+ 	install -d $(DESTDIR)$(systemdsystemunitdir)/network-online.target.wants
+ 	ln -sf $(systemdsystemunitdir)/NetworkManager-wait-online.service $(DESTDIR)$(systemdsystemunitdir)/network-online.target.wants
+diff --git a/data/NetworkManager.service.in b/data/NetworkManager.service.in
+index 1883b40..5282e5b 100644
+--- a/data/NetworkManager.service.in
++++ b/data/NetworkManager.service.in
+@@ -11,6 +11,5 @@ KillMode=process
+ 
+ [Install]
+ WantedBy=multi-user.target
+-Alias=dbus-org.freedesktop.NetworkManager.service
+ Also=NetworkManager-dispatcher.service
+ 
diff --git a/debian/patches/0020-Don-t-block-network.target-on-NetworkManager-wait-on.patch b/debian/patches/0020-Don-t-block-network.target-on-NetworkManager-wait-on.patch
new file mode 100644
index 0000000..1ddb666
--- /dev/null
+++ b/debian/patches/0020-Don-t-block-network.target-on-NetworkManager-wait-on.patch
@@ -0,0 +1,57 @@
+From: Michael Biebl <bi...@debian.org>
+Date: Sun, 29 Mar 2015 22:58:43 +0200
+Subject: Don't block network.target on NetworkManager-wait-online.service
+
+network.target is supposed to be a passive unit which is pulled in my
+the network management service.
+
+Also, we want NetworkManager-wait-online.service be hooked up in
+network-online.target, not multi-user.target.
+
+While at it, add a few other smaller fixes, like the addition of
+Documentation= and RemainAfterExit=yes
+
+http://www.freedesktop.org/wiki/Software/systemd/NetworkTarget/
+https://bugzilla.gnome.org/show_bug.cgi?id=746039
+---
+ data/Makefile.am                           | 4 ----
+ data/NetworkManager-wait-online.service.in | 7 ++++---
+ 2 files changed, 4 insertions(+), 7 deletions(-)
+
+diff --git a/data/Makefile.am b/data/Makefile.am
+index a7c8070..60443bf 100644
+--- a/data/Makefile.am
++++ b/data/Makefile.am
+@@ -18,10 +18,6 @@ endif
+ 
+ NetworkManager-dispatcher.service: NetworkManager-dispatcher.service.in
+ 	$(edit) $< >$@
+-
+-install-exec-local:
+-	install -d $(DESTDIR)$(systemdsystemunitdir)/network-online.target.wants
+-	ln -sf $(systemdsystemunitdir)/NetworkManager-wait-online.service $(DESTDIR)$(systemdsystemunitdir)/network-online.target.wants
+ endif
+ 
+ examplesdir = $(docdir)/examples
+diff --git a/data/NetworkManager-wait-online.service.in b/data/NetworkManager-wait-online.service.in
+index 6ad6942..1753d20 100644
+--- a/data/NetworkManager-wait-online.service.in
++++ b/data/NetworkManager-wait-online.service.in
+@@ -1,13 +1,14 @@
+ [Unit]
+ Description=Network Manager Wait Online
++Documentation=man:nm-online(1)
+ Requisite=NetworkManager.service
+ After=NetworkManager.service
+-Wants=network.target
+-Before=network.target network-online.target
++Before=network-online.target
+ 
+ [Service]
+ Type=oneshot
+ ExecStart=@bindir@/nm-online -s -q --timeout=30
++RemainAfterExit=yes
+ 
+ [Install]
+-WantedBy=multi-user.target
++WantedBy=network-online.target
diff --git a/debian/patches/series b/debian/patches/series
index f5f29b2..dec2550 100644
--- a/debian/patches/series
+++ b/debian/patches/series
@@ -16,3 +16,5 @@
 0016-core-tell-systemd-to-restart-NetworkManager.service-.patch
 0017-Check-at-runtime-whether-to-start-ModemManager.patch
 0018-core-do-not-assert-when-a-device-is-enslaved-externa.patch
+0019-Don-t-make-NetworkManager-D-Bus-activatable.patch
+0020-Don-t-block-network.target-on-NetworkManager-wait-on.patch

Reply via email to