kdenlive missing menu icon in gnome

Bug #261068 reported by chris_c
6
Affects Status Importance Assigned to Milestone
kdenlive (Ubuntu)
Fix Released
Low
Unassigned

Bug Description

Binary package hint: kdenlive

version 0.5.svn20071228-0.0ubuntu1 on Ubuntu 8.04

as it says on the title...

install the package and there is no "gui" way to start it from gnome...

Related branches

Changed in kdenlive:
importance: Undecided → Low
status: New → Confirmed
Revision history for this message
Alexei Colin (alexei.colin) wrote :

Perhaps fixing this is a good small project for a new want-to-be contributor. Harald, would you mentor me on this one, please? As far as I can tell, a .desktop file must be included into the package, which would specify how the menu should be populated.

Please let me know if I could try and help with this one.

Revision history for this message
Harald Sitter (apachelogger) wrote :

I don't remember what exactly the problem is.

But I think kdenlive includes a desktop, but the icon is in the wrong icon set. KDE 3 uses crystalsvg by default, and I guess that's where the application icon (kdenlive.png) goes. The problem is that _only_ KDE will search for the icon in crystalsvg, all free desktops search in an icon set called hicolor.

So my guess is, that you just need to move the icon from usr/share/icons/crystalsvg/... to usr/share/icons/hicolor/...

You can archive this either via debian/install or debian/kdenlive.install (see man dh_install for a description how to do that), in case kdenlive doesn't have either of these files you will have to move the file manually in debian/rules (after make install).

Please ask if you need more help, otherwise Google might be of help as well :-)

Also assign the bug to yourself and set the status to in progress, so that everyone knows you are working on it.

Changed in kdenlive:
assignee: nobody → alexei.colin
status: Confirmed → In Progress
Revision history for this message
Alexei Colin (alexei.colin) wrote :

Harald, thank you for giving a direction -- it sped up the diagnosis. The problem is due to a change made outside of kdenlive: the .desktop files used to be stored in /usr/share/applnk/<category> but now they should be stored in /usr/share/applications/kde. The icon appears to be in order.

The fix involves:
1. edit kdenlive/CMakeLists.txt:
- INSTALL (FILES kdenlive.desktop DESTINATION share/applnk/Multimedia)
+ INSTALL (FILES kdenlive.desktop DESTINATION ${XDG_APPS_DIR})

2. edit kdenlive/kdenlive.desktop:
- Icon=kdenlive.png
+ Icon=kdenlive
(possibly other edits to make kdenlive.desktop comply to the specification -- it doesn' t now)

Both files are part of the kdenlive source tarball. No changes are needed to the Debian package, strictly speaking. Is it good practice to change the package so that it patches these files in the original source? The Ubuntu packaging docs suggest that no. Also, the CMakeLists.txt change is implemented already in the latest kdenlive source in SVN (sort of.. -- they chose to hard-code the XDG_APPS_DIR value). So, what's the correct next step of bringing this fix to the people? :)

Thanks and sorry for my inexperience!

Revision history for this message
Harald Sitter (apachelogger) wrote :

Usually you would go with a patch, especially since the packaging already uses one. In most cases are patches easier to maintain and people won't forget to merge it when pulling a new version from Debian.

In this case a patch system called 'quilt' is used (because it got a quilt build-dependency and references to quilt patches in debian/rules). It's not too easy to understand at first, but it is a very powerful, and everyone who had to work with it loves it afterwards ;-)

A usual use case would be:
cd source-1.0.0
ln -s debian/patches # or create this folder and than ln -s, this linking is necesssary to make quilt find the patches without problems
quilt push -a # applies all existing patches
quilt new kubuntu_01_fix_desktop_file.diff # will tell quilt about the new patch
quilt add kdenlive/CMakeLists.txt
quilt add kdenlive/kdenlive.desktop # it is necessary to tell quilt exactly which files are going to change
now you can edit the files
quilt refresh # will update the latest patch (i.e. the one just done)
quilt pop -a # reverts all patches again (i.e. push is applying, pop is reverting)
rm patches # remove the link to debian/patches again

Then you should find the new patch file in debian/patches and it should be listed in debian/patches/series.
A somewhat generic howto: http://www.balloonboard.org/balloonwiki/QuiltHowto
Unfortunately there is no good howto about quilt packaging use cases, so I hope the above is enough, otherwise 'man quilt' is the way to go.

As for the XDG_APPS_DIR. You should go with the upstream approach in my humble opinion. Please also send all your other desktop file changes to upstream, so that we can drop the patch for the next upstream release.

Revision history for this message
Alexei Colin (alexei.colin) wrote :

Harald, I tested the built patched package on my system, the fix worked.
So, here's the debdiff. I tried to read about the next step in Ubuntu's Sponsorship guide, but still need to ask you what would it be?

Also, for sending the .desktop changes upstream, should I open a bug report in Bug Tracker kdenlive.org? or what's the nice way to let them know?

Revision history for this message
Harald Sitter (apachelogger) wrote :

Patch looks good, kdenlive doesn't really build though .... I'll have a look at that.

If I wasn't mentoring this bug, the sponsorship guide would suggest that you subscribe ubuntu-universe-sponsors. Then a universe sponsor (MOTU who wants to do sponsoring) would review the debdiff and either request improvements or upload the patched version.

As for sending changes upstream, the nicest way would be to invite the upstream developer(s) over for a coffee ;-) ...since that might be a bit of a problem due to distances, an almost as nice solution would be to get in touch with them via IRC or mail.
If that isn't possible either, you should use the bug tracker.

The bug tracker is last option because sometimes patches get lost in them. In a direct conversation, upstream might ask you to file the patch in the BTS as well, but you can make sure he knows about it and maybe he fixes it right away without bug report. Communication via IRC or mail is also more social :)

Changed in kdenlive:
assignee: alexei.colin → apachelogger
Revision history for this message
Alexei Colin (alexei.colin) wrote :

Thanks for the advice! =) I will contact the kdenlive developers about this small patch.

Hm.. I started from apt-get source kdenlive -- the source that was there + this patch built for me and the (non-source) package installed fine. I'm sure you'll find the culprit.

Revision history for this message
Harald Sitter (apachelogger) wrote :

I recommend using an Intrepid pbuilder for testbuilding :)

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

This bug was fixed in the package kdenlive - 0.5.svn20071228-0.0ubuntu3

---------------
kdenlive (0.5.svn20071228-0.0ubuntu3) intrepid; urgency=low

  * Move kdenlive.desktop installation to share/applications/kde (LP: #261068)
    - Delete deprecated entries from kdenlive.desktop

 -- Alexei Colin <email address hidden> Mon, 06 Oct 2008 13:42:52 +0200

Changed in kdenlive:
status: In Progress → Fix Released
Changed in kdenlive:
assignee: apachelogger → nobody
status: Fix Released → In Progress
status: In Progress → 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.