2012-05-15 02:02:37 |
Gary Lasker |
bug |
|
|
added bug |
2012-05-15 21:56:17 |
Bilal Akhtar |
unity: assignee |
|
Bilal Akhtar (bilalakhtar) |
|
2012-05-15 21:56:23 |
Bilal Akhtar |
unity: status |
New |
Confirmed |
|
2012-05-23 17:38:12 |
Gary Lasker |
description |
While investigating bug 925014, I made the discovery that Unity launcher items that are added during an application installation via the Ubuntu Software Center incorrectly point to the desktop files from the app-install-data package, in the directory:
/usr/share/app-install/desktop (e.g., /usr/share/app-install/desktop/gnome-hearts:gnome-hearts.desktop
rather than the actual *installed* desktop files in:
/usr/share/applications (e.g., /usr/share/applications/gnome-hearts.desktop)
Note that the installed desktop files can be found in the /usr/share/applications directory after the installation has completed.
This appears to be a regression in a very recent release of Unity, as afaik this has worked correctly for quite a few cycles and also in Precise right up until the very final releases.
Note that we recently finished the remaining pieces of the implementation of the fully animated Unity launcher integration, as outlined in bug 761851, and it was as part of this work that this regression appears to have occurred.
You can refer to comment #7 of bug 761851 for details about the steps needed to determine the actual installed desktop file path. The Python code from Software Center that we used in past releases for this is as shown:
def convert_desktop_file_to_installed_location(app_install_data_file_path, pkgname=None):
""" returns the installed desktop file path that corresponds to the
given app-install-data file path, and will also check directly for
the desktop file that corresponds to a given pkgname.
"""
# "normal" case
installed_desktop_file_path = app_install_data_file_path.replace("app-install/desktop", "applications")
if os.path.exists(installed_desktop_file_path):
return installed_desktop_file_path
# next, try case where a subdirectory is encoded in the app-install
# desktop filename, e.g. kde4_soundkonverter.desktop
installed_desktop_file_path = installed_desktop_file_path.replace(APP_INSTALL_PATH_DELIMITER, "/")
if os.path.exists(installed_desktop_file_path):
return installed_desktop_file_path
# lastly, just try checking directly for the desktop file based on the pkgname itself
if pkgname:
installed_desktop_file_path = "/usr/share/applications/%s.desktop" % pkgname
if os.path.exists(installed_desktop_file_path):
return installed_desktop_file_path
logging.warn("Could not determine the installed desktop file path for app-install desktop file: '%s'" % app_install_data_file_path)
return "" |
While investigating bug 925014, I made the discovery that Unity launcher items that are added during an application installation via the Ubuntu Software Center incorrectly point to the desktop files from the app-install-data package, in the directory:
/usr/share/app-install/desktop (e.g., /usr/share/app-install/desktop/gnome-hearts:gnome-hearts.desktop
rather than the actual *installed* desktop files in:
/usr/share/applications (e.g., /usr/share/applications/gnome-hearts.desktop)
Note that the installed desktop files can be found in the /usr/share/applications directory after the installation has completed.
This appears to be a regression in a very recent release of Unity, as afaik this has worked correctly for quite a few cycles and also in Precise right up until the very final releases.
Note that we recently finished the remaining pieces of the implementation of the fully animated Unity launcher integration, as outlined in bug 761851, and it was as part of this work that this regression appears to have occurred.
You can refer to comment #7 of bug 761851 for details about the steps needed to determine the actual installed desktop file path. The Python code from Software Center that we used in past releases for this is as shown:
def convert_desktop_file_to_installed_location(app_install_data_file_path, pkgname=None):
""" returns the installed desktop file path that corresponds to the
given app-install-data file path, and will also check directly for
the desktop file that corresponds to a given pkgname.
"""
# "normal" case
installed_desktop_file_path = app_install_data_file_path.replace("app-install/desktop", "applications")
if os.path.exists(installed_desktop_file_path):
return installed_desktop_file_path
# next, try case where a subdirectory is encoded in the app-install
# desktop filename, e.g. kde4_soundkonverter.desktop
installed_desktop_file_path = installed_desktop_file_path.replace(APP_INSTALL_PATH_DELIMITER, "/")
if os.path.exists(installed_desktop_file_path):
return installed_desktop_file_path
# lastly, just try checking directly for the desktop file based on the pkgname itself
if pkgname:
installed_desktop_file_path = "/usr/share/applications/%s.desktop" % pkgname
if os.path.exists(installed_desktop_file_path):
return installed_desktop_file_path
logging.warn("Could not determine the installed desktop file path for app-install desktop file: '%s'" % app_install_data_file_path)
return ""
---
Additional info from Dmitry Shachnev, duplicate bug 996690:
Some Unity Mail users reported that after installing Unity Mail via the Software Center,
- The quicklist is not translated
- The count badge is not shown
Trying to debug this issue, I've found out that when installing an application from the Software Center, the desktop file added to Unity launcher favorites is '/usr/share/app-install/desktop/unity-mail:unity-mail.desktop', not expected '/usr/share/applications/unity-mail.desktop':
$ gsettings get com.canonical.Unity.Launcher favorites
['nautilus.desktop', 'chromium-browser.desktop', 'geany.desktop', 'gnome-terminal.desktop', '/usr/share/app-install/desktop/unity-mail:unity-mail.desktop']
I've temporarily added a workaround to Unity Mail that uses the desktop file from Unity.LauncherFavorites (see bug 990689), but this doesn't solve the problem with untranslated quicklist.
Obviously, this affects not only Unity Mail, but any other application in the Software Center. |
|
2012-06-13 02:33:18 |
Gary Lasker |
bug task added |
|
software-center (Ubuntu) |
|
2012-06-13 02:33:30 |
Gary Lasker |
software-center (Ubuntu): status |
New |
Triaged |
|
2012-06-13 02:33:42 |
Gary Lasker |
software-center (Ubuntu): importance |
Undecided |
High |
|
2012-06-13 02:33:46 |
Gary Lasker |
software-center (Ubuntu): assignee |
|
Gary Lasker (gary-lasker) |
|
2012-06-13 02:33:52 |
Gary Lasker |
software-center (Ubuntu): milestone |
|
precise-updates |
|
2012-06-13 02:34:08 |
Gary Lasker |
branch linked |
|
lp:~gary-lasker/software-center/unity-launcher-integration-fixes |
|
2012-06-13 02:34:18 |
Gary Lasker |
software-center (Ubuntu): status |
Triaged |
In Progress |
|
2012-07-20 06:44:20 |
Michael Vogt |
nominated for series |
|
Ubuntu Precise |
|
2012-07-20 06:44:20 |
Michael Vogt |
bug task added |
|
software-center (Ubuntu Precise) |
|
2012-07-20 06:44:30 |
Michael Vogt |
software-center (Ubuntu Precise): status |
New |
In Progress |
|
2012-07-20 06:44:32 |
Michael Vogt |
software-center (Ubuntu Precise): importance |
Undecided |
High |
|
2012-07-20 06:46:43 |
Michael Vogt |
software-center (Ubuntu): status |
In Progress |
Fix Released |
|
2012-07-23 21:12:45 |
Gary Lasker |
description |
While investigating bug 925014, I made the discovery that Unity launcher items that are added during an application installation via the Ubuntu Software Center incorrectly point to the desktop files from the app-install-data package, in the directory:
/usr/share/app-install/desktop (e.g., /usr/share/app-install/desktop/gnome-hearts:gnome-hearts.desktop
rather than the actual *installed* desktop files in:
/usr/share/applications (e.g., /usr/share/applications/gnome-hearts.desktop)
Note that the installed desktop files can be found in the /usr/share/applications directory after the installation has completed.
This appears to be a regression in a very recent release of Unity, as afaik this has worked correctly for quite a few cycles and also in Precise right up until the very final releases.
Note that we recently finished the remaining pieces of the implementation of the fully animated Unity launcher integration, as outlined in bug 761851, and it was as part of this work that this regression appears to have occurred.
You can refer to comment #7 of bug 761851 for details about the steps needed to determine the actual installed desktop file path. The Python code from Software Center that we used in past releases for this is as shown:
def convert_desktop_file_to_installed_location(app_install_data_file_path, pkgname=None):
""" returns the installed desktop file path that corresponds to the
given app-install-data file path, and will also check directly for
the desktop file that corresponds to a given pkgname.
"""
# "normal" case
installed_desktop_file_path = app_install_data_file_path.replace("app-install/desktop", "applications")
if os.path.exists(installed_desktop_file_path):
return installed_desktop_file_path
# next, try case where a subdirectory is encoded in the app-install
# desktop filename, e.g. kde4_soundkonverter.desktop
installed_desktop_file_path = installed_desktop_file_path.replace(APP_INSTALL_PATH_DELIMITER, "/")
if os.path.exists(installed_desktop_file_path):
return installed_desktop_file_path
# lastly, just try checking directly for the desktop file based on the pkgname itself
if pkgname:
installed_desktop_file_path = "/usr/share/applications/%s.desktop" % pkgname
if os.path.exists(installed_desktop_file_path):
return installed_desktop_file_path
logging.warn("Could not determine the installed desktop file path for app-install desktop file: '%s'" % app_install_data_file_path)
return ""
---
Additional info from Dmitry Shachnev, duplicate bug 996690:
Some Unity Mail users reported that after installing Unity Mail via the Software Center,
- The quicklist is not translated
- The count badge is not shown
Trying to debug this issue, I've found out that when installing an application from the Software Center, the desktop file added to Unity launcher favorites is '/usr/share/app-install/desktop/unity-mail:unity-mail.desktop', not expected '/usr/share/applications/unity-mail.desktop':
$ gsettings get com.canonical.Unity.Launcher favorites
['nautilus.desktop', 'chromium-browser.desktop', 'geany.desktop', 'gnome-terminal.desktop', '/usr/share/app-install/desktop/unity-mail:unity-mail.desktop']
I've temporarily added a workaround to Unity Mail that uses the desktop file from Unity.LauncherFavorites (see bug 990689), but this doesn't solve the problem with untranslated quicklist.
Obviously, this affects not only Unity Mail, but any other application in the Software Center. |
[TEST CASE]
The easiest way to insure that the Unity launcher is now pointing to the installed desktop file is to simply verify that the corresponding launcher icon is removed correctly after an application is uninstalled. Note that this test case is the same as that for bug 981488.
1. Launch the current Ubuntu Software Center in Precise.
2. Click the "Installed" toolbar button to access the list of installed applications.
3. Choose an installed application to remove (choose one for which there is a corresponding icon in the Unity launcher).
4. Click the "More Info" button.
5. In the details view for the application, click the "Remove" button and enter the password for the remove if prompted.
6. The uninstall process begins and the progress bar moves in Software Center.
7. At the end of the install process, verify that the corresponding icon in the Unity launcher has *not" been removed.
8. Close Ubuntu Software Center.
9. Update to both the software-center *and* unity packages in precise-proposed.
10. Repeat steps 1 through 6.
11. This time, at the end of the install process, verify that the corresponding icon in the Unity launcher is *removed*.
[REGRESSION POTENTIAL]
Risk of regression is very low. Just verifying that the correct icon is actually removed should be enough.
---
While investigating bug 925014, I made the discovery that Unity launcher items that are added during an application installation via the Ubuntu Software Center incorrectly point to the desktop files from the app-install-data package, in the directory:
/usr/share/app-install/desktop (e.g., /usr/share/app-install/desktop/gnome-hearts:gnome-hearts.desktop
rather than the actual *installed* desktop files in:
/usr/share/applications (e.g., /usr/share/applications/gnome-hearts.desktop)
Note that the installed desktop files can be found in the /usr/share/applications directory after the installation has completed.
This appears to be a regression in a very recent release of Unity, as afaik this has worked correctly for quite a few cycles and also in Precise right up until the very final releases.
Note that we recently finished the remaining pieces of the implementation of the fully animated Unity launcher integration, as outlined in bug 761851, and it was as part of this work that this regression appears to have occurred.
You can refer to comment #7 of bug 761851 for details about the steps needed to determine the actual installed desktop file path. The Python code from Software Center that we used in past releases for this is as shown:
def convert_desktop_file_to_installed_location(app_install_data_file_path, pkgname=None):
""" returns the installed desktop file path that corresponds to the
given app-install-data file path, and will also check directly for
the desktop file that corresponds to a given pkgname.
"""
# "normal" case
installed_desktop_file_path = app_install_data_file_path.replace("app-install/desktop", "applications")
if os.path.exists(installed_desktop_file_path):
return installed_desktop_file_path
# next, try case where a subdirectory is encoded in the app-install
# desktop filename, e.g. kde4_soundkonverter.desktop
installed_desktop_file_path = installed_desktop_file_path.replace(APP_INSTALL_PATH_DELIMITER, "/")
if os.path.exists(installed_desktop_file_path):
return installed_desktop_file_path
# lastly, just try checking directly for the desktop file based on the pkgname itself
if pkgname:
installed_desktop_file_path = "/usr/share/applications/%s.desktop" % pkgname
if os.path.exists(installed_desktop_file_path):
return installed_desktop_file_path
logging.warn("Could not determine the installed desktop file path for app-install desktop file: '%s'" % app_install_data_file_path)
return ""
---
Additional info from Dmitry Shachnev, duplicate bug 996690:
Some Unity Mail users reported that after installing Unity Mail via the Software Center,
- The quicklist is not translated
- The count badge is not shown
Trying to debug this issue, I've found out that when installing an application from the Software Center, the desktop file added to Unity launcher favorites is '/usr/share/app-install/desktop/unity-mail:unity-mail.desktop', not expected '/usr/share/applications/unity-mail.desktop':
$ gsettings get com.canonical.Unity.Launcher favorites
['nautilus.desktop', 'chromium-browser.desktop', 'geany.desktop', 'gnome-terminal.desktop', '/usr/share/app-install/desktop/unity-mail:unity-mail.desktop']
I've temporarily added a workaround to Unity Mail that uses the desktop file from Unity.LauncherFavorites (see bug 990689), but this doesn't solve the problem with untranslated quicklist.
Obviously, this affects not only Unity Mail, but any other application in the Software Center. |
|
2012-07-23 21:14:03 |
Gary Lasker |
unity: status |
Confirmed |
Invalid |
|
2012-07-23 21:15:35 |
Gary Lasker |
software-center (Ubuntu): milestone |
precise-updates |
|
|
2012-07-23 21:15:39 |
Gary Lasker |
software-center (Ubuntu Precise): milestone |
|
precise-updates |
|
2012-07-23 21:15:43 |
Gary Lasker |
software-center (Ubuntu Precise): assignee |
|
Gary Lasker (gary-lasker) |
|
2012-07-24 01:23:40 |
Gary Lasker |
software-center (Ubuntu Precise): status |
In Progress |
Fix Committed |
|
2012-07-25 13:46:28 |
Stéphane Graber |
software-center (Ubuntu Precise): status |
Fix Committed |
In Progress |
|
2012-08-01 19:13:08 |
Clint Byrum |
software-center (Ubuntu Precise): status |
In Progress |
Fix Committed |
|
2012-08-01 19:13:10 |
Clint Byrum |
bug |
|
|
added subscriber Ubuntu Stable Release Updates Team |
2012-08-01 19:13:15 |
Clint Byrum |
bug |
|
|
added subscriber SRU Verification |
2012-08-01 19:13:20 |
Clint Byrum |
tags |
|
verification-needed |
|
2012-08-01 19:47:26 |
Launchpad Janitor |
branch linked |
|
lp:ubuntu/precise-proposed/software-center |
|
2012-08-06 01:06:14 |
Gary Lasker |
tags |
verification-needed |
verification-done |
|
2012-08-09 06:00:10 |
Steve Langasek |
removed subscriber Ubuntu Stable Release Updates Team |
|
|
|
2012-08-09 06:00:17 |
Launchpad Janitor |
software-center (Ubuntu Precise): status |
Fix Committed |
Fix Released |
|