--- Begin Message ---
- To: Debian Bug Tracking System <submit@bugs.debian.org>
- Subject: unblock: gnome-desktop/43.2-2
- From: Simon McVittie <smcv@debian.org>
- Date: Thu, 9 Mar 2023 13:16:32 +0000
- Message-id: <ZAncMM79aSCxjN/0@momentum.pseudorandom.co.uk>
Package: release.debian.org
Severity: normal
User: release.debian.org@packages.debian.org
Usertags: unblock
X-Debbugs-Cc: gnome-desktop@packages.debian.org, debian-japanese@lists.debian.org
Control: affects -1 + src:gnome-desktop
Please unblock package gnome-desktop
[ Reason ]
Make default input method for ja_JP match what tasksel installs
(#1029821, grave)
[ Impact ]
If not accepted, Japanese-speaking users will find that gnome-initial-setup
leaves them without a working input method, unless they happen to have
installed ibus-anthy separately. This is because GNOME upstream prefers
to default to ibus-anthy, but Japanese-speaking Debian/Ubuntu users say
that ibus-mozc is a higher-quality default on architectures where it
is built, and therefore that's what task-japanese-gnome-desktop pulls in.
If this change is not accepted, then we should change tasksel to make
task-japanese-gnome-desktop pull in ibus-anthy instead of ibus-mozc
(<https://salsa.debian.org/installer-team/tasksel/-/merge_requests/25>);
but Japanese-speaking users have told us that defaulting to ibus-anthy
would be unacceptable, so we have not gone that route.
[ Tests ]
Manually tested via the steps in debian/README.source of unstable's
gnome-initial-setup, both with ibus-mozc installed (reflecting what will
happen on x86 and ARM) and with only ibus-anthy installed (reflecting
what will happen on ppc64el and s390x, where ibus-mozc is unavailable
and ibus-anthy is the best thing available for Japanese users).
Also carried out an installation of bookworm in Japanese (using a
parallel installation in English as a reference for which button does
what) and before logging in to GNOME for the first time, logged in via
tty to upgrade gnome-initial-setup and all packages from src:gnome-desktop
to their unstable versions.
I can't read or write Japanese, so I can't tell the difference between
anthy and mozc; but in the Japanese installation,
`gsettings list-recursively` contained
org.gnome.desktop.input-sources sources [('xkb', 'jp'), ('ibus', 'mozc-jp')]
which seems like it's probably the desired result. Also, the option
selected in GNOME's menu of input methods by default is
"日本語 (Mozc)" which again seems plausibly correct.
[ Risks ]
The core change here is trivial: it's just replacing the name of one
IBus input method with another.
The hack to fall back to ibus-anthy if ibus-mozc isn't installed is
less trivial, but still straightforward. I wish we didn't have to do this,
but from what I understand of the problem, we need this for unconventional
CPU architectures.
If the accompanying gnome-initial-setup change (see separate unblock
request) is not accepted, then the UI will be sub-optimal (the ibus-mozc
option will appear as "mozc-jp" in the UI instead of the intended
"Japanese (Mozc)"), but that's not actually a regression: the same thing
happens today for ibus-anthy.
[ Checklist ]
[x] all changes are documented in the d/changelog
[x] I reviewed all changes and I approve them
[x] attach debdiff against the package in testing
unblock gnome-desktop/43.2-2
diffstat for gnome-desktop-43.2 gnome-desktop-43.2
debian/changelog | 25 ++++++
debian/control | 6 -
debian/control.in | 4 -
debian/libgnome-desktop-doc.lintian-overrides | 2
debian/patches/Fall-back-to-ibus-anthy-if-ibus-mozc-jp-is-unavailable.patch | 39 ++++++++++
debian/patches/Use-mozc-as-the-default-input-source-for-Japanese.patch | 34 ++++++++
debian/patches/languages-Look-at-LOCPATH-before-compile-time-LIBLOCALEDI.patch | 8 +-
debian/patches/series | 2
libgnome-desktop/default-input-sources.h | 2
libgnome-desktop/gnome-languages.c | 9 ++
10 files changed, 119 insertions(+), 12 deletions(-)
diff -Nru gnome-desktop-43.2/debian/changelog gnome-desktop-43.2/debian/changelog
--- gnome-desktop-43.2/debian/changelog 2023-02-15 16:15:51.000000000 +0000
+++ gnome-desktop-43.2/debian/changelog 2023-03-05 18:11:37.000000000 +0000
@@ -1,3 +1,28 @@
+gnome-desktop (43.2-2) unstable; urgency=medium
+
+ * Team upload
+ * d/control.in: Fix Vcs-Git and Vcs-Browser syntax
+ * d/p/Use-mozc-as-the-default-input-source-for-Japanese.patch:
+ Change the default input method for Japanese to mozc-jp, matching
+ tasksel.
+ mozc is pulled in as the most-preferred input method by
+ task-japanese-desktop (uim-mozc) and task-japanese-gnome-desktop
+ (ibus-mozc) on the architectures where it is available, notably
+ x86 and ARM. There seems to be consensus among Japanese-speaking
+ Debian and Ubuntu users that mozc is the best default input method,
+ so make the default in gnome-initial-setup consistent with that.
+ Thanks to YOSHINO Yoshihito (Closes: #1029821)
+ * d/p/Fall-back-to-ibus-anthy-if-ibus-mozc-jp-is-unavailable.patch:
+ Fall back to ibus-anthy if ibus-mozc isn't available. According
+ to discussion on #1029821, mozc only supports little-endian CPU
+ architectures (for example i386 and arm64) and does not support
+ big-endian CPU architectures (for example powerpc and s390x), so we
+ need to be prepared to fall back.
+ * d/libgnome-desktop-doc.lintian-overrides: Remove unused override.
+ This is unnecessary now that #970275 was fixed.
+
+ -- Simon McVittie <smcv@debian.org> Sun, 05 Mar 2023 18:11:37 +0000
+
gnome-desktop (43.2-1) unstable; urgency=medium
* New upstream release
diff -Nru gnome-desktop-43.2/debian/control gnome-desktop-43.2/debian/control
--- gnome-desktop-43.2/debian/control 2023-02-15 16:15:51.000000000 +0000
+++ gnome-desktop-43.2/debian/control 2023-03-05 18:11:37.000000000 +0000
@@ -6,7 +6,7 @@
Section: gnome
Priority: optional
Maintainer: Debian GNOME Maintainers <pkg-gnome-maintainers@lists.alioth.debian.org>
-Uploaders: Jeremy Bicha <jbicha@ubuntu.com>, Sjoerd Simons <sjoerd@debian.org>
+Uploaders: Jeremy Bicha <jbicha@ubuntu.com>
Build-Depends: debhelper-compat (= 13),
dh-sequence-gir,
dh-sequence-gnome (>= 0.22.7~),
@@ -34,8 +34,8 @@
xkb-data,
xvfb <!nocheck>
Rules-Requires-Root: no
-Vcs-Browser: https://salsa.debian.org/gnome-team/gnome-desktop -b debian/bookworm
-Vcs-Git: https://salsa.debian.org/gnome-team/gnome-desktop.git/tree/debian/bookworm
+Vcs-Browser: https://salsa.debian.org/gnome-team/gnome-desktop/tree/debian/bookworm
+Vcs-Git: https://salsa.debian.org/gnome-team/gnome-desktop.git -b debian/bookworm
Standards-Version: 4.6.1
Package: gnome-desktop3-data
diff -Nru gnome-desktop-43.2/debian/control.in gnome-desktop-43.2/debian/control.in
--- gnome-desktop-43.2/debian/control.in 2023-02-15 16:15:51.000000000 +0000
+++ gnome-desktop-43.2/debian/control.in 2023-03-05 18:11:37.000000000 +0000
@@ -30,8 +30,8 @@
xkb-data,
xvfb <!nocheck>
Rules-Requires-Root: no
-Vcs-Browser: https://salsa.debian.org/gnome-team/gnome-desktop -b debian/bookworm
-Vcs-Git: https://salsa.debian.org/gnome-team/gnome-desktop.git/tree/debian/bookworm
+Vcs-Browser: https://salsa.debian.org/gnome-team/gnome-desktop/tree/debian/bookworm
+Vcs-Git: https://salsa.debian.org/gnome-team/gnome-desktop.git -b debian/bookworm
Standards-Version: 4.6.1
Package: gnome-desktop3-data
diff -Nru gnome-desktop-43.2/debian/libgnome-desktop-doc.lintian-overrides gnome-desktop-43.2/debian/libgnome-desktop-doc.lintian-overrides
--- gnome-desktop-43.2/debian/libgnome-desktop-doc.lintian-overrides 2023-02-15 16:15:51.000000000 +0000
+++ gnome-desktop-43.2/debian/libgnome-desktop-doc.lintian-overrides 1970-01-01 01:00:00.000000000 +0100
@@ -1,2 +0,0 @@
-# https://bugs.debian.org/970275
-package-contains-documentation-outside-usr-share-doc [usr/share/gtk-doc/html/*]
diff -Nru gnome-desktop-43.2/debian/patches/Fall-back-to-ibus-anthy-if-ibus-mozc-jp-is-unavailable.patch gnome-desktop-43.2/debian/patches/Fall-back-to-ibus-anthy-if-ibus-mozc-jp-is-unavailable.patch
--- gnome-desktop-43.2/debian/patches/Fall-back-to-ibus-anthy-if-ibus-mozc-jp-is-unavailable.patch 1970-01-01 01:00:00.000000000 +0100
+++ gnome-desktop-43.2/debian/patches/Fall-back-to-ibus-anthy-if-ibus-mozc-jp-is-unavailable.patch 2023-03-05 18:11:37.000000000 +0000
@@ -0,0 +1,39 @@
+From: Simon McVittie <smcv@debian.org>
+Date: Sun, 5 Mar 2023 12:52:01 +0000
+Subject: Fall back to ibus:anthy if ibus:mozc-jp is unavailable
+
+According to discussion on #1029821, mozc only supports little-endian
+CPU architectures (for example i386 and arm64) and does not support
+big-endian CPU architectures (for example powerpc and s390x), which
+is why task-japanese-desktop and task-japanese-gnome-desktop have a
+fallback dependency on uim-anthy and ibus-anthy respectively. Reflect
+this by falling back to anthy if mozc doesn't appear to be installed.
+
+Bug-Debian: https://bugs.debian.org/1029821
+Origin: vendor, Debian
+Signed-off-by: Simon McVittie <smcv@debian.org>
+Forwarded: no
+---
+ libgnome-desktop/gnome-languages.c | 9 +++++++++
+ 1 file changed, 9 insertions(+)
+
+diff --git a/libgnome-desktop/gnome-languages.c b/libgnome-desktop/gnome-languages.c
+index 2d25817..4d3e737 100644
+--- a/libgnome-desktop/gnome-languages.c
++++ b/libgnome-desktop/gnome-languages.c
+@@ -1448,6 +1448,15 @@ gnome_get_input_source_from_locale (const char *locale,
+ if (dis) {
+ *type = dis->type;
+ *id = dis->id;
++
++ /* We default to ibus:mozc-jp for Japanese locales, but mozc
++ * isn't available for all CPU architectures. Fall back to
++ * ibus:anthy if necessary. */
++ if (g_strcmp0 (*type, "ibus") == 0
++ && g_strcmp0 (*id, "mozc-jp") == 0
++ && !g_file_test ("/usr/share/ibus/component/mozc.xml", G_FILE_TEST_EXISTS)) {
++ *id = "anthy";
++ }
+ }
+ return dis != NULL;
+ }
diff -Nru gnome-desktop-43.2/debian/patches/languages-Look-at-LOCPATH-before-compile-time-LIBLOCALEDI.patch gnome-desktop-43.2/debian/patches/languages-Look-at-LOCPATH-before-compile-time-LIBLOCALEDI.patch
--- gnome-desktop-43.2/debian/patches/languages-Look-at-LOCPATH-before-compile-time-LIBLOCALEDI.patch 2023-02-15 16:15:51.000000000 +0000
+++ gnome-desktop-43.2/debian/patches/languages-Look-at-LOCPATH-before-compile-time-LIBLOCALEDI.patch 2023-03-05 18:11:37.000000000 +0000
@@ -11,10 +11,10 @@
1 file changed, 16 insertions(+), 2 deletions(-)
diff --git a/libgnome-desktop/gnome-languages.c b/libgnome-desktop/gnome-languages.c
-index a9b1a19..b3d6d5a 100644
+index adfc4ee..2d25817 100644
--- a/libgnome-desktop/gnome-languages.c
+++ b/libgnome-desktop/gnome-languages.c
-@@ -463,8 +463,15 @@ add_locale (const char *language_name,
+@@ -434,8 +434,15 @@ add_locale (const char *language_name,
static int
select_dirs (const struct dirent *dirent)
{
@@ -30,7 +30,7 @@
if (strcmp (dirent->d_name, ".") != 0 && strcmp (dirent->d_name, "..") != 0) {
mode_t mode = 0;
-@@ -477,7 +484,7 @@ select_dirs (const struct dirent *dirent)
+@@ -448,7 +455,7 @@ select_dirs (const struct dirent *dirent)
struct stat st;
g_autofree char *path = NULL;
@@ -39,7 +39,7 @@
if (g_stat (path, &st) == 0) {
mode = st.st_mode;
}
-@@ -496,8 +503,15 @@ collect_locales_from_directory (void)
+@@ -467,8 +474,15 @@ collect_locales_from_directory (void)
struct dirent **dirents;
int ndirents;
int cnt;
diff -Nru gnome-desktop-43.2/debian/patches/series gnome-desktop-43.2/debian/patches/series
--- gnome-desktop-43.2/debian/patches/series 2023-02-15 16:15:51.000000000 +0000
+++ gnome-desktop-43.2/debian/patches/series 2023-03-05 18:11:37.000000000 +0000
@@ -1 +1,3 @@
languages-Look-at-LOCPATH-before-compile-time-LIBLOCALEDI.patch
+Use-mozc-as-the-default-input-source-for-Japanese.patch
+Fall-back-to-ibus-anthy-if-ibus-mozc-jp-is-unavailable.patch
diff -Nru gnome-desktop-43.2/debian/patches/Use-mozc-as-the-default-input-source-for-Japanese.patch gnome-desktop-43.2/debian/patches/Use-mozc-as-the-default-input-source-for-Japanese.patch
--- gnome-desktop-43.2/debian/patches/Use-mozc-as-the-default-input-source-for-Japanese.patch 1970-01-01 01:00:00.000000000 +0100
+++ gnome-desktop-43.2/debian/patches/Use-mozc-as-the-default-input-source-for-Japanese.patch 2023-03-05 18:11:37.000000000 +0000
@@ -0,0 +1,34 @@
+From: YOSHINO Yoshihito <yy.y.ja.jp@gmail.com>
+Date: Sat, 28 Jan 2023 16:46:35 +0900
+Subject: Use mozc as the default input source for Japanese
+
+Upstream prefers ibus-anthy for Japanese input, while Debian uses
+ibus-mozc as the default. In particular, task-japanese-gnome-desktop
+Recommends ibus-mozc on architectures where it is available.
+
+There seems to be consensus that mozc is a better default for Debian. It
+is also the default in Ubuntu since 16.04 at the request of Japanese
+Ubuntu users, according to Ubuntu developer Gunnar Hjalmarsson.
+
+[smcv: Add more context to commit message]
+
+Bug-Debian: https://bugs.debian.org/1029821
+Co-authored-by: Simon McVittie <smcv@debian.org>
+Origin: vendor, Debian
+---
+ libgnome-desktop/default-input-sources.h | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/libgnome-desktop/default-input-sources.h b/libgnome-desktop/default-input-sources.h
+index 04ba10b..beaa80d 100644
+--- a/libgnome-desktop/default-input-sources.h
++++ b/libgnome-desktop/default-input-sources.h
+@@ -36,7 +36,7 @@ static DefaultInputSource default_input_sources[] =
+ { "hi_IN", "ibus", "m17n:hi:inscript" },
+ { "id_ID", "xkb", "us" },
+ { "it_IT", "xkb", "it" },
+- { "ja_JP", "ibus", "anthy" },
++ { "ja_JP", "ibus", "mozc-jp" },
+ { "kn_IN", "ibus", "m17n:kn:kgp" },
+ { "ko_KR", "ibus", "hangul" },
+ { "mai_IN", "ibus", "m17n:mai:inscript" },
diff -Nru gnome-desktop-43.2/libgnome-desktop/default-input-sources.h gnome-desktop-43.2/libgnome-desktop/default-input-sources.h
--- gnome-desktop-43.2/libgnome-desktop/default-input-sources.h 2023-02-15 16:03:13.000000000 +0000
+++ gnome-desktop-43.2/libgnome-desktop/default-input-sources.h 2023-03-09 12:23:01.000000000 +0000
@@ -36,7 +36,7 @@
{ "hi_IN", "ibus", "m17n:hi:inscript" },
{ "id_ID", "xkb", "us" },
{ "it_IT", "xkb", "it" },
- { "ja_JP", "ibus", "anthy" },
+ { "ja_JP", "ibus", "mozc-jp" },
{ "kn_IN", "ibus", "m17n:kn:kgp" },
{ "ko_KR", "ibus", "hangul" },
{ "mai_IN", "ibus", "m17n:mai:inscript" },
diff -Nru gnome-desktop-43.2/libgnome-desktop/gnome-languages.c gnome-desktop-43.2/libgnome-desktop/gnome-languages.c
--- gnome-desktop-43.2/libgnome-desktop/gnome-languages.c 2023-03-09 12:23:01.000000000 +0000
+++ gnome-desktop-43.2/libgnome-desktop/gnome-languages.c 2023-03-09 12:23:01.000000000 +0000
@@ -1448,6 +1448,15 @@
if (dis) {
*type = dis->type;
*id = dis->id;
+
+ /* We default to ibus:mozc-jp for Japanese locales, but mozc
+ * isn't available for all CPU architectures. Fall back to
+ * ibus:anthy if necessary. */
+ if (g_strcmp0 (*type, "ibus") == 0
+ && g_strcmp0 (*id, "mozc-jp") == 0
+ && !g_file_test ("/usr/share/ibus/component/mozc.xml", G_FILE_TEST_EXISTS)) {
+ *id = "anthy";
+ }
}
return dis != NULL;
}
--- End Message ---