The p7zip distribution tar.bz2 contains two versions of the desktop file providing the service menu entries in file managers like dolphin:
Therefore the context menu contains the entries twice.
Both version differ in the values of "ServiceTypes" and "X-KDE-ServiceTypes", which are KDE-specific according to freedesktop.org:
I tried both files with the other one removed from /usr/share/kde4/services/ServiceMenus and the entries appeared each time only once (no matter which version of the file I used).
Please consider changing the ebuild to install only one of them. I don't know which one is the correct one, though, as Gnome or XFCE may behave differently.
jens:/usr/share/kde4/services/ServiceMenus> diff -u p7zip_compress.desktop p7zip_compress2.desktop
--- p7zip_compress.desktop 2011-04-03 15:39:06.000000000 +0200
+++ p7zip_compress2.desktop 2011-04-03 15:39:06.000000000 +0200
@@ -1,12 +1,12 @@
[Desktop Action CompressDialog]
Name=Add to Archive ...
Yes, only one desktop file should be installed. The current menu is quite huge with everything duplicated. p7zip_compress.desktop is the one that should be used, since it's supposed to work everywhere, not only KDE.
Upstream bug: https://sourceforge.net/tracker/?func=detail&aid=3371226&group_id=111810&atid=660493
+ 07 Oct 2011; Justin Lecher <email@example.com> p7zip-9.20.1.ebuild,
+ Do only install one .desktop file for compression, #366465