Hi, Networkmanager-1.12 was released about two weeks ago and it would be nice to have it bumped in Gentoo aswell. Reproducible: Always
Created attachment 539702 [details] bumped ebuild with LTO enabled I locally bumped NM and it works fine so far. '--disable-ifnet' is no valid configure flag anymore as upstream dropped it. See "* Dropped the obsolete "ifnet" settings plugin," from the release notes. I run it with LTO enabled and have no issue so far. Maybe it can be enabled globally? Here comes my diff: --- networkmanager-1.10.10.ebuild 2018-07-15 01:46:00.000000000 +0200 +++ networkmanager-1.12.0.ebuild 2018-07-16 10:00:00.000000000 +0200 @@ -157,11 +157,8 @@ --disable-more-warnings --disable-static --localstatedir=/var - --disable-lto + #--disable-lto --disable-config-plugin-ibft - # ifnet plugin always disabled until someone volunteers to actively - # maintain and fix it - --disable-ifnet --disable-qt --without-netconfig --with-dbus-sys-dir=/etc/dbus-1/system.d I'll attach my build.log aswell. By the way, it looks as uptream will release 1.12.2 soon: https://cgit.freedesktop.org/NetworkManager/NetworkManager/tree/NEWS?h=nm-1-12
Thanks for testing. Seeing what the currently pending unreleased item is in that NEWS, I'd be inclined to wait for 1.12.2 to not have ABI issues for any old libnm consumers, especially if it's released soon. Otherwise in my queue, but someone else feel free to get to it before me.
Created attachment 539706 [details] build.log My build.log and the output of 'emerge --info networkmanager': Portage 2.3.42 (python 3.5.5-final-0, default/linux/amd64/17.0/no-multilib/hardened, gcc-8.1.0, glibc-2.26-r7, 4.17.6-x240 x86_64) ================================================================= System Settings ================================================================= System uname: Linux-4.17.6-x240-x86_64-Intel-R-_Core-TM-_i5-4300U_CPU_@_1.90GHz-with-gentoo-2.6 KiB Mem: -1 total, -1 free KiB Swap: -1 total, -1 free Timestamp of repository gentoo: Sun, 15 Jul 2018 21:04:51 +0000 Head commit of repository gentoo: 7cc5635a9f6cab9894a617c6b881b0bcdf663c24 Timestamp of repository holgersson-overlay: Sun, 01 Jul 2018 20:54:16 +0000 Head commit of repository holgersson-overlay: da95b0813103171cb086212f5b811693ffe457fe sh bash 4.4_p23 ld GNU ld (Gentoo 2.30 p3) 2.30.0 app-shells/bash: 4.4_p23::gentoo dev-lang/perl: 5.26.2::gentoo dev-lang/python: 2.7.15::gentoo, 3.5.5-r1::gentoo dev-util/cmake: 3.11.4::gentoo dev-util/pkgconfig: 0.29.2::gentoo sys-apps/baselayout: 2.6::gentoo sys-apps/openrc: 0.38.1::gentoo sys-apps/sandbox: 2.13::gentoo sys-devel/autoconf: 2.13::gentoo, 2.69-r4::gentoo sys-devel/automake: 1.15.1-r2::gentoo, 1.16.1-r1::gentoo sys-devel/binutils: 2.30-r3::gentoo sys-devel/gcc: 8.1.0-r3::gentoo sys-devel/gcc-config: 1.9.1::gentoo sys-devel/libtool: 2.4.6-r5::gentoo sys-devel/make: 4.2.1-r3::gentoo sys-kernel/linux-headers: 4.17::gentoo (virtual/os-headers) sys-libs/glibc: 2.26-r7::gentoo Repositories: gentoo location: /var/lib/portage/tree sync-type: git sync-uri: https://anongit.gentoo.org/git/repo/sync/gentoo.git sync-user: portage-sync priority: -1000 sync-git-clone-extra-opts: --branch master sync-git-verify-commit-signature: true g-cpan location: /var/lib/portage/g-cpan-overlay masters: gentoo priority: 0 local location: /var/lib/portage/overlay masters: gentoo priority: 1 holgersson-overlay location: /var/lib/layman/holgersson-overlay sync-type: git sync-uri: https://git.holgersson.xyz/holgersson-overlay sync-user: portage-sync masters: gentoo priority: 50 sync-git-verify-commit-signature: true Installed sets: @SDR, @custom_KDE, @electronics, @games ACCEPT_KEYWORDS="amd64 ~amd64" ACCEPT_LICENSE="* -@EULA" CBUILD="x86_64-pc-linux-gnu" CFLAGS="-O2 -pipe -march=native -frecord-gcc-switches -ffunction-sections -fdata-sections -fstack-clash-protection -fcf-protection=full -mindirect-branch=thunk -mfunction-return=thunk -mindirect-branch-register" CHOST="x86_64-pc-linux-gnu" CONFIG_PROTECT="/etc /usr/lib64/libreoffice/program/sofficerc /usr/share/config /usr/share/gnupg/qualified.txt" CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/dconf /etc/env.d /etc/fonts/fonts.conf /etc/gconf /etc/gentoo-release /etc/revdep-rebuild /etc/sandbox.d /etc/terminfo /etc/texmf/language.dat.d /etc/texmf/language.def.d /etc/texmf/updmap.d /etc/texmf/web2c" CXXFLAGS="-O2 -pipe -march=native -frecord-gcc-switches -ffunction-sections -fdata-sections -fstack-clash-protection -fcf-protection=full -mindirect-branch=thunk -mfunction-return=thunk -mindirect-branch-register" DISTDIR="/var/lib/portage/distfiles" EMERGE_DEFAULT_OPTS="--quiet-build --autounmask=n --binpkg-respect-use=y" ENV_UNSET="DBUS_SESSION_BUS_ADDRESS DISPLAY PERL5LIB PERL5OPT PERLPREFIX PERL_CORE PERL_MB_OPT PERL_MM_OPT XAUTHORITY XDG_CACHE_HOME XDG_CONFIG_HOME XDG_DATA_HOME XDG_RUNTIME_DIR" FCFLAGS="-O2 -pipe -frecord-gcc-switches" FEATURES="assume-digests binpkg-logs buildpkg cgroup clean-logs compress-build-logs config-protect-if-modified distlocks ebuild-locks fixlafiles ipc-sandbox merge-sync multilib-strict network-sandbox news nodoc noinfo parallel-fetch preserve-libs protect-owned sandbox sfperms sign strict strict-keepdir unknown-features-warn unmerge-logs unmerge-orphans userfetch userpriv usersandbox usersync xattr" FFLAGS="-O2 -pipe -frecord-gcc-switches" GENTOO_MIRRORS="http://ftp.halifax.rwth-aachen.de/gentoo/" LANG="de_DE.utf8" LDFLAGS="-Wl,-O1 -Wl,--as-needed -Wl,--gc-sections" LINGUAS="de de_DE" MAKEOPTS="-j5 -l5" PKGDIR="/var/lib/portage/packages" PORTAGE_COMPRESS="xz" PORTAGE_COMPRESS_FLAGS="-6 -T4" PORTAGE_CONFIGROOT="/" PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --omit-dir-times --compress --force --whole-file --delete --stats --human-readable --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages --exclude=/.git" PORTAGE_TMPDIR="/var/tmp" USE="X acl acpi alsa amd64 apparmor bash-completion bluetooth bzip2 caps cgroups crypt cryptsetup cups cxx dbus djvu egl elogind exif fam firefox flac fontconfig git glamor gles gpg gpm graphicsmagick gstreamer hardened hunspell iconv icu int64 ipv6 jit jpeg kde kipi lapack libinput libtirpc lzma ncurses networkmanager nftables nls nptl offensive ogg opengl openmp openmpi openmpi2 opus pam pcre pdf phonon pic pie pkcs11 plasma png policykit postscript pulseaudio qml qt5 readline samba sasl sdl seccomp semantic-desktop smp sound spell ssh ssl ssp startup-notification svg theora threads tiff truetype udev udisks unicode upower usb v4l vaapi video vim-syntax vorbis vpx wavpack wayland widgets x264 x265 xattr xcb xcomposite xkb xtpax xv xvid zlib zsh-completion" ABI_X86="64" ALSA_CARDS="hda-intel" APACHE2_MODULES="authn_core authz_core socache_shmcb unixd actions alias auth_basic authn_alias authn_anon authn_dbm authn_default authn_file authz_dbm authz_default authz_groupfile authz_host authz_owner authz_user autoindex cache cgi cgid dav dav_fs dav_lock deflate dir disk_cache env expires ext_filter file_cache filter headers include info log_config logio mem_cache mime mime_magic negotiation rewrite setenvif speling status unique_id userdir usertrack vhost_alias" CALLIGRA_FEATURES="karbon plan sheets stage words" COLLECTD_PLUGINS="df interface irq load memory rrdtool swap syslog" CPU_FLAGS_X86="aes avx avx2 f16c fma3 mmx mmxext pclmul popcnt sse sse2 sse3 sse4_1 sse4_2 ssse3" ELIBC="glibc" GPSD_PROTOCOLS="ashtech aivdm earthmate evermore fv18 garmin garmintxt gpsclock isync itrax mtk3301 nmea ntrip navcom oceanserver oldstyle oncore rtcm104v2 rtcm104v3 sirf skytraq superstar2 timing tsip tripmate tnt ublox ubx" INPUT_DEVICES="evdev synaptics wacom" KERNEL="linux" L10N="de de_DE" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LIBREOFFICE_EXTENSIONS="presenter-console presenter-minimizer" LLVM_TARGETS="BPF X86" OFFICE_IMPLEMENTATION="libreoffice" PHP_TARGETS="php5-6 php7-0" POSTGRES_TARGETS="postgres9_5 postgres10" PYTHON_SINGLE_TARGET="python3_5" PYTHON_TARGETS="python2_7 python3_5" RUBY_TARGETS="ruby23" USERLAND="GNU" VIDEO_CARDS="intel i965" XTABLES_ADDONS="quota2 psd pknock lscan length2 ipv4options ipset ipp2p iface geoip fuzzy condition tee tarpit sysrq steal rawnat logmark ipmark dhcpmac delude chaos account" Unset: CC, CPPFLAGS, CTARGET, CXX, INSTALL_MASK, LC_ALL, PORTAGE_BINHOST, PORTAGE_BUNZIP2_COMMAND, PORTAGE_RSYNC_EXTRA_OPTS ================================================================= Package Settings ================================================================= net-misc/networkmanager-1.12.0::local was built with the following: USE="bluetooth elogind introspection modemmanager ncurses nss policykit ppp wifi -audit -connection-sharing -consolekit -dhclient -dhcpcd -gnutls -json -ofono -ovs -resolvconf (-selinux) -systemd -teamd -test -vala -wext"
(In reply to Mart Raudsepp from comment #2) > Thanks for testing. Seeing what the currently pending unreleased item is in > that NEWS, I'd be inclined to wait for 1.12.2 to not have ABI issues for any > old libnm consumers, especially if it's released soon. > Otherwise in my queue, but someone else feel free to get to it before me. Sure, thanks for taking care.
Hi, networkmanager-1.12.2 was released today. However, I missed some changes inside my 1.12.0 bump like the dropped libnl3 dependency. Another point is that I would like to test net-wireless/iwd and add it to the ebuild as long as it will be usable. Updates from my side will probably come in tomorrow.
Created attachment 541100 [details] bumped ebuild for 1.12.2 with IWD support This ebuild adds support for net-wireless/iwd. As iwd is only keyworded for "~amd64 ~x86" it has only these keywords and should *not* be used inside the tree right know. I was able to start iwd and NM with the iwd backend, but was not able to connect to my WPA2-personal/-PSK network so far, and it looks highly experimental so far.
Created attachment 541102 [details] Updated networkmanager-1.12.2.ebuild (without IWD support) This is the updated ebuild without the iwd support. Works fine, should be bumped ;-)
Yeah, it's in my queue after pulseaudio and maybe gstreamer since 1.12.2 was released (I get their release infrastructure notification mails for those). Thanks for testing. I guess we should still add the support, in case it'll work better for some people or in the future?
(In reply to Mart Raudsepp from comment #8) > Yeah, it's in my queue after pulseaudio and maybe gstreamer since 1.12.2 was > released (I get their release infrastructure notification mails for those). > Thanks for testing. > I guess we should still add the support, in case it'll work better for some > people or in the future? I didn't see a way to add the support while keeping all the testing arches from the last version, as net-wireless/iwd has only keywords for ~amd64 and ~x86 so far and therefore repoman refuses to commit. I didn't dig deeper into it though (mostly due a lack of time right now). In case there is really no elegant way: What do you think about bumping to 1.12.2 now, and opening another bug about adding USE="iwd" and Cc’ing all relevant arches there (or a tracker bug for USE="iwd" and seperate keyword bugs that block the tracker one)?
I would package.use.mask optional iwd for arches that don't have it and coordinate with iwd maintainer about whether to request it for others or not, etc. Alternatively dropped keywords, bug and then maybe eventually package.use.masking later on ourselves if some arch is still lagging, as to be able to remove older series.
(In reply to Mart Raudsepp from comment #10) > I would package.use.mask optional iwd for arches that don't have it and > coordinate with iwd maintainer about whether to request it for others or > not, etc. > Alternatively dropped keywords, bug and then maybe eventually > package.use.masking later on ourselves if some arch is still lagging, as to > be able to remove older series. I assume the package.use.mask will be needed one way or the other, so I would prefer the first one - but you're the dev, decide! :-P
I have a bump ready locally, waiting on some testing and discussion with iwd maintainer. Mostly pondering about how to approach it - maybe we should be enabling iwd usage automatically when chosen, etc. For LTO, please handle this in a separate bug, I can't spend time on figuring out what it's all about in this ebuild disabling it historically right now, could use a separate bug to not forget in the future; but now just NM bump is priority over independent changes. The ebuild is my own work, but this allowed me to review your ebuild in comparison, to give feedback on what was wrong, as an opportunity to teach/learn: * glib minimum dependency was raised to 2.40 in upstream configure.ac, your ebuild didn't increase it for correctness * iwd requires wifi, but your ebuild doesn't have a REQUIRED_USE entry similar to wext in there already * jansson minimum requirement was raised to any to >=2.5, ebuild not reflecting it (but this is just correctness, in practice it doesn't matter unless upgrading a really old system or something) * Your ebuild depends on either wpa_supplicant or iwd, but enables the support only with USE=iwd, thus leading to broken wifi if either USE=-iwd and iwd happens to be installed (no wpa_supplicant pulled in, but iwd support isn't compiled in), or USE=iwd and user hasn't done the configuration changes (wpa_supplicant default config doesn't work = not good). If wpa_supplicant dep is desired to be avoided, it needs to be properly handled, with the configuration set up right for iwd out of the box then; this is what I'm waiting on to discuss right now before pushing the bump * unrelated LTO change, please file a separate bug and feel free to help figuring out why it was there, etc. Force enabling it doesn't sound right, as it sounds like ignoring user CFLAGS/LDFLAGS - but I haven't investigated the configure logic on this yet * missing dev-util/glib-utils dep for glib-mkenums (but this is a new split out of dev-libs/glib and many things have it missing, including previous NM version ebuild) * iwd is enabled for non-native build as well, even though wifi isn't, and it isn't relevant for the non-native multilib build (which is for the libraries, not daemon), thus USE="wifi iwd" ABI_X86="64 32" builds will fail; it needed to be via multilib_native_use_with * ewarns tell to use /etc/NetworkManager/NetworkManager.conf, but rather ideally it should be done via a separate .conf file in /etc/NetworkManager/conf.d - please test if that works; though this is another pending point - might want to force it on via USE=iwd with a conf file in /usr/lib/NetworkManager/conf.d/ * Change from inherit versionator to eapi7-ver - yet no function calls are changed - this doesn't make sense. Instead the problem was that versionator inherit was redundant and could have been removed, instead of replaced with a different unused inherit. toolchain-funcs inherit seems to be redundant as of now as well.
The bug has been closed via the following commit(s): https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=e6ed280b1e1d511db29f720f107aa0e84bf3dba5 commit e6ed280b1e1d511db29f720f107aa0e84bf3dba5 Author: Mart Raudsepp <leio@gentoo.org> AuthorDate: 2018-09-07 09:15:28 +0000 Commit: Mart Raudsepp <leio@gentoo.org> CommitDate: 2018-09-07 09:49:23 +0000 net-misc/networkmanager: bump to 1.12.2, support iwd iwd support is always built with USE=wifi, as net-wireless/iwd itself is not necessary for build due to pure dbus usage. USE=iwd controls whether USE=wifi ensures wpa_supplicant or iwd is present at runtime, and adds a default config snippet to use iwd as wifi.backend instead of wpa_supplicant. As a result, iwd and wpa_supplicant can be used interchangably with configuration overrides in /etc, despite what NM iwd USE setting was on the install, as long as USE=wifi was enabled; but a choice based default is ensured to be working in lack of overrides. Also remove unused versionator and toolchain-funcs inherits and add now needed glib-utils build dep directly for glib migration to that. Closes: https://bugs.gentoo.org/661278 Package-Manager: Portage-2.3.48, Repoman-2.3.10 net-misc/networkmanager/Manifest | 2 + net-misc/networkmanager/metadata.xml | 5 +- .../networkmanager/networkmanager-1.12.2.ebuild | 341 +++++++++++++++++++++ profiles/arch/amd64/package.use.mask | 1 + profiles/arch/base/package.use.mask | 1 + profiles/arch/x86/package.use.mask | 1 + 6 files changed, 349 insertions(+), 2 deletions(-)