[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
23/181: gnu: network-manager: Update to 1.40.0, use gexps and remove inp
From: |
guix-commits |
Subject: |
23/181: gnu: network-manager: Update to 1.40.0, use gexps and remove input labels. |
Date: |
Tue, 13 Sep 2022 02:25:09 -0400 (EDT) |
apteryx pushed a commit to branch master
in repository guix.
commit 9539408e9151f061efd1fd4687a5842daec1c1cf
Author: Maxim Cournoyer <maxim.cournoyer@gmail.com>
AuthorDate: Mon Aug 22 17:21:52 2022 -0400
gnu: network-manager: Update to 1.40.0, use gexps and remove input labels.
* gnu/packages/gnome.scm (network-manager): Update to 1.40.0.
[arguments]: Use gexps.
[native-inputs, propagated-inputs]: Remove labels.
* gnu/packages/patches/network-manager-plugin-path.patch: Rebase patch.
---
gnu/packages/gnome.scm | 247 ++++++++++-----------
.../patches/network-manager-plugin-path.patch | 38 ++--
2 files changed, 145 insertions(+), 140 deletions(-)
diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm
index 5c7338c955..6aeda7a7f1 100644
--- a/gnu/packages/gnome.scm
+++ b/gnu/packages/gnome.scm
@@ -7908,7 +7908,7 @@ users.")
(define-public network-manager
(package
(name "network-manager")
- (version "1.32.12")
+ (version "1.40.0")
(source (origin
(method url-fetch)
(uri (string-append "mirror://gnome/sources/NetworkManager/"
@@ -7918,138 +7918,135 @@ users.")
"network-manager-meson.patch"))
(sha256
(base32
- "0jzmz0zw64dgvdn2g7pppr7bkywpbxcbdb1viv6p7zh2lnh3dax8"))))
+ "00zwx7cvl8p8xv5h8yvlj2r5wycbvbqia7z4hjmmvjicpiby1rxf"))))
(build-system meson-build-system)
(outputs '("out"
"doc")) ; 8 MiB of gtk-doc HTML
(arguments
- `(#:configure-flags
- (let ((out (assoc-ref %outputs "out"))
- (dhclient (search-input-file %build-inputs "/sbin/dhclient")))
- (list
- ;; Otherwise, the RUNPATH will lack the final 'NetworkManager' path
- ;; component.
- (string-append "-Dc_link_args=-Wl,-rpath="
- out "/lib:"
- out "/lib/NetworkManager/" ,version)
- "-Dsystemd_journal=false"
- "-Dsession_tracking=elogind"
- "-Dsuspend_resume=elogind"
- "-Dsystemdsystemunitdir=no"
- "-Dsession_tracking_consolekit=false"
- "-Ddhcpcd=no"
- "-Ddhcpcanon=no"
- "-Dcrypto=gnutls"
- "-Diwd=true"
- "-Dlibaudit=yes"
- "-Dqt=false"
- "-Ddocs=true"
- "--sysconfdir=/etc"
- "--localstatedir=/var"
- (string-append "-Dudev_dir="
- out "/lib/udev")
- (string-append "-Ddbus_conf_dir="
- out "/etc/dbus-1/system.d")
-
- (string-append "-Ddhclient=" dhclient)))
- #:phases
- (modify-phases %standard-phases
- (add-after 'unpack 'patch-dlopen-call-to-libjansson.so
- (lambda* (#:key inputs #:allow-other-keys)
- (substitute* "src/libnm-glib-aux/nm-json-aux.c"
- (("(handle = dlopen\\()soname" _ head)
- (string-append
- head "\"" (search-input-file inputs
- "lib/libjansson.so") "\"")))))
- (add-before 'configure 'pre-configure
- (lambda _
- ;; These tests try to test aspects of network-manager's
- ;; functionality within restricted containers, but they don't
- ;; cope with being already in the Guix build jail as that jail
- ;; lacks some features that they would like to proxy over (like
- ;; a /sys mount).
- (substitute* "src/core/tests/meson.build"
- ((".*test-l3cfg.*") ""))
- (substitute* "src/core/devices/tests/meson.build"
- ((".*test-acd.*") "")
- ((".*test-lldp.*") ""))
- (substitute* "src/core/platform/tests/meson.build"
- ((".*test-address-linux.*") "")
- ((".*test-cleanup-linux.*") "")
- ((".*test-link-linux.*") "")
- ((".*test-lldp.*") "")
- ((".*test-route-linux.*") "")
- ((".*test-tc-linux.*") ""))))
- (add-after 'unpack 'patch-docbook-xml
- (lambda* (#:key inputs #:allow-other-keys)
- (let ((xmldoc (string-append (assoc-ref inputs "docbook-xml")
- "/xml/dtd/docbook")))
- (substitute* (find-files "." ".*\\.(xsl|xml)")
- (("http://.*/docbookx\\.dtd")
- (string-append xmldoc "/docbookx.dtd"))))))
- (add-before 'check 'pre-check
- (lambda _
- ;; For the missing /etc/machine-id.
- (setenv "DBUS_FATAL_WARNINGS" "0")))
- (add-before 'install 'no-polkit-magic
- ;; Meson ‘magically’ invokes pkexec, which fails (not setuid).
- (lambda _
- (setenv "PKEXEC_UID" "something")))
- (add-after 'install 'move-doc
- (lambda* (#:key outputs #:allow-other-keys)
- (let ((out (assoc-ref outputs "out"))
- (doc (assoc-ref outputs "doc")))
- (mkdir-p (string-append doc "/share"))
- (for-each (lambda (directory)
- (copy-recursively (string-append out directory)
- (string-append doc directory))
- (delete-file-recursively
- (string-append out directory)))
- '("/share/doc" "/share/gtk-doc"))))))))
+ (list
+ #:configure-flags
+ #~(list
+ ;; Otherwise, the RUNPATH will lack the final 'NetworkManager' path
+ ;; component.
+ (string-append "-Dc_link_args=-Wl,-rpath="
+ #$output "/lib:"
+ #$output "/lib/NetworkManager/" #$version)
+ "-Dsystemd_journal=false"
+ "-Dsession_tracking=elogind"
+ "-Dsuspend_resume=elogind"
+ "-Dsystemdsystemunitdir=no"
+ "-Dsession_tracking_consolekit=false"
+ "-Ddhcpcd=no"
+ "-Ddhcpcanon=no"
+ "-Dcrypto=gnutls"
+ "-Diwd=true"
+ "-Dlibaudit=yes"
+ "-Dqt=false"
+ "-Ddocs=true"
+ "--sysconfdir=/etc"
+ "--localstatedir=/var"
+ (string-append "-Dudev_dir="
+ #$output "/lib/udev")
+ (string-append "-Ddbus_conf_dir="
+ #$output "/etc/dbus-1/system.d")
+
+ (string-append "-Ddhclient=" (search-input-file %build-inputs
+ "/sbin/dhclient")))
+ #:phases
+ #~(modify-phases %standard-phases
+ (add-after 'unpack 'patch-dlopen-call-to-libjansson.so
+ (lambda* (#:key inputs #:allow-other-keys)
+ (substitute* "src/libnm-glib-aux/nm-json-aux.c"
+ (("(handle = dlopen\\()soname" _ head)
+ (string-append
+ head "\"" (search-input-file inputs
+ "lib/libjansson.so") "\"")))))
+ (add-before 'configure 'pre-configure
+ (lambda _
+ ;; These tests try to test aspects of network-manager's
+ ;; functionality within restricted containers, but they don't
+ ;; cope with being already in the Guix build jail as that jail
+ ;; lacks some features that they would like to proxy over (like
+ ;; a /sys mount).
+ (substitute* "src/core/tests/meson.build"
+ ((".*test-l3cfg.*") ""))
+ (substitute* "src/core/devices/tests/meson.build"
+ ((".*test-acd.*") "")
+ ((".*test-lldp.*") ""))
+ (substitute* "src/core/platform/tests/meson.build"
+ ((".*test-address-linux.*") "")
+ ((".*test-cleanup-linux.*") "")
+ ((".*test-link-linux.*") "")
+ ((".*test-lldp.*") "")
+ ((".*test-route-linux.*") "")
+ ((".*test-tc-linux.*") ""))))
+ (add-after 'unpack 'patch-docbook-xml
+ (lambda* (#:key inputs #:allow-other-keys)
+ (substitute* (find-files "." ".*\\.(xsl|xml)")
+ (("http://.*/docbookx\\.dtd")
+ (search-input-file inputs "xml/dtd/docbook/docbookx.dtd")))))
+ (add-before 'check 'pre-check
+ (lambda _
+ ;; For the missing /etc/machine-id.
+ (setenv "DBUS_FATAL_WARNINGS" "0")))
+ (add-before 'install 'no-polkit-magic
+ ;; Meson ‘magically’ invokes pkexec, which fails (not setuid).
+ (lambda _
+ (setenv "PKEXEC_UID" "something")))
+ (add-after 'install 'move-doc
+ (lambda _
+ (mkdir-p (string-append #$output:doc "/share"))
+ (for-each (lambda (directory)
+ (copy-recursively (string-append #$output directory)
+ (string-append #$output:doc
+ directory))
+ (delete-file-recursively
+ (string-append #$output directory)))
+ '("/share/doc" "/share/gtk-doc")))))))
(propagated-inputs
(list glib))
(native-inputs
- `(("glib:bin" ,glib "bin") ; for gdbus-codegen
- ("gtk-doc" ,gtk-doc/stable)
- ("gobject-introspection" ,gobject-introspection)
- ("docbook-xml" ,docbook-xml)
- ("docbook-xsl" ,docbook-xsl)
- ("intltool" ,intltool)
- ("libxslt" ,libxslt)
- ("libxml2" ,libxml2)
- ("pkg-config" ,pkg-config)
- ("vala" ,vala)
- ;; For testing.
- ("python" ,python-wrapper)
- ("python-dbus" ,python-dbus)
- ("python-pygobject" ,python-pygobject)))
+ (list `(,glib "bin") ; for gdbus-codegen
+ gtk-doc/stable
+ gobject-introspection
+ docbook-xml
+ docbook-xsl
+ intltool
+ libxslt
+ libxml2
+ pkg-config
+ vala
+ ;; For testing.
+ python-wrapper
+ python-dbus
+ python-pygobject))
(inputs
- `(("curl" ,curl)
- ("cyrus-sasl" ,cyrus-sasl)
- ("dbus-glib" ,dbus-glib)
- ("dnsmasq" ,dnsmasq)
- ("eudev" ,eudev)
- ("gnutls" ,gnutls)
- ("iptables" ,iptables)
- ("isc-dhcp" ,isc-dhcp)
- ("iwd" ,iwd) ; wpa_supplicant alternative
- ("jansson" ,jansson)
- ("libaudit" ,audit)
- ("libgcrypt" ,libgcrypt)
- ("libgudev" ,libgudev)
- ("libndp" ,libndp)
- ("libnl" ,libnl)
- ("libselinux" ,libselinux)
- ("libsoup" ,libsoup)
- ("mobile-broadband-provider-info" ,mobile-broadband-provider-info)
- ("modem-manager" ,modem-manager)
- ("newt" ,newt) ;for the 'nmtui' console interface
- ("openresolv" ,openresolv) ; alternative resolv.conf manager
- ("polkit" ,polkit)
- ("ppp" ,ppp)
- ("readline" ,readline)
- ("util-linux" ,util-linux)
- ("elogind" ,elogind)))
+ (list curl
+ cyrus-sasl
+ dbus-glib
+ dnsmasq
+ eudev
+ gnutls
+ iptables
+ isc-dhcp
+ iwd ; wpa_supplicant alternative
+ jansson
+ audit
+ libgcrypt
+ libgudev
+ libndp
+ libnl
+ libselinux
+ libsoup
+ mobile-broadband-provider-info
+ modem-manager
+ newt ;for the 'nmtui' console interface
+ openresolv ; alternative resolv.conf manager
+ polkit
+ ppp
+ readline
+ util-linux
+ elogind))
(synopsis "Network connection manager")
(home-page "https://wiki.gnome.org/Projects/NetworkManager")
(description
diff --git a/gnu/packages/patches/network-manager-plugin-path.patch
b/gnu/packages/patches/network-manager-plugin-path.patch
index ec6767aaac..cd2447cf03 100644
--- a/gnu/packages/patches/network-manager-plugin-path.patch
+++ b/gnu/packages/patches/network-manager-plugin-path.patch
@@ -3,39 +3,47 @@ From: =?UTF-8?q?Tom=C3=A1=C5=A1=20=C4=8Cech?=
<sleep_walker@gnu.org>
Date: Wed, 3 Jul 2019 13:31:54 +0200
Subject: [PATCH] respect NM_VPN_PLUGIN_DIR
---- a/src/core/vpn/nm-vpn-manager.c 2021-10-29 13:20:01.062917840 -0400
-+++ b/src/core/vpn/nm-vpn-manager.c 2021-10-29 13:26:46.094397018 -0400
-@@ -211,6 +211,7 @@
- GSList * infos, *info;
- const char * conf_dir_etc =
_nm_vpn_plugin_info_get_default_dir_etc();
- const char * conf_dir_lib =
_nm_vpn_plugin_info_get_default_dir_lib();
-+ const char * conf_dir_user =
_nm_vpn_plugin_info_get_default_dir_user ();
+Rebased by Maxim Cournoyer on 2022/08/23.
+
+diff --git a/src/core/vpn/nm-vpn-manager.c b/src/core/vpn/nm-vpn-manager.c
+index 6bf8edaee5..9bd960ba86 100644
+--- a/src/core/vpn/nm-vpn-manager.c
++++ b/src/core/vpn/nm-vpn-manager.c
+@@ -209,8 +209,9 @@ nm_vpn_manager_init(NMVpnManager *self)
+ NMVpnManagerPrivate *priv = NM_VPN_MANAGER_GET_PRIVATE(self);
+ GFile *file;
+ GSList *infos, *info;
+- const char *conf_dir_etc =
_nm_vpn_plugin_info_get_default_dir_etc();
+- const char *conf_dir_lib =
_nm_vpn_plugin_info_get_default_dir_lib();
++ const char *conf_dir_etc =
_nm_vpn_plugin_info_get_default_dir_etc();
++ const char *conf_dir_lib =
_nm_vpn_plugin_info_get_default_dir_lib();
++ const char *conf_dir_user =
_nm_vpn_plugin_info_get_default_dir_user();
/* Watch the VPN directory for changes */
file = g_file_new_for_path(conf_dir_lib);
-@@ -229,6 +230,14 @@
+@@ -229,6 +230,14 @@ nm_vpn_manager_init(NMVpnManager *self)
g_signal_connect(priv->monitor_etc, "changed",
G_CALLBACK(vpn_dir_changed), self);
}
-+ file = g_file_new_for_path (conf_dir_user);
-+ priv->monitor_etc = g_file_monitor_directory (file, G_FILE_MONITOR_NONE,
NULL, NULL);
-+ g_object_unref (file);
++ file = g_file_new_for_path(conf_dir_user);
++ priv->monitor_etc = g_file_monitor_directory(file, G_FILE_MONITOR_NONE,
NULL, NULL);
++ g_object_unref(file);
+ if (priv->monitor_etc) {
+ priv->monitor_id_etc =
-+ g_signal_connect (priv->monitor_etc, "changed", G_CALLBACK
(vpn_dir_changed), self);
++ g_signal_connect(priv->monitor_etc, "changed",
G_CALLBACK(vpn_dir_changed), self);
+ }
+
/* first read conf_dir_lib. The name files are not really user
configuration, but
* plugin configuration. Hence we expect ~newer~ plugins to install their
files
* in /usr/lib/NetworkManager. We want to prefer those files.
-@@ -243,6 +252,11 @@
+@@ -243,6 +252,11 @@ nm_vpn_manager_init(NMVpnManager *self)
try_add_plugin(self, info->data);
g_slist_free_full(infos, g_object_unref);
+ infos = _nm_vpn_plugin_info_list_load_dir(conf_dir_user, TRUE, 0, NULL,
NULL);
+ for (info = infos; info; info = info->next)
-+ try_add_plugin (self, info->data);
-+ g_slist_free_full (infos, g_object_unref);
++ try_add_plugin(self, info->data);
++ g_slist_free_full(infos, g_object_unref);
+
priv->active_services = g_hash_table_new_full(nm_str_hash, g_str_equal,
g_free, NULL);
}
- 12/181: gnu: gtk: Update to 4.8.0 and use gexps., (continued)
- 12/181: gnu: gtk: Update to 4.8.0 and use gexps., guix-commits, 2022/09/13
- 13/181: gnu: gcr: Update to 3.41.1, delete trailing #t and input labels., guix-commits, 2022/09/13
- 11/181: gnu: Add gi-docgen., guix-commits, 2022/09/13
- 18/181: gnu: libqmi: Update to 1.30.8., guix-commits, 2022/09/13
- 16/181: gnu: libhandy: Update to 1.7.90., guix-commits, 2022/09/13
- 19/181: gnu: modem-manager: Update to 1.18.10 and remove input labels., guix-commits, 2022/09/13
- 20/181: gnu: geoclue: Update to 2.6.0 and remove input labels., guix-commits, 2022/09/13
- 24/181: gnu: Add gsettings-desktop-schemas-next., guix-commits, 2022/09/13
- 25/181: gnu: gnome-settings-daemon: Update to 42.2., guix-commits, 2022/09/13
- 21/181: gnu: geocode-glib: Update to 3.26.4 and build with libsoup 3., guix-commits, 2022/09/13
- 23/181: gnu: network-manager: Update to 1.40.0, use gexps and remove input labels.,
guix-commits <=
- 26/181: gnu: umockdev: Update to 0.17.13., guix-commits, 2022/09/13
- 14/181: gnu: Add python-libevdev., guix-commits, 2022/09/13
- 38/181: gnu: accountsservice: Propagate glib., guix-commits, 2022/09/13
- 32/181: gnu: ibus: Update to 1.5.27, use gexps and remove input labels., guix-commits, 2022/09/13
- 37/181: gnu: mutter: Update to 42.4, use gexps and remove input labels., guix-commits, 2022/09/13
- 33/181: gnu: evolution-data-server: Update to 3.44.4 and remove input labels., guix-commits, 2022/09/13
- 40/181: gnu: gdm: Use gexps and new style inputs., guix-commits, 2022/09/13
- 46/181: gnu: gjs: Update to 1.72.2., guix-commits, 2022/09/13
- 17/181: gnu: baobab: Update to 42.0 and delete input labels., guix-commits, 2022/09/13
- 36/181: gnu: Add wayland-protocols-next., guix-commits, 2022/09/13