diff options
author | Jan Tojnar <jtojnar@gmail.com> | 2023-02-01 22:37:36 +0000 |
---|---|---|
committer | Jan Tojnar <jtojnar@gmail.com> | 2023-02-02 11:02:02 +0100 |
commit | 972b24d3c65c14b9aceaf612006f2a2effe9e709 (patch) | |
tree | eaec3bcc1cf7d151c87a801ac0cc30044397dfa2 /pkgs/tools/networking/networkmanager | |
parent | e4d6bad7120e218111c70fc8475b75edae59aad7 (diff) | |
download | nixpkgs-972b24d3c65c14b9aceaf612006f2a2effe9e709.tar nixpkgs-972b24d3c65c14b9aceaf612006f2a2effe9e709.tar.gz nixpkgs-972b24d3c65c14b9aceaf612006f2a2effe9e709.tar.bz2 nixpkgs-972b24d3c65c14b9aceaf612006f2a2effe9e709.tar.lz nixpkgs-972b24d3c65c14b9aceaf612006f2a2effe9e709.tar.xz nixpkgs-972b24d3c65c14b9aceaf612006f2a2effe9e709.tar.zst nixpkgs-972b24d3c65c14b9aceaf612006f2a2effe9e709.zip |
libnma: 1.10.4 → 1.10.6
https://gitlab.gnome.org/GNOME/libnma/-/compare/1.10.4...1.10.6 Changelog-Reviewed-By: Jan Tojnar <jtojnar@gmail.com>
Diffstat (limited to 'pkgs/tools/networking/networkmanager')
3 files changed, 38 insertions, 59 deletions
diff --git a/pkgs/tools/networking/networkmanager/libnma/default.nix b/pkgs/tools/networking/networkmanager/libnma/default.nix index af4c18e1ce3..8f3ed67abcf 100644 --- a/pkgs/tools/networking/networkmanager/libnma/default.nix +++ b/pkgs/tools/networking/networkmanager/libnma/default.nix @@ -23,25 +23,24 @@ , glib , substituteAll , lib +, _experimental-update-script-combinators +, makeHardcodeGsettingsPatch }: stdenv.mkDerivation rec { pname = "libnma"; - version = "1.10.4"; + version = "1.10.6"; outputs = [ "out" "dev" "devdoc" ]; src = fetchurl { url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz"; - sha256 = "eecw3aGfmzSIb0BkqhcPGiMmsIMp1lXYC2fpBsf3i3w="; + sha256 = "U6b7KxkK03xZhsrtPpi+3nw8YCOZ7k+TyPwFQwPXbas="; }; patches = [ # Needed for wingpanel-indicator-network and switchboard-plug-network ./hardcode-gsettings.patch - # Removing path from eap schema to fix bug when creating new VPN connection - # https://gitlab.gnome.org/GNOME/libnma/-/issues/18 - ./remove-path-from-eap.patch ]; nativeBuildInputs = [ @@ -86,10 +85,24 @@ stdenv.mkDerivation rec { ''; passthru = { - updateScript = gnome.updateScript { - packageName = pname; - versionPolicy = "odd-unstable"; + hardcodeGsettingsPatch = makeHardcodeGsettingsPatch { + schemaIdToVariableMapping = { + "org.gnome.nm-applet.eap" = "NM_APPLET_GSETTINGS"; + }; + inherit src; }; + updateScript = + let + updateSource = gnome.updateScript { + packageName = "libnma"; + versionPolicy = "odd-unstable"; + }; + updateGsettingsPatch = _experimental-update-script-combinators.copyAttrOutputToFile "libnma.hardcodeGsettingsPatch" ./hardcode-gsettings.patch; + in + _experimental-update-script-combinators.sequence [ + updateSource + updateGsettingsPatch + ]; }; meta = with lib; { diff --git a/pkgs/tools/networking/networkmanager/libnma/hardcode-gsettings.patch b/pkgs/tools/networking/networkmanager/libnma/hardcode-gsettings.patch index 9b2f5366950..a68f96113d3 100644 --- a/pkgs/tools/networking/networkmanager/libnma/hardcode-gsettings.patch +++ b/pkgs/tools/networking/networkmanager/libnma/hardcode-gsettings.patch @@ -1,26 +1,24 @@ +diff --git a/src/nma-ws/nma-eap.c b/src/nma-ws/nma-eap.c +index fa36907..81df821 100644 --- a/src/nma-ws/nma-eap.c +++ b/src/nma-ws/nma-eap.c -@@ -248,11 +248,16 @@ nma_eap_ca_cert_ignore_get (NMAEap *method, NMConnection *connection) - static GSettings * - _get_ca_ignore_settings (NMConnection *connection) - { -+ g_autoptr (GSettingsSchemaSource) *schema_source; -+ g_autoptr (GSettingsSchema) *schema; - GSettings *settings; - char *path = NULL; - const char *uuid; - - g_return_val_if_fail (connection, NULL); - -+ schema_source = g_settings_schema_source_new_from_directory ("@NM_APPLET_GSETTINGS@", g_settings_schema_source_get_default (), TRUE, NULL); -+ schema = g_settings_schema_source_lookup (schema_source, "org.gnome.nm-applet.eap", FALSE); -+ - uuid = nm_connection_get_uuid (connection); +@@ -252,7 +252,18 @@ _get_ca_ignore_settings (NMConnection *connection) g_return_val_if_fail (uuid && *uuid, NULL); - + path = g_strdup_printf ("/org/gnome/nm-applet/eap/%s/", uuid); - settings = g_settings_new_with_path ("org.gnome.nm-applet.eap", path); -+ settings = g_settings_new_full (schema, NULL, path); ++ { ++ g_autoptr(GSettingsSchemaSource) schema_source; ++ g_autoptr(GSettingsSchema) schema; ++ schema_source = g_settings_schema_source_new_from_directory("@NM_APPLET_GSETTINGS@", ++ g_settings_schema_source_get_default(), ++ TRUE, ++ NULL); ++ schema = g_settings_schema_source_lookup(schema_source, ++ "org.gnome.nm-applet.eap", ++ FALSE); ++ settings = g_settings_new_full(schema, NULL, path); ++ } g_free (path); - + return settings; diff --git a/pkgs/tools/networking/networkmanager/libnma/remove-path-from-eap.patch b/pkgs/tools/networking/networkmanager/libnma/remove-path-from-eap.patch deleted file mode 100644 index fe00ff9d9a9..00000000000 --- a/pkgs/tools/networking/networkmanager/libnma/remove-path-from-eap.patch +++ /dev/null @@ -1,32 +0,0 @@ -From 0ab5c1e39e94e158650da847f8512ab5e2b03593 Mon Sep 17 00:00:00 2001 -From: "Jan Alexander Steffens (heftig)" <heftig@archlinux.org> -Date: Wed, 9 Nov 2022 08:00:19 +0000 -Subject: [PATCH] gschema: Remove path from eap schema - -This one needs to be relocatable, otherwise creating a new VPN -connection will fail with: - - settings object created with schema 'org.gnome.nm-applet.eap' - and path '/org/gnome/nm-applet/eap/<uuid>/', - but path '/org/gnome/nm-applet/eap/' is specified by schema - -Fixes: https://bugs.archlinux.org/task/76490 ---- - org.gnome.nm-applet.eap.gschema.xml.in | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/org.gnome.nm-applet.eap.gschema.xml.in b/org.gnome.nm-applet.eap.gschema.xml.in -index 0fc3ca9f..f4a56ea6 100644 ---- a/org.gnome.nm-applet.eap.gschema.xml.in -+++ b/org.gnome.nm-applet.eap.gschema.xml.in -@@ -1,6 +1,6 @@ - <?xml version="1.0" encoding="UTF-8"?> - <schemalist> -- <schema id="org.gnome.nm-applet.eap" path="/org/gnome/nm-applet/eap/" gettext-domain="nm-applet"> -+ <schema id="org.gnome.nm-applet.eap" gettext-domain="nm-applet"> - <key name="ignore-ca-cert" type="b"> - <default>false</default> - <summary>Ignore CA certificate</summary> --- -GitLab - |