Othman does not run at all on Ubuntu 22.04

Bug #2002865 reported by M.Hanny Sabbagh
14
This bug affects 2 people
Affects Status Importance Assigned to Milestone
othman (Ubuntu)
Fix Released
High
Unassigned
Jammy
Fix Released
High
Unassigned
Kinetic
Fix Released
High
Unassigned

Bug Description

Impact
------
Othman won't run in Ubuntu 22.04 LTS because it tries to import Gtk with gobject-introspection without specifying a version. Ubuntu Desktop 22.04 LTS has both gir1.2-gtk-3.0 and gir1.2-gtk-4.0 installed by default. This causes Othman to try to load GTK4 but it is not compatible with GTK4.

Test Case
---------
Install and run othman as demonstrated in the original bug report. The app should run normally.

What Could Go Wrong
-------------------
The app already does not work for most users. This is a trivial and correct fix.

Original Bug Report
-------------------
Hello.

Othman, the open source Quran browser, does not run at all in Ubuntu 22.04.

After installing it with:
$ sudo apt install othman

If you try to run the program, you will get the following error:

mhsabbagh@ubuntu2204:~$ othman-browser
/usr/lib/python3/dist-packages/othman/gtkUi.py:23: PyGIWarning: Gtk was imported without specifying a version first. Use gi.require_version('Gtk', '4.0') before import to ensure that the right version gets loaded.
  from gi.repository import Gtk, Gdk, GLib, Pango, GdkPixbuf
Traceback (most recent call last):
  File "/usr/bin/othman-browser", line 4, in <module>
    main()
  File "/usr/lib/python3/dist-packages/othman/gtkUi.py", line 425, in main
    w = othmanUi()
  File "/usr/lib/python3/dist-packages/othman/gtkUi.py", line 115, in __init__
    self.connect("delete_event", self.quit)
TypeError: <gtkUi.othmanUi object at 0x7f8ab7dd6c80 (othman+gtkUi+othmanUi at 0x55a4070ee2b0)>: unknown signal name: delete_event

However, this error seems to be in Ubuntu 22.04 only; I installed Debian 11 (which ships the exact same version of Othman, 0.6.0-2), and it runs without problems (image attached).

I have found that if we just add these two lines to /usr/lib/python3/dist-packages/othman/gtkUi.py file (before the "from gi.repository import Gtk..." line), then the program will run successfully:

import gi
gi.require_version('Gtk', '3.0')

So it sounds like the issue is that since the Gtk version required isn't specified, it is trying to import Gtk 4.0 (which the program isn't designed to work with).

Can anyone create a patch file with these two lines and update it in the Ubuntu package?

Thanks.

Revision history for this message
M.Hanny Sabbagh (mhsabbagh) wrote :
Revision history for this message
Launchpad Janitor (janitor) wrote :

Status changed to 'Confirmed' because the bug affects multiple users.

Changed in othman (Ubuntu):
status: New → Confirmed
Revision history for this message
M.Hanny Sabbagh (mhsabbagh) wrote :

Hello.

I am not very familiar with the Debian packaging process, but I have created a patch that solves the problem (attached).

Can anyone apply this patch on the package so that the problem gets fixed?

Thanks.

Jeremy Bícha (jbicha)
Changed in othman (Ubuntu):
importance: Undecided → High
status: Confirmed → Fix Committed
Changed in othman (Ubuntu Jammy):
status: New → Triaged
importance: Undecided → High
Changed in othman (Ubuntu Kinetic):
importance: Undecided → High
status: New → Triaged
Revision history for this message
Ubuntu Foundations Team Bug Bot (crichton) wrote :

The attachment "gtk-set-version-3.0.patch" seems to be a debdiff. The ubuntu-sponsors team has been subscribed to the bug report so that they can review and hopefully sponsor the debdiff. If the attachment isn't a patch, please remove the "patch" flag from the attachment, remove the "patch" tag, and if you are member of the ~ubuntu-sponsors, unsubscribe the team.

[This is an automated message performed by a Launchpad user owned by ~brian-murray, for any issue please contact him.]

tags: added: patch
Revision history for this message
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package othman - 0.6.0-3

