Arch Linux

Please read this before reporting a bug:
https://wiki.archlinux.org/title/Bug_reporting_guidelines

Do NOT report bugs when a package is just outdated, or it is in the AUR. Use the 'flag out of date' link on the package page, or the Mailing List.

REPEAT: Do NOT report bugs for outdated packages!
Tasklist

FS#57122 - [networkmanager] Consider building with flag --with-config-dns-rc-manager-default=symlink

Attached to Project: Arch Linux
Opened by Adrián Laviós (Zirkelite) - Tuesday, 16 January 2018, 21:06 GMT
Last edited by Doug Newgard (Scimmia) - Sunday, 18 February 2018, 11:04 GMT
Task Type General Gripe
Category Packages: Extra
Status Closed
Assigned To Jan de Groot (JGC)
Jan Alexander Steffens (heftig)
Architecture All
Severity Low
Priority Normal
Reported Version
Due in Version Undecided
Due Date Undecided
Percent Complete 100%
Votes 1
Private No

Details

Description:
NetworkManager on Arch is being built with the flag --with-config-dns-rc-manager-default=resolvconf. Setting resolvconf as the default rc-manager makes the default systemd-resolved use detection by NetworkManager useless, since even when it detects that /etc/resolv.conf is a symbolic link to some of the systemd-resolved provided fallback files (like /run/systemd/resolve/stub-resolv.conf) and automatically pushes DNS changes to systemd-resolved, it will still overwrite /etc/resolv.conf using openresolv, which overwrites /run/systemd/resolve/stub-resolv.conf, something that should never happen.

Using rc-manager=symlink completely fixes this problem, since NetworkManager will understand that the user only wants NetworkManager to manage /etc/resolv.conf if it is a standard file. When that file is a symbolic link, NetworkManager will leave it alone and will not write over the symlinked file using resolvconf.

Please consider making, then, rc-manager default to symlink and not to resolvconf by building NetworkManager with the flag --with-config-dns-rc-manager-default=symlink, since it is probably a better default for cleanly handling all use cases (both when resolv.conf is a symlink and when it is not), and also makes the systemd-resolved detection actually useful.

Additional info:
* networkmanager 1.10.3dev+38+g78ef57197-1 (it is being built with --with-config-dns-rc-manager-default=resolvconf since 1.6.0-1).
* Excerpt from NetworkManager.conf(5): rc-manager/symlink: If /etc/resolv.conf is a regular file, NetworkManager will replace the file on update. If /etc/resolv.conf is instead a symlink, NetworkManager will leave it alone. Unless the symlink points to the internal file /run/NetworkManager/resolv.conf, in which case the symlink will be updated to emit an inotify notification. This allows the user to conveniently instruct NetworkManager not to manage /etc/resolv.conf by replacing it with a symlink.
This task depends upon

Closed by  Doug Newgard (Scimmia)
Sunday, 18 February 2018, 11:04 GMT
Reason for closing:  Implemented
Additional comments about closing:  networkmanager 1.10.3dev+58
Comment by Jan Alexander Steffens (heftig) - Wednesday, 17 January 2018, 17:19 GMT
What about not installing openresolv?
Comment by Eli Schwartz (eschwartz) - Wednesday, 17 January 2018, 17:34 GMT
It's automatically pulled in by netctl as part of the base group. Also having netctl installed but not being used should not force networkmanager to misbehave I guess.

Loading...