diff options
Diffstat (limited to 'pkgs/tools/networking/networkmanager/default.nix')
-rw-r--r-- | pkgs/tools/networking/networkmanager/default.nix | 23 |
1 files changed, 17 insertions, 6 deletions
diff --git a/pkgs/tools/networking/networkmanager/default.nix b/pkgs/tools/networking/networkmanager/default.nix index ce96d50196261..22d774f086bcc 100644 --- a/pkgs/tools/networking/networkmanager/default.nix +++ b/pkgs/tools/networking/networkmanager/default.nix @@ -6,7 +6,6 @@ , pkg-config , dbus , gnome -, systemd , libuuid , polkit , gnutls @@ -51,6 +50,9 @@ , runtimeShell , buildPackages , nixosTests +, systemd +, udev +, withSystemd ? lib.meta.availableOn stdenv.hostPlatform systemd }: let @@ -58,11 +60,11 @@ let in stdenv.mkDerivation rec { pname = "networkmanager"; - version = "1.46.0"; + version = "1.48.0"; src = fetchurl { url = "mirror://gnome/sources/NetworkManager/${lib.versions.majorMinor version}/NetworkManager-${version}.tar.xz"; - hash = "sha256-ciZJ4lNiaTszQ3FHOAKnKbDsnuKDN1CWkF+GiAjnQGg="; + hash = "sha256-/IC5Qt444ylGjm/B37QKrWp40C3fa47DH5rMZGC4cj8="; }; outputs = [ "out" "dev" "devdoc" "man" "doc" ]; @@ -74,7 +76,8 @@ stdenv.mkDerivation rec { # System paths "--sysconfdir=/etc" "--localstatedir=/var" - "-Dsystemdsystemunitdir=${placeholder "out"}/etc/systemd/system" + (lib.mesonOption "systemdsystemunitdir" + (if withSystemd then "${placeholder "out"}/etc/systemd/system" else "no")) # to enable link-local connections "-Dudev_dir=${placeholder "out"}/lib/udev" "-Ddbus_conf_dir=${placeholder "out"}/share/dbus-1/system.d" @@ -82,7 +85,8 @@ stdenv.mkDerivation rec { # Platform "-Dmodprobe=${kmod}/bin/modprobe" - "-Dsession_tracking=systemd" + (lib.mesonOption "session_tracking" (if withSystemd then "systemd" else "no")) + (lib.mesonBool "systemd_journal" withSystemd) "-Dlibaudit=yes-disabled-by-default" "-Dpolkit_agent_helper_1=/run/wrappers/bin/polkit-agent-helper-1" @@ -130,7 +134,7 @@ stdenv.mkDerivation rec { ]; buildInputs = [ - systemd + (if withSystemd then systemd else udev) libselinux audit libpsl @@ -182,6 +186,9 @@ stdenv.mkDerivation rec { # TODO: submit upstream substituteInPlace meson.build \ --replace "'vala', req" "'vala', native: false, req" + '' + lib.optionalString withSystemd '' + substituteInPlace data/NetworkManager.service.in \ + --replace-fail /usr/bin/busctl ${systemd}/bin/busctl ''; preBuild = '' @@ -216,5 +223,9 @@ stdenv.mkDerivation rec { changelog = "https://gitlab.freedesktop.org/NetworkManager/NetworkManager/-/raw/${version}/NEWS"; maintainers = teams.freedesktop.members ++ (with maintainers; [ domenkozar obadz ]); platforms = platforms.linux; + badPlatforms = [ + # Mandatory shared libraries. + lib.systems.inspect.platformPatterns.isStatic + ]; }; } |