For network-manager-applet's nm-connection-editor, libnma needs to be installed

  • Done
  • quality assurance status badge
Details
4 participants
  • Josselin Poiret
  • Ludovic Courtès
  • Maxim Cournoyer
  • P. p. phalantha
Owner
unassigned
Submitted by
P. p. phalantha
Severity
important
P
P
P. p. phalantha wrote on 27 Mar 2023 20:19
(address . bug-guix@gnu.org)
CAEavL=Ussk8XDnGRuyG6jNpMiUTZ8avQVfMsPoUcyAEGvBfFCA@mail.gmail.com
Hi all,

I was trying to add a WPA/WPA2 Enterprise (PEAP w/ CA cert) network via
nm-connection-editor. However, each time I finished the form and clicked
"Save," nm-connection-editor would crash and the network would consequently
not be saved.

Invoking nm-connection-editor from the command line and repeating these
steps gave the informative error message:

```
(nm-connection-editor:1751): GLib-GIO-ERROR **: 02:02:58.502: Settings
schema 'org.gnome.nm-applet.eap' is not installed
Trace/breakpoint trap
```

I found a fix via the installation of libnma, thanks to a 2012 thread on
LinuxQuestions.org:
After the installation of libnma I was able to successfully add the network.

I understand libnma is already a dependency of nm-connection-editor. I do
not know enough to say why it has to be additionally installed separately,
but I hope someone else does. The steps to reproduce is in the first
paragraph above.

Best regards,
Ning
Attachment: file
L
L
Ludovic Courtès wrote on 29 Mar 2023 15:13
control message for bug #62496
(address . control@debbugs.gnu.org)
87v8ij7lac.fsf@gnu.org
severity 62496 important
quit
L
L
Ludovic Courtès wrote on 29 Mar 2023 15:37
Re: bug#62496: For network-manager-applet's nm-connection-editor, libnma needs to be installed
(name . P. p. phalantha)(address . ningyuan.sg@gmail.com)(address . 62496@debbugs.gnu.org)
87mt3v7k66.fsf@gnu.org
Hello,

"P. p. phalantha" <ningyuan.sg@gmail.com> skribis:

Toggle quote (14 lines)
> Invoking nm-connection-editor from the command line and repeating these
> steps gave the informative error message:
>
> ```
> (nm-connection-editor:1751): GLib-GIO-ERROR **: 02:02:58.502: Settings
> schema 'org.gnome.nm-applet.eap' is not installed
> Trace/breakpoint trap
> ```
>
> I found a fix via the installation of libnma, thanks to a 2012 thread on
> LinuxQuestions.org:
> https://www.linuxquestions.org/questions/slackware-14/network-manager-applet-1-16-0-i586-1-package-is-missing-%27org-gnome-nm-applet%27-schema-4175670946/.
> After the installation of libnma I was able to successfully add the network.

I experienced this problem just today and your bug report was helpful!

Actually, both libnma and network-manager-applet provide the relevant
schema file, but they’re different:

Toggle snippet (32 lines)
$ find $(guix build libnma) -name \*nm-applet\*
/gnu/store/hh0mq79nqhcwkpx7v68dibcv9lbha7sn-libnma-1.10.2/share/glib-2.0/schemas/org.gnome.nm-applet.gschema.xml
$ diff -u /gnu/store/9hl2p2xzlkkwibankp8604ngha880yn2-network-manager-applet-1.30.0/share/glib-2.0/schemas/org.gnome.nm-applet.gschema.xml /gnu/store/hh0mq79nqhcwkpx7v68dibcv9lbha7sn-libnma-1.10.2/share/glib-2.0/schemas/org.gnome.nm-applet.gschema.xml
--- /gnu/store/9hl2p2xzlkkwibankp8604ngha880yn2-network-manager-applet-1.30.0/share/glib-2.0/schemas/org.gnome.nm-applet.gschema.xml 1970-01-01 01:00:01.000000000 +0100
+++ /gnu/store/hh0mq79nqhcwkpx7v68dibcv9lbha7sn-libnma-1.10.2/share/glib-2.0/schemas/org.gnome.nm-applet.gschema.xml 1970-01-01 01:00:01.000000000 +0100
@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<schemalist>
- <schema id="org.gnome.nm-applet" path="/org/gnome/nm-applet/" gettext-domain="nm-applet">
+ <schema id="org.gnome.nm-applet" path="/org/gnome/nm-applet/" gettext-domain="libnma">
<key name="disable-connected-notifications" type="b">
<default>false</default>
<summary>Disable connected notifications</summary>
@@ -37,4 +37,16 @@
<description>Set to FALSE to disable displaying the applet in the notification area.</description>
</key>
</schema>
+ <schema id="org.gnome.nm-applet.eap">
+ <key name="ignore-ca-cert" type="b">
+ <default>false</default>
+ <summary>Ignore CA certificate</summary>
+ <description>Set this to true to disable warnings about CA certificates in EAP authentication.</description>
+ </key>
+ <key name="ignore-phase2-ca-cert" type="b">
+ <default>false</default>
+ <summary>Ignore CA certificate</summary>
+ <description>Set this to true to disable warnings about CA certificates in phase 2 of EAP authentication.</description>
+ </key>
+ </schema>
</schemalist>

