SUMMARY The POTD wallpaper plugin checks for new wallpaper at 12:00 AM localtime. Bing's Picture of the Day updates at a fixed time each day (possibly 12:00 AM PST, would need to confirm this). If the system is set to a timezone with a higher offset than PST, then Plasma ends up checking for new wallpaper some hours before Bing's Picture of the Day has been updated, resulting in the wallpaper being a day behind. STEPS TO REPRODUCE 1. Set wallpaper to Bing Picture of the Day. 2. Wait until the next day. OBSERVED RESULT If in e.g. US/Eastern, the wallpaper will be showing the previous Bing Picture of the Day. EXPECTED RESULT The wallpaper should be showing the current Bing Picture of the Day. SOFTWARE/OS VERSIONS Linux/KDE Plasma: Gentoo; Kernel 6.0.9 (available in About System) KDE Plasma Version: 5.26.3 KDE Frameworks Version: 5.101 Qt Version: 5.15.7 ADDITIONAL INFORMATION A proper fix would be extending the POTD provider class to allow it to return a timestamp indicating when the wallpaper should be updated. For Bing POTD, it should be 12 AM Pacific Time (or perhaps 5-10 minutes later). Note that this will need to be adjusted for DST, so QTimeZone for "US/Pacific" should be used to adjust for DST.
A possibly relevant merge request was started @ https://invent.kde.org/plasma/kdeplasma-addons/-/merge_requests/300
Git commit 6859a0cd056718becae2d9a675ff5b9e3f0d8dd5 by Fushan Wen. Committed on 24/12/2022 at 00:26. Pushed by fusionfuture into branch 'master'. wallpapers/potd: update picture at 0:01 The clock can be inaccurate due to faulty hardware/out of sync with time server, so wait one more minute. FIXED-IN: 5.26.5 M +4 -4 wallpapers/potd/plugins/potdengine.cpp https://invent.kde.org/plasma/kdeplasma-addons/commit/6859a0cd056718becae2d9a675ff5b9e3f0d8dd5
Git commit 02679ace137ad7a05d60c0f1239800b26c964379 by Fushan Wen. Committed on 24/12/2022 at 00:29. Pushed by fusionfuture into branch 'cherry-pick-6859a0cd'. wallpapers/potd: update picture at 0:01 The clock can be inaccurate due to faulty hardware/out of sync with time server, so wait one more minute. FIXED-IN: 5.26.5 (cherry picked from commit 6859a0cd056718becae2d9a675ff5b9e3f0d8dd5) M +4 -4 wallpapers/potd/plugins/potdengine.cpp https://invent.kde.org/plasma/kdeplasma-addons/commit/02679ace137ad7a05d60c0f1239800b26c964379
I still have the issue even though I am running plasmashell version 5.26.5. My system info: Operating System: KDE neon 5.26 KDE Plasma Version: 5.26.5 KDE Frameworks Version: 5.101.0 Qt Version: 5.15.7 Kernel Version: 5.15.0-57-generic (64-bit) Graphics Platform: X11
The mentioned MR does not address the timezone issue.
(In reply to Peter Hoeg from comment #5) > The mentioned MR does not address the timezone issue. Perhaps I don't understand how Bing PotD works in countries that have more than one timezone. In China (and perhaps in other countries that only have one timezone as well) Bing PotD will always update at 12:00 a.m. (UTC+8) Could anyone help me understand it? I assume in America, regardless of west/middle/east timezone, Bing PotD will always update at 12:00 a.m. (UTC-8/PST). Is my assumption right?
From the original bug report: > The POTD wallpaper plugin checks for new wallpaper at 12:00 AM localtime. Bing’s Picture of the Day updates at a fixed time each day (possibly 12:00 AM PST, would need to confirm this). So basically, the plugin needs to *ignore* the local timezone and always run at whatever point in time Bing changes + some buffer (5 minutes?)
How about checking multiple times in a day? I assume something similar happens for folks with laptops. For example, I have the bing potd set up on my laptop and I open the laptop at odd times in the day and each time I do so it updates the wallpaper if it isn't the latest.
Good point. Something like: on every start and every hour at 5 minutes past the hour to accommodate clock-skew/delays.
Makes sense. Perhaps it's necessary to update the wallpaper multiple times a day.
A possibly relevant merge request was started @ https://invent.kde.org/plasma/kdeplasma-addons/-/merge_requests/320
This bug is still in Plasma 6.3.3, which is why I searched and found this bug report.
I get this issue when I am working on my laptop past midnight 🤭. The Bing POTD does not update at midnight. This means that I will not get a new wallpaper until I go to bed before midnight and put my laptop to sleep. This is the line of code that sets the interval to update to midnight. https://invent.kde.org/plasma/kdeplasma-addons/-/blob/master/wallpapers/potd/plugins/potdengine.cpp?ref_type=heads#L225 or same file line 334 that sets the next load interval after a success. Could this be the cause? I was thinking of having a configuration item to POTD to allow an update time if the user knows that a provider does not provide an update at the start of the day. The idea of multiple checks could also work or only updating the cached image if it actually differs from the last image. This could be done by maybe by cachedimageprovider to only save if the image actually changed from the last file. Although what happens if a cached image continues to not exist because the provider did not update it yet? The actual save into cache is from void PotdClient::slotFinished. I am interested in getting this fixed. Unfortunately I have been staying up late recently and sometimes multiple days in a row. I am also the type of person who has the Bing wallpaper on my phone and tablet too. I get comfort in all of my wallpapers being the same.