---------------
othman (0.6.0-3) unstable; urgency=medium

  [ أحمد المحمودي (Ahmed El-Mahmoudy) ]
  * Add dh-sequence-python3 to build-deps
  * Set debhelper compat level in build deps

  [ Jeremy Bicha ]
  * Bump debhelper from old 12 to 13
  * Update debian/watch
  * Update standards version to 4.6.2, no changes needed

  [ mhsabbagh ]
  * Add patch to require Gtk 3.0 (LP: #2002865)

 -- Jeremy Bicha <email address hidden> Thu, 19 Jan 2023 12:37:49 -0500

Changed in othman (Ubuntu):
status: Fix Committed → Fix Released
Jeremy Bícha (jbicha)
description: updated
Revision history for this message
Jeremy Bícha (jbicha) wrote :

Thank you for reporting this bug and preparing a patch to help make Ubuntu better.

I have uploaded your fix to the queue for Ubuntu 22.04 LTS and Ubuntu 22.10. It may take a while for a member of Ubuntu's SRU team to review these uploads and make the packages available for testing in the proposed updates repository.

I have unsubscribed ubuntu-sponsors. Please feel free to resubscribe if you have something else that needs sponsoring.

Changed in othman (Ubuntu Jammy):
status: Triaged → In Progress
Changed in othman (Ubuntu Kinetic):
status: Triaged → In Progress
Revision history for this message
M.Hanny Sabbagh (mhsabbagh) wrote :

Thank you Jeremy for your help!

Best.

Revision history for this message
Brian Murray (brian-murray) wrote : Please test proposed package

Hello M.Hanny, or anyone else affected,

Accepted othman into kinetic-proposed. The package will build now and be available at https://launchpad.net/ubuntu/+source/othman/0.6.0-2ubuntu0.22.10.1 in a few hours, and then in the -proposed repository.

Please help us by testing this new package. See https://wiki.ubuntu.com/Testing/EnableProposed for documentation on how to enable and use -proposed. Your feedback will aid us getting this update out to other Ubuntu users.

If this package fixes the bug for you, please add a comment to this bug, mentioning the version of the package you tested, what testing has been performed on the package and change the tag from verification-needed-kinetic to verification-done-kinetic. If it does not fix the bug for you, please add a comment stating that, and change the tag to verification-failed-kinetic. In either case, without details of your testing we will not be able to proceed.

Further information regarding the verification process can be found at https://wiki.ubuntu.com/QATeam/PerformingSRUVerification . Thank you in advance for helping!

N.B. The updated package will be released to -updates after the bug(s) fixed by this package have been verified and the package has been in -proposed for a minimum of 7 days.

Changed in othman (Ubuntu Kinetic):
status: In Progress → Fix Committed
tags: added: verification-needed verification-needed-kinetic
Changed in othman (Ubuntu Jammy):
status: In Progress → Fix Committed
tags: added: verification-needed-jammy
Revision history for this message
Brian Murray (brian-murray) wrote :

Hello M.Hanny, or anyone else affected,

Accepted othman into jammy-proposed. The package will build now and be available at https://launchpad.net/ubuntu/+source/othman/0.6.0-2ubuntu0.22.04.1 in a few hours, and then in the -proposed repository.

Please help us by testing this new package. See https://wiki.ubuntu.com/Testing/EnableProposed for documentation on how to enable and use -proposed. Your feedback will aid us getting this update out to other Ubuntu users.

If this package fixes the bug for you, please add a comment to this bug, mentioning the version of the package you tested, what testing has been performed on the package and change the tag from verification-needed-jammy to verification-done-jammy. If it does not fix the bug for you, please add a comment stating that, and change the tag to verification-failed-jammy. In either case, without details of your testing we will not be able to proceed.

Further information regarding the verification process can be found at https://wiki.ubuntu.com/QATeam/PerformingSRUVerification . Thank you in advance for helping!

N.B. The updated package will be released to -updates after the bug(s) fixed by this package have been verified and the package has been in -proposed for a minimum of 7 days.

Revision history for this message
M.Hanny Sabbagh (mhsabbagh) wrote (last edit ):

Hello.

I've enabled the proposed repository and tested the updated version both on Ubuntu 22.04 and 22.10 (0.6.0-2ubuntu0.22.04.1 and 0.6.0-2ubuntu0.22.10.1), and can confirm that the software now works flawlessly without an issue.

Best!

Jeremy Bícha (jbicha)
tags: added: verification-done verification-done-jammy verification-done-kinetic
removed: verification-needed verification-needed-jammy verification-needed-kinetic
Revision history for this message
Chris Halse Rogers (raof) wrote : Update Released

The verification of the Stable Release Update for othman has completed successfully and the package is now being released to -updates. Subsequently, the Ubuntu Stable Release Updates Team is being unsubscribed and will not receive messages about this bug report. In the event that you encounter a regression using the package from -updates please report a new bug using ubuntu-bug and tag the bug report regression-update so we can easily find any regressions.

Revision history for this message
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package othman - 0.6.0-2ubuntu0.22.10.1

---------------
othman (0.6.0-2ubuntu0.22.10.1) kinetic; urgency=medium

  [ mhsabbagh ]
  * Add patch to require Gtk 3.0 (LP: #2002865)

 -- Jeremy Bicha <email address hidden> Fri, 20 Jan 2023 08:15:23 -0500

Changed in othman (Ubuntu Kinetic):
status: Fix Committed → Fix Released
Revision history for this message
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package othman - 0.6.0-2ubuntu0.22.04.1

---------------
othman (0.6.0-2ubuntu0.22.04.1) jammy; urgency=medium

  [ mhsabbagh ]
  * Add patch to require Gtk 3.0 (LP: #2002865)

 -- Jeremy Bicha <email address hidden> Fri, 20 Jan 2023 08:15:23 -0500

Changed in othman (Ubuntu Jammy):
status: Fix Committed → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.