#1072720 libglib2.0-0: Following fix #1070745, typing `A keys doesn't type an À anymore

Package:
libglib2.0-0
Source:
libglib2.0-0
Description:
GLib library of C routines
Submitter:
Marc Le Bihan
Date:
2024-06-10 13:27:03 UTC
Severity:
normal
Tags:
#1072720#5
Date:
2024-06-07 02:50:47 UTC
From:
To:
Dear Maintainer,

   * What led up to the situation?
     The fix #1070745 about dead keys not working anymore

   * What exactly did you do (or not do) that was effective (or
     ineffective)?
     Typing the backtick followed by a wovel: `A

   * What was the outcome of this action?
    `A

   * What outcome did you expect instead?
     À

#1072720#10
Date:
2024-06-07 12:12:49 UTC
From:
To:
Control: tags -1 + moreinfo

What desktop environment, what keyboard layout and what input method
are you using? And what application are you typing this into?

If your backtick key is really a backtick (like the key printed with `
in the British English keyboard layout) then `A is the expected result.

If your backtick key is a "dead key" grave accent (like the key printed
with ` in some other national and international keyboard layouts) then
À is the expected result.

Have you rebooted since upgrading libglib2.0-0 to version
2.74.6-2+deb12u2?

Are any warning messages logged in the systemd Journal, from either the
application you are using, or ibus?

Or if you run an affected application from a terminal (gnome-terminal
or xterm or similar), are any warning messages logged in that terminal?

    smcv

#1072720#17
Date:
2024-06-07 12:37:22 UTC
From:
To:
that it displays into a reply to this bug report. What I get in a test
virtual machine is:

    Current configuration for the input method:
     * Default mode defined in /etc/default/im-config: 'auto'
     * Active configuration: 'missing' (normally missing)
     * Normal automatic choice: 'ibus' (normally ibus or fcitx5)
     * Override rule: 'zh_CN,fcitx5:zh_TW,fcitx5:zh_HK,fcitx5:zh_SG,fcitx5'
     * Current override choice: '' (Locale='en_GB')
     * Current automatic choice: 'ibus'
     * Number of valid choices: 1 (normally 1)
     * Desktop environment: 'GNOME'
    The configuration set by im-config is activated by re-starting the system.
    Explicit selection is not required to enable the automatic
    configuration, if the active one is default/auto/cjkv/missing.

but your result is presumably different.

I attempted to reproduce this problem in a virtual machine with:

* Debian 12
* GNOME
* German keyboard layout (configured in Settings → Keyboard → Input Sources):
https://en.wikipedia.org/wiki/QWERTZ#/media/File:German-Keyboard-Layout-T2-Version1-large.png
* gnome-text-editor or Libreoffice Writer as the application

GNOME uses ibus as its input method for most languages, including English
and German. ibus is the input method that was affected by #1070745.

I was unable to reproduce the bug with this combination of settings:

When I press the key that would be printed with acute [´] and grave [`]
accents on a German keyboard (2 positions to the right of the [0] key),
the application displays the accent with an underline (acute accent
´ U+00B4 if I do not use Shift, or grave accent/backtick ` U+0060 if I use
Shift). When I press Shift+[A], the underlined accent gets replaced by
Á or À, as appropriate.

If I want to type `A with that keyboard layout, I have to press:
Shift+[`], Space, Shift+[A].

I do not regularly use keyboard layouts that include dead keys, but to
the best of my knowledge, what I described is the expected behaviour
for keyboard layouts that include dead keys. If you would have expected
something different, please describe it.

If this is not the result that you see, please describe what is different
about your system or how I can reproduce the problem.

Thanks,
    smcv

#1072720#22
Date:
2024-06-08 21:16:55 UTC
From:
To:
‌My im-config shows:

Current configuration for the input method:
 * Default mode defined in /etc/default/im-config: 'auto'
 * Active configuration: 'missing' (normally missing)
 * Normal automatic choice: 'ibus' (normally ibus or fcitx5)
 * Override rule: 'zh_CN,fcitx5:zh_TW,fcitx5:zh_HK,fcitx5:zh_SG,fcitx5'
 * Current override choice: '' (Locale='fr_FR')
 * Current automatic choice: 'ibus'
 * Number of valid choices: 1 (normally 1)
 * Desktop environment: 'GNOME'
The configuration set by im-config is activated by re-starting the system.
La sélection explicite n'est pas nécessaire pour permettre la configuration automatique si la sélection active est default/auto/cjkv/missing.

I'm using an Azerty French Keyboard, where the backtick is the grave accent on the 7 key (Alt + 7) https://en.wikipedia.org/wiki/AZERTY#/media/File:KB_France.svg‌
(I call it the backtick, because it's also the character I type for markdown code formatting like `myObject.Fcn()`. But maybe I give it a bad name?)

Whatever, I'm sure that typing the ` under my 7 key followed by an A should return an À, like it once did, and that it doesn't do that anymore.
And I am also sure that it doesn't do that anymore since the bug that happened and affected the dead keys, and that its fix isn't complete.

Regards,
Marc Le Bihan
 

De : "Simon McVittie" <smcv@debian.org>
A : "Marc Le Bihan" <grunt2@laposte.net>,1072720@bugs.debian.org,team@security.debian.org
Envoyé: vendredi 7 Juin 2024 14:12
Objet : Re: Bug#1072720: libglib2.0-0: Following fix #1070745, typing `A keys doesn't type an À anymore
 
Control: tags -1 + moreinfo

What desktop environment, what keyboard layout and what input method
are you using? And what application are you typing this into?

If your backtick key is really a backtick (like the key printed with `
in the British English keyboard layout) then `A is the expected result.

If your backtick key is a "dead key" grave accent (like the key printed
with ` in some other national and international keyboard layouts) then
À is the expected result.

Have you rebooted since upgrading libglib2.0-0 to version
2.74.6-2+deb12u2?

Are any warning messages logged in the systemd Journal, from either the
application you are using, or ibus?

Or if you run an affected application from a terminal (gnome-terminal
or xterm or similar), are any warning messages logged in that terminal?

smcv

#1072720#27
Date:
2024-06-08 21:26:09 UTC
From:
To:
‌My im-config shows:

Current configuration for the input method:
 * Default mode defined in /etc/default/im-config: 'auto'
 * Active configuration: 'missing' (normally missing)
 * Normal automatic choice: 'ibus' (normally ibus or fcitx5)
 * Override rule: 'zh_CN,fcitx5:zh_TW,fcitx5:zh_HK,fcitx5:zh_SG,fcitx5'
 * Current override choice: '' (Locale='fr_FR')
 * Current automatic choice: 'ibus'
 * Number of valid choices: 1 (normally 1)
 * Desktop environment: 'GNOME'
The configuration set by im-config is activated by re-starting the system.
La sélection explicite n'est pas nécessaire pour permettre la configuration automatique si la sélection active est default/auto/cjkv/missing.

I'm using an Azerty French Keyboard, where the backtick is the grave accent on the 7 key (Alt + 7) https://en.wikipedia.org/wiki/AZERTY#/media/File:KB_France.svg‌
(I call it the backtick, because it's also the character I type for markdown code formatting like `myObject.Fcn()`. But maybe I give it a bad name?)

Whatever, I'm sure that typing the ` under my 7 key followed by an A should return an À, like it once did, and that it doesn't do that anymore.
And I am also sure that it doesn't do that anymore since the bug that happened and affected the dead keys, and that its fix isn't complete.

Regards,
Marc Le Bihan‌

De : "Simon McVittie" <smcv@debian.org>
A : "Marc Le Bihan" <grunt2@laposte.net>,1072720@bugs.debian.org,team@security.debian.org
Envoyé: vendredi 7 Juin 2024 14:37
Objet : Re: Bug#1072720: libglib2.0-0: Following fix #1070745, typing `A keys doesn't type an À anymore
 
that it displays into a reply to this bug report. What I get in a test
virtual machine is:

Current configuration for the input method:
* Default mode defined in /etc/default/im-config: 'auto'
* Active configuration: 'missing' (normally missing)
* Normal automatic choice: 'ibus' (normally ibus or fcitx5)
* Override rule: 'zh_CN,fcitx5:zh_TW,fcitx5:zh_HK,fcitx5:zh_SG,fcitx5'
* Current override choice: '' (Locale='en_GB')
* Current automatic choice: 'ibus'
* Number of valid choices: 1 (normally 1)
* Desktop environment: 'GNOME'
The configuration set by im-config is activated by re-starting the system.
Explicit selection is not required to enable the automatic
configuration, if the active one is default/auto/cjkv/missing.

but your result is presumably different.

I attempted to reproduce this problem in a virtual machine with:

* Debian 12
* GNOME
* German keyboard layout (configured in Settings → Keyboard → Input Sources):
https://en.wikipedia.org/wiki/QWERTZ#/media/File:German-Keyboard-Layout-T2-Version1-large.png
* gnome-text-editor or Libreoffice Writer as the application

GNOME uses ibus as its input method for most languages, including English
and German. ibus is the input method that was affected by #1070745.

I was unable to reproduce the bug with this combination of settings:

When I press the key that would be printed with acute [´] and grave [`]
accents on a German keyboard (2 positions to the right of the [0] key),
the application displays the accent with an underline (acute accent
´ U+00B4 if I do not use Shift, or grave accent/backtick ` U+0060 if I use
Shift). When I press Shift+[A], the underlined accent gets replaced by
Á or À, as appropriate.

If I want to type `A with that keyboard layout, I have to press:
Shift+[`], Space, Shift+[A].

I do not regularly use keyboard layouts that include dead keys, but to
the best of my knowledge, what I described is the expected behaviour
for keyboard layouts that include dead keys. If you would have expected
something different, please describe it.

If this is not the result that you see, please describe what is different
about your system or how I can reproduce the problem.

Thanks,
smcv

#1072720#32
Date:
2024-06-09 15:23:27 UTC
From:
To:
(Sorry, it's my first bug report on Debian: I am doing mistakes, like a duplicate message already)

"If your backtick key is a "dead key" grave accent (like the key printed
with ` in some other national and international keyboard layouts) then
À is the expected result."
=> It's the case in the French keyboard grave accent and backtick are the same under the 7 key https://en.wikipedia.org/wiki/AZERTY#/media/File:KB_France.svg‌
=> Please note that ^e gives ê correctly
but `A doesn't

Have you rebooted since upgrading libglib2.0-0 to version
2.74.6-2+deb12u2?
=> Yes

Are any warning messages logged in the systemd Journal, from either the
application you are using, or ibus?
=> No problem found

Or if you run an affected application from a terminal (gnome-terminal
or xterm or similar), are any warning messages logged in that terminal?
=> gedit, terminal, any programming IDE encounter aren't complaining against any problem, but they are able to type ê but not À.
‌
The fact that some of you can't reproduce the problem I'm encountering easily doesn't surprise me,
as #1070745 tricked most US keyboard users, at least, and was able to pass most tests, leading to a faulty release without being detected.
If the trouble of dead keys not working was immediately detectable, I guess that the release would have been fixed of the dead keys problem before being sent to public.

im-config shows:

Current configuration for the input method:
 * Default mode defined in /etc/default/im-config: 'auto'
 * Active configuration: 'missing' (normally missing)
 * Normal automatic choice: 'ibus' (normally ibus or fcitx5)
 * Override rule: 'zh_CN,fcitx5:zh_TW,fcitx5:zh_HK,fcitx5:zh_SG,fcitx5'
 * Current override choice: '' (Locale='fr_FR')
 * Current automatic choice: 'ibus'
 * Number of valid choices: 1 (normally 1)
 * Desktop environment: 'GNOME'
The configuration set by im-config is activated by re-starting the system.
La sélection explicite n'est pas nécessaire pour permettre la configuration automatique si la sélection active est default/auto/cjkv/missing.

My guess is that the problem has for cause something around what you're writing:
With most keyboards, most languages, `A doesn't give À
But with some, like the French one that has the backtick for grave accent too, it should return À
When you did the fix that repaired most of the #1070745, didn't you forget to enable/check the rules for keyboards having backtick for grave accent?
I don't know how to write this idea, having very low knowledge about Debian's internal. But I feel that it could be something like that.

Regards,

Marc Le Bihan


De : "Simon McVittie" <smcv@debian.org>
A : "Marc Le Bihan" <grunt2@laposte.net>,1072720@bugs.debian.org,team@security.debian.org
Envoyé: vendredi 7 Juin 2024 14:37
Objet : Re: Bug#1072720: libglib2.0-0: Following fix #1070745, typing `A keys doesn't type an À anymore
 
that it displays into a reply to this bug report. What I get in a test
virtual machine is:

Current configuration for the input method:
* Default mode defined in /etc/default/im-config: 'auto'
* Active configuration: 'missing' (normally missing)
* Normal automatic choice: 'ibus' (normally ibus or fcitx5)
* Override rule: 'zh_CN,fcitx5:zh_TW,fcitx5:zh_HK,fcitx5:zh_SG,fcitx5'
* Current override choice: '' (Locale='en_GB')
* Current automatic choice: 'ibus'
* Number of valid choices: 1 (normally 1)
* Desktop environment: 'GNOME'
The configuration set by im-config is activated by re-starting the system.
Explicit selection is not required to enable the automatic
configuration, if the active one is default/auto/cjkv/missing.

but your result is presumably different.

I attempted to reproduce this problem in a virtual machine with:

* Debian 12
* GNOME
* German keyboard layout (configured in Settings → Keyboard → Input Sources):
https://en.wikipedia.org/wiki/QWERTZ#/media/File:German-Keyboard-Layout-T2-Version1-large.png
* gnome-text-editor or Libreoffice Writer as the application

GNOME uses ibus as its input method for most languages, including English
and German. ibus is the input method that was affected by #1070745.

I was unable to reproduce the bug with this combination of settings:

When I press the key that would be printed with acute [´] and grave [`]
accents on a German keyboard (2 positions to the right of the [0] key),
the application displays the accent with an underline (acute accent
´ U+00B4 if I do not use Shift, or grave accent/backtick ` U+0060 if I use
Shift). When I press Shift+[A], the underlined accent gets replaced by
Á or À, as appropriate.

If I want to type `A with that keyboard layout, I have to press:
Shift+[`], Space, Shift+[A].

I do not regularly use keyboard layouts that include dead keys, but to
the best of my knowledge, what I described is the expected behaviour
for keyboard layouts that include dead keys. If you would have expected
something different, please describe it.

If this is not the result that you see, please describe what is different
about your system or how I can reproduce the problem.

Thanks,
smcv

#1072720#37
Date:
2024-06-09 17:15:58 UTC
From:
To:
ibus and xkeyboard-config maintainers and debian-l10n-french cc'd in
the hope that someone understands what is happening here, because I dont
think this is actually a libglib2.0-0 bug.
specific keyboard layout. The bug that caused #1070745 was that a
security fix in GLib broke the communication between applications and
ibus, so *all* dead keys stopped working (and so did everything else
that goes via ibus, like Compose key combinations). I fixed #1070745 by
making GLib's security checks less strict, so that ibus could work again.

In the bug you've reported, the dead-keys feature does work in general
(I know this because you say you can still type [^],[e] and get ê),
so ibus must be *mostly* working - but there must be a more specific problem
that affects the [`],Shift+[A] sequence, at least with your settings.

Please look at /var/log/apt/history.log. What other packages did you update
at around the time that this stopped working for you? Is there a
recently-updated package that you can downgrade that gives you the old
behaviour back?
to be only a backtick symbol, and doesn't act as a dead key. The German
layout that I tested is unusual in having [`] available as a dead key
which can be combined with letters to get an accented letter.

On my UK English keyboard layout /usr/share/X11/xkb/symbols/gb, the key
marked [`] sends xkb symbol "grave", which is not a dead key. US English
/usr/share/X11/xkb/symbols/us is similar.

On the German layout that I tested, /usr/share/X11/xkb/symbols/de,
the key to the left of Backspace (with Shift held) sends xkb symbol
"dead_grave", which *is* a dead key.

However, the French layout in /usr/share/X11/xkb/symbols/fr says that
pressing the 7 key (with AltGr held) sends "grave" like my UK English
layout, and not "dead_grave" like the German layout. So if that previously
participated in dead-key sequences, I don't understand why...

According to the same file, if you press AltGr + [*] (the key printed with
* and µ, between Shift and $) then *that* should send "dead_grave", which
is a dead key that can be followed by a letter to get a grave accent.
grave accent?

Or, the other way around: do you expect [^],Shift+[e] to give you Ê,
and if yes, what does it actually do?

Or similar sequences?

When you say you are typing ` followed by A, what exact keys are you
pressing? You say that ` is on the 7 key, but based on the diagram you
linked, pressing the 7 key without Shift should be è.

I think when you say you type `A and expect to get À, what you are
typing is actually: AltGr + [7], Shift + [A]. Is that correct?
Or if not, what?

Similarly, when you say you are typing ^ followed by e, what exact
keys are you pressing? Is it the key between P and $, followed by [E]?
Or is it AltGr+[9] followed by [E]?

If I'm reading correctly, the key between P and $ is expected to be a
"dead_circumflex" (which is part of dead-key sequences) but AltGr+[9]
is meant to be an "asciicircum" which is not a dead key.

    smcv

#1072720#42
Date:
2024-06-09 17:23:00 UTC
From:
To:
Security team:

Based on this information, I don't think this is a regression caused by
the GLib security update, or in fact anything to do with GLib: it seems
that ibus is "mostly" working, and the GLib regression resulted in ibus
not working at all.

I've sent a more detailed response to the bug submitter, removing the
security team from Cc and adding some relevant maintainers to try to work
out what is going on.

    smcv

#1072720#47
Date:
2024-06-09 17:36:31 UTC
From:
To:
Were you perhaps using the "latin9" or "French (legacy, alt.)" keyboard
layout before? Unlike the default French keyboard layout, the latin9 layout
*does* map AltGr+[7] to "dead_grave", a dead key.

I don't know the name of that keyboard layout in French - it might be
"Français (obsolète, variante)". Perhaps a French-speaking developer
could help here?

What is the output of these commands?

    cat /etc/default/keyboard

and

    dconf dump /org/gnome/desktop/input-sources/

#1072720#52
Date:
2024-06-09 18:08:54 UTC
From:
To:
Ack, thanks for the detailed followup.

Cheers,
        Moritz

#1072720#57
Date:
2024-06-09 21:13:32 UTC
From:
To:
‌
$ cat /etc/default/keyboard
# KEYBOARD CONFIGURATION FILE

# Consult the keyboard(5) manual page.

XKBMODEL="pc105"
XKBLAYOUT="fr"
XKBVARIANT="azerty"
XKBOPTIONS="compose:menu"

BACKSPACE="guess"

$ dconf dump /org/gnome/desktop/input-sources/
[/]
show-all-sources=false
sources=[('xkb', 'fr+azerty')]
xkb-options=['lv3:ralt_switch']

I'm using a 105 classical keyboard.

I looks like the backtick is now a backtick on french keyboard,
and isn't considered as a grave accent anymore => it isn't a dead key anymore.

What I notice, is that when I type the backtick character, even on a terminal,
it doesn't wait without displaying nothing (like previous versions of Debian did) or doesn't wait showing the backtick underlined
like it does when I use the ^ dead key.

When I'm using the ^ key, I :
1. type ^ and see on screen: ^ underlined : this marks a dead key
2. the terminal or editor is now "waiting" for me to type another character.
3. I type any other character.  ^z => ẑ, ^a => â...

When I'm using the ` dead key, I :
1. type ` and see on screen:  ` immediately, and with no underline
2. the terminal or editor doesn't wait for me to type another character especially.
3. I type any other character.  `z, `a...
In fact, ` isn't considered as a dead char at all.

For À, I shall type: <right alt-7><shift>a to make it appear, in normal cases. Here it responds `A
<right alt-9><shift>e gives ^E
<right alt-9>e gives ^e
interesting! while the ^ key right to the P on the french keyboard, provides a ^ that is a dead char and returns an ê
the ^ given by a <right alt-9>e isn't a dead char!

It's the top row of keys of a 102 or 105 keyboard that would not fire dead keys anymore?

My apt history (I noticed the problem on May, 8th) :

Start-Date: 2024-05-07  06:41:05
Commandline: apt-get upgrade
Requested-By: lebihan (1000)
Upgrade: linux-compiler-gcc-12-x86:amd64 (6.1.85-1, 6.1.90-1), linux-kbuild-6.1:amd64 (6.1.85-1, 6.1.90-1), virtualbox-7.0:amd64 (7.0.16-162802~Debian~bookworm, 7.0.18-162988~Debian~bookworm), linux-libc-dev:amd64 (6.1.85-1, 6.1.90-1)
End-Date: 2024-05-07  06:41:41

Start-Date: 2024-05-08  06:04:05
Commandline: apt-get upgrade
Requested-By: lebihan (1000)
Upgrade: google-chrome-stable:amd64 (124.0.6367.118-1, 124.0.6367.155-1), libglib2.0-bin:amd64 (2.74.6-2, 2.74.6-2+deb12u1), libglib2.0-data:amd64 (2.74.6-2, 2.74.6-2+deb12u1), gnome-shell:amd64 (43.9-0+deb12u1, 43.9-0+deb12u2), gnome-shell-common:amd64 (43.9-0+deb12u1, 43.9-0+deb12u2), libglib2.0-0:amd64 (2.74.6-2, 2.74.6-2+deb12u1), libglib2.0-0:i386 (2.74.6-2, 2.74.6-2+deb12u1), gnome-shell-extension-prefs:amd64 (43.9-0+deb12u1, 43.9-0+deb12u2)
End-Date: 2024-05-08  06:04:12

Start-Date: 2024-05-08  09:22:27
Commandline: apt-get dist-upgrade
Requested-By: lebihan (1000)
Install: linux-headers-6.1.0-21-amd64:amd64 (6.1.90-1, automatic), linux-headers-6.1.0-21-common:amd64 (6.1.90-1, automatic), linux-image-6.1.0-21-amd64:amd64 (6.1.90-1, automatic)
Upgrade: linux-headers-amd64:amd64 (6.1.85-1, 6.1.90-1), linux-image-amd64:amd64 (6.1.85-1, 6.1.90-1)
End-Date: 2024-05-08  09:23:03

Start-Date: 2024-05-09  07:03:38
Commandline: apt-get upgrade
Requested-By: lebihan (1000)
Upgrade: libglib2.0-bin:amd64 (2.74.6-2+deb12u1, 2.74.6-2+deb12u2), libglib2.0-data:amd64 (2.74.6-2+deb12u1, 2.74.6-2+deb12u2), libglib2.0-0:amd64 (2.74.6-2+deb12u1, 2.74.6-2+deb12u2), libglib2.0-0:i386 (2.74.6-2+deb12u1, 2.74.6-2+deb12u2)
End-Date: 2024-05-09  07:03:40

Start-Date: 2024-05-09  12:09:21
Commandline: apt-get upgrade
Requested-By: lebihan (1000)
Upgrade: libjavascriptcoregtk-4.1-0:amd64 (2.42.5-1~deb12u1, 2.44.1-1~deb12u1), gir1.2-javascriptcoregtk-4.0:amd64 (2.42.5-1~deb12u1, 2.44.1-1~deb12u1), gir1.2-javascriptcoregtk-4.1:amd64 (2.42.5-1~deb12u1, 2.44.1-1~deb12u1), gir1.2-webkit2-4.0:amd64 (2.42.5-1~deb12u1, 2.44.1-1~deb12u1), gir1.2-webkit2-4.1:amd64 (2.42.5-1~deb12u1, 2.44.1-1~deb12u1), libjavascriptcoregtk-6.0-1:amd64 (2.42.5-1~deb12u1, 2.44.1-1~deb12u1), libjavascriptcoregtk-4.0-18:amd64 (2.42.5-1~deb12u1, 2.44.1-1~deb12u1), libwebkit2gtk-4.1-0:amd64 (2.42.5-1~deb12u1, 2.44.1-1~deb12u1), libwebkit2gtk-4.0-37:amd64 (2.42.5-1~deb12u1, 2.44.1-1~deb12u1), libwebkitgtk-6.0-4:amd64 (2.42.5-1~deb12u1, 2.44.1-1~deb12u1)
End-Date: 2024-05-09  12:09:25

Start-Date: 2024-05-10  18:04:46
Commandline: apt-get upgrade
Requested-By: lebihan (1000)
Upgrade: docker-ce-cli:amd64 (5:26.1.1-1~debian.12~bookworm, 5:26.1.2-1~debian.12~bookworm), libdav1d-dev:amd64 (1.0.0-2, 1.0.0-2+deb12u1), google-chrome-stable:amd64 (124.0.6367.155-1, 124.0.6367.201-1), postgresql-14:amd64 (14.11-1.pgdg120+2, 14.12-1.pgdg120+1), libdav1d6:amd64 (1.0.0-2, 1.0.0-2+deb12u1), libdav1d6:i386 (1.0.0-2, 1.0.0-2+deb12u1), filebeat:amd64 (8.13.3, 8.13.4), logstash:amd64 (1:8.13.3-1, 1:8.13.4-1), docker-ce:amd64 (5:26.1.1-1~debian.12~bookworm, 5:26.1.2-1~debian.12~bookworm), postgresql-client-14:amd64 (14.11-1.pgdg120+2, 14.12-1.pgdg120+1), docker-ce-rootless-extras:amd64 (5:26.1.1-1~debian.12~bookworm, 5:26.1.2-1~debian.12~bookworm), postgresql-common:amd64 (259.pgdg120+1, 260.pgdg120+1), postgresql-client-common:amd64 (259.pgdg120+1, 260.pgdg120+1), kibana:amd64 (8.13.3, 8.13.4), code:amd64 (1.89.0-1714530869, 1.89.1-1715060508), libpq5:amd64 (16.2-1.pgdg120+2, 16.3-1.pgdg120+1), elasticsearch:amd64 (8.13.3, 8.13.4)
End-Date: 2024-05-10  18:05:39

Regards,

Marc Le Bihan

De : "Simon McVittie" <smcv@debian.org>
A : grunt2@laposte.net,1072720@bugs.debian.org,xkeyboard-config@packages.debian.org,debian-l10n-french@lists.debian.org,ibus@packages.debian.org
Envoyé: dimanche 9 Juin 2024 19:36
Objet : Re: Bug#1072720: libglib2.0-0: Following fix #1070745, typing `A keys doesn't type an À anymore
 

Were you perhaps using the "latin9" or "French (legacy, alt.)" keyboard
layout before? Unlike the default French keyboard layout, the latin9 layout
*does* map AltGr+[7] to "dead_grave", a dead key.

I don't know the name of that keyboard layout in French - it might be
"Français (obsolète, variante)". Perhaps a French-speaking developer
could help here?

What is the output of these commands?

cat /etc/default/keyboard

and

dconf dump /org/gnome/desktop/input-sources/

#1072720#62
Date:
2024-06-09 22:47:28 UTC
From:
To:
Control: reassign -1 xkb-data 2.35.1-1
(and)

It seems that instead of the "default" French keyboard, you're using a
French keyboard variant named "azerty". This confuses me, because I
thought the "default" French keyboard layout is already an AZERTY
layout, so specifying AZERTY seems redundant... but the two layouts
seem to be maybe different?

What was the most recent date when your keyboard had the behaviour
that you expected, and what version of Debian were you running at
that time?

That's the expected behaviour on keyboard layouts where the backtick is
just a backtick and not a dead key, like my UK English. In these layouts,
the data file defining the keyboard layout would say "grave".

The behaviour you were hoping for (waits while displaying an underlined
backtick/accent) is what is expected in keyboard layouts where the
backtick is defined to be a dead key, like German. In these layouts, the
data file defining the keyboard layout would say "dead_grave".

Some French keyboard layouts have AltGr+[7] as a backtick ("grave"), like
it is for the similarly labelled key in UK English. Others have AltGr+[7]
as a dead key ("dead_grave"), like it for the similarly labelled key in
German. So, it matters which exact variant you have selected.

It seems that your keyboard layout is one of the variants with "grave"
but you were expecting that it should have "dead_grave". This could
be because your configuration has changed, or because your configured
variant has stayed the same but its meaning has changed. I don't know
what component that would be a bug in, but it isn't GLib that controls
this, so it seems very unlikely to be a GLib regression.

The "default" French keyboard layout is probably labelled in the UI as
just "Français" or similar, with no other information. In that layout,
as far as I can see from /usr/share/X11/xkb/symbols/fr, the symbol you
get from typing AltGr+[7] is "grave", so it is intentionally not a dead
key (same as the backtick on a UK English keyboard).

But, there are several different layouts listed in
/usr/share/X11/xkb/symbols/fr. Some of them have AltGr+[7] mapped to
"dead_grave", which *is* a dead key (same as the backtick on a German
keyboard). The ones I can find that have that behaviour are
identified as "French (legacy, alt.)" and "French (Breton)" (but Breton
is not an AZERTY layout so probably you don't want that one).

"French (legacy, alt.)" might be identified as "Français (obsolète,
variante)" with French language settings.

Your current configuration with XKBVARIANT="azerty" and
sources=[('xkb', 'fr+azerty')] should mean that you are using the
"azerty" variant (lines 1059 to 1141 in /usr/share/X11/xkb/symbols/fr
from xkb-data version /usr/share/X11/xkb/symbols/fr) and in that variant,
as far as I can see, AltGr+[7] is not intended to be a dead key.

There is also a variant "French (AZERTY, AFNOR)" which moves the
"dead_grave" dead key from AltGr+[7] to AltGr+[3], while providing
it as a dead key.

If the French-speaking community considers the layouts in
/usr/share/X11/xkb/symbols/fr to be wrong, then that would be something
that would need to be fixed in xkb-data (part of xkeyboard-config).
I don't know whether what you expected is the same as what the
French-speaking community would expect.

All of this is consistent with your [`] behaving as an ordinary backtick
key (not a dead key), like the one on a UK English keyboard.

That's what /usr/share/X11/xkb/symbols/fr says. I don't know whether that's
what a typical French keyboard user would expect, but it's what the xkb
data says should happen; so if this is wrong behaviour, that would be an
xkb-data bug.
which exact variant is configured.

I didn't know anything about French keyboard layouts until today,
and /usr/share/X11/xkb/symbols/fr has all the information that I'm
referring to, so please see that file for full details, or ask a French
user support list such as <https://lists.debian.org/debian-user-french/>
which will have better information than I do.

    smcv

#1072720#73
Date:
2024-06-10 03:48:44 UTC
From:
To:
The idea that my layout could have changed was pertinent:

I did a
$ sudo dpkg-reconfigure keyboard-configuration
chose pc105 with AZERTY AFNOR

$ cat /etc/default/keyboard
I've did a reconfiguration of my keyboard an now I have

XKBMODEL="pc105"
XKBLAYOUT="fr"
XKBVARIANT="afnor"
XKBOPTIONS=""

BACKSPACE="guess"

$ dconf dump /org/gnome/desktop/input-sources/
[/]
show-all-sources=false
sources=[('xkb', 'fr+azerty')]
xkb-options=['lv3:ralt_switch']

as ` dead keys on the top row weren't working still, I've rebooted.
I saw a show FAILED somewhere during that reboot (that didn't appeared in further reboots after) but I came to the login screen.

On logscreen then, and still now, I have the french keyboard
BUT with the ! (exclamation mark) replaced by the ; (semicolon)

then entering the session, layout revert to normal, except that I still don't have `a or `A giving À
‌

De : "Simon McVittie" <smcv@debian.org>
A : grunt2@laposte.net,1072720@bugs.debian.org,xkeyboard-config@packages.debian.org,debian-l10n-french@lists.debian.org,ibus@packages.debian.org
Envoyé: dimanche 9 Juin 2024 19:36
Objet : Re: Bug#1072720: libglib2.0-0: Following fix #1070745, typing `A keys doesn't type an À anymore
 

Were you perhaps using the "latin9" or "French (legacy, alt.)" keyboard
layout before? Unlike the default French keyboard layout, the latin9 layout
*does* map AltGr+[7] to "dead_grave", a dead key.

I don't know the name of that keyboard layout in French - it might be
"Français (obsolète, variante)". Perhaps a French-speaking developer
could help here?

What is the output of these commands?

cat /etc/default/keyboard

and

dconf dump /org/gnome/desktop/input-sources/

#1072720#78
Date:
2024-06-10 09:27:45 UTC
From:
To:
This changes the keyboard layout that is used for the login screen, and
for any session that does not have its own, separate configuration.
It does not change the keyboard layout for sessions that have already
saved their own session-specific configuration.

Your personal GNOME configuration is still using fr+azerty. If you want
a different layout while you are logged in to GNOME, you will need to
reconfigure that in the Settings application (gnome-control-center).

If you want to reset the layout used within GNOME to match the layout
used by the login screen, you can run

    dconf reset /org/gnome/desktop/input-sources/sources

and then log out and back in.

That's the AFNOR layout that you selected. Several other punctuation marks
are in different places in the AFNOR layout: see <https://norme-azerty.fr/>
for details.

If you don't want the punctuation to move around in this way, then you
should not select the AFNOR variant.

https://norme-azerty.fr/ shows "AZERTY traditionnel" which is something
similar to the layout you were previously using, and
"Nouvel AZERTY" which is the layout that is labelled as AFNOR in Debian.

    smcv

#1072720#83
Date:
2024-06-10 10:35:25 UTC
From:
To:
I've chosen another configuration to regain the exclamation mark with
sudo dpkg-reconfigure keyboard-configuration

Among GNOME settings, I have three choices available:
Français
Français Azerty
Français Azerty (AFNOR)

the two firsts displays with ` under the 7 (and Français as also an 1/8 sign at the key upper top), but ` of the <alt-right>-7 isn't a dead key and doesn't produce a À.
the last one, Français Azerty (AFNOR), makes the <alt-right>-7 produce a _ sign (or something like similar) that is a dead key!

Français
Français Azerty
don't fire dead keys on the first row of keys

but
Français Azerty (AFNOR)
does. Strange...

De : "Simon McVittie" <smcv@debian.org>
A : grunt2@laposte.net,1072720@bugs.debian.org,xkeyboard-config@packages.debian.org,debian-l10n-french@lists.debian.org,ibus@packages.debian.org
Envoyé: lundi 10 Juin 2024 11:27
Objet : Re: Bug#1072720: libglib2.0-0: Following fix #1070745, typing `A keys doesn't type an À anymore
 

This changes the keyboard layout that is used for the login screen, and
for any session that does not have its own, separate configuration.
It does not change the keyboard layout for sessions that have already
saved their own session-specific configuration.

Your personal GNOME configuration is still using fr+azerty. If you want
a different layout while you are logged in to GNOME, you will need to
reconfigure that in the Settings application (gnome-control-center).

If you want to reset the layout used within GNOME to match the layout
used by the login screen, you can run

dconf reset /org/gnome/desktop/input-sources/sources

and then log out and back in.

That's the AFNOR layout that you selected. Several other punctuation marks
are in different places in the AFNOR layout: see
for details.

If you don't want the punctuation to move around in this way, then you
should not select the AFNOR variant.

https://norme-azerty.fr/ shows "AZERTY traditionnel" which is something
similar to the layout you were previously using, and
"Nouvel AZERTY" which is the layout that is labelled as AFNOR in Debian.

smcv

#1072720#88
Date:
2024-06-10 11:37:43 UTC
From:
To:
There should be a lot more than that. I don't speak French, but in an
English-language GNOME installation on Debian 12, if I click on "Other"
and search for French, choices available to me include:

* French (alt.)
* French (alt., Latin-9 only)
* French (alt., no dead keys)
* French (legacy, alt.)
* French (legacy, alt., no dead keys)
* French (no dead keys)

... and many more. Many of these are AZERTY layouts even though their
names don't specifically say so.

Based on the information in /usr/share/X11/xkb/symbols/fr, it seems that
"French (legacy, alt.)" should be an AZERTY layout where AltGr+[7] is a
"dead_grave" dead key.

If I'm reading the translation files correctly, the French translation
of "French (legacy, alt.)" might be "Français (obsolète, variante)".

I am not a French speaker and I am not familiar with the history
of French keyboard layouts, so I cannot say whether you are right
or wrong to expect that AltGr+[7] should be a dead key. Perhaps
<https://lists.debian.org/debian-user-french/> would be able to clarify
whether there is a bug in xkb-data or not.

Based on the information available in this bug report, I'm confident that
GLib is now doing the right thing, so this is not a GLib bug.

If you think this is a regression when compared with older versions of
Debian, then the xkb-data maintainers will need to know the answer to
this question:

What was the most recent date when your keyboard had the behaviour
that you expected, and what version of Debian were you running at
that time?

Thanks,
    smcv

#1072720#93
Date:
2024-06-10 13:23:11 UTC
From:
To:
So it isn't a bug, eventually, that I've encountered. Except that I don't understand how my keyboard might have changed its layout once.
Thanks for all the help you provided !

It's fine now. À È Ù Ì Ỳ...

Regards,

Marc Le Bihan

De : "Simon McVittie" <smcv@debian.org>
A : grunt2@laposte.net,1072720@bugs.debian.org,xkeyboard-config@packages.debian.org,debian-l10n-french@lists.debian.org,ibus@packages.debian.org
Envoyé: lundi 10 Juin 2024 13:37
Objet : Re: Bug#1072720: libglib2.0-0: Following fix #1070745, typing `A keys doesn't type an À anymore
 

There should be a lot more than that. I don't speak French, but in an
English-language GNOME installation on Debian 12, if I click on "Other"
and search for French, choices available to me include:

* French (alt.)
* French (alt., Latin-9 only)
* French (alt., no dead keys)
* French (legacy, alt.)
* French (legacy, alt., no dead keys)
* French (no dead keys)

... and many more. Many of these are AZERTY layouts even though their
names don't specifically say so.

Based on the information in /usr/share/X11/xkb/symbols/fr, it seems that
"French (legacy, alt.)" should be an AZERTY layout where AltGr+[7] is a
"dead_grave" dead key.

If I'm reading the translation files correctly, the French translation
of "French (legacy, alt.)" might be "Français (obsolète, variante)".

I am not a French speaker and I am not familiar with the history
of French keyboard layouts, so I cannot say whether you are right
or wrong to expect that AltGr+[7] should be a dead key. Perhaps
would be able to clarify
whether there is a bug in xkb-data or not.

Based on the information available in this bug report, I'm confident that
GLib is now doing the right thing, so this is not a GLib bug.

If you think this is a regression when compared with older versions of
Debian, then the xkb-data maintainers will need to know the answer to
this question:

What was the most recent date when your keyboard had the behaviour
that you expected, and what version of Debian were you running at
that time?

Thanks,
smcv