[SRU] Alacarte requires python3-cairo, however it is not listed as a dependency

Bug #2037326 reported by Hendrik S
16
This bug affects 1 person
Affects Status Importance Assigned to Milestone
alacarte (Debian)
Fix Released
Unknown
alacarte (Ubuntu)
Fix Released
Undecided
Unassigned
Jammy
Fix Released
High
Unassigned
Lunar
Fix Released
High
Unassigned
Mantic
Fix Released
High
Unassigned

Bug Description

[ Impact ]

 * Alacarte fails to start if python3-cairo is not already installed in the system

[ Test Plan ]

 * A simple test plan of the package.
   - confirm that python3-cairo is not already installed in the system
   - install alacarte.
   - confirm that it has also installed python3-cairo.
   - execute alacarte and confirm that the gui shows

[ Where problems could occur ]

The change is already in Debian now and is not modifying any source code of the package.
It is only adding python3-cairo to the runtime dependency list.
So, it should not change the behaviour and has little chance of regressing the user behaviour.

[ Other Info ]

As mentioned in the Debian bug, the dependency on python3-cairo was introduced from v3.44.2 in Debian. But this was originally introduced by upstream at v3.42.0 as can be seen at https://gitlab.gnome.org/GNOME/alacarte/-/blob/3.42.0/Alacarte/ItemEditor.py#L19

So, the problem exists in Jammy (3.44.1-1), Lunar (3.44.2-1) and Mantic (3.50.0-1).
Debian has fixed the issue in 3.50.0-2 which is now in Noble.

[ Original Bug Description ]

Alacarte requires python3-cairo, however it is not listed as a dependency. Using Xubuntu 23.04.
Otherwise got this error
Traceback (most recent call last):
  File "/usr/bin/alacarte", line 23, in <module>
    from Alacarte.MainWindow import main
  File "/usr/share/alacarte/Alacarte/MainWindow.py", line 37, in <module>
    from Alacarte.ItemEditor import LauncherEditor, DirectoryEditor
  File "/usr/share/alacarte/Alacarte/ItemEditor.py", line 19, in <module>
    import cairo
ModuleNotFoundError: No module named 'cairo'

ProblemType: Bug
DistroRelease: Ubuntu 23.04
Package: alacarte 3.44.2-1
ProcVersionSignature: Ubuntu 6.2.0-33.33-generic 6.2.16
Uname: Linux 6.2.0-33-generic x86_64
NonfreeKernelModules: nvidia_modeset nvidia
ApportVersion: 2.26.1-0ubuntu2
Architecture: amd64
CasperMD5CheckResult: pass
CurrentDesktop: XFCE
Date: Mon Sep 25 22:47:50 2023
InstallationDate: Installed on 2023-09-25 (0 days ago)
InstallationMedia: Xubuntu 23.04 "Lunar Lobster" - Release amd64 (20230414.2)
PackageArchitecture: all
SourcePackage: alacarte
UpgradeStatus: No upgrade log present (probably fresh install)

Revision history for this message
Hendrik S (hdrs34) wrote :
Changed in alacarte (Ubuntu):
status: New → Confirmed
tags: added: bitesize mantic packaging
Revision history for this message
Sudip Mukherjee (sudipmuk) wrote :

Apart from Mantic this also affects Noble, Lunar and Jammy.

Revision history for this message
Sudip Mukherjee (sudipmuk) wrote :

debdiff attached for Noble.

Changed in alacarte (Debian):
status: Unknown → New
tags: added: jammy noble patch
Changed in alacarte (Debian):
status: New → Fix Released
Revision history for this message
Graham Inggs (ginggs) wrote :

This was fixed in Debian, and automatically sync'd into noble.

alacarte (3.50.0-2) unstable; urgency=medium

  * Depend on python3-cairo. (Closes: #1055469)

 -- Dmitry Shachnev <email address hidden> Sat, 11 Nov 2023 18:11:24 +0300

Unsubcribing Ubuntu Sponsors for now, but please re-subscribe if debdiffs are attached for SRUs.

Changed in alacarte (Ubuntu):
status: Confirmed → Fix Released
Revision history for this message
Sudip Mukherjee (sudipmuk) wrote (last edit ):

Thanks @ginggs.

summary: - Alacarte requires python3-cairo, however it is not listed as a
+ [SRU] Alacarte requires python3-cairo, however it is not listed as a
dependency
description: updated
Revision history for this message
Sudip Mukherjee (sudipmuk) wrote :

debdiff attached for SRU.

Dave Jones (waveform)
Changed in alacarte (Ubuntu Mantic):
status: New → Confirmed
Revision history for this message
Dave Jones (waveform) wrote :

Targetted to affected series, mantic, lunar, and jammy. Given the attached debdiff is for mantic I've set that to confirmed and sponsored it (hence I've also unsubscribed ubuntu-sponsors). Please re-subscribe ubuntu-sponsors when debdiffs for lunar and jammy are prepped, and thank you!

