Bug 350148

Summary: plasmashell wants "metadata.desktop" files in slideshow sub-directories for some reason and isn't too shy to mention it 3 times per image
Product: frameworks-kpackage Reporter: unsuspicious.fakename+kdebugs
Component: defaultAssignee: Marco Martin <notmart>
Status: CONFIRMED ---    
Severity: normal CC: alvaro.carroz, bernie, bhush94, hamelg, jjm, johnnyl33, kde, kde, kde, plasma-bugs
Priority: NOR    
Version: 5.68.0   
Target Milestone: ---   
Platform: Ubuntu Packages   
OS: Linux   
Latest Commit: Version Fixed In:

Description unsuspicious.fakename+kdebugs 2015-07-12 13:33:05 UTC
While the slideshow wallpaper is in use with a directory that contains multiple subdirectories, plasmashell complains about missing metadata file in the "package" of each subdirectory 3 times per image change

Reproducible: Always

Steps to Reproduce:
1. Put some images into some directories
2. Put those directories into "FOLDER"
3. Add "FOLDER" to Desktop Wallpaper slideshow

Actual Results:  
Journal goes like:

Jul 12 15:15:59 host plasmashell[24211]: No metadata file in the package, 
expected it at: "/home/user/FOLDER/subdirectory-17//metadata.desktop"
Jul 12 15:15:59 host plasmashell[24211]: No metadata file in the package, 
expected it at: "/home/user/FOLDER/subdirectory-17//metadata.desktop"
Jul 12 15:15:59 host plasmashell[24211]: No metadata file in the package, 
expected it at: "/home/user/FOLDER/subdirectory-17//metadata.desktop"
Jul 12 15:17:00 host plasmashell[24211]: No metadata file in the package, 
expected it at: "/home/user/FOLDER/subdirectory-16//metadata.desktop"
Jul 12 15:17:00 host plasmashell[24211]: No metadata file in the package, 
expected it at: "/home/user/FOLDER/subdirectory-16//metadata.desktop"
Jul 12 15:17:00 host plasmashell[24211]: No metadata file in the package, 
expected it at: "/home/user/FOLDER/subdirectory-16//metadata.desktop"
Jul 12 15:18:01 host plasmashell[24211]: No metadata file in the package, 
expected it at: "/home/user/FOLDER/subdirectory-11//metadata.desktop"
Jul 12 15:18:01 host plasmashell[24211]: No metadata file in the package, 
expected it at: "/home/user/FOLDER/subdirectory-11//metadata.desktop"
Jul 12 15:18:01 host plasmashell[24211]: No metadata file in the package, 
expected it at: "/home/user/FOLDER/subdirectory-11//metadata.desktop"
Jul 12 15:19:02 host plasmashell[24211]: No metadata file in the package, 
expected it at: "/home/user/FOLDER/subdirectory-16//metadata.desktop"
Jul 12 15:19:02 host plasmashell[24211]: No metadata file in the package, 
expected it at: "/home/user/FOLDER/subdirectory-16//metadata.desktop"
Jul 12 15:19:02 host plasmashell[24211]: No metadata file in the package, 
expected it at: "/home/user/FOLDER/subdirectory-16//metadata.desktop"
Jul 12 15:20:03 host plasmashell[24211]: No metadata file in the package, 
expected it at: "/home/user/FOLDER/subdirectory-19//metadata.desktop"
Jul 12 15:20:03 host plasmashell[24211]: No metadata file in the package, 
expected it at: "/home/user/FOLDER/subdirectory-19//metadata.desktop"
Jul 12 15:20:03 host plasmashell[24211]: No metadata file in the package, 
expected it at: "/home/user/FOLDER/subdirectory-19//metadata.desktop"
Jul 12 15:21:04 host plasmashell[24211]: No metadata file in the package, 
expected it at: "/home/user/FOLDER/subdirectory-11//metadata.desktop"
Jul 12 15:21:04 host plasmashell[24211]: No metadata file in the package, 
expected it at: "/home/user/FOLDER/subdirectory-11//metadata.desktop"
Jul 12 15:21:04 host plasmashell[24211]: No metadata file in the package, 
expected it at: "/home/user/FOLDER/subdirectory-11//metadata.desktop"
Jul 12 15:22:05 host plasmashell[24211]: No metadata file in the package, 
expected it at: "/home/user/FOLDER/subdirectory-30//metadata.desktop"
Jul 12 15:22:05 host plasmashell[24211]: No metadata file in the package, 
expected it at: "/home/user/FOLDER/subdirectory-30//metadata.desktop"
Jul 12 15:22:05 host plasmashell[24211]: No metadata file in the package, 
expected it at: "/home/user/FOLDER/subdirectory-30//metadata.desktop"
Jul 12 15:23:06 host plasmashell[24211]: No metadata file in the package, 
expected it at: "/home/user/FOLDER/subdirectory-08//metadata.desktop"
Jul 12 15:23:06 host plasmashell[24211]: No metadata file in the package, 
expected it at: "/home/user/FOLDER/subdirectory-08//metadata.desktop"
Jul 12 15:23:06 host plasmashell[24211]: No metadata file in the package, 
expected it at: "/home/user/FOLDER/subdirectory-08//metadata.desktop"
Jul 12 15:24:07 host plasmashell[24211]: No metadata file in the package, 
expected it at: "/home/user/FOLDER/subdirectory-11//metadata.desktop"
Jul 12 15:24:07 host plasmashell[24211]: No metadata file in the package, 
expected it at: "/home/user/FOLDER/subdirectory-11//metadata.desktop"
Jul 12 15:24:07 host plasmashell[24211]: No metadata file in the package, 
expected it at: "/home/user/FOLDER/subdirectory-11//metadata.desktop"

