Opened 2 years ago

Closed 2 years ago

Last modified 2 years ago

#12365 closed enhancement (fixed)


Reported by: Douglas R. Reno Owned by: Xi Ruoyao
Priority: normal Milestone: 9.0
Component: BOOK Version: SVN
Severity: normal Keywords:


New minor version

Change History (8)

comment:1 by Xi Ruoyao, 2 years ago

Owner: changed from blfs-book to Xi Ruoyao
Status: newassigned

comment:2 by Xi Ruoyao, 2 years ago

Overview of changes since NetworkManager-1.18

This is a snapshot of NetworkManager 1.20 development series.
The API is subject to change and not guaranteed to be compatible
with the later release.

* The libnm-glib library, deprecated in favor of libnm since NetworkManager 1.0,
  and disabled by default since NetworkManager 1.12, has now been removed.
* The DHCP client now defaults to "internal". The default can be overriden
  at build time by using the --with-config-dhcp-default option of the
  configure script or at run time by setting the main.dhcp option in the
  configuration file.
* Added support for configuring fq_codel line discipline and mirred action.
* Added a possibility for distributions to ship dispatcher scripts in /usr/lib.
* Drop deprecated setting "main.monitor-connection-files" in NetworkManager.conf.
  This setting now has no more effect and was disabled by default for a long time.
  Instead, after changes, load files explicitly with `nmcli connection load` or
  `nmcli connection reload`.
* Rework parsing team JSON config in libnm and stricter validate settings.
  With this, NetworkManager rejects settings that it considers invalid while
  still allowing setting arbitrary JSON config directly.
* Drop ibft settings plugin. This functionality is now covered by using
  nm-initrd-generator from initrd to pre-generate in-memory profiles.
* Support "suppress_prefixlength" attribute for policy routing rules.
  This is what wg-quick uses for the "Improved Rule-based Routing" solution,
  and the user can now manually configure such policy routing rules.
* Support "wireguard.ip4-auto-default-route" and "wireguard.ip6-auto-default-route".
  This automatically implements the "Improved Rule-based Routing" of wg-quick
  to help avoiding routing loops when setting the default-route on the WireGuard
  interface. Note that this is now enabled by default, so there is a change in behavior
  if your WireGuard connection profiles from before had a default-route (/0)
  in allowed-ips.
* Rework implementation of settings plugins and how profiles are presisted
  to disk. This is a large internal refactoring of the settings plugins that
  allows to migrate a connection profile between plugins.
* In-memory profiles are now only handled by keyfile plugin and will also be
  persisted to /run directory. This allows to restart NetworkManager without
  loosing these profiles and it provides a file-system based API for creating
  in-memory profiles.
* Keyfile plugin now supports a read-only directory of profiles under directory
  "/usr/lib/NetworkManager/system-connections". Such profiles still can be modified
  and deleted via D-Bus, which results in writing profiles to /etc or /run that
  shadow the read-only files.
* Add new D-Bus method AddConnection2() that allows to block autoconnect of
  the profile at the moment when creating the profile. Also add support for
  this API to libnm.
* Add flag "no-reapply" to Update2() D-Bus method. Normally, when a connection
  profile gets modified, this only changes the profile itself. When the profile
  is currently activated on a device, then the device's configuration does not update
  before the profile is fully re-activated or Reapply on the device is called. There
  is an exception to this: the "" and the "connection.metered"
  properties take effect immediately. The "no-reapply" flag allows suppressing to
  reapply any properties, so that no changes take effect automatically. The purpose
  is to really only modify the profile itself without changes to the runtime configuration
  of the device.
* Add "ipv6.method=disabled" to disable IPv6 on a device, like also possible for
  IPv4. Until now, the users could only set "ipv6.method=ignore" which means the
  users are free to set IPv6 related sysctl values themselves.
* Added support for Wi-Fi Mesh network.

It seems this is a snapshot, so should we move it to hold and wait for a stable release?

comment:3 by Xi Ruoyao, 2 years ago

Created NetworkManager #227 to ask for help.

comment:4 by Xi Ruoyao, 2 years ago

The maintainer says it's a stable release and the word in the NEWS file is a mistake. I'll continue to build it.

Last edited 2 years ago by Xi Ruoyao (previous) (diff)

comment:5 by Douglas R. Reno, 2 years ago

Be careful with the libnm-glib removal, you might want to test out that stuff and see what it breaks... I remember having to reinstate it previously, but don't recall the reason nor if its fixed

comment:6 by Xi Ruoyao, 2 years ago

Resolution: fixed
Status: assignedclosed

Fixed at r21949.

Grepping "linkend=\"NetworkManager\"" found the packages depending on NM:

Network-manager-applet: do not use libnm-glib.

Tracker: do not use libnm-glib.

G-s-d: do not use libnm-glib.

telepathy-mission-control: do not use libnm-glib.

pidgin: do not use libnm-glib.

vino: do not use NetworkManager at all. Dependency removed.

kf5-frameworks: at least networkmanager-qt-5.60.0 do not use libnm-glib.

If there is someone using KDE please recheck kf5-frameworks and plasma-all.

comment:7 by Xi Ruoyao, 2 years ago

According to Arch, only steam-native-runtime requires libnm-glib. I don't think there is someone playing Steam games on LFS :).

comment:8 by Douglas R. Reno, 2 years ago

I have one that runs it, but I have zero plans to upgrade it :) getting Proton working a while back was difficult enough LOL

I'm glad to see that developers ported away from libnm-glib, because that was a problem in the early days of 1.18 :)

Note: See TracTickets for help on using tickets.