Gentoo Archives: gentoo-commits

From: Jory Pratt <anarchy@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] proj/musl:master commit in: net-misc/networkmanager/files/1.28.0/, net-misc/networkmanager/files/, ...
Date: Sun, 30 May 2021 16:14:43
Message-Id: 1622391249.d1dd81b40c23b1b6451a95e269394adccfbd81cc.anarchy@gentoo
1 commit: d1dd81b40c23b1b6451a95e269394adccfbd81cc
2 Author: Jory Pratt <anarchy <AT> gentoo <DOT> org>
3 AuthorDate: Sun May 30 16:14:09 2021 +0000
4 Commit: Jory Pratt <anarchy <AT> gentoo <DOT> org>
5 CommitDate: Sun May 30 16:14:09 2021 +0000
6 URL: https://gitweb.gentoo.org/proj/musl.git/commit/?id=d1dd81b4
7
8 net-misc/networkmanager: supported via ::gentoo with 1.30.x
9
10 Signed-off-by: Jory Pratt <anarchy <AT> gentoo.org>
11
12 net-misc/networkmanager/Manifest | 2 -
13 ...top.NetworkManager.settings.modify.system.rules | 7 -
14 ...0001-uncouple-glibc-functions-and-headers.patch | 60 ----
15 .../files/1.28.0/0002-network-support.patch | 62 ----
16 .../1.28.0/0003-Fix-includes-to-support-musl.patch | 110 -------
17 ...4-Fix-pthread-support-for-non-glibc-users.patch | 54 ----
18 .../0005-define-compare-for-non-glibc-users.patch | 30 --
19 ...support-for-reallocarray-0-but-the-functi.patch | 43 ---
20 net-misc/networkmanager/files/10-openrc-status-r4 | 35 --
21 .../networkmanager/files/conf.d.NetworkManager | 4 -
22 .../networkmanager/files/init.d.NetworkManager-r2 | 62 ----
23 net-misc/networkmanager/files/musl-basic.patch | 46 ---
24 net-misc/networkmanager/files/musl-compar.patch | 18 --
25 .../networkmanager/files/musl-fix-includes.patch | 90 ------
26 .../files/musl-network-support.patch | 42 ---
27 net-misc/networkmanager/files/musl-no-drand.patch | 58 ----
28 .../networkmanager/files/musl-process-util.patch | 40 ---
29 .../networkmanager-1.26.4-iwd-fixes-pr640.patch | 169 ----------
30 .../files/networkmanager-1.28.0-dhcpcd9.patch | 265 ---------------
31 net-misc/networkmanager/files/reallocarray-1.patch | 43 ---
32 net-misc/networkmanager/metadata.xml | 37 ---
33 .../networkmanager/networkmanager-1.26.4.ebuild | 357 ---------------------
34 .../networkmanager/networkmanager-1.28.0-r1.ebuild | 356 --------------------
35 23 files changed, 1990 deletions(-)
36
37 diff --git a/net-misc/networkmanager/Manifest b/net-misc/networkmanager/Manifest
38 deleted file mode 100644
39 index e16febc..0000000
40 --- a/net-misc/networkmanager/Manifest
41 +++ /dev/null
42 @@ -1,2 +0,0 @@
43 -DIST NetworkManager-1.26.4.tar.xz 5051424 BLAKE2B 53a8fd9f9a061b9ac6b117f431e72b1967cfd2fffb539e0dc9335c37a3a59dc33562e81f7887019c3460f403a95b96e8105b1ae41b00c8488ae12a370a3d82ff SHA512 91e865c83a6ae694c9f6aa50e7f938dfa55bfddac32a6dfb73e6edb34b2539068ff9f83bf662bb2d689bd3c66cf53d7fa015930940cf7bda2d4a16561cf02328
44 -DIST NetworkManager-1.28.0.tar.xz 5129848 BLAKE2B 37dc9cda283dad29a70c85ed41a77844b4f60a9815be4b6780fbefecfeffb644fd67ea65373a1895fd2102f2beec9ad141b6e9a92a1a32de646d64acd4250b62 SHA512 ab0bc39626dc55df4e122ad6e1a8086e1467f44bdd41c4491c752dca3ffb549796e0ac888041f12f661f2f6cf4142d0fce59b5135549e48a0076fafcdc45ca06
45
46 diff --git a/net-misc/networkmanager/files/01-org.freedesktop.NetworkManager.settings.modify.system.rules b/net-misc/networkmanager/files/01-org.freedesktop.NetworkManager.settings.modify.system.rules
47 deleted file mode 100644
48 index d00b268..0000000
49 --- a/net-misc/networkmanager/files/01-org.freedesktop.NetworkManager.settings.modify.system.rules
50 +++ /dev/null
51 @@ -1,7 +0,0 @@
52 -// Let users in plugdev group modify NetworkManager
53 -polkit.addRule(function(action, subject) {
54 - if (action.id == "org.freedesktop.NetworkManager.settings.modify.system" &&
55 - subject.isInGroup("plugdev") && subject.active) {
56 - return "yes";
57 - }
58 -});
59
60 diff --git a/net-misc/networkmanager/files/1.28.0/0001-uncouple-glibc-functions-and-headers.patch b/net-misc/networkmanager/files/1.28.0/0001-uncouple-glibc-functions-and-headers.patch
61 deleted file mode 100644
62 index 59f524f..0000000
63 --- a/net-misc/networkmanager/files/1.28.0/0001-uncouple-glibc-functions-and-headers.patch
64 +++ /dev/null
65 @@ -1,60 +0,0 @@
66 -From 839343b02e59cb36e58f7e3def8bb39bf4ee3d5b Mon Sep 17 00:00:00 2001
67 -From: Jory Pratt <anarchy@g.o>
68 -Date: Thu, 11 Mar 2021 07:59:56 -0600
69 -Subject: [PATCH] uncouple glibc functions and headers
70 -
71 ----
72 - shared/nm-glib-aux/nm-json-aux.c | 4 ++++
73 - shared/systemd/src/basic/stdio-util.h | 2 ++
74 - shared/systemd/src/basic/util.h | 6 ++++++
75 - 3 files changed, 12 insertions(+)
76 -
77 -diff --git a/shared/nm-glib-aux/nm-json-aux.c b/shared/nm-glib-aux/nm-json-aux.c
78 -index 4212e62..83114c7 100644
79 ---- a/shared/nm-glib-aux/nm-json-aux.c
80 -+++ b/shared/nm-glib-aux/nm-json-aux.c
81 -@@ -9,6 +9,10 @@
82 -
83 - #include <dlfcn.h>
84 -
85 -+#ifndef RTLD_DEEPBIND
86 -+#define RTLD_DEEPBIND 0
87 -+#endif
88 -+
89 - /*****************************************************************************/
90 -
91 - static void
92 -diff --git a/shared/systemd/src/basic/stdio-util.h b/shared/systemd/src/basic/stdio-util.h
93 -index c3b9448..e80a938 100644
94 ---- a/shared/systemd/src/basic/stdio-util.h
95 -+++ b/shared/systemd/src/basic/stdio-util.h
96 -@@ -1,7 +1,9 @@
97 - /* SPDX-License-Identifier: LGPL-2.1+ */
98 - #pragma once
99 -
100 -+#if defined(__GLIBC__)
101 - #include <printf.h>
102 -+#endif
103 - #include <stdarg.h>
104 - #include <stdio.h>
105 - #include <sys/types.h>
106 -diff --git a/shared/systemd/src/basic/util.h b/shared/systemd/src/basic/util.h
107 -index 6fc7480..fab72e5 100644
108 ---- a/shared/systemd/src/basic/util.h
109 -+++ b/shared/systemd/src/basic/util.h
110 -@@ -30,6 +30,12 @@ static inline unsigned u64log2(uint64_t n) {
111 - #endif
112 - }
113 -
114 -+#if !defined(__GLIBC__)
115 -+typedef int (*__compar_fn_t) (const void*, const void*);
116 -+typedef __compar_fn_t comparison_fn_t;
117 -+typedef int (*__compar_d_fn_t) (const void *, const void *, void *);
118 -+#endif
119 -+
120 - static inline unsigned u32ctz(uint32_t n) {
121 - #if __SIZEOF_INT__ == 4
122 - return n != 0 ? __builtin_ctz(n) : 32;
123 ---
124 -2.26.2
125 -
126
127 diff --git a/net-misc/networkmanager/files/1.28.0/0002-network-support.patch b/net-misc/networkmanager/files/1.28.0/0002-network-support.patch
128 deleted file mode 100644
129 index 4915ffb..0000000
130 --- a/net-misc/networkmanager/files/1.28.0/0002-network-support.patch
131 +++ /dev/null
132 @@ -1,62 +0,0 @@
133 -From 08d889a2bcaaad17a92303277b331a515bf40fb8 Mon Sep 17 00:00:00 2001
134 -From:
135 -Date: Thu, 11 Mar 2021 07:42:39 -0600
136 -Subject: [PATCH 2/6] network support
137 -
138 ----
139 - libnm-core/nm-utils.h | 4 ++++
140 - shared/systemd/src/basic/socket-util.h | 5 +++++
141 - src/platform/wifi/nm-wifi-utils.h | 4 ++++
142 - 3 files changed, 13 insertions(+)
143 -
144 -diff --git a/libnm-core/nm-utils.h b/libnm-core/nm-utils.h
145 -index 9589c51..6b42883 100644
146 ---- a/libnm-core/nm-utils.h
147 -+++ b/libnm-core/nm-utils.h
148 -@@ -15,7 +15,11 @@
149 - #include <netinet/in.h>
150 -
151 - /* For ETH_ALEN and INFINIBAND_ALEN */
152 -+#if defined(__GLIBC__)
153 - #include <linux/if_ether.h>
154 -+#else
155 -+#define ETH_ALEN 6 /* Octets in one ethernet addr */
156 -+#endif
157 - #include <linux/if_infiniband.h>
158 -
159 - #include "nm-core-enum-types.h"
160 -diff --git a/shared/systemd/src/basic/socket-util.h b/shared/systemd/src/basic/socket-util.h
161 -index 1ece911..c6d5a60 100644
162 ---- a/shared/systemd/src/basic/socket-util.h
163 -+++ b/shared/systemd/src/basic/socket-util.h
164 -@@ -13,6 +13,11 @@
165 - #include <sys/socket.h>
166 - #include <sys/types.h>
167 - #include <sys/un.h>
168 -+#if !defined(__GLIBC__)
169 -+/* SIOCGSTAMPNS from linux/asm-generic.h
170 -+ * for src/systemd/src/libsystemd-network/sd-lldp.c */
171 -+#include <linux/sockios.h>
172 -+#endif
173 -
174 - #include "macro.h"
175 - #include "missing_socket.h"
176 -diff --git a/src/platform/wifi/nm-wifi-utils.h b/src/platform/wifi/nm-wifi-utils.h
177 -index d1df2fb..792f4ab 100644
178 ---- a/src/platform/wifi/nm-wifi-utils.h
179 -+++ b/src/platform/wifi/nm-wifi-utils.h
180 -@@ -7,7 +7,11 @@
181 - #ifndef __WIFI_UTILS_H__
182 - #define __WIFI_UTILS_H__
183 -
184 -+#if defined(__GLIBC__)
185 - #include <net/ethernet.h>
186 -+#else /* musl libc */
187 -+#define ETH_ALEN 6 /* Octets in one ethernet addr */
188 -+#endif
189 -
190 - #include "nm-dbus-interface.h"
191 - #include "nm-setting-wireless.h"
192 ---
193 -2.26.2
194 -
195
196 diff --git a/net-misc/networkmanager/files/1.28.0/0003-Fix-includes-to-support-musl.patch b/net-misc/networkmanager/files/1.28.0/0003-Fix-includes-to-support-musl.patch
197 deleted file mode 100644
198 index cdf9d53..0000000
199 --- a/net-misc/networkmanager/files/1.28.0/0003-Fix-includes-to-support-musl.patch
200 +++ /dev/null
201 @@ -1,110 +0,0 @@
202 -From a089fdec09fe8893ee8cff79ce2027d3ea2fa5bb Mon Sep 17 00:00:00 2001
203 -From:
204 -Date: Thu, 11 Mar 2021 07:42:59 -0600
205 -Subject: [PATCH 3/6] Fix includes to support musl
206 -
207 ----
208 - src/NetworkManagerUtils.c | 1 +
209 - src/devices/nm-device-bridge.c | 2 ++
210 - src/devices/nm-device.c | 4 ++++
211 - src/nm-manager.c | 1 +
212 - src/platform/nm-linux-platform.c | 5 +++++
213 - src/systemd/src/libsystemd-network/sd-dhcp6-client.c | 4 ++++
214 - 6 files changed, 17 insertions(+)
215 -
216 -diff --git a/src/NetworkManagerUtils.c b/src/NetworkManagerUtils.c
217 -index 4739e9d..ceadb50 100644
218 ---- a/src/NetworkManagerUtils.c
219 -+++ b/src/NetworkManagerUtils.c
220 -@@ -4,6 +4,7 @@
221 - * Copyright (C) 2005 - 2008 Novell, Inc.
222 - */
223 -
224 -+#include <netinet/if_ether.h>
225 - #include "nm-default.h"
226 -
227 - #include "NetworkManagerUtils.h"
228 -diff --git a/src/devices/nm-device-bridge.c b/src/devices/nm-device-bridge.c
229 -index 48dcec1..e78eab5 100644
230 ---- a/src/devices/nm-device-bridge.c
231 -+++ b/src/devices/nm-device-bridge.c
232 -@@ -15,6 +15,8 @@
233 - #include "nm-device-factory.h"
234 - #include "nm-core-internal.h"
235 -
236 -+#include <linux/if_ether.h>
237 -+
238 - #include "nm-device-logging.h"
239 - _LOG_DECLARE_SELF(NMDeviceBridge);
240 -
241 -diff --git a/src/devices/nm-device.c b/src/devices/nm-device.c
242 -index 0be05f2..ebf233b 100644
243 ---- a/src/devices/nm-device.c
244 -+++ b/src/devices/nm-device.c
245 -@@ -17,7 +17,11 @@
246 - #include <arpa/inet.h>
247 - #include <fcntl.h>
248 - #include <linux/if_addr.h>
249 -+#if defined(__GLIBC__)
250 - #include <linux/if_arp.h>
251 -+#else
252 -+#include <linux/if.h>
253 -+#endif
254 - #include <linux/rtnetlink.h>
255 -
256 - #include "nm-std-aux/unaligned.h"
257 -diff --git a/src/nm-manager.c b/src/nm-manager.c
258 -index 46f81c7..090916e 100644
259 ---- a/src/nm-manager.c
260 -+++ b/src/nm-manager.c
261 -@@ -15,6 +15,7 @@
262 - #include <sys/stat.h>
263 - #include <sys/sendfile.h>
264 - #include <limits.h>
265 -+#include <asm/types.h>
266 -
267 - #include "nm-glib-aux/nm-c-list.h"
268 -
269 -diff --git a/src/platform/nm-linux-platform.c b/src/platform/nm-linux-platform.c
270 -index b377c85..7e32eea 100644
271 ---- a/src/platform/nm-linux-platform.c
272 -+++ b/src/platform/nm-linux-platform.c
273 -@@ -6,6 +6,7 @@
274 - #include "nm-default.h"
275 -
276 - #include "nm-linux-platform.h"
277 -+#include "wpan/nm-wpan-utils.h"
278 -
279 - #include <arpa/inet.h>
280 - #include <dlfcn.h>
281 -@@ -14,7 +15,11 @@
282 - #include <libudev.h>
283 - #include <linux/fib_rules.h>
284 - #include <linux/ip.h>
285 -+#if defined(__GLIBC__)
286 - #include <linux/if_arp.h>
287 -+#else
288 -+#include <linux/if.h>
289 -+#endif
290 - #include <linux/if_bridge.h>
291 - #include <linux/if_link.h>
292 - #include <linux/if_tun.h>
293 -diff --git a/src/systemd/src/libsystemd-network/sd-dhcp6-client.c b/src/systemd/src/libsystemd-network/sd-dhcp6-client.c
294 -index ec7f1be..ae63a86 100644
295 ---- a/src/systemd/src/libsystemd-network/sd-dhcp6-client.c
296 -+++ b/src/systemd/src/libsystemd-network/sd-dhcp6-client.c
297 -@@ -7,7 +7,11 @@
298 -
299 - #include <errno.h>
300 - #include <sys/ioctl.h>
301 -+#if defined(__GLIBC__)
302 - #include <linux/if_arp.h>
303 -+#else
304 -+#include <linux/if.h>
305 -+#endif
306 - #include <linux/if_infiniband.h>
307 -
308 - #include "sd-dhcp6-client.h"
309 ---
310 -2.26.2
311 -
312
313 diff --git a/net-misc/networkmanager/files/1.28.0/0004-Fix-pthread-support-for-non-glibc-users.patch b/net-misc/networkmanager/files/1.28.0/0004-Fix-pthread-support-for-non-glibc-users.patch
314 deleted file mode 100644
315 index 6ac79be..0000000
316 --- a/net-misc/networkmanager/files/1.28.0/0004-Fix-pthread-support-for-non-glibc-users.patch
317 +++ /dev/null
318 @@ -1,54 +0,0 @@
319 -From edd98123a8aa41c799331d6ab844d026ecff2c46 Mon Sep 17 00:00:00 2001
320 -From:
321 -Date: Thu, 11 Mar 2021 07:43:23 -0600
322 -Subject: [PATCH 4/6] Fix pthread support for non glibc users
323 -
324 ----
325 - shared/systemd/src/basic/process-util.c | 12 +++++++++++-
326 - 1 file changed, 11 insertions(+), 1 deletion(-)
327 -
328 -diff --git a/shared/systemd/src/basic/process-util.c b/shared/systemd/src/basic/process-util.c
329 -index 03ca04e..1e97688 100644
330 ---- a/shared/systemd/src/basic/process-util.c
331 -+++ b/shared/systemd/src/basic/process-util.c
332 -@@ -17,6 +17,9 @@
333 - #include <sys/wait.h>
334 - #include <syslog.h>
335 - #include <unistd.h>
336 -+#ifndef __GLIBC__
337 -+#include <pthread.h>
338 -+#endif
339 - #if 0 /* NM_IGNORED */
340 - #if HAVE_VALGRIND_VALGRIND_H
341 - #include <valgrind/valgrind.h>
342 -@@ -1152,11 +1155,13 @@ void reset_cached_pid(void) {
343 - cached_pid = CACHED_PID_UNSET;
344 - }
345 -
346 -+#ifdef __GLIBC__
347 - /* We use glibc __register_atfork() + __dso_handle directly here, as they are not included in the glibc
348 - * headers. __register_atfork() is mostly equivalent to pthread_atfork(), but doesn't require us to link against
349 - * libpthread, as it is part of glibc anyway. */
350 - extern int __register_atfork(void (*prepare) (void), void (*parent) (void), void (*child) (void), void *dso_handle);
351 - extern void* __dso_handle _weak_;
352 -+#endif
353 -
354 - pid_t getpid_cached(void) {
355 - static bool installed = false;
356 -@@ -1185,7 +1190,12 @@ pid_t getpid_cached(void) {
357 - * only half-documented (glibc doesn't document it but LSB does — though only superficially)
358 - * we'll check for errors only in the most generic fashion possible. */
359 -
360 -- if (__register_atfork(NULL, NULL, reset_cached_pid, __dso_handle) != 0) {
361 -+ #ifdef __GLIBC__
362 -+ if (__register_atfork(NULL, NULL, reset_cached_pid, __dso_handle) != 0) {
363 -+ #else
364 -+ if (pthread_atfork(NULL, NULL, reset_cached_pid) != 0) {
365 -+ #endif
366 -+
367 - /* OOM? Let's try again later */
368 - cached_pid = CACHED_PID_UNSET;
369 - return new_pid;
370 ---
371 -2.26.2
372 -
373
374 diff --git a/net-misc/networkmanager/files/1.28.0/0005-define-compare-for-non-glibc-users.patch b/net-misc/networkmanager/files/1.28.0/0005-define-compare-for-non-glibc-users.patch
375 deleted file mode 100644
376 index e2720d7..0000000
377 --- a/net-misc/networkmanager/files/1.28.0/0005-define-compare-for-non-glibc-users.patch
378 +++ /dev/null
379 @@ -1,30 +0,0 @@
380 -From 062717e43db51cad0528415f619300e8f5a282cf Mon Sep 17 00:00:00 2001
381 -From:
382 -Date: Thu, 11 Mar 2021 07:45:17 -0600
383 -Subject: [PATCH 5/6] define compare for non glibc users
384 -
385 ----
386 - shared/systemd/src/basic/sort-util.h | 7 +++++++
387 - 1 file changed, 7 insertions(+)
388 -
389 -diff --git a/shared/systemd/src/basic/sort-util.h b/shared/systemd/src/basic/sort-util.h
390 -index a8dc3bb..d619a54 100644
391 ---- a/shared/systemd/src/basic/sort-util.h
392 -+++ b/shared/systemd/src/basic/sort-util.h
393 -@@ -5,6 +5,13 @@
394 -
395 - #include "macro.h"
396 -
397 -+#ifndef __COMPAR_FN_T
398 -+# define __COMPAR_FN_T
399 -+typedef int (*__compar_fn_t) (const void *, const void *);
400 -+typedef __compar_fn_t comparison_fn_t;
401 -+typedef int (*__compar_d_fn_t) (const void *, const void *, void *);
402 -+#endif
403 -+
404 - void *xbsearch_r(const void *key, const void *base, size_t nmemb, size_t size,
405 - __compar_d_fn_t compar, void *arg);
406 -
407 ---
408 -2.26.2
409 -
410
411 diff --git a/net-misc/networkmanager/files/1.28.0/0006-musl-added-support-for-reallocarray-0-but-the-functi.patch b/net-misc/networkmanager/files/1.28.0/0006-musl-added-support-for-reallocarray-0-but-the-functi.patch
412 deleted file mode 100644
413 index 3c1a391..0000000
414 --- a/net-misc/networkmanager/files/1.28.0/0006-musl-added-support-for-reallocarray-0-but-the-functi.patch
415 +++ /dev/null
416 @@ -1,43 +0,0 @@
417 -From 94820f35e5559d610cd2a5bf967932d97df6fed9 Mon Sep 17 00:00:00 2001
418 -From: Jory Pratt <anarchy@g.o>
419 -Date: Thu, 11 Mar 2021 07:46:00 -0600
420 -Subject: [PATCH 6/6] musl [added support for reallocarray](0), but the
421 - function prototype is declared in `stdlib.h` instead of `malloc.h`.
422 -
423 -Update the check for reallocarray to check both in `malloc.h` and
424 -`stdlib.h`.
425 -
426 -[0]:https://git.musl-libc.org/cgit/musl/commit/?id=821083ac7b54eaa040d5a8ddc67c6206a175e0ca
427 ----
428 - configure | 2 +-
429 - configure.ac | 1 +
430 - 2 files changed, 2 insertions(+), 1 deletion(-)
431 -
432 -diff --git a/configure b/configure
433 -index ec42b54..8e87c92 100755
434 ---- a/configure
435 -+++ b/configure
436 -@@ -18250,7 +18250,7 @@ _ACEOF
437 -
438 - ac_fn_c_check_decl "$LINENO" "reallocarray" "ac_cv_have_decl_reallocarray" "
439 - #include <malloc.h>
440 --
441 -+#include <stdlib.h>
442 - "
443 - if test "x$ac_cv_have_decl_reallocarray" = xyes; then :
444 - ac_have_decl=1
445 -diff --git a/configure.ac b/configure.ac
446 -index 8483dd7..d32bd46 100644
447 ---- a/configure.ac
448 -+++ b/configure.ac
449 -@@ -83,6 +83,7 @@ AC_CHECK_DECLS([
450 - reallocarray],
451 - [], [], [[
452 - #include <malloc.h>
453 -+#include <stdlib.h>
454 - ]])
455 -
456 - AC_CHECK_DECLS([
457 ---
458 -2.26.2
459 -
460
461 diff --git a/net-misc/networkmanager/files/10-openrc-status-r4 b/net-misc/networkmanager/files/10-openrc-status-r4
462 deleted file mode 100644
463 index e195ccc..0000000
464 --- a/net-misc/networkmanager/files/10-openrc-status-r4
465 +++ /dev/null
466 @@ -1,35 +0,0 @@
467 -#!/bin/sh
468 -# Copyright (c) 2012 Alexandre Rostovtsev
469 -# Released under the 2-clause BSD license.
470 -
471 -# Ensures that the NetworkManager OpenRC service is marked as started and
472 -# providing net only when it has a successful connection.
473 -
474 -if [ ! -e "/run/openrc/softlevel" ]; then
475 - # OpenRC is not running
476 - exit 0
477 -fi
478 -
479 -# Ensure rc-service is in PATH
480 -PATH="${PATH}:@EPREFIX@/sbin:@EPREFIX@/usr/sbin"
481 -
482 -# Exit if the NetworkManager OpenRC service is not running
483 -rc-service NetworkManager status 2>&1 | grep -Eq "status: (starting|started|inactive|stopping)" || exit 0
484 -
485 -# Call rc-service in background mode so that the start/stop functions update
486 -# NetworkManager service status to started or inactive instead of actually
487 -# starting or stopping the daemon
488 -export IN_BACKGROUND=YES
489 -
490 -case "$2" in
491 - up) nm-online -t 0 -x &&
492 - ! rc-service NetworkManager status 2>&1 | grep -q started &&
493 - exec rc-service NetworkManager start ;;
494 - down) nm-online -t 0 -x ||
495 - rc-service NetworkManager status 2>&1 | grep -q stopped ||
496 - exec rc-service NetworkManager stop ;;
497 - pre-sleep) rc-service NetworkManager status 2>&1 | grep -q stopped ||
498 - exec rc-service NetworkManager stop ;;
499 -esac
500 -exit 0
501 -# vim: set ts=4:
502
503 diff --git a/net-misc/networkmanager/files/conf.d.NetworkManager b/net-misc/networkmanager/files/conf.d.NetworkManager
504 deleted file mode 100644
505 index 4a99229..0000000
506 --- a/net-misc/networkmanager/files/conf.d.NetworkManager
507 +++ /dev/null
508 @@ -1,4 +0,0 @@
509 -# If NetworkManager does not establish a connection within $INACTIVE_TIMEOUT
510 -# seconds after starting, the service will be marked as inactive, and it will
511 -# continue to wait for a connection in background mode.
512 -INACTIVE_TIMEOUT=1
513
514 diff --git a/net-misc/networkmanager/files/init.d.NetworkManager-r2 b/net-misc/networkmanager/files/init.d.NetworkManager-r2
515 deleted file mode 100644
516 index f7b95c0..0000000
517 --- a/net-misc/networkmanager/files/init.d.NetworkManager-r2
518 +++ /dev/null
519 @@ -1,62 +0,0 @@
520 -#!/sbin/openrc-run
521 -# Copyright (c) 2008 Saleem Abdulrasool <compnerd@××××××××.org>
522 -# Copyright 2013-2020 Gentoo Authors
523 -# Distributed under the terms of the GNU General Public License v2
524 -
525 -description="NetworkManager daemon. The service is marked as started only \
526 -when a network connection is established."
527 -
528 -depend() {
529 - need dbus
530 - use consolekit
531 - provide net
532 -}
533 -
534 -start_pre() {
535 - checkpath -q -d -m 0755 /run/NetworkManager
536 -}
537 -
538 -start() {
539 - # If we are re-called by a dispatcher event, we want to mark the service
540 - # as started without starting the daemon again
541 - yesno "${IN_BACKGROUND}" && return 0
542 -
543 - [ -z "${INACTIVE_TIMEOUT}" ] && INACTIVE_TIMEOUT="1"
544 -
545 - ebegin "Starting NetworkManager"
546 - start-stop-daemon --start --quiet --pidfile /run/NetworkManager/NetworkManager.pid \
547 - --exec /usr/sbin/NetworkManager -- --pid-file /run/NetworkManager/NetworkManager.pid
548 - local _retval=$?
549 - eend "${_retval}"
550 - if [ "x${_retval}" = 'x0' ] && ! nm-online -t "${INACTIVE_TIMEOUT}"; then
551 - einfo "Marking NetworkManager as inactive. It will automatically be marked"
552 - einfo "as started after a network connection has been established."
553 - mark_service_inactive
554 - fi
555 - return "${_retval}"
556 -}
557 -
558 -stop() {
559 - # If we are re-called by a dispatcher event, we want to mark the service
560 - # as inactive without stopping the daemon
561 - if yesno "${IN_BACKGROUND}"; then
562 - mark_service_inactive "${SVCNAME}"
563 - return 0
564 - fi
565 -
566 - ebegin "Stopping NetworkManager"
567 - local pidfile=/run/NetworkManager/NetworkManager.pid
568 - if [ ! -e "${pidfile}" ] && [ -e /var/run/NetworkManager.pid ]; then
569 - # Try stopping the pid file used by <0.9.7
570 - pidfile=/var/run/NetworkManager.pid
571 - start-stop-daemon --stop --quiet --pidfile "${pidfile}"
572 - ret=$?
573 - [ ${ret} = 0 ] && [ -e "${pidfile}" ] && rm "${pidfile}"
574 - eend ${ret}
575 - else
576 - start-stop-daemon --stop --quiet --pidfile "${pidfile}"
577 - eend $?
578 - fi
579 -}
580 -
581 -# vim: set ft=gentoo-init-d ts=4 :
582
583 diff --git a/net-misc/networkmanager/files/musl-basic.patch b/net-misc/networkmanager/files/musl-basic.patch
584 deleted file mode 100644
585 index 2e0d562..0000000
586 --- a/net-misc/networkmanager/files/musl-basic.patch
587 +++ /dev/null
588 @@ -1,46 +0,0 @@
589 -diff --git a/libnm-core/nm-json.c b/libnm-core/nm-json.c
590 -index aa181a4..98c39fc 100644
591 ---- a/libnm-core/nm-json.c
592 -+++ b/libnm-core/nm-json.c
593 -@@ -23,6 +23,10 @@
594 -
595 - #include <dlfcn.h>
596 -
597 -+#ifndef RTLD_DEEPBIND
598 -+#define RTLD_DEEPBIND 0
599 -+#endif
600 -+
601 - void *_nm_jansson_json_object_iter_value;
602 - void *_nm_jansson_json_object_key_to_iter;
603 - void *_nm_jansson_json_integer;
604 -diff --git a/shared/systemd/src/basic/stdio-util.h b/shared/systemd/src/basic/stdio-util.h
605 -index c3b9448..e80a938 100644
606 ---- a/shared/systemd/src/basic/stdio-util.h
607 -+++ b/shared/systemd/src/basic/stdio-util.h
608 -@@ -1,7 +1,9 @@
609 - /* SPDX-License-Identifier: LGPL-2.1+ */
610 - #pragma once
611 -
612 -+#if defined(__GLIBC__)
613 - #include <printf.h>
614 -+#endif
615 - #include <stdarg.h>
616 - #include <stdio.h>
617 - #include <sys/types.h>
618 -diff --git a/shared/systemd/src/basic/util.h b/shared/systemd/src/basic/util.h
619 -index 25e6ab8..7967e8a 100644
620 ---- a/shared/systemd/src/basic/util.h
621 -+++ b/shared/systemd/src/basic/util.h
622 -@@ -46,6 +46,12 @@ static inline unsigned u64log2(uint64_t n) {
623 - #endif
624 - }
625 -
626 -+#if !defined(__GLIBC__)
627 -+typedef int (*__compar_fn_t) (const void*, const void*);
628 -+typedef __compar_fn_t comparison_fn_t;
629 -+typedef int (*__compar_d_fn_t) (const void *, const void *, void *);
630 -+#endif
631 -+
632 - static inline unsigned u32ctz(uint32_t n) {
633 - #if __SIZEOF_INT__ == 4
634 - return n != 0 ? __builtin_ctz(n) : 32;
635
636 diff --git a/net-misc/networkmanager/files/musl-compar.patch b/net-misc/networkmanager/files/musl-compar.patch
637 deleted file mode 100644
638 index 1b1de2f..0000000
639 --- a/net-misc/networkmanager/files/musl-compar.patch
640 +++ /dev/null
641 @@ -1,18 +0,0 @@
642 -diff --git a/shared/systemd/src/basic/sort-util.h b/shared/systemd/src/basic/sort-util.h
643 -index e029f86..935f136 100644
644 ---- a/shared/systemd/src/basic/sort-util.h
645 -+++ b/shared/systemd/src/basic/sort-util.h
646 -@@ -5,6 +5,13 @@
647 -
648 - #include "macro.h"
649 -
650 -+#ifndef __COMPAR_FN_T
651 -+# define __COMPAR_FN_T
652 -+typedef int (*__compar_fn_t) (const void *, const void *);
653 -+typedef __compar_fn_t comparison_fn_t;
654 -+typedef int (*__compar_d_fn_t) (const void *, const void *, void *);
655 -+#endif
656 -+
657 - void *xbsearch_r(const void *key, const void *base, size_t nmemb, size_t size,
658 - __compar_d_fn_t compar, void *arg);
659 -
660
661 diff --git a/net-misc/networkmanager/files/musl-fix-includes.patch b/net-misc/networkmanager/files/musl-fix-includes.patch
662 deleted file mode 100644
663 index 98f8bc2..0000000
664 --- a/net-misc/networkmanager/files/musl-fix-includes.patch
665 +++ /dev/null
666 @@ -1,90 +0,0 @@
667 ---- a/src/NetworkManagerUtils.c 2020-07-17 20:05:45.382005791 +0200
668 -+++ b/src/NetworkManagerUtils.c 2020-07-17 20:05:39.721463542 +0200
669 -@@ -4,6 +4,7 @@
670 - * Copyright (C) 2005 - 2008 Novell, Inc.
671 - */
672 -
673 -+#include <netinet/if_ether.h>
674 - #include "nm-default.h"
675 -
676 - #include "NetworkManagerUtils.h"
677 -diff --git a/src/devices/nm-device.c b/src/devices/nm-device.c
678 -index e7a4a05..7578abf 100644
679 ---- a/src/devices/nm-device.c
680 -+++ b/src/devices/nm-device.c
681 -@@ -17,7 +17,11 @@
682 - #include <arpa/inet.h>
683 - #include <fcntl.h>
684 - #include <linux/if_addr.h>
685 -+#if defined(__GLIBC__)
686 - #include <linux/if_arp.h>
687 -+#else
688 -+#include <linux/if.h>
689 -+#endif
690 - #include <linux/rtnetlink.h>
691 - #include <linux/pkt_sched.h>
692 -
693 -diff --git a/src/nm-manager.c b/src/nm-manager.c
694 -index 132cf5a..0dd71dd 100644
695 ---- a/src/nm-manager.c
696 -+++ b/src/nm-manager.c
697 -@@ -15,6 +15,7 @@
698 - #include <sys/stat.h>
699 - #include <sys/sendfile.h>
700 - #include <limits.h>
701 -+#include <asm/types.h>
702 -
703 - #include "nm-glib-aux/nm-c-list.h"
704 -
705 -diff --git a/src/platform/nm-linux-platform.c b/src/platform/nm-linux-platform.c
706 -index 305ae52..10cfec6 100644
707 ---- a/src/platform/nm-linux-platform.c
708 -+++ b/src/platform/nm-linux-platform.c
709 -@@ -6,6 +6,7 @@
710 - #include "nm-default.h"
711 -
712 - #include "nm-linux-platform.h"
713 -+#include "wpan/nm-wpan-utils.h"
714 -
715 - #include <arpa/inet.h>
716 - #include <dlfcn.h>
717 -@@ -14,7 +15,11 @@
718 - #include <libudev.h>
719 - #include <linux/fib_rules.h>
720 - #include <linux/ip.h>
721 -+#if defined(__GLIBC__)
722 - #include <linux/if_arp.h>
723 -+#else
724 -+#include <linux/if.h>
725 -+#endif
726 - #include <linux/if_bridge.h>
727 - #include <linux/if_link.h>
728 - #include <linux/if_tun.h>
729 -diff --git a/src/systemd/src/libsystemd-network/sd-dhcp6-client.c b/src/systemd/src/libsystemd-network/sd-dhcp6-client.c
730 -index e1150f9..3cb8390 100644
731 ---- a/src/systemd/src/libsystemd-network/sd-dhcp6-client.c
732 -+++ b/src/systemd/src/libsystemd-network/sd-dhcp6-client.c
733 -@@ -7,7 +7,11 @@
734 -
735 - #include <errno.h>
736 - #include <sys/ioctl.h>
737 -+#if defined(__GLIBC__)
738 - #include <linux/if_arp.h>
739 -+#else
740 -+#include <linux/if.h>
741 -+#endif
742 - #include <linux/if_infiniband.h>
743 -
744 - #include "sd-dhcp6-client.h"
745 -diff --git a/src/devices/nm-device-bridge.c b/src/devices/nm-device-bridge.c
746 -index c93c6a5..66d2532 100644
747 ---- a/src/devices/nm-device-bridge.c
748 -+++ b/src/devices/nm-device-bridge.c
749 -@@ -15,6 +15,8 @@
750 - #include "nm-device-factory.h"
751 - #include "nm-core-internal.h"
752 -
753 -+#include <linux/if_ether.h>
754 -+
755 - #include "nm-device-logging.h"
756 - _LOG_DECLARE_SELF(NMDeviceBridge);
757
758 diff --git a/net-misc/networkmanager/files/musl-network-support.patch b/net-misc/networkmanager/files/musl-network-support.patch
759 deleted file mode 100644
760 index 36536df..0000000
761 --- a/net-misc/networkmanager/files/musl-network-support.patch
762 +++ /dev/null
763 @@ -1,42 +0,0 @@
764 ---- a/libnm-core/nm-utils.h
765 -+++ b/libnm-core/nm-utils.h
766 -@@ -30,7 +30,11 @@
767 - #include <netinet/in.h>
768 -
769 - /* For ETH_ALEN and INFINIBAND_ALEN */
770 -+#if defined(__GLIBC__)
771 - #include <linux/if_ether.h>
772 -+#else
773 -+#define ETH_ALEN 6 /* Octets in one ethernet addr */
774 -+#endif
775 - #include <linux/if_infiniband.h>
776 -
777 - #include "nm-core-enum-types.h"
778 ---- a/src/platform/wifi/nm-wifi-utils.h
779 -+++ b/src/platform/wifi/nm-wifi-utils.h
780 -@@ -22,7 +22,11 @@
781 - #ifndef __WIFI_UTILS_H__
782 - #define __WIFI_UTILS_H__
783 -
784 -+#if defined(__GLIBC__)
785 - #include <net/ethernet.h>
786 -+#else /* musl libc */
787 -+#define ETH_ALEN 6 /* Octets in one ethernet addr */
788 -+#endif
789 -
790 - #include "nm-dbus-interface.h"
791 -
792 ---- a/shared/systemd/src/basic/socket-util.h 2019-03-16 15:41:33.287235649 +0100
793 -+++ b/shared/systemd/src/basic/socket-util.h 2019-03-16 15:42:24.273912106 +0100
794 -@@ -12,6 +12,11 @@
795 - #include <sys/socket.h>
796 - #include <sys/types.h>
797 - #include <sys/un.h>
798 -+#if !defined(__GLIBC__)
799 -+/* SIOCGSTAMPNS from linux/asm-generic.h
800 -+ * for src/systemd/src/libsystemd-network/sd-lldp.c */
801 -+#include <linux/sockios.h>
802 -+#endif
803 -
804 - #include "macro.h"
805 - #include "missing_socket.h"
806
807 diff --git a/net-misc/networkmanager/files/musl-no-drand.patch b/net-misc/networkmanager/files/musl-no-drand.patch
808 deleted file mode 100644
809 index 46e3a79..0000000
810 --- a/net-misc/networkmanager/files/musl-no-drand.patch
811 +++ /dev/null
812 @@ -1,58 +0,0 @@
813 -From ec471e66ee14d7da06d4d0a22bc3cdb5f615fd6f Mon Sep 17 00:00:00 2001
814 -From: Enno Boland <g@×××.de>
815 -Date: Wed, 7 Aug 2019 16:51:16 +0200
816 -Subject: [PATCH] use jrand48 instead of mrand48_r on non glibc platforms
817 -
818 ----
819 - shared/n-dhcp4/src/n-dhcp4-c-probe.c | 8 ++++++++
820 - shared/n-dhcp4/src/n-dhcp4-private.h | 4 ++++
821 - 2 files changed, 12 insertions(+)
822 -
823 -diff --git a/shared/n-dhcp4/src/n-dhcp4-c-probe.c b/shared/n-dhcp4/src/n-dhcp4-c-probe.c
824 -index 308cff8307..9463528b1f 100644
825 ---- a/shared/n-dhcp4/src/n-dhcp4-c-probe.c
826 -+++ b/shared/n-dhcp4/src/n-dhcp4-c-probe.c
827 -@@ -362,8 +362,12 @@ static void n_dhcp4_client_probe_config_initialize_random_seed(NDhcp4ClientProbe
828 - seed16v[1] = (u64 >> 16) ^ (u64 >> 0);
829 - seed16v[2] = (u64 >> 32) ^ (u64 >> 16);
830 -
831 -+#ifdef __GLIBC__
832 - r = seed48_r(seed16v, &config->entropy);
833 - c_assert(!r);
834 -+#else
835 -+ memcpy(config->entropy, seed16v, sizeof seed16v);
836 -+#endif
837 - }
838 -
839 - /**
840 -@@ -377,10 +381,14 @@ static void n_dhcp4_client_probe_config_initialize_random_seed(NDhcp4ClientProbe
841 - */
842 - uint32_t n_dhcp4_client_probe_config_get_random(NDhcp4ClientProbeConfig *config) {
843 - long int result;
844 -+#ifdef __GLIBC__
845 - int r;
846 -
847 - r = mrand48_r(&config->entropy, &result);
848 - c_assert(!r);
849 -+#else
850 -+ result = jrand48(config->entropy);
851 -+#endif
852 -
853 - return result;
854 - };
855 -diff --git a/shared/n-dhcp4/src/n-dhcp4-private.h b/shared/n-dhcp4/src/n-dhcp4-private.h
856 -index c38ddbfc80..fb48807712 100644
857 ---- a/shared/n-dhcp4/src/n-dhcp4-private.h
858 -+++ b/shared/n-dhcp4/src/n-dhcp4-private.h
859 -@@ -259,7 +259,11 @@ struct NDhcp4ClientProbeConfig {
860 - bool inform_only;
861 - bool init_reboot;
862 - struct in_addr requested_ip;
863 -+#ifdef __GLIBC__
864 - struct drand48_data entropy; /* entropy pool */
865 -+#else
866 -+ unsigned short entropy[3]; /* entropy pool */
867 -+#endif
868 - uint64_t ms_start_delay; /* max ms to wait before starting probe */
869 - NDhcp4ClientProbeOption *options[UINT8_MAX + 1];
870 - int8_t request_parameters[UINT8_MAX + 1];
871
872 diff --git a/net-misc/networkmanager/files/musl-process-util.patch b/net-misc/networkmanager/files/musl-process-util.patch
873 deleted file mode 100644
874 index 0eb0057..0000000
875 --- a/net-misc/networkmanager/files/musl-process-util.patch
876 +++ /dev/null
877 @@ -1,40 +0,0 @@
878 ---- a/shared/systemd/src/basic/process-util.c
879 -+++ b/shared/systemd/src/basic/process-util.c
880 -@@ -21,6 +21,9 @@
881 - #include <sys/wait.h>
882 - #include <syslog.h>
883 - #include <unistd.h>
884 -+#ifndef __GLIBC__
885 -+#include <pthread.h>
886 -+#endif
887 - #if 0 /* NM_IGNORED */
888 - #if HAVE_VALGRIND_VALGRIND_H
889 - #include <valgrind/valgrind.h>
890 -@@ -1168,11 +1171,13 @@ void reset_cached_pid(void) {
891 - cached_pid = CACHED_PID_UNSET;
892 - }
893 -
894 -+#ifdef __GLIBC__
895 - /* We use glibc __register_atfork() + __dso_handle directly here, as they are not included in the glibc
896 - * headers. __register_atfork() is mostly equivalent to pthread_atfork(), but doesn't require us to link against
897 - * libpthread, as it is part of glibc anyway. */
898 - extern int __register_atfork(void (*prepare) (void), void (*parent) (void), void (*child) (void), void *dso_handle);
899 - extern void* __dso_handle _weak_;
900 -+#endif
901 -
902 - pid_t getpid_cached(void) {
903 - static bool installed = false;
904 -@@ -1201,7 +1206,12 @@ pid_t getpid_cached(void) {
905 - * only half-documented (glibc doesn't document it but LSB does — though only superficially)
906 - * we'll check for errors only in the most generic fashion possible. */
907 -
908 -- if (__register_atfork(NULL, NULL, reset_cached_pid, __dso_handle) != 0) {
909 -+ #ifdef __GLIBC__
910 -+ if (__register_atfork(NULL, NULL, reset_cached_pid, __dso_handle) != 0) {
911 -+ #else
912 -+ if (pthread_atfork(NULL, NULL, reset_cached_pid) != 0) {
913 -+ #endif
914 -+
915 - /* OOM? Let's try again later */
916 - cached_pid = CACHED_PID_UNSET;
917 - return new_pid;
918
919 diff --git a/net-misc/networkmanager/files/networkmanager-1.26.4-iwd-fixes-pr640.patch b/net-misc/networkmanager/files/networkmanager-1.26.4-iwd-fixes-pr640.patch
920 deleted file mode 100644
921 index b3b6375..0000000
922 --- a/net-misc/networkmanager/files/networkmanager-1.26.4-iwd-fixes-pr640.patch
923 +++ /dev/null
924 @@ -1,169 +0,0 @@
925 -Backport of https://gitlab.freedesktop.org/NetworkManager/NetworkManager/-/merge_requests/640
926 -
927 ---- a/src/devices/wifi/nm-device-iwd.c
928 -+++ b/src/devices/wifi/nm-device-iwd.c
929 -@@ -1905,38 +1905,39 @@ schedule_periodic_scan (NMDeviceIwd *self, gboolean initial_scan)
930 - {
931 - NMDeviceIwdPrivate *priv = NM_DEVICE_IWD_GET_PRIVATE (self);
932 - GVariant *value;
933 -- gboolean disconnected;
934 -+ gboolean disconnected = TRUE;
935 - guint interval;
936 -
937 -- if (!priv->can_scan || priv->scan_requested)
938 -- return;
939 --
940 -- value = g_dbus_proxy_get_cached_property (priv->dbus_station_proxy, "State");
941 -- disconnected = nm_streq0 (get_variant_state (value), "disconnected");
942 -- g_variant_unref (value);
943 -+ if (priv->can_scan) {
944 -+ value = g_dbus_proxy_get_cached_property (priv->dbus_station_proxy, "State");
945 -+ disconnected = nm_streq0 (get_variant_state (value), "disconnected");
946 -+ g_variant_unref (value);
947 -+ }
948 -
949 - /* Start scan immediately after a disconnect, mode change or
950 -- * device UP, otherwise wait a period dependent on the current
951 -- * state.
952 -+ * device UP, otherwise wait 10 seconds. When connected, update
953 -+ * AP list mainly on UI requests.
954 - *
955 - * (initial_scan && disconnected) override priv->scanning below
956 - * because of an IWD quirk where a device will often be in the
957 - * autoconnect state and scanning at the time of our initial_scan,
958 -- * but our logic will the send it a Disconnect() causeing IWD to
959 -+ * but our logic will then send it a Disconnect() causing IWD to
960 - * exit autoconnect and interrupt the ongoing scan, meaning that
961 - * we still want a new scan ASAP.
962 - */
963 -- if (initial_scan && disconnected)
964 -+ if (!priv->can_scan || !disconnected || priv->scan_requested || priv->scanning)
965 -+ interval = -1;
966 -+ else if (initial_scan)
967 - interval = 0;
968 -- else if (!priv->periodic_scan_id && !priv->scanning)
969 -- interval = disconnected ? 10 : 20;
970 -+ else if (!priv->periodic_scan_id)
971 -+ interval = 10;
972 - else
973 - return;
974 -
975 - nm_clear_g_source (&priv->periodic_scan_id);
976 -- priv->periodic_scan_id = g_timeout_add_seconds (interval,
977 -- periodic_scan_timeout_cb,
978 -- self);
979 -+
980 -+ if (interval != (guint) -1)
981 -+ priv->periodic_scan_id = g_timeout_add_seconds (interval, periodic_scan_timeout_cb, self);
982 - }
983 -
984 - static void
985 -@@ -2331,7 +2332,6 @@ powered_changed (NMDeviceIwd *self, gboolean new_powered)
986 - update_aps (self);
987 - } else {
988 - set_can_scan (self, FALSE);
989 -- nm_clear_g_source (&priv->periodic_scan_id);
990 - priv->scanning = FALSE;
991 - priv->scan_requested = FALSE;
992 - priv->can_connect = FALSE;
993 -@@ -2537,17 +2537,7 @@ dispose (GObject *object)
994 -
995 - nm_clear_g_cancellable (&priv->cancellable);
996 -
997 -- nm_clear_g_source (&priv->periodic_scan_id);
998 --
999 -- cleanup_association_attempt (self, TRUE);
1000 --
1001 -- g_clear_object (&priv->dbus_device_proxy);
1002 -- g_clear_object (&priv->dbus_station_proxy);
1003 -- g_clear_object (&priv->dbus_ap_proxy);
1004 -- g_clear_object (&priv->dbus_adhoc_proxy);
1005 -- g_clear_object (&priv->dbus_obj);
1006 --
1007 -- remove_all_aps (self);
1008 -+ nm_device_iwd_set_dbus_object(self, NULL);
1009 -
1010 - G_OBJECT_CLASS (nm_device_iwd_parent_class)->dispose (object);
1011 -
1012 ---- a/src/devices/wifi/nm-iwd-manager.c
1013 -+++ b/src/devices/wifi/nm-iwd-manager.c
1014 -@@ -622,6 +622,38 @@ interface_removed (GDBusObjectManager *object_manager, GDBusObject *object,
1015 - }
1016 - }
1017 -
1018 -+static void
1019 -+object_added(GDBusObjectManager *object_manager, GDBusObject *object, gpointer user_data)
1020 -+{
1021 -+ GList *interfaces, *iter;
1022 -+
1023 -+ interfaces = g_dbus_object_get_interfaces(object);
1024 -+
1025 -+ for (iter = interfaces; iter; iter = iter->next) {
1026 -+ GDBusInterface *interface = G_DBUS_INTERFACE(iter->data);
1027 -+
1028 -+ interface_added(NULL, object, interface, user_data);
1029 -+ }
1030 -+
1031 -+ g_list_free_full(interfaces, g_object_unref);
1032 -+}
1033 -+
1034 -+static void
1035 -+object_removed(GDBusObjectManager *object_manager, GDBusObject *object, gpointer user_data)
1036 -+{
1037 -+ GList *interfaces, *iter;
1038 -+
1039 -+ interfaces = g_dbus_object_get_interfaces(object);
1040 -+
1041 -+ for (iter = interfaces; iter; iter = iter->next) {
1042 -+ GDBusInterface *interface = G_DBUS_INTERFACE(iter->data);
1043 -+
1044 -+ interface_removed(NULL, object, interface, user_data);
1045 -+ }
1046 -+
1047 -+ g_list_free_full(interfaces, g_object_unref);
1048 -+}
1049 -+
1050 - static void
1051 - connection_removed (NMSettings *settings,
1052 - NMSettingsConnection *sett_conn,
1053 -@@ -682,22 +714,6 @@ _om_has_name_owner (GDBusObjectManager *object_manager)
1054 - return !!name_owner;
1055 - }
1056 -
1057 --static void
1058 --object_added (NMIwdManager *self, GDBusObject *object)
1059 --{
1060 -- GList *interfaces, *iter;
1061 --
1062 -- interfaces = g_dbus_object_get_interfaces (object);
1063 --
1064 -- for (iter = interfaces; iter; iter = iter->next) {
1065 -- GDBusInterface *interface = G_DBUS_INTERFACE (iter->data);
1066 --
1067 -- interface_added (NULL, object, interface, self);
1068 -- }
1069 --
1070 -- g_list_free_full (interfaces, g_object_unref);
1071 --}
1072 --
1073 - static void
1074 - release_object_manager (NMIwdManager *self)
1075 - {
1076 -@@ -836,12 +852,16 @@ got_object_manager (GObject *object, GAsyncResult *result, gpointer user_data)
1077 - G_CALLBACK (interface_added), self);
1078 - g_signal_connect (priv->object_manager, "interface-removed",
1079 - G_CALLBACK (interface_removed), self);
1080 -+ g_signal_connect (priv->object_manager, "object-added",
1081 -+ G_CALLBACK(object_added), self);
1082 -+ g_signal_connect (priv->object_manager, "object-removed",
1083 -+ G_CALLBACK(object_removed), self);
1084 -
1085 - g_hash_table_remove_all (priv->known_networks);
1086 -
1087 - objects = g_dbus_object_manager_get_objects (object_manager);
1088 - for (iter = objects; iter; iter = iter->next)
1089 -- object_added (self, G_DBUS_OBJECT (iter->data));
1090 -+ object_added (NULL, G_DBUS_OBJECT(iter->data), self);
1091 -
1092 - g_list_free_full (objects, g_object_unref);
1093 -
1094
1095 diff --git a/net-misc/networkmanager/files/networkmanager-1.28.0-dhcpcd9.patch b/net-misc/networkmanager/files/networkmanager-1.28.0-dhcpcd9.patch
1096 deleted file mode 100644
1097 index cfa642d..0000000
1098 --- a/net-misc/networkmanager/files/networkmanager-1.28.0-dhcpcd9.patch
1099 +++ /dev/null
1100 @@ -1,265 +0,0 @@
1101 -From a58a89213bf4d0cefb155fef1ec9425f7a6ca5c8 Mon Sep 17 00:00:00 2001
1102 -From: Roy Marples <roy@×××××××.name>
1103 -Date: Tue, 19 Jan 2021 05:04:31 +0000
1104 -Subject: [PATCH] DHCP: Support dhcpcd-9.x
1105 -
1106 -This locks NM into dhcpcd-9.3.3 as that is the first version to support
1107 -the --noconfigure option. Older versions are no longer supported by NM
1108 -because they do modify the host which is undesirable.
1109 -
1110 -Due to the way dhcpcd-9 uses privilege separation and that it re-parents
1111 -itself to PID 1, the main process cannot be reaped or waited for.
1112 -So we rely on dhcpcd correctly cleaning up after itself.
1113 -A new function nm_dhcp_client_stop_watch_child() has been added
1114 -so that dhcpcd can perform similar cleanup to the equivalent stop call.
1115 -
1116 -As part of this change, the STOP and STOPPED reasons are mapped to
1117 -NM_DHCP_STATE_DONE and PREINIT is mapped to a new state NM_DHCP_STATE_NOOP
1118 -which means NM should just ignore this state.
1119 -
1120 -https://gitlab.freedesktop.org/NetworkManager/NetworkManager/-/merge_requests/668
1121 ----
1122 - NEWS | 3 ++
1123 - src/dhcp/nm-dhcp-client.c | 20 +++++++++-
1124 - src/dhcp/nm-dhcp-client.h | 3 ++
1125 - src/dhcp/nm-dhcp-dhcpcd.c | 82 ++++++++++++++++++++-------------------
1126 - 4 files changed, 67 insertions(+), 41 deletions(-)
1127 -
1128 -diff --git a/NEWS b/NEWS
1129 -index 8a48587e5..958bbe91c 100644
1130 ---- a/NEWS
1131 -+++ b/NEWS
1132 -@@ -45,6 +45,9 @@ USE AT YOUR OWN RISK. NOT RECOMMENDED FOR PRODUCTION USE!
1133 - cmdline argument actually generates a connection which disables both
1134 - ipv4 and ipv6. Previously the generated connection would disable ipv4
1135 - but ipv6 would be set to the 'auto' method.
1136 -+* The dhcpcd plugin now requires a minimum version of dhcpcd-9.3.3 with
1137 -+ the --noconfigure option. Using an older version will cause dhcpcd to
1138 -+ exit with a status code of 1.
1139 -
1140 - =============================================
1141 - NetworkManager-1.26
1142 -diff --git a/src/dhcp/nm-dhcp-client.c b/src/dhcp/nm-dhcp-client.c
1143 -index 46ab48959..56f599abf 100644
1144 ---- a/src/dhcp/nm-dhcp-client.c
1145 -+++ b/src/dhcp/nm-dhcp-client.c
1146 -@@ -367,10 +367,13 @@ reason_to_state(NMDhcpClient *self, const char *iface, const char *reason)
1147 - else if (g_ascii_strcasecmp(reason, "nak") == 0 || g_ascii_strcasecmp(reason, "expire") == 0
1148 - || g_ascii_strcasecmp(reason, "expire6") == 0)
1149 - return NM_DHCP_STATE_EXPIRE;
1150 -- else if (g_ascii_strcasecmp(reason, "end") == 0)
1151 -+ else if (g_ascii_strcasecmp(reason, "end") == 0 || g_ascii_strcasecmp(reason, "stop") == 0
1152 -+ || g_ascii_strcasecmp(reason, "stopped") == 0)
1153 - return NM_DHCP_STATE_DONE;
1154 - else if (g_ascii_strcasecmp(reason, "fail") == 0 || g_ascii_strcasecmp(reason, "abend") == 0)
1155 - return NM_DHCP_STATE_FAIL;
1156 -+ else if (g_ascii_strcasecmp(reason, "preinit") == 0)
1157 -+ return NM_DHCP_STATE_NOOP;
1158 -
1159 - _LOGD("unmapped DHCP state '%s'", reason);
1160 - return NM_DHCP_STATE_UNKNOWN;
1161 -@@ -547,6 +550,18 @@ nm_dhcp_client_watch_child(NMDhcpClient *self, pid_t pid)
1162 - priv->watch_id = g_child_watch_add(pid, daemon_watch_cb, self);
1163 - }
1164 -
1165 -+void
1166 -+nm_dhcp_client_stop_watch_child(NMDhcpClient *self, pid_t pid)
1167 -+{
1168 -+ NMDhcpClientPrivate *priv = NM_DHCP_CLIENT_GET_PRIVATE(self);
1169 -+
1170 -+ g_return_if_fail(priv->pid == pid);
1171 -+ priv->pid = -1;
1172 -+
1173 -+ watch_cleanup(self);
1174 -+ timeout_cleanup(self);
1175 -+}
1176 -+
1177 - gboolean
1178 - nm_dhcp_client_start_ip4(NMDhcpClient *self,
1179 - GBytes * client_id,
1180 -@@ -874,6 +889,9 @@ nm_dhcp_client_handle_event(gpointer unused,
1181 - state_to_string(new_state),
1182 - reason);
1183 -
1184 -+ if (new_state == NM_DHCP_STATE_NOOP)
1185 -+ return TRUE;
1186 -+
1187 - if (NM_IN_SET(new_state, NM_DHCP_STATE_BOUND, NM_DHCP_STATE_EXTENDED)) {
1188 - GVariantIter iter;
1189 - const char * name;
1190 -diff --git a/src/dhcp/nm-dhcp-client.h b/src/dhcp/nm-dhcp-client.h
1191 -index 05faa9ea5..46446849a 100644
1192 ---- a/src/dhcp/nm-dhcp-client.h
1193 -+++ b/src/dhcp/nm-dhcp-client.h
1194 -@@ -55,6 +55,7 @@ typedef enum {
1195 - NM_DHCP_STATE_EXPIRE, /* lease expired or NAKed */
1196 - NM_DHCP_STATE_FAIL, /* failed for some reason */
1197 - NM_DHCP_STATE_TERMINATED, /* client is no longer running */
1198 -+ NM_DHCP_STATE_NOOP, /* state is a non operation for NetworkManager */
1199 - __NM_DHCP_STATE_MAX,
1200 - NM_DHCP_STATE_MAX = __NM_DHCP_STATE_MAX - 1,
1201 - } NMDhcpState;
1202 -@@ -183,6 +184,8 @@ void nm_dhcp_client_start_timeout(NMDhcpClient *self);
1203 -
1204 - void nm_dhcp_client_watch_child(NMDhcpClient *self, pid_t pid);
1205 -
1206 -+void nm_dhcp_client_stop_watch_child(NMDhcpClient *self, pid_t pid);
1207 -+
1208 - void nm_dhcp_client_set_state(NMDhcpClient *self,
1209 - NMDhcpState new_state,
1210 - NMIPConfig * ip_config,
1211 -diff --git a/src/dhcp/nm-dhcp-dhcpcd.c b/src/dhcp/nm-dhcp-dhcpcd.c
1212 -index b2b5d28bd..7cb003859 100644
1213 ---- a/src/dhcp/nm-dhcp-dhcpcd.c
1214 -+++ b/src/dhcp/nm-dhcp-dhcpcd.c
1215 -@@ -1,6 +1,6 @@
1216 - /* SPDX-License-Identifier: GPL-2.0+ */
1217 - /*
1218 -- * Copyright (C) 2008 Roy Marples
1219 -+ * Copyright (C) 2008,2020 Roy Marples <roy@×××××××.name>
1220 - * Copyright (C) 2010 Dan Williams <dcbw@××××××.com>
1221 - */
1222 -
1223 -@@ -40,7 +40,6 @@ static GType nm_dhcp_dhcpcd_get_type(void);
1224 - /*****************************************************************************/
1225 -
1226 - typedef struct {
1227 -- char * pid_file;
1228 - NMDhcpListener *dhcp_listener;
1229 - } NMDhcpDhcpcdPrivate;
1230 -
1231 -@@ -71,39 +70,37 @@ ip4_start(NMDhcpClient *client,
1232 - const char * last_ip4_address,
1233 - GError ** error)
1234 - {
1235 -- NMDhcpDhcpcd * self = NM_DHCP_DHCPCD(client);
1236 -- NMDhcpDhcpcdPrivate *priv = NM_DHCP_DHCPCD_GET_PRIVATE(self);
1237 -- gs_unref_ptrarray GPtrArray *argv = NULL;
1238 -- pid_t pid = -1;
1239 -- GError * local = NULL;
1240 -- gs_free char * cmd_str = NULL;
1241 -- gs_free char * binary_name = NULL;
1242 -+ NMDhcpDhcpcd * self = NM_DHCP_DHCPCD(client);
1243 -+ gs_unref_ptrarray GPtrArray *argv = NULL;
1244 -+ pid_t pid;
1245 -+ GError * local;
1246 -+ gs_free char * cmd_str = NULL;
1247 - const char * iface;
1248 - const char * dhcpcd_path;
1249 - const char * hostname;
1250 -
1251 -- g_return_val_if_fail(priv->pid_file == NULL, FALSE);
1252 -+ pid = nm_dhcp_client_get_pid(client);
1253 -+ g_return_val_if_fail(pid == -1, FALSE);
1254 -
1255 - iface = nm_dhcp_client_get_iface(client);
1256 -
1257 -- /* dhcpcd does not allow custom pidfiles; the pidfile is always
1258 -- * RUNSTATEDIR "dhcpcd-<ifname>.pid".
1259 -- */
1260 -- priv->pid_file = g_strdup_printf(RUNSTATEDIR "/dhcpcd-%s.pid", iface);
1261 --
1262 - dhcpcd_path = nm_dhcp_dhcpcd_get_path();
1263 - if (!dhcpcd_path) {
1264 - nm_utils_error_set_literal(error, NM_UTILS_ERROR_UNKNOWN, "dhcpcd binary not found");
1265 - return FALSE;
1266 - }
1267 -
1268 -- /* Kill any existing dhcpcd from the pidfile */
1269 -- binary_name = g_path_get_basename(dhcpcd_path);
1270 -- nm_dhcp_client_stop_existing(priv->pid_file, binary_name);
1271 --
1272 - argv = g_ptr_array_new();
1273 - g_ptr_array_add(argv, (gpointer) dhcpcd_path);
1274 -
1275 -+ /* Don't configure anything, we will do that instead.
1276 -+ * This requires dhcpcd-9.3.3 or newer.
1277 -+ * Older versions only had an option not to install a default route,
1278 -+ * dhcpcd still added addresses and other routes so we no longer support that
1279 -+ * as it doesn't fit how NetworkManager wants to work.
1280 -+ */
1281 -+ g_ptr_array_add(argv, (gpointer) "--noconfigure");
1282 -+
1283 - g_ptr_array_add(argv, (gpointer) "-B"); /* Don't background on lease (disable fork()) */
1284 -
1285 - g_ptr_array_add(argv, (gpointer) "-K"); /* Disable built-in carrier detection */
1286 -@@ -113,8 +110,6 @@ ip4_start(NMDhcpClient *client,
1287 - /* --noarp. Don't request or claim the address by ARP; this also disables IPv4LL. */
1288 - g_ptr_array_add(argv, (gpointer) "-A");
1289 -
1290 -- g_ptr_array_add(argv, (gpointer) "-G"); /* Let NM handle routing */
1291 --
1292 - g_ptr_array_add(argv, (gpointer) "-c"); /* Set script file */
1293 - g_ptr_array_add(argv, (gpointer) nm_dhcp_helper_path);
1294 -
1295 -@@ -146,8 +141,8 @@ ip4_start(NMDhcpClient *client,
1296 - if (!g_spawn_async(NULL,
1297 - (char **) argv->pdata,
1298 - NULL,
1299 -- G_SPAWN_DO_NOT_REAP_CHILD | G_SPAWN_STDOUT_TO_DEV_NULL
1300 -- | G_SPAWN_STDERR_TO_DEV_NULL,
1301 -+ G_SPAWN_STDOUT_TO_DEV_NULL | G_SPAWN_STDERR_TO_DEV_NULL
1302 -+ | G_SPAWN_DO_NOT_REAP_CHILD,
1303 - nm_utils_setpgid,
1304 - NULL,
1305 - &pid,
1306 -@@ -169,23 +164,32 @@ ip4_start(NMDhcpClient *client,
1307 - static void
1308 - stop(NMDhcpClient *client, gboolean release)
1309 - {
1310 -- NMDhcpDhcpcd * self = NM_DHCP_DHCPCD(client);
1311 -- NMDhcpDhcpcdPrivate *priv = NM_DHCP_DHCPCD_GET_PRIVATE(self);
1312 -- int errsv;
1313 --
1314 -- NM_DHCP_CLIENT_CLASS(nm_dhcp_dhcpcd_parent_class)->stop(client, release);
1315 --
1316 -- if (priv->pid_file) {
1317 -- if (remove(priv->pid_file) == -1) {
1318 -- errsv = errno;
1319 -- _LOGD("could not remove dhcp pid file \"%s\": %d (%s)",
1320 -- priv->pid_file,
1321 -- errsv,
1322 -- nm_strerror_native(errsv));
1323 -- }
1324 -+ NMDhcpDhcpcd *self = NM_DHCP_DHCPCD(client);
1325 -+ pid_t pid;
1326 -+ int sig, errsv;
1327 -+
1328 -+ pid = nm_dhcp_client_get_pid(client);
1329 -+ sig = release ? SIGALRM : SIGTERM;
1330 -+ _LOGD("sending %s to dhcpcd pid %d", sig == SIGALRM ? "SIGALRM" : "SIGTERM", pid);
1331 -+
1332 -+ /* dhcpcd-9.x features privilege separation.
1333 -+ * It's not our job to track all these processes so we rely on dhcpcd
1334 -+ * to always cleanup after itself.
1335 -+ * Because it also re-parents itself to PID 1, the process cannot be
1336 -+ * reaped or waited for.
1337 -+ * As such, just send the correct signal.
1338 -+ */
1339 -+ if (kill(pid, sig) == -1) {
1340 -+ errsv = errno;
1341 -+ _LOGE("failed to kill dhcpcd %d:%s", errsv, strerror(errsv));
1342 - }
1343 -
1344 -- /* FIXME: implement release... */
1345 -+ /* When this function exits NM expects the PID to be -1.
1346 -+ * This means we also need to stop watching the pid.
1347 -+ * If we need to know the exit status then we need to refactor NM
1348 -+ * to allow a non -1 to mean we're waiting to exit still.
1349 -+ */
1350 -+ nm_dhcp_client_stop_watch_child(client, pid);
1351 - }
1352 -
1353 - /*****************************************************************************/
1354 -@@ -214,8 +218,6 @@ dispose(GObject *object)
1355 - g_clear_object(&priv->dhcp_listener);
1356 - }
1357 -
1358 -- nm_clear_g_free(&priv->pid_file);
1359 --
1360 - G_OBJECT_CLASS(nm_dhcp_dhcpcd_parent_class)->dispose(object);
1361 - }
1362 -
1363 ---
1364 -2.30.0
1365 -
1366
1367 diff --git a/net-misc/networkmanager/files/reallocarray-1.patch b/net-misc/networkmanager/files/reallocarray-1.patch
1368 deleted file mode 100644
1369 index 2cc703f..0000000
1370 --- a/net-misc/networkmanager/files/reallocarray-1.patch
1371 +++ /dev/null
1372 @@ -1,43 +0,0 @@
1373 -From 6f6c844ab880d5535a05dd341643a28f7afeb6ec Mon Sep 17 00:00:00 2001
1374 -From: Jory Pratt <anarchy@g.o>
1375 -Date: Wed, 3 Feb 2021 09:58:22 -0600
1376 -Subject: [PATCH] musl [added support for reallocarray](0), but the function
1377 - prototype is declared in `stdlib.h` instead of `malloc.h`.
1378 -
1379 -Update the check for reallocarray to check both in `malloc.h` and
1380 -`stdlib.h`.
1381 -
1382 -[0]:https://git.musl-libc.org/cgit/musl/commit/?id=821083ac7b54eaa040d5a8ddc67c6206a175e0ca
1383 ----
1384 - configure | 2 +-
1385 - configure.ac | 1 +
1386 - 2 files changed, 2 insertions(+), 1 deletion(-)
1387 -
1388 -diff --git a/configure b/configure
1389 -index 40eed6c..4d12779 100755
1390 ---- a/configure
1391 -+++ b/configure
1392 -@@ -18252,7 +18252,7 @@ _ACEOF
1393 -
1394 - ac_fn_c_check_decl "$LINENO" "reallocarray" "ac_cv_have_decl_reallocarray" "
1395 - #include <malloc.h>
1396 --
1397 -+#include <stdlib.h>
1398 - "
1399 - if test "x$ac_cv_have_decl_reallocarray" = xyes; then :
1400 - ac_have_decl=1
1401 -diff --git a/configure.ac b/configure.ac
1402 -index 0d448f3..bfc1972 100644
1403 ---- a/configure.ac
1404 -+++ b/configure.ac
1405 -@@ -83,6 +83,7 @@ AC_CHECK_DECLS([
1406 - reallocarray],
1407 - [], [], [[
1408 - #include <malloc.h>
1409 -+#include <stdlib.h>
1410 - ]])
1411 -
1412 - AC_CHECK_DECLS([
1413 ---
1414 -2.26.2
1415 -
1416
1417 diff --git a/net-misc/networkmanager/metadata.xml b/net-misc/networkmanager/metadata.xml
1418 deleted file mode 100644
1419 index 855614f..0000000
1420 --- a/net-misc/networkmanager/metadata.xml
1421 +++ /dev/null
1422 @@ -1,37 +0,0 @@
1423 -<?xml version="1.0" encoding="UTF-8"?>
1424 -<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
1425 -<pkgmetadata>
1426 - <maintainer type="project">
1427 - <email>gnome@g.o</email>
1428 - <name>Gentoo GNOME Desktop</name>
1429 - </maintainer>
1430 - <use>
1431 - <flag name="connection-sharing">Use <pkg>net-dns/dnsmasq</pkg> and
1432 - <pkg>net-firewall/iptables</pkg> for connection sharing</flag>
1433 - <flag name="dhclient">Use dhclient from <pkg>net-misc/dhcp</pkg> for
1434 - getting ip</flag>
1435 - <flag name="dhcpcd">Use <pkg>net-misc/dhcpcd</pkg> for getting ip</flag>
1436 - <flag name="elogind">Use <pkg>sys-auth/elogind</pkg> for session tracking</flag>
1437 - <flag name="iwd">Use <pkg>net-wireless/iwd</pkg> instead of
1438 - <pkg>net-wireless/wpa_supplicant</pkg> for wifi support by default</flag>
1439 - <flag name="json">Enable JSON validation via <pkg>dev-libs/jansson</pkg>
1440 - in libnm.</flag>
1441 - <flag name="modemmanager">Enable support for mobile broadband devices
1442 - using <pkg>net-misc/modemmanager</pkg></flag>
1443 - <flag name="nss">Use <pkg>dev-libs/nss</pkg> for cryptography</flag>
1444 - <flag name="ofono">Use <pkg>net-misc/ofono</pkg> for telephony support.</flag>
1445 - <flag name="ovs">Enable OpenVSwitch support</flag>
1446 - <flag name="ppp">Enable support for mobile broadband and PPPoE
1447 - connections using <pkg>net-dialup/ppp</pkg></flag>
1448 - <flag name="resolvconf">Use <pkg>net-dns/openresolv</pkg> for managing
1449 - DNS information in /etc/resolv.conf. Generally, a symlink to
1450 - /run/NetworkManager/resolv.conf is simpler. On systems running
1451 - systemd-resolved, disable this flag and create a symlink to
1452 - /run/systemd/resolve/stub-resolv.conf.</flag>
1453 - <flag name="teamd">Enable Teamd control support</flag>
1454 - <flag name="wifi">Enable support for wifi and 802.1x security</flag>
1455 - <flag name="wext">Enable support for the deprecated Wext (Wireless
1456 - Extensions) API; needed for some older drivers (e.g. ipw2200,
1457 - ndiswrapper)</flag>
1458 - </use>
1459 -</pkgmetadata>
1460
1461 diff --git a/net-misc/networkmanager/networkmanager-1.26.4.ebuild b/net-misc/networkmanager/networkmanager-1.26.4.ebuild
1462 deleted file mode 100644
1463 index ffc63ee..0000000
1464 --- a/net-misc/networkmanager/networkmanager-1.26.4.ebuild
1465 +++ /dev/null
1466 @@ -1,357 +0,0 @@
1467 -# Copyright 1999-2021 Gentoo Authors
1468 -# Distributed under the terms of the GNU General Public License v2
1469 -
1470 -EAPI=6
1471 -GNOME_ORG_MODULE="NetworkManager"
1472 -GNOME2_LA_PUNT="yes"
1473 -VALA_USE_DEPEND="vapigen"
1474 -PYTHON_COMPAT=( python3_{7,8} )
1475 -
1476 -inherit bash-completion-r1 gnome2 linux-info multilib python-any-r1 systemd readme.gentoo-r1 vala virtualx udev multilib-minimal
1477 -
1478 -DESCRIPTION="A set of co-operative tools that make networking simple and straightforward"
1479 -HOMEPAGE="https://wiki.gnome.org/Projects/NetworkManager"
1480 -
1481 -LICENSE="GPL-2+"
1482 -SLOT="0"
1483 -
1484 -IUSE="audit bluetooth connection-sharing dhclient dhcpcd elogind gnutls +introspection iwd json kernel_linux +nss +modemmanager ncurses ofono ovs policykit +ppp resolvconf selinux systemd teamd test vala +wext +wifi"
1485 -RESTRICT="!test? ( test )"
1486 -
1487 -REQUIRED_USE="
1488 - bluetooth? ( modemmanager )
1489 - iwd? ( wifi )
1490 - vala? ( introspection )
1491 - wext? ( wifi )
1492 - || ( nss gnutls )
1493 - ?? ( elogind systemd )
1494 -"
1495 -
1496 -KEYWORDS="amd64 arm arm64 ~ppc ~ppc64 x86"
1497 -
1498 -# gobject-introspection-0.10.3 is needed due to gnome bug 642300
1499 -# wpa_supplicant-0.7.3-r3 is needed due to bug 359271
1500 -COMMON_DEPEND="
1501 - >=dev-libs/glib-2.40:2[${MULTILIB_USEDEP}]
1502 - policykit? ( >=sys-auth/polkit-0.106 )
1503 - net-libs/libndp[${MULTILIB_USEDEP}]
1504 - >=net-misc/curl-7.24
1505 - net-misc/iputils
1506 - sys-apps/util-linux[${MULTILIB_USEDEP}]
1507 - sys-libs/readline:0=
1508 - >=virtual/libudev-175:=[${MULTILIB_USEDEP}]
1509 - audit? ( sys-process/audit )
1510 - bluetooth? ( >=net-wireless/bluez-5 )
1511 - connection-sharing? (
1512 - net-dns/dnsmasq[dbus,dhcp]
1513 - net-firewall/iptables )
1514 - dhclient? ( >=net-misc/dhcp-4[client] )
1515 - dhcpcd? ( net-misc/dhcpcd )
1516 - elogind? ( >=sys-auth/elogind-219 )
1517 - introspection? ( >=dev-libs/gobject-introspection-0.10.3:= )
1518 - json? ( >=dev-libs/jansson-2.5[${MULTILIB_USEDEP}] )
1519 - modemmanager? ( >=net-misc/modemmanager-0.7.991:0=
1520 - net-misc/mobile-broadband-provider-info )
1521 - ncurses? ( >=dev-libs/newt-0.52.15 )
1522 - nss? ( >=dev-libs/nss-3.11:=[${MULTILIB_USEDEP}] )
1523 - !nss? ( gnutls? (
1524 - dev-libs/libgcrypt:0=[${MULTILIB_USEDEP}]
1525 - >=net-libs/gnutls-2.12:=[${MULTILIB_USEDEP}] ) )
1526 - ofono? ( net-misc/ofono )
1527 - ovs? ( dev-libs/jansson )
1528 - ppp? ( >=net-dialup/ppp-2.4.5:=[ipv6] )
1529 - resolvconf? ( net-dns/openresolv )
1530 - selinux? ( sys-libs/libselinux )
1531 - systemd? ( >=sys-apps/systemd-209:0= )
1532 - teamd? (
1533 - dev-libs/jansson
1534 - >=net-misc/libteam-1.9
1535 - )
1536 -"
1537 -RDEPEND="${COMMON_DEPEND}
1538 - acct-group/plugdev
1539 - || (
1540 - net-misc/iputils[arping(+)]
1541 - net-analyzer/arping
1542 - )
1543 - wifi? (
1544 - !iwd? ( >=net-wireless/wpa_supplicant-0.7.3-r3[dbus] )
1545 - iwd? ( net-wireless/iwd )
1546 - )
1547 -"
1548 -DEPEND="${COMMON_DEPEND}
1549 - dev-util/gdbus-codegen
1550 - dev-util/glib-utils
1551 - dev-util/gtk-doc-am
1552 - >=dev-util/intltool-0.40
1553 - >=sys-devel/gettext-0.17
1554 - >=sys-kernel/linux-headers-3.18
1555 - virtual/pkgconfig
1556 - introspection? (
1557 - $(python_gen_any_dep 'dev-python/pygobject:3[${PYTHON_USEDEP}]')
1558 - dev-lang/perl
1559 - dev-libs/libxslt
1560 - )
1561 - vala? ( $(vala_depend) )
1562 - test? (
1563 - $(python_gen_any_dep '
1564 - dev-python/dbus-python[${PYTHON_USEDEP}]
1565 - dev-python/pygobject:3[${PYTHON_USEDEP}]')
1566 - )
1567 -"
1568 -
1569 -PATCHES=( "${FILESDIR}"/${PN}-1.26.4-iwd-fixes-pr640.patch
1570 - # Required to build on musl
1571 - "${FILESDIR}"/musl-basic.patch
1572 - "${FILESDIR}"/musl-network-support.patch
1573 - "${FILESDIR}"/musl-fix-includes.patch
1574 - "${FILESDIR}"/musl-process-util.patch
1575 - "${FILESDIR}"/musl-compar.patch
1576 - "${FILESDIR}"/musl-no-drand.patch
1577 - "${FILESDIR}"/reallocarray-1.patch
1578 -)
1579 -
1580 -python_check_deps() {
1581 - if use introspection; then
1582 - has_version "dev-python/pygobject:3[${PYTHON_USEDEP}]" || return
1583 - fi
1584 - if use test; then
1585 - has_version "dev-python/dbus-python[${PYTHON_USEDEP}]" &&
1586 - has_version "dev-python/pygobject:3[${PYTHON_USEDEP}]"
1587 - fi
1588 -}
1589 -
1590 -sysfs_deprecated_check() {
1591 - ebegin "Checking for SYSFS_DEPRECATED support"
1592 -
1593 - if { linux_chkconfig_present SYSFS_DEPRECATED_V2; }; then
1594 - eerror "Please disable SYSFS_DEPRECATED_V2 support in your kernel config and recompile your kernel"
1595 - eerror "or NetworkManager will not work correctly."
1596 - eerror "See https://bugs.gentoo.org/333639 for more info."
1597 - die "CONFIG_SYSFS_DEPRECATED_V2 support detected!"
1598 - fi
1599 - eend $?
1600 -}
1601 -
1602 -pkg_pretend() {
1603 - if use kernel_linux; then
1604 - get_version
1605 - if linux_config_exists; then
1606 - sysfs_deprecated_check
1607 - else
1608 - ewarn "Was unable to determine your kernel .config"
1609 - ewarn "Please note that if CONFIG_SYSFS_DEPRECATED_V2 is set in your kernel .config, NetworkManager will not work correctly."
1610 - ewarn "See https://bugs.gentoo.org/333639 for more info."
1611 - fi
1612 -
1613 - fi
1614 -}
1615 -
1616 -pkg_setup() {
1617 - if use connection-sharing; then
1618 - if kernel_is lt 5 1; then
1619 - CONFIG_CHECK="~NF_NAT_IPV4 ~NF_NAT_MASQUERADE_IPV4"
1620 - else
1621 - CONFIG_CHECK="~NF_NAT ~NF_NAT_MASQUERADE"
1622 - fi
1623 - linux-info_pkg_setup
1624 - fi
1625 - if use introspection || use test; then
1626 - python-any-r1_pkg_setup
1627 - fi
1628 -}
1629 -
1630 -src_prepare() {
1631 - DOC_CONTENTS="To modify system network connections without needing to enter the
1632 - root password, add your user account to the 'plugdev' group."
1633 -
1634 - use vala && vala_src_prepare
1635 - gnome2_src_prepare
1636 -
1637 - sed -i \
1638 - -e 's#/usr/bin/sed#/bin/sed#' \
1639 - data/84-nm-drivers.rules \
1640 - || die
1641 -}
1642 -
1643 -multilib_src_configure() {
1644 - local myconf=(
1645 - --disable-more-warnings
1646 - --disable-static
1647 - --localstatedir=/var
1648 - --with-runstatedir=/run
1649 - --disable-lto
1650 - --disable-qt
1651 - --without-netconfig
1652 - --with-dbus-sys-dir=/etc/dbus-1/system.d
1653 - $(multilib_native_with nmcli)
1654 - --with-udev-dir="$(get_udevdir)"
1655 - --with-config-plugins-default=keyfile
1656 - --with-iptables=/sbin/iptables
1657 - --with-ebpf=yes
1658 - $(multilib_native_enable concheck)
1659 - --with-nm-cloud-setup=$(multilib_is_native_abi && echo yes || echo no)
1660 - --with-crypto=$(usex nss nss gnutls)
1661 - # elogind lacks multilib for now, and consolekit doesn't require linking against, so we use it as a fake option
1662 - # This SHOULD be removable once elogind has that. We abuse the fact that 'consolekit' does nothing at buildtime.
1663 - # (There is no off switch, and we do not support upower.)
1664 - # bug #747358
1665 - --with-session-tracking=$(multilib_native_usex systemd systemd $(multilib_native_usex elogind elogind consolekit))
1666 - --with-suspend-resume=$(multilib_native_usex systemd systemd $(multilib_native_usex elogind elogind consolekit))
1667 - $(multilib_native_use_with audit libaudit)
1668 - $(multilib_native_use_enable bluetooth bluez5-dun)
1669 - --without-dhcpcanon
1670 - $(use_with dhclient)
1671 - $(use_with dhcpcd)
1672 - --with-config-dhcp-default=internal
1673 - $(multilib_native_use_enable introspection)
1674 - $(use_enable json json-validation)
1675 - $(multilib_native_use_enable ppp)
1676 - --without-libpsl
1677 - $(multilib_native_use_with modemmanager modem-manager-1)
1678 - $(multilib_native_use_with ncurses nmtui)
1679 - $(multilib_native_use_with ofono)
1680 - $(multilib_native_use_enable ovs)
1681 - $(multilib_native_use_enable policykit polkit)
1682 - $(multilib_native_use_with resolvconf)
1683 - $(multilib_native_use_with selinux)
1684 - $(multilib_native_use_with systemd systemd-journal)
1685 - $(multilib_native_use_enable teamd teamdctl)
1686 - $(multilib_native_use_enable test tests)
1687 - $(multilib_native_use_enable vala)
1688 - --without-valgrind
1689 - $(multilib_native_use_with wifi iwd)
1690 - $(multilib_native_use_with wext)
1691 - $(multilib_native_use_enable wifi)
1692 - )
1693 -
1694 - # Same hack as net-dialup/pptpd to get proper plugin dir for ppp, bug #519986
1695 - if use ppp; then
1696 - local PPPD_VER=`best_version net-dialup/ppp`
1697 - PPPD_VER=${PPPD_VER#*/*-} #reduce it to ${PV}-${PR}
1698 - PPPD_VER=${PPPD_VER%%[_-]*} # main version without beta/pre/patch/revision
1699 - myconf+=( --with-pppd-plugin-dir=/usr/$(get_libdir)/pppd/${PPPD_VER} )
1700 - fi
1701 -
1702 - # unit files directory needs to be passed only when systemd is enabled,
1703 - # otherwise systemd support is not disabled completely, bug #524534
1704 - use systemd && myconf+=( --with-systemdsystemunitdir="$(systemd_get_systemunitdir)" )
1705 -
1706 - if multilib_is_native_abi; then
1707 - # work-around man out-of-source brokenness, must be done before configure
1708 - ln -s "${S}/docs" docs || die
1709 - ln -s "${S}/man" man || die
1710 - fi
1711 -
1712 - ECONF_SOURCE=${S} gnome2_src_configure "${myconf[@]}"
1713 -}
1714 -
1715 -multilib_src_compile() {
1716 - if multilib_is_native_abi; then
1717 - emake
1718 - else
1719 - local targets=(
1720 - libnm/libnm.la
1721 - )
1722 - emake "${targets[@]}"
1723 - fi
1724 -}
1725 -
1726 -multilib_src_test() {
1727 - if use test && multilib_is_native_abi; then
1728 - python_setup
1729 - virtx emake check
1730 - fi
1731 -}
1732 -
1733 -multilib_src_install() {
1734 - if multilib_is_native_abi; then
1735 - # Install completions at proper place, bug #465100
1736 - gnome2_src_install completiondir="$(get_bashcompdir)"
1737 - insinto /usr/lib/NetworkManager/conf.d #702476
1738 - doins "${S}"/examples/nm-conf.d/31-mac-addr-change.conf
1739 - else
1740 - local targets=(
1741 - install-libLTLIBRARIES
1742 - install-libnmincludeHEADERS
1743 - install-nodist_libnmincludeHEADERS
1744 - install-pkgconfigDATA
1745 - )
1746 - emake DESTDIR="${D}" "${targets[@]}"
1747 - fi
1748 -}
1749 -
1750 -multilib_src_install_all() {
1751 - einstalldocs
1752 - ! use systemd && readme.gentoo_create_doc
1753 -
1754 - newinitd "${FILESDIR}/init.d.NetworkManager-r2" NetworkManager
1755 - newconfd "${FILESDIR}/conf.d.NetworkManager" NetworkManager
1756 -
1757 - # Need to keep the /etc/NetworkManager/dispatched.d for dispatcher scripts
1758 - keepdir /etc/NetworkManager/dispatcher.d
1759 -
1760 - # Provide openrc net dependency only when nm is connected
1761 - exeinto /etc/NetworkManager/dispatcher.d
1762 - newexe "${FILESDIR}/10-openrc-status-r4" 10-openrc-status
1763 - sed -e "s:@EPREFIX@:${EPREFIX}:g" \
1764 - -i "${ED}/etc/NetworkManager/dispatcher.d/10-openrc-status" || die
1765 -
1766 - keepdir /etc/NetworkManager/system-connections
1767 - chmod 0600 "${ED}"/etc/NetworkManager/system-connections/.keep* # bug #383765, upstream bug #754594
1768 -
1769 - # Allow users in plugdev group to modify system connections
1770 - insinto /usr/share/polkit-1/rules.d/
1771 - doins "${FILESDIR}/01-org.freedesktop.NetworkManager.settings.modify.system.rules"
1772 -
1773 - if use iwd; then
1774 - # This goes to $nmlibdir/conf.d/ and $nmlibdir is '${prefix}'/lib/$PACKAGE, thus always lib, not get_libdir
1775 - cat <<-EOF > "${ED%/}"/usr/lib/NetworkManager/conf.d/iwd.conf
1776 - [device]
1777 - wifi.backend=iwd
1778 - EOF
1779 - fi
1780 -
1781 - # Empty
1782 - rmdir "${ED%/}"/var{/lib{/NetworkManager,},} || die
1783 -}
1784 -
1785 -pkg_postinst() {
1786 - gnome2_pkg_postinst
1787 - systemd_reenable NetworkManager.service
1788 - ! use systemd && readme.gentoo_print_elog
1789 -
1790 - if [[ -e "${EROOT}etc/NetworkManager/nm-system-settings.conf" ]]; then
1791 - ewarn "The ${PN} system configuration file has moved to a new location."
1792 - ewarn "You must migrate your settings from ${EROOT}/etc/NetworkManager/nm-system-settings.conf"
1793 - ewarn "to ${EROOT}etc/NetworkManager/NetworkManager.conf"
1794 - ewarn
1795 - ewarn "After doing so, you can remove ${EROOT}etc/NetworkManager/nm-system-settings.conf"
1796 - fi
1797 -
1798 - # NM fallbacks to plugin specified at compile time (upstream bug #738611)
1799 - # but still show a warning to remember people to have cleaner config file
1800 - if [[ -e "${EROOT}etc/NetworkManager/NetworkManager.conf" ]]; then
1801 - if grep plugins "${EROOT}etc/NetworkManager/NetworkManager.conf" | grep -q ifnet; then
1802 - ewarn
1803 - ewarn "You seem to use 'ifnet' plugin in ${EROOT}etc/NetworkManager/NetworkManager.conf"
1804 - ewarn "Since it won't be used, you will need to stop setting ifnet plugin there."
1805 - ewarn
1806 - fi
1807 - fi
1808 -
1809 - # NM shows lots of errors making nmcli almost unusable, bug #528748 upstream bug #690457
1810 - if grep -r "psk-flags=1" "${EROOT}"/etc/NetworkManager/; then
1811 - ewarn "You have psk-flags=1 setting in above files, you will need to"
1812 - ewarn "either reconfigure affected networks or, at least, set the flag"
1813 - ewarn "value to '0'."
1814 - fi
1815 -
1816 - if use dhclient || use dhcpcd; then
1817 - ewarn "You have enabled USE=dhclient and/or USE=dhcpcd, but NetworkManager since"
1818 - ewarn "version 1.20 defaults to the internal DHCP client. If the internal client"
1819 - ewarn "works for you, and you're happy with, the alternative USE flags can be"
1820 - ewarn "disabled. If you want to use dhclient or dhcpcd, then you need to tweak"
1821 - ewarn "the main.dhcp configuration option to use one of them instead of internal."
1822 - fi
1823 -}
1824
1825 diff --git a/net-misc/networkmanager/networkmanager-1.28.0-r1.ebuild b/net-misc/networkmanager/networkmanager-1.28.0-r1.ebuild
1826 deleted file mode 100644
1827 index b093a19..0000000
1828 --- a/net-misc/networkmanager/networkmanager-1.28.0-r1.ebuild
1829 +++ /dev/null
1830 @@ -1,356 +0,0 @@
1831 -# Copyright 1999-2021 Gentoo Authors
1832 -# Distributed under the terms of the GNU General Public License v2
1833 -
1834 -EAPI=7
1835 -GNOME_ORG_MODULE="NetworkManager"
1836 -VALA_USE_DEPEND="vapigen"
1837 -PYTHON_COMPAT=( python3_{7..9} )
1838 -
1839 -inherit bash-completion-r1 gnome2 linux-info multilib python-any-r1 systemd readme.gentoo-r1 vala virtualx udev multilib-minimal
1840 -
1841 -DESCRIPTION="A set of co-operative tools that make networking simple and straightforward"
1842 -HOMEPAGE="https://wiki.gnome.org/Projects/NetworkManager"
1843 -
1844 -LICENSE="GPL-2+"
1845 -SLOT="0"
1846 -
1847 -IUSE="audit bluetooth connection-sharing dhclient dhcpcd elogind gnutls +introspection iwd kernel_linux +nss +modemmanager ncurses ofono ovs policykit +ppp resolvconf selinux systemd teamd test vala +wext +wifi"
1848 -RESTRICT="!test? ( test )"
1849 -
1850 -REQUIRED_USE="
1851 - bluetooth? ( modemmanager )
1852 - iwd? ( wifi )
1853 - vala? ( introspection )
1854 - wext? ( wifi )
1855 - || ( nss gnutls )
1856 - ?? ( elogind systemd )
1857 -"
1858 -
1859 -KEYWORDS="amd64 ~arm ~arm64 ~ppc ~ppc64 ~x86"
1860 -
1861 -# gobject-introspection-0.10.3 is needed due to gnome bug 642300
1862 -# wpa_supplicant-0.7.3-r3 is needed due to bug 359271
1863 -COMMON_DEPEND="
1864 - >=dev-libs/glib-2.40:2[${MULTILIB_USEDEP}]
1865 - policykit? ( >=sys-auth/polkit-0.106 )
1866 - net-libs/libndp[${MULTILIB_USEDEP}]
1867 - >=net-misc/curl-7.24
1868 - net-misc/iputils
1869 - sys-apps/util-linux[${MULTILIB_USEDEP}]
1870 - sys-libs/readline:0=
1871 - >=virtual/libudev-175:=[${MULTILIB_USEDEP}]
1872 - audit? ( sys-process/audit )
1873 - bluetooth? ( >=net-wireless/bluez-5 )
1874 - connection-sharing? (
1875 - net-dns/dnsmasq[dbus,dhcp]
1876 - net-firewall/iptables )
1877 - dhclient? ( >=net-misc/dhcp-4[client] )
1878 - dhcpcd? ( >=net-misc/dhcpcd-9.3.3 )
1879 - elogind? ( >=sys-auth/elogind-219 )
1880 - introspection? ( >=dev-libs/gobject-introspection-0.10.3:= )
1881 - modemmanager? ( >=net-misc/modemmanager-0.7.991:0=
1882 - net-misc/mobile-broadband-provider-info )
1883 - ncurses? ( >=dev-libs/newt-0.52.15 )
1884 - nss? ( >=dev-libs/nss-3.11:=[${MULTILIB_USEDEP}] )
1885 - !nss? ( gnutls? (
1886 - dev-libs/libgcrypt:0=[${MULTILIB_USEDEP}]
1887 - >=net-libs/gnutls-2.12:=[${MULTILIB_USEDEP}] ) )
1888 - ofono? ( net-misc/ofono )
1889 - ovs? ( dev-libs/jansson )
1890 - ppp? ( >=net-dialup/ppp-2.4.5:=[ipv6] )
1891 - resolvconf? ( net-dns/openresolv )
1892 - selinux? ( sys-libs/libselinux )
1893 - systemd? ( >=sys-apps/systemd-209:0= )
1894 - teamd? (
1895 - dev-libs/jansson
1896 - >=net-misc/libteam-1.9
1897 - )
1898 -"
1899 -RDEPEND="${COMMON_DEPEND}
1900 - acct-group/plugdev
1901 - || (
1902 - net-misc/iputils[arping(+)]
1903 - net-analyzer/arping
1904 - )
1905 - wifi? (
1906 - !iwd? ( >=net-wireless/wpa_supplicant-0.7.3-r3[dbus] )
1907 - iwd? ( net-wireless/iwd )
1908 - )
1909 -"
1910 -DEPEND="${COMMON_DEPEND}
1911 - >=sys-kernel/linux-headers-3.18
1912 - "
1913 -BDEPEND="
1914 - dev-util/gdbus-codegen
1915 - dev-util/glib-utils
1916 - dev-util/gtk-doc-am
1917 - >=dev-util/intltool-0.40
1918 - >=sys-devel/gettext-0.17
1919 - virtual/pkgconfig
1920 - introspection? (
1921 - $(python_gen_any_dep 'dev-python/pygobject:3[${PYTHON_USEDEP}]')
1922 - dev-lang/perl
1923 - dev-libs/libxslt
1924 - )
1925 - vala? ( $(vala_depend) )
1926 - test? (
1927 - $(python_gen_any_dep '
1928 - dev-python/dbus-python[${PYTHON_USEDEP}]
1929 - dev-python/pygobject:3[${PYTHON_USEDEP}]')
1930 - )
1931 -"
1932 -
1933 -PATCHES=(
1934 - "${FILESDIR}/${PN}-1.28.0-dhcpcd9.patch"
1935 - # Required to build on musl
1936 - "${FILESDIR}/1.28.0/"0001-uncouple-glibc-functions-and-headers.patch
1937 - "${FILESDIR}/1.28.0/"0002-network-support.patch
1938 - "${FILESDIR}/1.28.0/"0003-Fix-includes-to-support-musl.patch
1939 - "${FILESDIR}/1.28.0/"0004-Fix-pthread-support-for-non-glibc-users.patch
1940 - "${FILESDIR}/1.28.0/"0005-define-compare-for-non-glibc-users.patch
1941 - "${FILESDIR}/1.28.0/"0006-musl-added-support-for-reallocarray-0-but-the-functi.patch
1942 -)
1943 -
1944 -python_check_deps() {
1945 - if use introspection; then
1946 - has_version "dev-python/pygobject:3[${PYTHON_USEDEP}]" || return
1947 - fi
1948 - if use test; then
1949 - has_version "dev-python/dbus-python[${PYTHON_USEDEP}]" &&
1950 - has_version "dev-python/pygobject:3[${PYTHON_USEDEP}]"
1951 - fi
1952 -}
1953 -
1954 -sysfs_deprecated_check() {
1955 - ebegin "Checking for SYSFS_DEPRECATED support"
1956 -
1957 - if { linux_chkconfig_present SYSFS_DEPRECATED_V2; }; then
1958 - eerror "Please disable SYSFS_DEPRECATED_V2 support in your kernel config and recompile your kernel"
1959 - eerror "or NetworkManager will not work correctly."
1960 - eerror "See https://bugs.gentoo.org/333639 for more info."
1961 - die "CONFIG_SYSFS_DEPRECATED_V2 support detected!"
1962 - fi
1963 - eend $?
1964 -}
1965 -
1966 -pkg_pretend() {
1967 - if use kernel_linux; then
1968 - get_version
1969 - if linux_config_exists; then
1970 - sysfs_deprecated_check
1971 - else
1972 - ewarn "Was unable to determine your kernel .config"
1973 - ewarn "Please note that if CONFIG_SYSFS_DEPRECATED_V2 is set in your kernel .config, NetworkManager will not work correctly."
1974 - ewarn "See https://bugs.gentoo.org/333639 for more info."
1975 - fi
1976 -
1977 - fi
1978 -}
1979 -
1980 -pkg_setup() {
1981 - if use connection-sharing; then
1982 - if kernel_is lt 5 1; then
1983 - CONFIG_CHECK="~NF_NAT_IPV4 ~NF_NAT_MASQUERADE_IPV4"
1984 - else
1985 - CONFIG_CHECK="~NF_NAT ~NF_NAT_MASQUERADE"
1986 - fi
1987 - linux-info_pkg_setup
1988 - fi
1989 - if use introspection || use test; then
1990 - python-any-r1_pkg_setup
1991 - fi
1992 -}
1993 -
1994 -src_prepare() {
1995 - DOC_CONTENTS="To modify system network connections without needing to enter the
1996 - root password, add your user account to the 'plugdev' group."
1997 -
1998 - use vala && vala_src_prepare
1999 - gnome2_src_prepare
2000 -
2001 - sed -i \
2002 - -e 's#/usr/bin/sed#/bin/sed#' \
2003 - data/84-nm-drivers.rules \
2004 - || die
2005 -}
2006 -
2007 -multilib_src_configure() {
2008 - local myconf=(
2009 - --disable-more-warnings
2010 - --disable-static
2011 - --localstatedir=/var
2012 - --with-runstatedir=/run
2013 - --disable-lto
2014 - --disable-qt
2015 - --without-netconfig
2016 - --with-dbus-sys-dir=/etc/dbus-1/system.d
2017 - $(multilib_native_with nmcli)
2018 - --with-udev-dir="$(get_udevdir)"
2019 - --with-config-plugins-default=keyfile
2020 - --with-iptables=/sbin/iptables
2021 - --with-ebpf=yes
2022 - $(multilib_native_enable concheck)
2023 - --with-nm-cloud-setup=$(multilib_is_native_abi && echo yes || echo no)
2024 - --with-crypto=$(usex nss nss gnutls)
2025 - # elogind lacks multilib for now, and consolekit doesn't require linking against, so we use it as a fake option
2026 - # This SHOULD be removable once elogind has that. We abuse the fact that 'consolekit' does nothing at buildtime.
2027 - # (There is no off switch, and we do not support upower.)
2028 - # bug #747358
2029 - --with-session-tracking=$(multilib_native_usex systemd systemd $(multilib_native_usex elogind elogind consolekit))
2030 - --with-suspend-resume=$(multilib_native_usex systemd systemd $(multilib_native_usex elogind elogind consolekit))
2031 - $(multilib_native_use_with audit libaudit)
2032 - $(multilib_native_use_enable bluetooth bluez5-dun)
2033 - --without-dhcpcanon
2034 - $(use_with dhclient)
2035 - $(use_with dhcpcd)
2036 - --with-config-dhcp-default=internal
2037 - $(multilib_native_use_enable introspection)
2038 - $(multilib_native_use_enable ppp)
2039 - --without-libpsl
2040 - $(multilib_native_use_with modemmanager modem-manager-1)
2041 - $(multilib_native_use_with ncurses nmtui)
2042 - $(multilib_native_use_with ofono)
2043 - $(multilib_native_use_enable ovs)
2044 - $(multilib_native_use_enable policykit polkit)
2045 - $(multilib_native_use_with resolvconf)
2046 - $(multilib_native_use_with selinux)
2047 - $(multilib_native_use_with systemd systemd-journal)
2048 - $(multilib_native_use_enable teamd teamdctl)
2049 - $(multilib_native_use_enable test tests)
2050 - $(multilib_native_use_enable vala)
2051 - --without-valgrind
2052 - $(multilib_native_use_with wifi iwd)
2053 - $(multilib_native_use_with wext)
2054 - $(multilib_native_use_enable wifi)
2055 - )
2056 -
2057 - # Same hack as net-dialup/pptpd to get proper plugin dir for ppp, bug #519986
2058 - if use ppp; then
2059 - local PPPD_VER=`best_version net-dialup/ppp`
2060 - PPPD_VER=${PPPD_VER#*/*-} #reduce it to ${PV}-${PR}
2061 - PPPD_VER=${PPPD_VER%%[_-]*} # main version without beta/pre/patch/revision
2062 - myconf+=( --with-pppd-plugin-dir=/usr/$(get_libdir)/pppd/${PPPD_VER} )
2063 - fi
2064 -
2065 - # unit files directory needs to be passed only when systemd is enabled,
2066 - # otherwise systemd support is not disabled completely, bug #524534
2067 - use systemd && myconf+=( --with-systemdsystemunitdir="$(systemd_get_systemunitdir)" )
2068 -
2069 - if multilib_is_native_abi; then
2070 - # work-around man out-of-source brokenness, must be done before configure
2071 - ln -s "${S}/docs" docs || die
2072 - ln -s "${S}/man" man || die
2073 - fi
2074 -
2075 - ECONF_SOURCE=${S} gnome2_src_configure "${myconf[@]}"
2076 -}
2077 -
2078 -multilib_src_compile() {
2079 - if multilib_is_native_abi; then
2080 - emake
2081 - else
2082 - local targets=(
2083 - libnm/libnm.la
2084 - )
2085 - emake "${targets[@]}"
2086 - fi
2087 -}
2088 -
2089 -multilib_src_test() {
2090 - if use test && multilib_is_native_abi; then
2091 - python_setup
2092 - virtx emake check
2093 - fi
2094 -}
2095 -
2096 -multilib_src_install() {
2097 - if multilib_is_native_abi; then
2098 - # Install completions at proper place, bug #465100
2099 - gnome2_src_install completiondir="$(get_bashcompdir)"
2100 - insinto /usr/lib/NetworkManager/conf.d #702476
2101 - doins "${S}"/examples/nm-conf.d/31-mac-addr-change.conf
2102 - else
2103 - local targets=(
2104 - install-libLTLIBRARIES
2105 - install-libnmincludeHEADERS
2106 - install-nodist_libnmincludeHEADERS
2107 - install-pkgconfigDATA
2108 - )
2109 - emake DESTDIR="${D}" "${targets[@]}"
2110 - fi
2111 -}
2112 -
2113 -multilib_src_install_all() {
2114 - einstalldocs
2115 - ! use systemd && readme.gentoo_create_doc
2116 -
2117 - newinitd "${FILESDIR}/init.d.NetworkManager-r2" NetworkManager
2118 - newconfd "${FILESDIR}/conf.d.NetworkManager" NetworkManager
2119 -
2120 - # Need to keep the /etc/NetworkManager/dispatched.d for dispatcher scripts
2121 - keepdir /etc/NetworkManager/dispatcher.d
2122 -
2123 - # Provide openrc net dependency only when nm is connected
2124 - exeinto /etc/NetworkManager/dispatcher.d
2125 - newexe "${FILESDIR}/10-openrc-status-r4" 10-openrc-status
2126 - sed -e "s:@EPREFIX@:${EPREFIX}:g" \
2127 - -i "${ED}/etc/NetworkManager/dispatcher.d/10-openrc-status" || die
2128 -
2129 - keepdir /etc/NetworkManager/system-connections
2130 - chmod 0600 "${ED}"/etc/NetworkManager/system-connections/.keep* # bug #383765, upstream bug #754594
2131 -
2132 - # Allow users in plugdev group to modify system connections
2133 - insinto /usr/share/polkit-1/rules.d/
2134 - doins "${FILESDIR}/01-org.freedesktop.NetworkManager.settings.modify.system.rules"
2135 -
2136 - if use iwd; then
2137 - # This goes to $nmlibdir/conf.d/ and $nmlibdir is '${prefix}'/lib/$PACKAGE, thus always lib, not get_libdir
2138 - cat <<-EOF > "${ED}"/usr/lib/NetworkManager/conf.d/iwd.conf
2139 - [device]
2140 - wifi.backend=iwd
2141 - EOF
2142 - fi
2143 -
2144 - # Empty
2145 - rmdir "${ED}"/var{/lib{/NetworkManager,},} || die
2146 -}
2147 -
2148 -pkg_postinst() {
2149 - gnome2_pkg_postinst
2150 - systemd_reenable NetworkManager.service
2151 - ! use systemd && readme.gentoo_print_elog
2152 -
2153 - if [[ -e "${EROOT}/etc/NetworkManager/nm-system-settings.conf" ]]; then
2154 - ewarn "The ${PN} system configuration file has moved to a new location."
2155 - ewarn "You must migrate your settings from ${EROOT}/etc/NetworkManager/nm-system-settings.conf"
2156 - ewarn "to ${EROOT}/etc/NetworkManager/NetworkManager.conf"
2157 - ewarn
2158 - ewarn "After doing so, you can remove ${EROOT}/etc/NetworkManager/nm-system-settings.conf"
2159 - fi
2160 -
2161 - # NM fallbacks to plugin specified at compile time (upstream bug #738611)
2162 - # but still show a warning to remember people to have cleaner config file
2163 - if [[ -e "${EROOT}/etc/NetworkManager/NetworkManager.conf" ]]; then
2164 - if grep plugins "${EROOT}/etc/NetworkManager/NetworkManager.conf" | grep -q ifnet; then
2165 - ewarn
2166 - ewarn "You seem to use 'ifnet' plugin in ${EROOT}/etc/NetworkManager/NetworkManager.conf"
2167 - ewarn "Since it won't be used, you will need to stop setting ifnet plugin there."
2168 - ewarn
2169 - fi
2170 - fi
2171 -
2172 - # NM shows lots of errors making nmcli almost unusable, bug #528748 upstream bug #690457
2173 - if grep -r "psk-flags=1" "${EROOT}"/etc/NetworkManager/; then
2174 - ewarn "You have psk-flags=1 setting in above files, you will need to"
2175 - ewarn "either reconfigure affected networks or, at least, set the flag"
2176 - ewarn "value to '0'."
2177 - fi
2178 -
2179 - if use dhclient || use dhcpcd; then
2180 - ewarn "You have enabled USE=dhclient and/or USE=dhcpcd, but NetworkManager since"
2181 - ewarn "version 1.20 defaults to the internal DHCP client. If the internal client"
2182 - ewarn "works for you, and you're happy with, the alternative USE flags can be"
2183 - ewarn "disabled. If you want to use dhclient or dhcpcd, then you need to tweak"
2184 - ewarn "the main.dhcp configuration option to use one of them instead of internal."
2185 - fi
2186 -}