Bug List: (This bug is not in your last search results)   Show last search results      Search page      Enter new bug
Bug#: 189364
Alias:
Product:
Component:
Status: RESOLVED
Resolution: WONTFIX
Assigned To: Gentoo KDE team <kde@gentoo.org>
Hardware:
OS:
Version:
Priority:
Severity:
Reporter: Martin von Gagern <Martin.vGagern@gmx.net>
Add CC:
CC:
Remove selected CCs
URL:
Summary:
Status Whiteboard:
Keywords:

Filename Description Type Creator Created Size Actions
189364_errors.txt desktop validation errors for 61 packages text/plain Martin von Gagern 2007-08-24 08:25 0000 59.55 KB Details
3.5.10_failures.txt remaining packages text/plain Theo Chatzimichos 2009-05-26 15:54 0000 1.86 KB Details
Create a New Attachment (proposed patch, testcase, etc.) View All

Bug 189364 depends on: 186942 187371 188755 189551 190006 190758 210057 Show dependency tree
Bug 189364 blocks: 245954
Votes: 0    Show votes for this bug    Vote for this bug

Additional Comments: (this is where you put emerge --info)


Not eligible to see or edit group visibility for this bug.






View Bug Activity   |   Format For Printing   |   XML   |   Clone This Bug


Description:   Opened: 2007-08-18 13:47 0000
I'm remerging major parts of my KDE 3.5.7 ebuilds due to changed USE flags. I
got lots of mails from elog warning about invalid desktop entries. Traced this
to validate_desktop_entries in eutils.eclass which calls desktop-file-validate
from dev-util/desktop-file-utils if available.