Revision history for this message
Steve Langasek (vorlon) wrote :

$ apt-cache show python3-cairo | grep Task
Task: ubuntu-desktop-minimal, ubuntu-desktop, kubuntu-desktop, kubuntu-full, xubuntu-desktop, lubuntu-desktop, ubuntustudio-desktop, ubuntukylin-desktop, ubuntu-mate-core, ubuntu-mate-desktop, ubuntu-budgie-desktop-minimal, ubuntu-budgie-desktop, ubuntu-budgie-desktop-raspi, ubuntu-unity-desktop, edubuntu-desktop-gnome, ubuntucinnamon-desktop, ubuntucinnamon-desktop-raspi
$

So basically, a Xubuntu Minimal install seems to be the only way to get a desktop environment, of any Ubuntu flavor, without python3-cairo already installed.

However, it's a straightforward fix, so yes this is fine for SRU.

Changed in alacarte (Ubuntu Mantic):
importance: Undecided → High
Changed in alacarte (Ubuntu Lunar):
importance: Undecided → High
Changed in alacarte (Ubuntu Jammy):
importance: Undecided → High
Revision history for this message
Steve Langasek (vorlon) wrote :

The bug description explicitly says this dependency was introduced in version 3.44.2 in lunar. Marking invalid for jammy.

Changed in alacarte (Ubuntu Jammy):
status: New → Invalid
Changed in alacarte (Ubuntu Mantic):
status: Confirmed → Fix Committed
tags: added: verification-needed verification-needed-mantic
Revision history for this message
Steve Langasek (vorlon) wrote : Please test proposed package

Hello Hendrik, or anyone else affected,

Accepted alacarte into mantic-proposed. The package will build now and be available at https://launchpad.net/ubuntu/+source/alacarte/3.50.0-1ubuntu0.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-mantic to verification-done-mantic. If it does not fix the bug for you, please add a comment stating that, and change the tag to verification-failed-mantic. 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
Sudip Mukherjee (sudipmuk) wrote :

Hi Steve,

My sincere apologies for the confusion with the bug description and incorrect version where the dependency was introduced.
The dependency on cairo was introduced by upstream on v3.42.0 and you can see it at https://gitlab.gnome.org/GNOME/alacarte/-/blob/3.42.0/Alacarte/ItemEditor.py#L19 and so Jammy is also affected. I am modifying the SRU bug description to add this information and marking it as affected for Jammy. Please correct me if I am wrong.

description: updated
Changed in alacarte (Ubuntu Jammy):
status: Invalid → New
Revision history for this message
Sudip Mukherjee (sudipmuk) wrote :

I can confirm that the alacarte package in mantic-proposed has fixed the bug for me.

Test done:
1. Use a minimal mantic system and confirmed python3-cairo is not installed
2. Install alacarte and confirmed it did not start and gave the error.
3. Add mantic-proposed to apt sources
5. Update alacarte from mantic-proposed.
6. Try to open alacarte again, and the gui is displayed.

Test result: alacarte started and the gui displayed

Package tested:
# dpkg -l | grep alacarte
ii alacarte 3.50.0-1ubuntu0.1 all easy GNOME menu editing tool

Revision history for this message
C de-Avillez (hggdh2) wrote :

Given the above comment, and based on request in IRC, I am marking this verification-done-mantic

tags: added: verification-done verification-done-mantic
removed: verification-needed verification-needed-mantic
Revision history for this message
Sudip Mukherjee (sudipmuk) wrote :

debdiff for Lunar attached.

Revision history for this message
Sudip Mukherjee (sudipmuk) wrote :

debdiff for Jammy attached.

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

This bug was fixed in the package alacarte - 3.50.0-1ubuntu0.1