The one in libnma has the extra “.eap” thing.

The attached hack works, but it looks like something’s wrong, maybe

Ludo’.
Toggle diff (26 lines)
diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm
index 0efb98b97c..aac847710d 100644
--- a/gnu/packages/gnome.scm
+++ b/gnu/packages/gnome.scm
@@ -8921,9 +8921,18 @@ (define-public network-manager-applet
"1lswxfxjfbiknspwli8d65i0bnyfazzcnrqckaw0s44zkm7bh5lm"))))
(build-system meson-build-system)
(arguments
- `(#:glib-or-gtk? #t
- #:configure-flags
- '("-Dappindicator=yes")))
+ (list #:glib-or-gtk? #t
+ #:configure-flags #~'("-Dappindicator=yes")
+ #:phases
+ #~(modify-phases %standard-phases
+ (add-after 'install 'copy-gsettings-schema
+ (lambda* (#:key inputs #:allow-other-keys)
+ (define schema
+ "share/glib-2.0/schemas/org.gnome.nm-applet.gschema.xml")
+
+ (delete-file (string-append #$output "/" schema))
+ (symlink (search-input-file inputs schema)
+ (string-append #$output "/" schema)))))))
(native-inputs
(list gettext-minimal
`(,glib "bin") ; for glib-compile-resources, etc.
M
M
Maxim Cournoyer wrote on 30 Mar 2023 22:11
(name . Ludovic Courtès)(address . ludo@gnu.org)
87tty2yp6n.fsf@gmail.com
Hi,

Ludovic Courtès <ludo@gnu.org> writes:

Toggle quote (89 lines)
> Hello,
>
> "P. p. phalantha" <ningyuan.sg@gmail.com> skribis:
>
>> Invoking nm-connection-editor from the command line and repeating these
>> steps gave the informative error message:
>>
>> ```
>> (nm-connection-editor:1751): GLib-GIO-ERROR **: 02:02:58.502: Settings
>> schema 'org.gnome.nm-applet.eap' is not installed
>> Trace/breakpoint trap
>> ```
>>
>> I found a fix via the installation of libnma, thanks to a 2012 thread on
>> LinuxQuestions.org:
>> https://www.linuxquestions.org/questions/slackware-14/network-manager-applet-1-16-0-i586-1-package-is-missing-%27org-gnome-nm-applet%27-schema-4175670946/.
>> After the installation of libnma I was able to successfully add the network.
>
> I experienced this problem just today and your bug report was helpful!
>
> Actually, both libnma and network-manager-applet provide the relevant
> schema file, but they’re different:
>
> $ find $(guix build libnma) -name \*nm-applet\*
> /gnu/store/hh0mq79nqhcwkpx7v68dibcv9lbha7sn-libnma-1.10.2/share/glib-2.0/schemas/org.gnome.nm-applet.gschema.xml
> $ diff -u /gnu/store/9hl2p2xzlkkwibankp8604ngha880yn2-network-manager-applet-1.30.0/share/glib-2.0/schemas/org.gnome.nm-applet.gschema.xml /gnu/store/hh0mq79nqhcwkpx7v68dibcv9lbha7sn-libnma-1.10.2/share/glib-2.0/schemas/org.gnome.nm-applet.gschema.xml
> --- /gnu/store/9hl2p2xzlkkwibankp8604ngha880yn2-network-manager-applet-1.30.0/share/glib-2.0/schemas/org.gnome.nm-applet.gschema.xml 1970-01-01 01:00:01.000000000 +0100
> +++ /gnu/store/hh0mq79nqhcwkpx7v68dibcv9lbha7sn-libnma-1.10.2/share/glib-2.0/schemas/org.gnome.nm-applet.gschema.xml 1970-01-01 01:00:01.000000000 +0100
> @@ -1,6 +1,6 @@
> <?xml version="1.0" encoding="UTF-8"?>
> <schemalist>
> - <schema id="org.gnome.nm-applet" path="/org/gnome/nm-applet/" gettext-domain="nm-applet">
> + <schema id="org.gnome.nm-applet" path="/org/gnome/nm-applet/" gettext-domain="libnma">
> <key name="disable-connected-notifications" type="b">
> <default>false</default>
> <summary>Disable connected notifications</summary>
> @@ -37,4 +37,16 @@
> <description>Set to FALSE to disable displaying the applet in the notification area.</description>
> </key>
> </schema>
> + <schema id="org.gnome.nm-applet.eap">
> + <key name="ignore-ca-cert" type="b">
> + <default>false</default>
> + <summary>Ignore CA certificate</summary>
> + <description>Set this to true to disable warnings about CA certificates in EAP authentication.</description>
> + </key>
> + <key name="ignore-phase2-ca-cert" type="b">
> + <default>false</default>
> + <summary>Ignore CA certificate</summary>
> + <description>Set this to true to disable warnings about CA certificates in phase 2 of EAP authentication.</description>
> + </key>
> + </schema>
> </schemalist>
>
> The one in libnma has the extra “.eap” thing.
>
> The attached hack works, but it looks like something’s wrong, maybe
> related to <https://issues.guix.gnu.org/62513>?
>
> Ludo’.
>
> diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm
> index 0efb98b97c..aac847710d 100644
> --- a/gnu/packages/gnome.scm
> +++ b/gnu/packages/gnome.scm
> @@ -8921,9 +8921,18 @@ (define-public network-manager-applet
> "1lswxfxjfbiknspwli8d65i0bnyfazzcnrqckaw0s44zkm7bh5lm"))))
> (build-system meson-build-system)
> (arguments
> - `(#:glib-or-gtk? #t
> - #:configure-flags
> - '("-Dappindicator=yes")))
> + (list #:glib-or-gtk? #t
> + #:configure-flags #~'("-Dappindicator=yes")
> + #:phases
> + #~(modify-phases %standard-phases
> + (add-after 'install 'copy-gsettings-schema
> + (lambda* (#:key inputs #:allow-other-keys)
> + (define schema
> + "share/glib-2.0/schemas/org.gnome.nm-applet.gschema.xml")
> +
> + (delete-file (string-append #$output "/" schema))
> + (symlink (search-input-file inputs schema)
> + (string-append #$output "/" schema)))))))
> (native-inputs
> (list gettext-minimal
> `(,glib "bin") ; for glib-compile-resources, etc.
>

I've reverted to the previously working version on master, but we should
figure out what's up with this change in recent releases. It may affect
1.42 as well (which is supposedly the current stable release).

Leaving this open. Thanks for investigating.

--
Thanks,
Maxim
J
J
Josselin Poiret wrote on 4 May 2023 10:05
87r0rw4j3u.fsf@jpoiret.xyz
Hi everyone,

Maxim Cournoyer <maxim.cournoyer@gmail.com> writes:

Toggle quote (6 lines)
> I've reverted to the previously working version on master, but we should
> figure out what's up with this change in recent releases. It may affect
> 1.42 as well (which is supposedly the current stable release).
>
> Leaving this open. Thanks for investigating.

The patchset I sent in [1] should resolve this, I've been happily
running with it.

[1] mid:cover.1682758525.git.dev@jpoiret.xyz
--
Josselin Poiret
-----BEGIN PGP SIGNATURE-----

iQHEBAEBCgAuFiEEOSSM2EHGPMM23K8vUF5AuRYXGooFAmRTZ0UQHGRldkBqcG9p
cmV0Lnh5egAKCRBQXkC5FhcaipWAC/9kzFXzRCNljPInrFW8Ce1o6NGXtXRKxDmx
ADesuywfEj8AwpFNFhE+Och2F+sapvgC27uZH0vMooulPQESjnKyDoRjUz9OFso+
RmNd6JnzsQfLZBL1rF8mPgzIkS8IOFlHVVep3T0jy8scxIXxnx/ghzy5IG7AeVme
ZjyOEiYhQ+cDxx87pWHOa9KIYSMWFnxBVLyXs+w1PC6bGwgh5oOR44YKmFX2rJT/
IN1YFP+QexLUFiFIg8wr17kW6hfQJphqH42KrOWBnYG79xPcMOgjvrcWcG0bVSSq
iJfW/YoMBZD0bHhxKwtYS/OLqsmrdz0ZBP2wZ6fOLCv9QuyXXHUcitdmLaY24ycn
HyAnBeNPb1bhvpKUihgz9ySFz4gcZsWyWnZfnorZeP9Gsy5HwUHW5k2pHRE/e41b
4vuF+akrN+hMuGvP5v9wzupjMrA/HGf6Nm0dyld55GACvE058XMmYeYJ3B78bWSk
HrTOOzqO9j2jz4W4RHfvkvp9rhFopE4=
=/cBB
-----END PGP SIGNATURE-----

M
M
Maxim Cournoyer wrote on 7 May 2023 15:09
(name . Josselin Poiret)(address . dev@jpoiret.xyz)
87ttwo1e5a.fsf@gmail.com
Hi,

Josselin Poiret <dev@jpoiret.xyz> writes:

Toggle quote (13 lines)
> Hi everyone,
>
> Maxim Cournoyer <maxim.cournoyer@gmail.com> writes:
>
>> I've reverted to the previously working version on master, but we should
>> figure out what's up with this change in recent releases. It may affect
>> 1.42 as well (which is supposedly the current stable release).
>>
>> Leaving this open. Thanks for investigating.
>
> The patchset I sent in [1] should resolve this, I've been happily
> running with it.

Installed, thank you!

--
Thanks,
Maxim
Closed
?