summary refs log tree commit diff
path: root/pkgs/tools/networking/network-manager/default.nix
diff options
context:
space:
mode:
Diffstat (limited to 'pkgs/tools/networking/network-manager/default.nix')
-rw-r--r--pkgs/tools/networking/network-manager/default.nix32
1 files changed, 15 insertions, 17 deletions
diff --git a/pkgs/tools/networking/network-manager/default.nix b/pkgs/tools/networking/network-manager/default.nix
index 490ebd0fa6b..ffa56363ad6 100644
--- a/pkgs/tools/networking/network-manager/default.nix
+++ b/pkgs/tools/networking/network-manager/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, substituteAll, intltool, pkgconfig, dbus, dbus-glib
+{ stdenv, fetchurl, substituteAll, intltool, pkgconfig, fetchpatch, dbus
 , gnome3, systemd, libuuid, polkit, gnutls, ppp, dhcp, iptables, python3, vala
 , libgcrypt, dnsmasq, bluez5, readline, libselinux, audit
 , gobject-introspection, modemmanager, openresolv, libndp, newt, libsoup
@@ -10,11 +10,11 @@ let
   pythonForDocs = python3.withPackages (pkgs: with pkgs; [ pygobject3 ]);
 in stdenv.mkDerivation rec {
   pname = "network-manager";
-  version = "1.18.2";
+  version = "1.20.2";
 
   src = fetchurl {
     url = "mirror://gnome/sources/NetworkManager/${stdenv.lib.versions.majorMinor version}/NetworkManager-${version}.tar.xz";
-    sha256 = "1hx5dx5dgdqh3p8fq7q1pxy2bx2iymc74lj60ycrf7ydfjlprnad";
+    sha256 = "115cgz448vypc7c592lqqjd7lp2kzdczhjk4ran6qls65hzkfkji";
   };
 
   outputs = [ "out" "dev" "devdoc" "man" "doc" ];
@@ -33,7 +33,7 @@ in stdenv.mkDerivation rec {
     # to enable link-local connections
     "-Dudev_dir=${placeholder "out"}/lib/udev"
     "-Dresolvconf=${openresolv}/bin/resolvconf"
-    "-Ddbus_conf_dir=${placeholder "out"}/etc/dbus-1/system.d"
+    "-Ddbus_conf_dir=${placeholder "out"}/share/dbus-1/system.d"
     "-Dsystemdsystemunitdir=${placeholder "out"}/etc/systemd/system"
     "-Dkernel_firmware_dir=/run/current-system/firmware"
     "--sysconfdir=/etc"
@@ -43,8 +43,6 @@ in stdenv.mkDerivation rec {
     "-Dmodem_manager=true"
     "-Dnmtui=true"
     "-Ddocs=true"
-    # TODO: legacy library, will be *removed* in next release!
-    "-Dlibnm_glib=true"
     "-Dtests=no"
     "-Dqt=false"
     # Allow using iwd when configured to do so
@@ -53,6 +51,15 @@ in stdenv.mkDerivation rec {
   ];
 
   patches = [
+    # 1.20.2 added a decorators.sh script but they forgot to distribute it (breaking the build)
+    # as it was to fix things with gtk-doc 1.32 we can safely revert it.
+    (fetchpatch {
+      url = "https://gitlab.freedesktop.org/NetworkManager/NetworkManager/commit/2d941dc95a1d94d023ac8f98df2f344dbb1d223e.patch";
+      sha256 = "1mvbajddwd6diwk6dgjg5p65i6852gx6b9p3949rs63d2i6yzg21";
+      excludes = [ "tools/decorators.sh" ];
+      revert = true;
+    })
+
     (substituteAll {
       src = ./fix-paths.patch;
       inherit iputils kmod openconnect ethtool gnused dbus;
@@ -69,19 +76,17 @@ in stdenv.mkDerivation rec {
     bluez5 dnsmasq gobject-introspection modemmanager readline newt libsoup jansson
   ];
 
-  propagatedBuildInputs = [ dbus-glib gnutls libgcrypt ];
+  propagatedBuildInputs = [ gnutls libgcrypt ];
 
   nativeBuildInputs = [
     meson ninja intltool pkgconfig
-    vala gobject-introspection
-    dbus-glib # for dbus-binding-tool
+    vala gobject-introspection dbus
     # Docs
     gtk-doc libxslt docbook_xsl docbook_xml_dtd_412 docbook_xml_dtd_42 docbook_xml_dtd_43 pythonForDocs
   ];
 
   doCheck = false; # requires /sys, the net
 
-
   postPatch = ''
     patchShebangs ./tools
     patchShebangs libnm/generate-setting-docs.py
@@ -96,13 +101,6 @@ in stdenv.mkDerivation rec {
     ln -s $PWD/libnm/libnm.so.0 ${placeholder "out"}/lib/libnm.so.0
   '';
 
-  postInstall = ''
-    # Add the legacy service name from before #51382 to prevent NetworkManager
-    # from not starting back up:
-    # TODO: remove this once 19.10 is released
-    ln -s $out/etc/systemd/system/NetworkManager.service $out/etc/systemd/system/network-manager.service
-  '';
-
   passthru = {
     updateScript = gnome3.updateScript {
       packageName = pname;