Gentoo Archives: gentoo-commits

From: Matt Turner <mattst88@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/gentoo:master commit in: profiles/, net-misc/networkmanager/
Date: Wed, 11 Mar 2020 21:31:06
Message-Id: 1583962236.0dd37329676dcdad19fa6a3230f4231814e49047.mattst88@gentoo
1 commit: 0dd37329676dcdad19fa6a3230f4231814e49047
2 Author: Joonas Niilola <juippis <AT> gentoo <DOT> org>
3 AuthorDate: Sun Feb 16 17:32:18 2020 +0000
4 Commit: Matt Turner <mattst88 <AT> gentoo <DOT> org>
5 CommitDate: Wed Mar 11 21:30:36 2020 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=0dd37329
7
8 net-misc/networkmanager: bump to 1.22.8
9
10 [mattst88]: Fix s/epbf/ebpf/ typo
11 Keep keywords, but add to package.mask
12 Bump 1.22.6 -> 1.22.8
13
14 Bug: https://bugs.gentoo.org/665338
15 Closes: https://bugs.gentoo.org/702898
16 Signed-off-by: Joonas Niilola <juippis <AT> gentoo.org>
17 Signed-off-by: Matt Turner <mattst88 <AT> gentoo.org>
18
19 net-misc/networkmanager/Manifest | 1 +
20 net-misc/networkmanager/metadata.xml | 4 +
21 .../networkmanager/networkmanager-1.22.8.ebuild | 329 +++++++++++++++++++++
22 profiles/package.mask | 4 +
23 4 files changed, 338 insertions(+)
24
25 diff --git a/net-misc/networkmanager/Manifest b/net-misc/networkmanager/Manifest
26 index 28743c16f9f..4dede9e9929 100644
27 --- a/net-misc/networkmanager/Manifest
28 +++ b/net-misc/networkmanager/Manifest
29 @@ -1 +1,2 @@
30 DIST NetworkManager-1.18.4.tar.xz 4875196 BLAKE2B 9c58d6d7317562332dfa9639f8e236a0a7f6b58e7dad5af83916b1c6178899a6bcf12bc289fb401d84fd6420306364b4c4c0a25eda2a08eef812acde1862a18a SHA512 9fd22775a400ee8d20c75ebddfee842bfbd8780966444dd537e371a65918f41640e921d2c441853afe8f72d693e9b4c1415435136a07004666a6af4799fd3350
31 +DIST NetworkManager-1.22.8.tar.bz2 6291982 BLAKE2B f02ca4006c7ccedc30f2a54cc15f9e0e44fb0fd00114ea1f634a1c72b422083d6bcd0b4ac23404da4eb2d278d97708776e925bb37a13394e97563053e3330e3d SHA512 af598bcb192a2f48703cd7a995823b3f9c53c3f658e29a0cc939f4436d38417ae57f44dc7da75581a9caff32bc572b57bae7ad4a56930178ae0f0003e0a44973
32
33 diff --git a/net-misc/networkmanager/metadata.xml b/net-misc/networkmanager/metadata.xml
34 index 3345447e4f9..91e9ff45256 100644
35 --- a/net-misc/networkmanager/metadata.xml
36 +++ b/net-misc/networkmanager/metadata.xml
37 @@ -6,6 +6,7 @@
38 <name>Gentoo GNOME Desktop</name>
39 </maintainer>
40 <use>
41 + <flag name="concheck">Enable connectivity checking support</flag>
42 <flag name="connection-sharing">Use <pkg>net-dns/dnsmasq</pkg> and
43 <pkg>net-firewall/iptables</pkg> for connection sharing</flag>
44 <flag name="consolekit">Use <pkg>sys-auth/consolekit</pkg> for session
45 @@ -18,6 +19,8 @@
46 <pkg>net-wireless/wpa_supplicant</pkg> for wifi support by default</flag>
47 <flag name="json">Enable JSON validation via <pkg>dev-libs/jansson</pkg>
48 in libnm.</flag>
49 + <flag name="libpsl">Link against libpsl</flag>
50 + <flag name="lto">Link-time optimization</flag>
51 <flag name="modemmanager">Enable support for mobile broadband devices
52 using <pkg>net-misc/modemmanager</pkg></flag>
53 <flag name="nss">Use <pkg>dev-libs/nss</pkg> for cryptography</flag>
54 @@ -31,6 +34,7 @@
55 systemd-resolved, disable this flag and create a symlink to
56 /run/systemd/resolve/stub-resolv.conf.</flag>
57 <flag name="teamd">Enable Teamd control support</flag>
58 + <flag name="tools">Build cli tools such as nmcli, nmtui and nm_cloud_setup</flag>
59 <flag name="wifi">Enable support for wifi and 802.1x security</flag>
60 <flag name="wext">Enable support for the deprecated Wext (Wireless
61 Extensions) API; needed for some older drivers (e.g. ipw2200,
62
63 diff --git a/net-misc/networkmanager/networkmanager-1.22.8.ebuild b/net-misc/networkmanager/networkmanager-1.22.8.ebuild
64 new file mode 100644
65 index 00000000000..3e0f281bfc9
66 --- /dev/null
67 +++ b/net-misc/networkmanager/networkmanager-1.22.8.ebuild
68 @@ -0,0 +1,329 @@
69 +# Copyright 2019-2020 Gentoo Authors
70 +# Distributed under the terms of the GNU General Public License v2
71 +
72 +EAPI=7
73 +
74 +PYTHON_COMPAT=( python3_{6,7} )
75 +
76 +inherit meson linux-info python-any-r1 systemd udev vala
77 +
78 +DESCRIPTION="A set of co-operative tools that make networking simple and straightforward"
79 +HOMEPAGE="https://wiki.gnome.org/Projects/NetworkManager"
80 +SRC_URI="https://gitlab.freedesktop.org/NetworkManager/NetworkManager/-/archive/${PV}/NetworkManager-${PV}.tar.bz2"
81 +
82 +LICENSE="GPL-2+"
83 +SLOT="0" # add subslot if libnm-util.so.2 or libnm-glib.so.4 bumps soname version
84 +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~ia64 ~ppc ~ppc64 ~sparc ~x86"
85 +IUSE="audit bluetooth +concheck connection-sharing consolekit +dhclient dhcpcd "
86 +IUSE+="debug doc elogind examples +gnutls introspection iwd json kernel_linux "
87 +IUSE+="libpsl lto modemmanager nss ofono ovs +policykit ppp resolvconf selinux "
88 +IUSE+="syslog systemd teamd +tools vala wext +wifi"
89 +
90 +REQUIRED_USE="
91 + doc? ( introspection )
92 + iwd? ( wifi )
93 + vala? ( introspection )
94 + ^^ ( gnutls nss )
95 + ?? ( consolekit elogind systemd )
96 + ?? ( dhclient dhcpcd )
97 + ?? ( syslog systemd )
98 +"
99 +
100 +DEPEND="
101 + dev-libs/dbus-glib
102 + dev-libs/glib:2
103 + net-libs/libndp
104 + sys-apps/dbus
105 + sys-kernel/linux-headers
106 + virtual/libudev
107 + audit? ( sys-process/audit )
108 + bluetooth? ( net-wireless/bluez )
109 + concheck? ( net-misc/curl )
110 + connection-sharing? (
111 + net-dns/dnsmasq[dbus,dhcp]
112 + net-firewall/iptables
113 + )
114 + consolekit? ( sys-auth/consolekit )
115 + dhclient? ( net-misc/dhcp[client] )
116 + dhcpcd? ( net-misc/dhcpcd )
117 + doc? ( dev-util/gtk-doc )
118 + elogind? ( sys-auth/elogind )
119 + gnutls? (
120 + dev-libs/libgcrypt:0=
121 + net-libs/gnutls
122 + )
123 + introspection? ( dev-libs/gobject-introspection:= )
124 + json? ( dev-libs/jansson )
125 + libpsl? ( net-libs/libpsl )
126 + modemmanager? (
127 + net-misc/mobile-broadband-provider-info
128 + net-misc/modemmanager
129 + )
130 + nss? ( dev-libs/nss )
131 + ofono? ( net-misc/ofono )
132 + ovs? ( dev-libs/jansson )
133 + policykit? ( sys-auth/polkit )
134 + ppp? ( net-dialup/ppp[ipv6] )
135 + resolvconf? ( net-dns/openresolv )
136 + selinux? ( sys-libs/libselinux )
137 + systemd? ( sys-apps/systemd:= )
138 + teamd? (
139 + dev-libs/jansson
140 + net-misc/libteam
141 + )
142 + tools? (
143 + dev-libs/newt
144 + sys-libs/ncurses
145 + sys-libs/readline:0=
146 + )
147 +"
148 +RDEPEND="${DEPEND}
149 + acct-group/plugdev
150 + || (
151 + net-analyzer/arping
152 + net-misc/iputils[arping(+)]
153 + )
154 + wifi? (
155 + iwd? ( net-wireless/iwd )
156 + !iwd? ( net-wireless/wpa_supplicant[dbus] )
157 + )
158 +"
159 +BDEPEND="dev-util/intltool
160 + sys-devel/gettext
161 + virtual/pkgconfig
162 + introspection? (
163 + $(python_gen_any_dep 'dev-python/pygobject:3[${PYTHON_USEDEP}]')
164 + dev-libs/libxslt
165 + dev-lang/perl
166 + )
167 + vala? ( $(vala_depend) )
168 +"
169 +
170 +S="${WORKDIR}"/NetworkManager-${PV}
171 +
172 +# Not implemented yet.
173 +RESTRICT="test"
174 +
175 +python_check_deps() {
176 + if use introspection; then
177 + has_version "dev-python/pygobject:3[${PYTHON_USEDEP}]" || return
178 + fi
179 +
180 + # test requirements here
181 +}
182 +
183 +sysfs_deprecated_check() {
184 + ebegin "Checking for SYSFS_DEPRECATED support"
185 +
186 + if { linux_chkconfig_present SYSFS_DEPRECATED_V2; }; then
187 + eerror "Please disable SYSFS_DEPRECATED_V2 support in your kernel config and recompile "
188 + eerror "your kernel or NetworkManager will not work correctly."
189 + eerror "See https://bugs.gentoo.org/333639 for more info."
190 + die "CONFIG_SYSFS_DEPRECATED_V2 support detected!"
191 + fi
192 + eend ${?}
193 +}
194 +
195 +pkg_pretend() {
196 + if use kernel_linux; then
197 + get_version
198 + if linux_config_exists; then
199 + sysfs_deprecated_check
200 + else
201 + ewarn "Was unable to determine your kernel .config"
202 + ewarn "Please note that if CONFIG_SYSFS_DEPRECATED_V2 is set in your kernel .config, "
203 + ewarn "NetworkManager will not work correctly."
204 + ewarn "See https://bugs.gentoo.org/333639 for more info."
205 + fi
206 + fi
207 +}
208 +
209 +pkg_setup() {
210 + CONFIG_CHECK="~BPF"
211 +
212 + if use connection-sharing; then
213 + if kernel_is lt 5 1; then
214 + CONFIG_CHECK="~NF_NAT_IPV4 ~NF_NAT_MASQUERADE_IPV4"
215 + else
216 + CONFIG_CHECK="~NF_NAT ~NF_NAT_MASQUERADE"
217 + fi
218 + fi
219 +
220 + linux-info_pkg_setup
221 +
222 + # if use introspection || use test; then
223 + if use introspection; then
224 + python-any-r1_pkg_setup
225 + fi
226 +}
227 +
228 +src_prepare() {
229 + default
230 + use vala && vala_src_prepare
231 +}
232 +
233 +src_configure() {
234 + local emesonargs=(
235 + -D systemdsystemunitdir=$(systemd_get_systemunitdir)
236 + -D system_ca_path=/etc/ssl/certs
237 + -D udev_dir=$(get_udevdir)
238 + -D dbus_conf_dir=/usr/share/dbus-1/system.d
239 + -D kernel_firmware_dir=/lib/firmware
240 + -D iptables=/sbin/iptables
241 + #-D dnsmasq=
242 + #-D dnssec_trigger=
243 +
244 + -D dist_version=${PVR}
245 + $(meson_use policykit polkit)
246 + -D modify_system=true
247 + $(meson_use policykit polkit_agent)
248 + $(meson_use policykit config_auth_polkit_default)
249 + $(meson_use selinux)
250 + $(meson_use systemd systemd_journal)
251 + -D hostname_persist=gentoo
252 + -D libaudit=$(usex audit yes no)
253 +
254 + $(meson_use wext)
255 + $(meson_use wifi)
256 + $(meson_use iwd)
257 + $(meson_use ppp)
258 + #-D pppd='path to pppd binary'
259 + #-D pppd_plugin_dir='path to the pppd plugins directory'
260 + $(meson_use modemmanager modem_manager)
261 + $(meson_use ofono)
262 + $(meson_use concheck)
263 + $(meson_use teamd teamdctl)
264 + $(meson_use ovs)
265 + $(meson_use tools nmcli)
266 + $(meson_use tools nmtui)
267 + $(meson_use tools nm_cloud_setup)
268 + $(meson_use bluetooth bluez5_dun)
269 + -D ebpf=true
270 +
271 + -D config_plugins_default=keyfile
272 + -D ifcfg_rh=false
273 + -D ifupdown=false
274 +
275 + $(meson_feature resolvconf)
276 + -D netconfig=disable
277 + -D config_dns_rc_manager_default=symlink
278 +
279 + $(meson_feature dhclient)
280 + -D dhcpcanon=disable
281 + $(meson_feature dhcpcd)
282 +
283 + $(meson_use introspection)
284 + $(meson_use vala vapi)
285 + $(meson_use doc docs)
286 + # $(meson_use debug more_asserts)
287 + -D more_asserts=0
288 + $(meson_use debug more_logging)
289 + -D valgrind=no
290 + -D valgrind_suppressions=
291 + $(meson_use debug ld_gc)
292 + $(meson_use libpsl)
293 + $(meson_use json json_validation)
294 + -D qt=false
295 +
296 + $(meson_use lto b_lto)
297 + )
298 +
299 + if use consolekit; then
300 + emesonargs+=( -D session_tracking_consolekit=true )
301 + emesonargs+=( -D session_tracking=no )
302 + emesonargs+=( -D suspend_resume=consolekit )
303 + elif use systemd; then
304 + emesonargs+=( -D session_tracking_consolekit=false )
305 + emesonargs+=( -D session_tracking=systemd )
306 + emesonargs+=( -D suspend_resume=systemd )
307 + elif use elogind; then
308 + emesonargs+=( -D session_tracking_consolekit=false )
309 + emesonargs+=( -D session_tracking=elogind )
310 + emesonargs+=( -D suspend_resume=elogind )
311 + else
312 + emesonargs+=( -D session_tracking_consolekit=false )
313 + emesonargs+=( -D session_tracking=none )
314 + emesonargs+=( -D suspend_resume=auto )
315 + fi
316 +
317 + if use syslog; then
318 + emesonargs+=( -D config_logging_backend_default=syslog )
319 + elif use systemd; then
320 + emesonargs+=( -D config_logging_backend_default=journal )
321 + else
322 + emesonargs+=( -D config_logging_backend_default=default )
323 + fi
324 +
325 + if use dhclient; then
326 + emesonargs+=( -D config_dhcp_default=dhclient )
327 + elif use dhcpcd; then
328 + emesonargs+=( -D config_dhcp_default=dhcpcd )
329 + else
330 + emesonargs+=( -D config_dhcp_default=internal )
331 + fi
332 +
333 + if use nss; then
334 + emesonargs+=( -D crypto=nss )
335 + else
336 + emesonargs+=( -D crypto=gnutls )
337 + fi
338 +
339 + meson_src_configure
340 +}
341 +
342 +src_install() {
343 + meson_src_install
344 +
345 + # ---- openrc untested, this is copied from current networkmanager ebuild.
346 + newinitd "${FILESDIR}/init.d.NetworkManager-r1" NetworkManager
347 + newconfd "${FILESDIR}/conf.d.NetworkManager" NetworkManager
348 +
349 + # Need to keep the /etc/NetworkManager/dispatched.d for dispatcher scripts
350 + keepdir /etc/NetworkManager/dispatcher.d
351 +
352 + # Provide openrc net dependency only when nm is connected
353 + exeinto /etc/NetworkManager/dispatcher.d
354 + newexe "${FILESDIR}/10-openrc-status-r4" 10-openrc-status
355 + sed -e "s:@EPREFIX@:${EPREFIX}:g" \
356 + -i "${ED}/etc/NetworkManager/dispatcher.d/10-openrc-status" || die
357 +
358 + keepdir /etc/NetworkManager/system-connections
359 + chmod 0600 "${ED}"/etc/NetworkManager/system-connections/.keep* || die
360 +
361 + # Allow users in plugdev group to modify system connections
362 + insinto /usr/share/polkit-1/rules.d/
363 + doins "${FILESDIR}/01-org.freedesktop.NetworkManager.settings.modify.system.rules"
364 + # ----
365 +
366 + if use iwd; then
367 + insinto /usr/lib/NetworkManager/conf.d/
368 + newins - iwd.conf <<- _EOF_
369 + [device]
370 + wifi.backend=iwd
371 + _EOF_
372 + fi
373 +
374 + if use examples; then
375 + dodoc -r "${S}"/examples/
376 +
377 + insinto /usr/lib/NetworkManager/conf.d
378 + doins "${S}"/examples/nm-conf.d/{30-anon,31-mac-addr-change}.conf
379 +
380 + # Temporary workaround before patching,
381 + cp "${ED}"/usr/share/doc/NetworkManager/examples/server.conf \
382 + "${ED}"/usr/share/doc/${PF}/examples/ ||
383 + die "Failed to copy server.conf example."
384 + fi
385 +
386 + # Temporary workaround, can be patched later.
387 + # The file will be installed regargless of 'examples' USE.
388 + rm "${ED}"/usr/share/doc/NetworkManager/examples/server.conf || die
389 + rm -r "${ED}"/usr/share/doc/NetworkManager || die
390 +
391 + # Empty dirs
392 + rm -r "${ED}/var" || die
393 +}
394 +
395 +pkg_postinst() {
396 + systemd_reenable NetworkManager.service
397 +}
398
399 diff --git a/profiles/package.mask b/profiles/package.mask
400 index 1f4865009a6..454bee08f06 100644
401 --- a/profiles/package.mask
402 +++ b/profiles/package.mask
403 @@ -32,6 +32,10 @@
404
405 #--- END OF EXAMPLES ---
406
407 +# Matt Turner <mattst88@g.o> (2020-03-11)
408 +# Masked for testing due to removal of libnm-glib (bug #665338)
409 +>=net-misc/networkmanager-1.20
410 +
411 # Michał Górny <mgorny@g.o> (2020-03-11)
412 # Unmaintained Trac plugins. Last bumped in 2013. Blockers
413 # for Python 2 removal.