To reproduce the error messages for installed entries, this seems to work:
for i in /usr/kde/3.5/share/applications/kde/*.desktop; do
  desktop-file-validate $i
done | grep error

Typical examples, in order of decreasing frequency:
* value "..." for string list key "MimeType" in group "Desktop Entry"
  does not have a semicolon (';') as trailing character
* value "..." for key "Categories" in group "Desktop Entry"
  contains an unregistered value "..."
* file contains key "..." in group "Desktop Entry",
  but keys extending the format should start with "X-"

In case you have trouble reproducing this, I can give you the complete messages
from my elog mails or the complete output from the loop described above.

I have kde-base/kde-meta-3.5.7 and dev-util/desktop-file-utils-0.13

Maybe the check errors (perhaps even warnings) should be QA warnings, not
simple ewarn messages which will be logged for most users though I guess most
are unlikely to do anything about them.

------- Comment #1 From Martin von Gagern 2007-08-20 17:01:49 0000 -------
As you made this a Tracker and have sub-bugs for individual ebuilds, I matched
the errors I can find on my system to the corresponding ebuilds. Do you want to
open a bug report for each of these? Or only packages outside kde-base?

kde-base/ark-3.5.7 (ark.desktop)
kde-base/certmanager-3.5.7-r1 (kleopatra_import.desktop)
kde-base/kaboodle-3.5.7 (kaboodle.desktop)
kde-base/kaddressbook-3.5.7 (kaddressbook.desktop)
kde-base/kate-3.5.7-r1 (kate.desktop, kwrite.desktop)
kde-base/kcontrol-3.5.7-r1 (installktheme.desktop, kfontview.desktop)
kde-base/kdelirc-3.5.7 (irkick.desktop)
kde-base/kdemultimedia-arts-3.5.7 (artsbuilder.desktop)
kde-base/kdeprint-3.5.7 (printers.desktop)
kde-base/kedit-3.5.7 (KEdit.desktop)
kde-base/keduca-3.5.7 (keducabuilder.desktop, keduca.desktop)
kde-base/kfax-3.5.7 (kfaxview.desktop)
kde-base/kghostview-3.5.7 (kghostview.desktop)
kde-base/kgpg-3.5.7 (kgpg.desktop)
kde-base/kimagemapeditor-3.5.7 (kimagemapeditor.desktop)
kde-base/klaptopdaemon-3.5.7-r1 (laptop.desktop)
kde-base/kmail-3.5.7-r2 (kmail_view.desktop)
kde-base/kmid-3.5.7 (kmid.desktop)
kde-base/kmplot-3.5.7 (kmplot.desktop)
kde-base/kolf-3.5.7 (kolf.desktop)
kde-base/kolourpaint-3.5.7 (kolourpaint.desktop)
kde-base/kommander-3.5.7 (kmdr-editor.desktop)
kde-base/konqueror-3.5.7-r2 (kfmclient_dir.desktop, kfmclient_war.desktop)
kde-base/konsole-3.5.7 (konsolesu.desktop)
kde-base/kopete-3.5.7-r1 (kopete.desktop)
kde-base/kpdf-3.5.7-r1 (kpdf.desktop)
kde-base/kpoker-3.5.7 (kpoker.desktop)
kde-base/ksysguard-3.5.7 (ksysguard.desktop)
kde-base/ktouch-3.5.7 (ktouch.desktop)
kde-base/ktuberling-3.5.7 (ktuberling.desktop)
kde-base/kuickshow-3.5.5 (kuickshow.desktop)
kde-base/kview-3.5.7 (kview.desktop)
kde-base/kwalletmanager-3.5.7 (kwalletmanager.desktop)
kde-base/noatun-3.5.7 (noatun.desktop)
kde-base/quanta-3.5.7 (quanta.desktop)
kde-base/superkaramba-3.5.7 (superkaramba.desktop)
kde-base/umbrello-3.5.7 (umbrello.desktop)

------- Comment #2 From Wulf Krueger (RETIRED) 2007-08-23 18:02:42 0000 -------
Martin, please only file individual bugs for packages outside of kde-base.

------- Comment #3 From Martin von Gagern 2007-08-24 08:25:34 0000 -------
Created an attachment (id=129050) [details]
desktop validation errors for 61 packages

Now I ran this command on my system:

locate \*.desktop | grep -vE '^/usr/portage|^/usr/local' | while read i; do
  desktop-file-validate $i
done | grep error | cut -d: -f1 | qfile -v -f - | cut -d\  -f1 | sort -u

to find out which other desktop files on my system are broken. I found KOffice,
for which I filed bug 190006, and 61 more packages outside kde-base. I don't
know which of these ebuilds run validate_desktop_entries, but whether or not, a
bad desktop entry is a bad thing in any case, right?

Right now I don't have the time to file 61 bug reports, especially since I
can't specify a block with the initial submission, so I'd have to edit each
report twice. Also I wouldn't consider my system representative, so perhaps the
above command could be run on one of the tinderboxes or some other host with a
large collection of built packages?

I'm attaching the list of errors, in case someone is curious or willing to file
a bunch of bugs for them, maybe using some bulk submission tool.

------- Comment #4 From Wulf Krueger (RETIRED) 2007-08-24 11:11:52 0000 -------
Thanks, Martin! Not filing individual bugs for all these is better anyway. I
simply didn't expect that many. We'll look at your list instead.

------- Comment #5 From Martin von Gagern 2007-08-27 08:40:16 0000 -------
Do you plan to provide some desktop entry fixing function in some eclass?
In this case it would be nice to let Thomas A. know about it, as he's preparing
fixes to individual ebuilds in bug 190006.

Missing semicolon can be fixed easily, and forbidden keys kan be removed or
prefixed with X-. To fix the Categories, the ebuild must probably provide the
correct category, but the actual text replacement can be in some eclass as
well. The same goes for missing names. Incorrect UTF-8 format can be handled by
finding these sequences, assuming they are ISO-8859-1, and recoding them. This
Version business I haven't understood yet, will probably have to read the
sources of the checker or some desktop file format spec.

I guess I would want an eclass for desktop entry mangling, inherited by kde
eclass and some individual ebuilds. I would want a separate function for each
fix, such that the ebuild still has to say what's wrong, but in a readable way,
so that you know what it is fixing, not so much how it is fixing it. You still
could have some auto-fix function calling the individual ones if absolutely
needed. In this case that function should probably be versioned somehow, so
that you can write one with different corrections in the future without
modifying the behavior of current ebuilds.

------- Comment #6 From Theo Chatzimichos 2009-05-26 15:54:12 0000 -------
Created an attachment (id=192506) [details]
remaining packages

------- Comment #7 From Jonathan Callen 2009-10-24 21:39:52 0000 -------
KDE 3.5 is going away soon, this won't be fixed

Bug List: (This bug is not in your last search results)   Show last search results      Search page      Enter new bug