---------------
alacarte (3.50.0-1ubuntu0.1) mantic; urgency=medium

  * Depend on python3-cairo. (LP: #2037326)

 -- Sudip Mukherjee <email address hidden> Wed, 15 Nov 2023 21:31:05 +0000

Changed in alacarte (Ubuntu Mantic):
status: Fix Committed → Fix Released
Revision history for this message
Andreas Hasenack (ahasenack) wrote : Update Released

The verification of the Stable Release Update for alacarte 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
Dave Jones (waveform) wrote :

Looks good, thanks! Sponsoring for lunar and jammy.

Revision history for this message
Andreas Hasenack (ahasenack) wrote : Please test proposed package

Hello Hendrik, or anyone else affected,

Accepted alacarte into lunar-proposed. The package will build now and be available at https://launchpad.net/ubuntu/+source/alacarte/3.44.2-1ubuntu0.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-lunar to verification-done-lunar. If it does not fix the bug for you, please add a comment stating that, and change the tag to verification-failed-lunar. 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 alacarte (Ubuntu Lunar):
status: New → Fix Committed
tags: added: verification-needed verification-needed-lunar
removed: verification-done
Changed in alacarte (Ubuntu Jammy):
status: New → Fix Committed
tags: added: verification-needed-jammy
Revision history for this message
Andreas Hasenack (ahasenack) wrote :

Hello Hendrik, or anyone else affected,

Accepted alacarte into jammy-proposed. The package will build now and be available at https://launchpad.net/ubuntu/+source/alacarte/3.44.1-1ubuntu0.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
Sudip Mukherjee (sudipmuk) wrote :

I can confirm that the alacarte package in lunar-proposed has fixed the bug for me.

Test done:
1. Install alacarte on a Lunar installation.
2. confirm that python3-cairo is not installed in the system.
3. Executed alacarte from cmdline
4. It failed with the error:

Traceback (most recent call last):
  File "/usr/bin/alacarte", line 23, in <module>
    from Alacarte.MainWindow import main
  File "/usr/share/alacarte/Alacarte/MainWindow.py", line 37, in <module>
    from Alacarte.ItemEditor import LauncherEditor, DirectoryEditor
  File "/usr/share/alacarte/Alacarte/ItemEditor.py", line 19, in <module>
    import cairo
ModuleNotFoundError: No module named 'cairo'

5. Added lunar-proposed to apt sources
6. Update alacarte from lunar-proposed.
7. Confirm that python3-cairo is now installed.

# dpkg -l | grep python3-cairo
ii python3-cairo:amd64 1.20.1-5build1 amd64 Python3 bindings for the Cairo vector graphics library

8. Executed alacarte from cmdline and the gui was displayed.

Test result: I was able to run alacarte after the update.

Package tested:
# dpkg -l | grep alacarte
ii alacarte 3.44.2-1ubuntu0.1 all easy GNOME menu editing tool

tags: added: verification-done-lunar
removed: verification-needed-lunar
Revision history for this message
Sudip Mukherjee (sudipmuk) wrote :

I can confirm that the alacarte package in jammy-proposed has fixed the bug for me.

Test done:
1. Install alacarte on a Jammy installation.
2. confirm that python3-cairo is not installed in the system.
3. Executed alacarte from cmdline
4. It failed with the error:

Traceback (most recent call last):
  File "/usr/bin/alacarte", line 23, in <module>
    from Alacarte.MainWindow import main
  File "/usr/share/alacarte/Alacarte/MainWindow.py", line 37, in <module>
    from Alacarte.ItemEditor import LauncherEditor, DirectoryEditor
  File "/usr/share/alacarte/Alacarte/ItemEditor.py", line 19, in <module>
    import cairo
ModuleNotFoundError: No module named 'cairo'

5. Added jammy-proposed to apt sources
6. Update alacarte from jammy-proposed.
7. Confirm that python3-cairo is now installed.

# dpkg -l | grep python3-cairo
ii python3-cairo:amd64 1.20.1-3build1 amd64 Python3 bindings for the Cairo vector graphics library

8. Executed alacarte from cmdline and the gui was displayed.

Test result: I was able to run alacarte after the update.

Package tested:
# dpkg -l | grep alacarte
ii alacarte 3.44.1-1ubuntu0.1 all easy GNOME menu editing tool

tags: added: verification-done verification-done-jammy
removed: verification-needed verification-needed-jammy
Revision history for this message
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package alacarte - 3.44.2-1ubuntu0.1

---------------
alacarte (3.44.2-1ubuntu0.1) lunar; urgency=medium

  * Depend on python3-cairo. (LP: #2037326)

 -- Sudip Mukherjee <email address hidden> Wed, 06 Dec 2023 21:30:54 +0000

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

This bug was fixed in the package alacarte - 3.44.1-1ubuntu0.1

---------------
alacarte (3.44.1-1ubuntu0.1) jammy; urgency=medium

  * Depend on python3-cairo. (LP: #2037326)

 -- Sudip Mukherjee <email address hidden> Wed, 06 Dec 2023 21:53:30 +0000

Changed in alacarte (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.