Fedora Account System
Red Hat Associate
Red Hat Customer
Spec URL: https://codeberg.org/Lihis/stevia/raw/commit/83ec6e5d95fef78ff57fa3d24ed05a6196bb6752/stevia.spec SRPM URL: https://kojipkgs.fedoraproject.org//work/tasks/2631/136042631/stevia-0.48.0-1.fc44.src.rpm Description: Stevia is an alternative keyboard for Phosh. The purpose of Stevia is: * to make typing pleasant and fast on touch screens * be helpful when debugging input-method related issues * be quick and easy to (cross)compile * to be easy to extend (hence the API documentation) Fedora Account System Username: lihis
*** Bug 2343212 has been marked as a duplicate of this bug. ***
Copr build: https://copr.fedorainfracloud.org/coprs/build/9413520 (succeeded) Review template: https://download.copr.fedorainfracloud.org/results/@fedora-review/fedora-review-2388645-stevia/fedora-rawhide-x86_64/09413520-stevia/fedora-review/review.txt Please take a look if any issues were found. --- This comment was created by the fedora-review-service https://github.com/FrostyX/fedora-review-service If you want to trigger a new Copr build, add a comment containing new Spec and SRPM URLs or [fedora-review-service-build] string.
Taking this review.
@ngompa have you had time to take a look?
Initial spec review: > Source: https://gitlab.gnome.org/guidog/stevia/-/archive/v%{version_no_tilde _}/%{name}-v%{version_no_tilde _}.tar.gz This can be simplified to "%{url}/-/archive/v%{version_no_tilde _}/%{name}-v%{version_no_tilde _}.tar.gz" (Also, TIL about %version_no_tilde args.) > ExcludeArch: i686 This should use %{ix86} macro. > BuildRequires: /usr/bin/xvfb-run Please use /usr/bin/xwfb-run instead. > Conflicts: squeekboard Why does it conflict? > %setup -q -n %{name}-v%{version_no_tilde _} Please use "%autosetup -p1" here, so that if patches need to be applied, they will be. > %meson -Dman=true This should move to %conf section above %build. > LC_ALL=C.UTF-8 xvfb-run sh <<'SH' Use xwfb-run here. > %{_mandir}/man1/phosh-osk-stevia.1.gz Use "1*" instead, since ".gz" is not guaranteed.
(In reply to Neal Gompa from comment #5) > (Also, TIL about %version_no_tilde args.) > I found out it recently too. It's quite nice. > > Conflicts: squeekboard > > Why does it conflict? I don't remember why I have it there. Maybe I left it by accident as it is the `stevia-phosh-osk-provider` and `squeekboard-phosh-osk-provider` that conflict as both provides the `%{_datadir}/applications/sm.puri.OSK0.desktop` (see https://src.fedoraproject.org/rpms/squeekboard/blob/c5e0624a4cea99273a0eb12425fc40b9e1c9d423/f/squeekboard.spec#_138). From user perspective it probably would be good if I add `Conflicts: squeekboard-phosh-osk-provider` to `stevia-phosh-osk-provider` as that provides "better" error if user tries to install both?
Spec URL: https://codeberg.org/Lihis/stevia/raw/commit/3890f63c67daefcfac05abbc65d33424353b4e38/stevia.spec SRPM URL: https://kojipkgs.fedoraproject.org//work/tasks/2578/137532578/stevia-0.48.0-2.fc44.src.rpm > > BuildRequires: /usr/bin/xvfb-run > > Please use /usr/bin/xwfb-run instead. This seems to cause two tests to fail consistently: > 64/65 test-load-layouts FAIL 0.15s killed by signal 5 SIGTRAP > >>> MSAN_OPTIONS=halt_on_error=1:abort_on_error=1:print_summary=1:print_stacktrace=1 G_DEBUG=gc-friendly,fatal-warnings GSETTINGS_BACKEND=memory ASAN_OPTIONS=fast_unwind_on_malloc=0 MALLOC_PERTURB_=150 LSAN_OPTIONS=suppressions=/builddir/build/BUILD/stevia-0.48.0-build/stevia-v0.48.0/data/leak-suppress.txt GSETTINGS_SCHEMA_DIR=/builddir/build/BUILD/stevia-0.48.0-build/stevia-v0.48.0/redhat-linux-build/data UBSAN_OPTIONS=halt_on_error=1:abort_on_error=1:print_summary=1:print_stacktrace=1 MESON_TEST_ITERATION=1 NO_AT_BRIDGE=1 MALLOC_CHECK_=2 /builddir/build/BUILD/stevia-0.48.0-build/stevia-v0.48.0/redhat-linux-build/tests/test-load-layouts > ――――――――――――――――――――――――――――――――――――― ✀ ――――――――――――――――――――――――――――――――――――― > TAP version 14 > # random seed: R02Sd1efb628bc92a4cfab863ec26ceeb5f2 > # GLib-GIO-DEBUG: _g_io_module_get_default: Found default implementation memory (GMemorySettingsBackend) for ?gsettings-backend? > # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created > Bail out! Gdk-FATAL-CRITICAL: gdk_seat_get_keyboard: assertion 'GDK_IS_SEAT (seat)' failed > ―――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――― > > 65/65 test-osk-widget FAIL 0.15s killed by signal 5 SIGTRAP > >>> MSAN_OPTIONS=halt_on_error=1:abort_on_error=1:print_summary=1:print_stacktrace=1 MALLOC_PERTURB_=18 G_DEBUG=gc-friendly,fatal-warnings GSETTINGS_BACKEND=memory ASAN_OPTIONS=fast_unwind_on_malloc=0 LSAN_OPTIONS=suppressions=/builddir/build/BUILD/stevia-0.48.0-build/stevia-v0.48.0/data/leak-suppress.txt GSETTINGS_SCHEMA_DIR=/builddir/build/BUILD/stevia-0.48.0-build/stevia-v0.48.0/redhat-linux-build/data UBSAN_OPTIONS=halt_on_error=1:abort_on_error=1:print_summary=1:print_stacktrace=1 MESON_TEST_ITERATION=1 NO_AT_BRIDGE=1 MALLOC_CHECK_=2 /builddir/build/BUILD/stevia-0.48.0-build/stevia-v0.48.0/redhat-linux-build/tests/test-osk-widget > ――――――――――――――――――――――――――――――――――――― ✀ ――――――――――――――――――――――――――――――――――――― > TAP version 14 > # random seed: R02Sedabd4423a6e9c50ee1b5f3a759ac2c9 > # GLib-GIO-DEBUG: _g_io_module_get_default: Found default implementation memory (GMemorySettingsBackend) for ?gsettings-backend? > # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created > Bail out! Gdk-FATAL-CRITICAL: gdk_seat_get_keyboard: assertion 'GDK_IS_SEAT (seat)' failed > ―――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――― > > %meson -Dman=true > > This should move to %conf section above %build. Good point. This should be soon (if not already) in the docs too: https://pagure.io/packaging-committee/pull-request/1484 > > %{_mandir}/man1/phosh-osk-stevia.1.gz > > Use "1*" instead, since ".gz" is not guaranteed. Done.
Created attachment 2107807 [details] The .spec file difference from Copr build 9413520 to 9611296
Copr build: https://copr.fedorainfracloud.org/coprs/build/9611296 (succeeded) Review template: https://download.copr.fedorainfracloud.org/results/@fedora-review/fedora-review-2388645-stevia/fedora-rawhide-x86_64/09611296-stevia/fedora-review/review.txt Please take a look if any issues were found. --- This comment was created by the fedora-review-service https://github.com/FrostyX/fedora-review-service If you want to trigger a new Copr build, add a comment containing new Spec and SRPM URLs or [fedora-review-service-build] string.
(In reply to Tomi Lähteenmäki from comment #6) > (In reply to Neal Gompa from comment #5) > > > Conflicts: squeekboard > > > > Why does it conflict? > > I don't remember why I have it there. Maybe I left it by accident as it is > the `stevia-phosh-osk-provider` and `squeekboard-phosh-osk-provider` that > conflict as both provides the > `%{_datadir}/applications/sm.puri.OSK0.desktop` (see > https://src.fedoraproject.org/rpms/squeekboard/blob/ > c5e0624a4cea99273a0eb12425fc40b9e1c9d423/f/squeekboard.spec#_138). > > From user perspective it probably would be good if I add `Conflicts: > squeekboard-phosh-osk-provider` to `stevia-phosh-osk-provider` as that > provides "better" error if user tries to install both? Yeah, that makes sense. > > > BuildRequires: /usr/bin/xvfb-run > > > > Please use /usr/bin/xwfb-run instead. > > This seems to cause two tests to fail consistently: > > > 64/65 test-load-layouts FAIL 0.15s killed by signal 5 SIGTRAP > > >>> MSAN_OPTIONS=halt_on_error=1:abort_on_error=1:print_summary=1:print_stacktrace=1 G_DEBUG=gc-friendly,fatal-warnings GSETTINGS_BACKEND=memory ASAN_OPTIONS=fast_unwind_on_malloc=0 MALLOC_PERTURB_=150 LSAN_OPTIONS=suppressions=/builddir/build/BUILD/stevia-0.48.0-build/stevia-v0.48.0/data/leak-suppress.txt GSETTINGS_SCHEMA_DIR=/builddir/build/BUILD/stevia-0.48.0-build/stevia-v0.48.0/redhat-linux-build/data UBSAN_OPTIONS=halt_on_error=1:abort_on_error=1:print_summary=1:print_stacktrace=1 MESON_TEST_ITERATION=1 NO_AT_BRIDGE=1 MALLOC_CHECK_=2 /builddir/build/BUILD/stevia-0.48.0-build/stevia-v0.48.0/redhat-linux-build/tests/test-load-layouts > > ――――――――――――――――――――――――――――――――――――― ✀ ――――――――――――――――――――――――――――――――――――― > > TAP version 14 > > # random seed: R02Sd1efb628bc92a4cfab863ec26ceeb5f2 > > # GLib-GIO-DEBUG: _g_io_module_get_default: Found default implementation memory (GMemorySettingsBackend) for ?gsettings-backend? > > # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created > > Bail out! Gdk-FATAL-CRITICAL: gdk_seat_get_keyboard: assertion 'GDK_IS_SEAT (seat)' failed > > ―――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――― > > > > 65/65 test-osk-widget FAIL 0.15s killed by signal 5 SIGTRAP > > >>> MSAN_OPTIONS=halt_on_error=1:abort_on_error=1:print_summary=1:print_stacktrace=1 MALLOC_PERTURB_=18 G_DEBUG=gc-friendly,fatal-warnings GSETTINGS_BACKEND=memory ASAN_OPTIONS=fast_unwind_on_malloc=0 LSAN_OPTIONS=suppressions=/builddir/build/BUILD/stevia-0.48.0-build/stevia-v0.48.0/data/leak-suppress.txt GSETTINGS_SCHEMA_DIR=/builddir/build/BUILD/stevia-0.48.0-build/stevia-v0.48.0/redhat-linux-build/data UBSAN_OPTIONS=halt_on_error=1:abort_on_error=1:print_summary=1:print_stacktrace=1 MESON_TEST_ITERATION=1 NO_AT_BRIDGE=1 MALLOC_CHECK_=2 /builddir/build/BUILD/stevia-0.48.0-build/stevia-v0.48.0/redhat-linux-build/tests/test-osk-widget > > ――――――――――――――――――――――――――――――――――――― ✀ ――――――――――――――――――――――――――――――――――――― > > TAP version 14 > > # random seed: R02Sedabd4423a6e9c50ee1b5f3a759ac2c9 > > # GLib-GIO-DEBUG: _g_io_module_get_default: Found default implementation memory (GMemorySettingsBackend) for ?gsettings-backend? > > # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created > > Bail out! Gdk-FATAL-CRITICAL: gdk_seat_get_keyboard: assertion 'GDK_IS_SEAT (seat)' failed > > ―――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――― > Can you file a bug upstream about this? https://gitlab.freedesktop.org/ofourdan/xwayland-run/-/issues
(In reply to Neal Gompa from comment #10) > (In reply to Tomi Lähteenmäki from comment #6) > > (In reply to Neal Gompa from comment #5) > > > > Conflicts: squeekboard > > > > > > Why does it conflict? > > > > I don't remember why I have it there. Maybe I left it by accident as it is > > the `stevia-phosh-osk-provider` and `squeekboard-phosh-osk-provider` that > > conflict as both provides the > > `%{_datadir}/applications/sm.puri.OSK0.desktop` (see > > https://src.fedoraproject.org/rpms/squeekboard/blob/ > > c5e0624a4cea99273a0eb12425fc40b9e1c9d423/f/squeekboard.spec#_138). > > > > From user perspective it probably would be good if I add `Conflicts: > > squeekboard-phosh-osk-provider` to `stevia-phosh-osk-provider` as that > > provides "better" error if user tries to install both? > > Yeah, that makes sense. > On second thought, you might want a virtual provides: "phosh-osk-provider" and have both packages provides+conflicts so only one can be installed. Especially if that's your goal.
> Can you file a bug upstream about this? https://gitlab.freedesktop.org/ofourdan/xwayland-run/-/issues Created: https://gitlab.freedesktop.org/ofourdan/xwayland-run/-/issues/12 > On second thought, you might want a virtual provides: "phosh-osk-provider" and have both packages provides+conflicts so only one can be installed. Especially if that's your goal. I'll check that is the only way to select a keyboard to install one and uninstall the other..
Spec URL: https://codeberg.org/Lihis/stevia/raw/commit/72cd04902df9b3091f2eec6c81ed1cc1235a62d3/stevia.spec SRPM URL: https://kojipkgs.fedoraproject.org//work/tasks/518/137710518/stevia-0.48.0-3.fc44.src.rpm > > On second thought, you might want a virtual provides: "phosh-osk-provider" and have both packages provides+conflicts so only one can be installed. Especially if that's your goal. > > I'll check that is the only way to select a keyboard to install one and uninstall the other.. I discussed this in #phosh-dev:phosh.mobi and maybe I think "best" way to allow user to choose a keyboard is to use `update-alternatives`: https://matrix.to/#/!a9TTiG8mY2z4jxSvCmBDDyOwtufbezZAms7mQWLnkj0/$qjpCyrPjfGFiD4syd_4TZ158xF1Ts7i3y1jCgoU1ZAU?via=sigxcpu.org&via=matrix.org&via=sspaeth.de All comments should now be addressed so ready for review. If the update-alternatives way looks good I think I can make a PR for `squeekboard` to change it utilize `update-alternatives`?
Created attachment 2108343 [details] The .spec file difference from Copr build 9611296 to 9642280
Copr build: https://copr.fedorainfracloud.org/coprs/build/9642280 (succeeded) Review template: https://download.copr.fedorainfracloud.org/results/@fedora-review/fedora-review-2388645-stevia/fedora-rawhide-x86_64/09642280-stevia/fedora-review/review.txt Please take a look if any issues were found. --- This comment was created by the fedora-review-service https://github.com/FrostyX/fedora-review-service If you want to trigger a new Copr build, add a comment containing new Spec and SRPM URLs or [fedora-review-service-build] string.
(In reply to Tomi Lähteenmäki from comment #13) > Spec URL: > https://codeberg.org/Lihis/stevia/raw/commit/ > 72cd04902df9b3091f2eec6c81ed1cc1235a62d3/stevia.spec > SRPM URL: > https://kojipkgs.fedoraproject.org//work/tasks/518/137710518/stevia-0.48.0-3. > fc44.src.rpm > > > > On second thought, you might want a virtual provides: "phosh-osk-provider" and have both packages provides+conflicts so only one can be installed. Especially if that's your goal. > > > > I'll check that is the only way to select a keyboard to install one and uninstall the other.. > > I discussed this in #phosh-dev:phosh.mobi and maybe I think "best" way to > allow user to choose a keyboard is to use `update-alternatives`: > https://matrix.to/#/!a9TTiG8mY2z4jxSvCmBDDyOwtufbezZAms7mQWLnkj0/ > $qjpCyrPjfGFiD4syd_4TZ158xF1Ts7i3y1jCgoU1ZAU?via=sigxcpu.org&via=matrix. > org&via=sspaeth.de > > All comments should now be addressed so ready for review. If the > update-alternatives way looks good I think I can make a PR for `squeekboard` > to change it utilize `update-alternatives`? Alternatives are discouraged for Fedora, especially since they are not compatible with rpm-ostree and bootc. Either Phosh needs to develop a UI for changing this, or we need to make the two options mutually exclusive at the RPM level.
(In reply to Neal Gompa from comment #16) > (In reply to Tomi Lähteenmäki from comment #13) > > Spec URL: > > https://codeberg.org/Lihis/stevia/raw/commit/ > > 72cd04902df9b3091f2eec6c81ed1cc1235a62d3/stevia.spec > > SRPM URL: > > https://kojipkgs.fedoraproject.org//work/tasks/518/137710518/stevia-0.48.0-3. > > fc44.src.rpm > > > > > > On second thought, you might want a virtual provides: "phosh-osk-provider" and have both packages provides+conflicts so only one can be installed. Especially if that's your goal. > > > > > > I'll check that is the only way to select a keyboard to install one and uninstall the other.. > > > > I discussed this in #phosh-dev:phosh.mobi and maybe I think "best" way to > > allow user to choose a keyboard is to use `update-alternatives`: > > https://matrix.to/#/!a9TTiG8mY2z4jxSvCmBDDyOwtufbezZAms7mQWLnkj0/ > > $qjpCyrPjfGFiD4syd_4TZ158xF1Ts7i3y1jCgoU1ZAU?via=sigxcpu.org&via=matrix. > > org&via=sspaeth.de > > > > All comments should now be addressed so ready for review. If the > > update-alternatives way looks good I think I can make a PR for `squeekboard` > > to change it utilize `update-alternatives`? > > Alternatives are discouraged for Fedora, especially since they are not > compatible with rpm-ostree and bootc. Either Phosh needs to develop a UI for > changing this, or we need to make the two options mutually exclusive at the > RPM level. Of course that is not mentioned in the packaging guidelines for the Alternatives [1] and sendmail still seems to use [2] it too.. Well, would be nice to have a UI to select which keyboard you want to use but I guess I'll go down the route of having following in my .spec: %package phosh-osk-provider Summary: Use Stevia as Phosh's default OSK BuildArch: noarch Requires: %{name} Provides: phosh-osk = 1.0 Conflicts: phosh-osk Conflicts: squeekboard-phosh-osk-provider and make squeekboard-phosh-osk-provider conflict with stevia-phosh-osk-provider. Phosh already "Requires: phosh-osk" [3]. It might be that the squeekboard is soon broken so Stevia would be only working OSK: https://bugzilla.redhat.com/show_bug.cgi?id=2390089 [1] https://docs.fedoraproject.org/en-US/packaging-guidelines/Alternatives/ [2] https://src.fedoraproject.org/rpms/sendmail/blob/cf7e6072a851a31610789dba39d7c9f858107f16/f/sendmail.spec [3] https://src.fedoraproject.org/rpms/phosh/blob/faf8e3686bc5b584c931f0ecc19cefab58dde6d1/f/phosh.spec#_71
Spec URL: https://codeberg.org/Lihis/stevia/raw/commit/cfcac2a13312cb7062ccef0e1a5f1e0c625ae20d/stevia.spec SRPM URL: https://kojipkgs.fedoraproject.org//work/tasks/3198/137733198/stevia-0.48.0-4.fc44.src.rpm
Created attachment 2108386 [details] The .spec file difference from Copr build 9642280 to 9643291
Copr build: https://copr.fedorainfracloud.org/coprs/build/9643291 (succeeded) Review template: https://download.copr.fedorainfracloud.org/results/@fedora-review/fedora-review-2388645-stevia/fedora-rawhide-x86_64/09643291-stevia/fedora-review/review.txt Please take a look if any issues were found. --- This comment was created by the fedora-review-service https://github.com/FrostyX/fedora-review-service If you want to trigger a new Copr build, add a comment containing new Spec and SRPM URLs or [fedora-review-service-build] string.
> %{_datadir}/applications/sm.puri.OSK0.desktop This shows up in both subpackages, and I expect it to be in only one?
Spec URL: https://codeberg.org/Lihis/stevia/raw/commit/02a390d6b3a3ded33b0b9632b2a261c98658dfd7/stevia.spec SRPM URL: https://kojipkgs.fedoraproject.org//work/tasks/7906/137747906/stevia-0.48.0-4.fc44.src.rpm
[fedora-review-service-build]
Created attachment 2108887 [details] The .spec file difference from Copr build 9643291 to 9648724
Copr build: https://copr.fedorainfracloud.org/coprs/build/9648724 (succeeded) Review template: https://download.copr.fedorainfracloud.org/results/@fedora-review/fedora-review-2388645-stevia/fedora-rawhide-x86_64/09648724-stevia/fedora-review/review.txt Please take a look if any issues were found. --- This comment was created by the fedora-review-service https://github.com/FrostyX/fedora-review-service If you want to trigger a new Copr build, add a comment containing new Spec and SRPM URLs or [fedora-review-service-build] string.
Review notes: * Package follows Fedora packaging guidelines * Package builds and installs * Package licensing is correct and license data correctly installed * No serious issues from rpmlint PACKAGE APPROVED.
The Pagure repository was created at https://src.fedoraproject.org/rpms/stevia
FEDORA-2025-7093c92f8f (stevia-0.48.0-2.fc44) has been submitted as an update to Fedora 44. https://bodhi.fedoraproject.org/updates/FEDORA-2025-7093c92f8f
FEDORA-2025-7093c92f8f (stevia-0.48.0-2.fc44) has been pushed to the Fedora 44 stable repository. If problem still persists, please make note of it in this bug report.