Package: release.debian.org Severity: normal User: release.debian....@packages.debian.org Usertags: unblock X-Debbugs-Cc: gnome-desk...@packages.debian.org, debian-japan...@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 <s...@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-maintain...@lists.alioth.debian.org> -Uploaders: Jeremy Bicha <jbi...@ubuntu.com>, Sjoerd Simons <sjo...@debian.org> +Uploaders: Jeremy Bicha <jbi...@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 <s...@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 <s...@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...@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 <s...@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; }