... all day long.

Expected Results:  
It should STFU
Comment 1 David Edmundson 2015-07-12 14:15:06 UTC
They're just debug statements.
I don't see the problem?
Comment 2 unsuspicious.fakename+kdebugs 2015-07-12 15:10:24 UTC
Do you mean, it actually should be looking for metadata.desktop files inside of the slideshow directories every time the picture changes (and check it thrice)? 

I don't  understand, why those desktop files should be located in such user-made directories in the first place, but If that is intended behaviour, I guess the problem would be that debug output for something like that by default goes to the journal. And of course: there does not seem to be a way to stop it.

I have disabled all debug output both in kdebugdialog and in kdebugdialog5.

Also tried adding
QT_LOGGING_RULES="*.debug=false"
export QT_LOGGING_RULES
... to my /usr/bin/startkde or setting it in /etc/environment

Still, currently, at least 95% of my whole system journal is wallpaper slideshow... that's not what the system journal is for. Well, not exclusively at least. I like to see other stuff there, occasionally, I mean.
Comment 3 Bhushan Shah 2015-07-18 13:56:06 UTC
Disabling debug output want help as is qWarning. And indeed this should be solved, as for every wallpaper change it tries to set package path totally 3 times.. and fails because it is not valid package at all. This doesn't make sense at all.
Comment 4 Kai Uwe Broulik 2015-07-18 14:11:27 UTC
I don't see the wallpaper call setPath more than once but KPackage::Package repeatedly calls into createPackageMetadata, printing a warning each time. Also, the package still returns true for isValid despite not having metadata. Re-assigning to kpackage framework.
Comment 5 Kai Uwe Broulik 2015-07-18 14:12:36 UTC
Quoting from package.cpp:

//Minimal packages with no metadata *are* supposed to be possible
//so if !metadata().isValid() go ahead"

So, either shut up or make those packages invalid.
Comment 6 Jonathan Marten 2017-01-18 14:11:56 UTC
Fix submitted at https://phabricator.kde.org/D4188
Comment 7 Bernie Innocenti 2020-07-02 04:41:47 UTC
The fix was not accepted as is, but the problem persists:

# journalctl | grep "No metadata file in the package" | wc -l 
38250


The warnings look like this:

Jul 02 12:22:14 giskard kscreenlocker_greet[5837]: kf5.kpackage: No metadata file in the package, expected it at: "/home/bernie/Pictures/space/elite-dangerous/ships/"
Comment 8 Nick Cross 2020-10-20 22:00:05 UTC
Could this message warning be removed from the code? It does not seem to serve any benefit (my background still works it seems) ?
Comment 9 hamelg 2020-11-07 16:35:42 UTC
My slideshow wallpaper is setup with a lot of pictures.
every time i startup my kde session, the user journal is polluted by thousands lines of irrelevant lines.

$ find ~/.pics -type f | wc -l
2061
$ journalctl --user -b | grep -c 'kf.package: No metadata file in the package, expected it at'
6195
Comment 10 hamelg 2020-11-26 22:04:03 UTC
Upgrading the plasma framework to 5.76 has fixed the issue :)