From Fedora Project Wiki


NetworkManager 1.2

Summary

Update to NetworkManager to version 1.2.

Owner

Current status

Detailed Description

NetworkManager 1.2 will include significant changes and improvements:

  • Port to GDBus
  • New libnma library for GUIs
  • New VPN services plugin API
  • Support for multiple VPN connections with a single plugin
  • VPN plugins ported to libnm & libnma
  • CLI secret agent with support for VPN secrets
  • Capability of editing VPN connections via the TUI interface
  • Support for arbitrary software device (bond, bridge, vlan, team) hierarchy
  • Support for managing container (LXC, Docker) connectivity
  • RFC7217 stable privacy addressing
  • CLI improvements, colors, significantly better command completion

TODO: Update once 1.2 is actually released.

Benefit to Fedora

A major feature release, brings new features often requested by users.

Scope

  • Proposal owners: Update NetworkManager, connection editor and VPN plugin packages.
  • Other developers: We'll take care of porting the VPN property plugins; the VPN plugin package maintainers should pull in the patches or new upstream releases. The libnm-glib and libnm-gtk users (network management tools in various desktop environments should port their tools to libnm and libnma; but we're keeping the old libraries as well.
  • Release engineering: N/A (not needed for this Change)
  • Policies and guidelines: N/A (not needed for this Change)
  • Trademark approval: N/A (not needed for this Change)

Upgrade/compatibility impact

We're not removing any functionality and keeping the ABI in place (though we add new libraries). The upgrades should be seamless.

How To Test

The usual test cases for NetworkManager will do. It would be great to test these areas:

  • IPv6-enabled and legacy-free networks (no IPv4)
  • Wireless access points with various security mechanisms (WPA, WEP, ...)
  • Multiple links to the same network, wireless & wired
  • Server setups, bonding, teaming, bridging, vlans (possibly stacked)
  • Other tools that namange networking installed for testing interoperability: libvirt, Docker, VMWare, VirtualBox, systemd-networkd, ...
  • A Mobile broadband connectivity dongle
  • Bluetooth DUN & PAN enabled dongle or a phone
  • VPN servers, concentrators
  • Different desktop environemnts installed, to test integration: GNOME, KDE, Xfce, ...

The detailed tes plans:

Wireless

VPN

Mobile connectivity

Advanced

User Experience

The users may notice new features available: better TUI & CLI tools, more flexible VPN support, possibility of more advanced network configurations.

Dependencies

These are packages directly affected by this change. They will be updated to new major versions:

  • NetworkManager
  • network-manager-applet
  • nm-connection-editor
  • NetworkManager-openvpn
  • NetworkManager-openswan
  • NetworkManager-openconnect
  • NetworkManager-vpnc
  • NetworkManager-pptp
  • NetworkManager-l2tp
  • NetworkManager-iodine
  • NetworkManager-ssh

These packages rely on the legacy libnm-glib; some of them may start using the new libnm:

  • anaconda-core
  • dnssec-trigger
  • firewall-applet
  • firewall-config
  • balsa
  • cinnamon
  • cinnamon-control-center
  • control-center
  • geoclue
  • gnome-initial-setup
  • gnome-settings-daemon
  • gnome-shell
  • krb5-auth-dialog
  • nntpgrab-core
  • strongswan-charon-nm
  • telepathy-mission-control
  • tracker

Contingency Plan

It would be possible to revert the change by downgrading the affected packages (see "Dependencies" above). All packages would need to be downgraded. However, as the new version is compatible with the previous versions we don't anticipate the need to do this.

  • Contingency mechanism: Revert the packages
  • Contingency deadline: Beta freeze
  • Blocks release? Yes

Documentation

We'll write extensive release notes upstream.

Release Notes

We'll need to digest the upstream NEWS into the Fedora release notes.