Bug 405029

Summary: Can't set "Classic" theme.
Product: [Applications] kdiamond Reporter: Giorgos Kostopoulos. <giorgosk67>
Component: generalAssignee: Stefan Majewsky <majewsky>
Status: REPORTED ---    
Severity: minor CC: aacid, aleixpol, iandw.au, kde-games-bugs-null, leinir, luigi.toscano
Priority: NOR    
Version First Reported In: unspecified   
Target Milestone: ---   
Platform: Other   
OS: Linux   
Latest Commit: Version Fixed In:
Sentry Crash Report:
Attachments: Attempt to download and install Classic theme from KHNS

Description Giorgos Kostopoulos. 2019-03-03 12:10:06 UTC
SUMMARY
Classic theme can be installed, but it doesn't appear at "Select theme" window.

STEPS TO REPRODUCE
1. Settings -> Configure KDiamond -> Get New Themes....
2. At Classic theme -> Install.
3. Close.

OBSERVED RESULT
Classic theme isn't there.

EXPECTED RESULT
To be on the list, so it can be selected.

SOFTWARE/OS VERSIONS
Windows: 
MacOS: 
Linux/KDE Plasma: 
(available in About System)
KDE Plasma Version: 5.8.6
KDE Frameworks Version: 5.28
Qt Version: 5.7.1

ADDITIONAL INFORMATION
V.1.5, on Devuan ASCII (stable) x64 KDE (based on Debian stable).
Comment 1 Albert Astals Cid 2019-03-05 22:18:53 UTC
Interestingly i don't even seem to get the new themes at all on newer versions.

Dan/Aleix, any idea why that may be?
Comment 2 Aleix Pol 2019-03-06 02:06:50 UTC
Seems like there's no KDiamond themes on the store.

https://store.kde.org/browse/cat/407/ord/latest/
Comment 3 Ian Wadham 2019-03-06 04:21:15 UTC
(In reply to Aleix Pol from comment #2)
> Seems like there's no KDiamond themes on the store.
> 
> https://store.kde.org/browse/cat/407/ord/latest/

I don't know what this "store" thing is, but KGoldrunner and KSudoku also have nothing there. KDiamonds, KGr and KSudo have had "installed" themes since early KDE4 times and KGr and KSudo have always had several installed game variants. So has there been some porting problem? Or does "store" only have a *category* for KDE Games Add-ons, which might or might not have entries for every game, and the game itself might or might not have functional support for loading Add-ons?
Comment 4 Aleix Pol 2019-03-06 14:50:47 UTC
That store.kde.org is the continuation of kde-look.org, it should have the same assets. Do you think stuff was lost in the move? It's been few years...
Comment 5 Ian Wadham 2019-03-06 20:45:28 UTC
Created attachment 118609 [details]
Attempt to download and install Classic theme from KHNS
Comment 6 Albert Astals Cid 2019-03-06 21:01:38 UTC
Ian, is that screenshot from running *today* ? Which version of kdiamonds ?
Comment 7 Ian Wadham 2019-03-06 21:18:49 UTC
Hmmm! There have been some red herrings in these comments... :-)

The problem is literally as Giorgos describes. See the attached screenshot from my Apple machine, running one of the last releases of KDE4 under Macports. My KDE4 version was able to download and install 3 files for the Classic theme into my User area from Get Hot New Stuff (?), wherever GHNS is/was. However the code of KDiamond does not display the Classic theme in the theme-selection dialog. And I suspect it might not be able to find the files in the $HOME area and change the display to the Classic theme (which I think must be the old KDE3 theme).

Re the "store" and KDE Look, I don't think any KDE Games used KDE Look, except perhaps for wallpaper or icons. So games that have no content in the store should probably be removed from there, unless this is where Hot New Stuff should now reside, in which case some games, including KDiamond, should be using the store.

Certainly I can say, as former author/maintainer, that KGoldrunner and KSudoku should be removed from the store. It was my practice to test new KGoldrunner levels and new KSudoku puzzle-types and then put them in the released files, often after some discussion/debugging with the authors.

Over to you, guys! I am unable to install/maintain KF5 apps on my Apple machine, but this problem with KDiamond might be quite easy to solve.
Comment 8 Ian Wadham 2019-03-06 21:22:20 UTC
(In reply to Albert Astals Cid from comment #6)
> Ian, is that screenshot from running *today* ? Which version of kdiamonds ?

That was a screenshot from Applications release 4.14.3.
Comment 9 Aleix Pol 2019-03-07 00:50:04 UTC
The culprit seems to be this change: https://phabricator.kde.org/R394:3ffd35d9babae34d189446d9ba2a2a799412c080

I can confirm that reverting it fixes it. That said it's a static KNS service which seems quite pointless after all.
Comment 10 Ian Wadham 2019-03-07 05:20:02 UTC
(In reply to Aleix Pol from comment #9)
> The culprit seems to be this change:
> https://phabricator.kde.org/R394:3ffd35d9babae34d189446d9ba2a2a799412c080
> 
> I can confirm that reverting it fixes it. That said it's a static KNS
> service which seems quite pointless after all.

Well, it seems to me that the change should have been applied in such a way that the "new" Classic theme appears in the "store", if that is KDE's policy re NewStuff.

I don't understand your last statement, Aleix, except that it is pointless to have put an "old" theme into NewStuff. The Classic theme really belongs in the game's released data files, as was/is the case with KMahjongg and KShisen.
Comment 11 Ian Wadham 2019-03-07 05:37:52 UTC
(In reply to Ian Wadham from comment #5)
> Created attachment 118609 [details]
> Attempt to download and install Classic theme from KHNS

Re my attachment, after some experimentation (in the KDE4 version) I found that the Classic theme CAN be downloaded and used in a game of KDiamond. I needed to close the "Get Hot New Stuff" dialog window and only then would the Classic theme appear in the "Select Theme" dialog window.

These two dialogs are handled by the KgThemeProvider class on libkdegames, but its synchronization of installed data and view seems to be imprecise. Ditto when you uninstall the Classic theme - a ghost remains in the Selector and is hard to get rid of immediately.
Comment 12 Albert Astals Cid 2019-03-17 18:21:49 UTC
@Luigi so you did move from the old newstuff system to the new store, but it seems the new store is empty.

Should we either care about it or just remove newstuff support at all given it doesn't seem to work very well and there's just 1 theme on the old newstuff system?
Comment 13 Ian Wadham 2019-03-17 21:04:12 UTC
I'd suggest you remove newstuff support and transfer the files for the Classic theme into the released theme-files for KDiamond. The Classic theme is from KDE 3 days after all and is not "new stuff" at all.
Comment 14 Luigi Toscano 2019-03-17 22:55:35 UTC
To be honest, I'm not sure why removing the support for newstuff should be a solution. The category is going to stay unless we request its removal, and the support itself does work - everything discussed so far is about the old newstuff.kde.org used in the kdelibs 4.x version, not the KF5 version.

The bug report is about "there is nothing on store.kde.org about component X" and I don't think that adding the support to newstuff only when something is added to store is the solution - it's a chicken-and-egg problem.

If there is a Classic theme which is not on store.kde.org, we may add it. Do we have an official "KDE" account on store.kde.org?
Comment 15 Luigi Toscano 2019-03-17 23:00:18 UTC
I would also add: we may want to fix the Get Hot New Stuff dialog to show a message when no files are available for the requested category. It should help users to distinguish whether there is an issue with store.kde.org or there are really no items.
Comment 16 Albert Astals Cid 2019-03-19 21:25:18 UTC
I kind of agree with Luigi, we support themes, sure we can move this theme to the code, but people like writing their silly themes, so it seems better if we can add this theme back to the kde store.

Aleix, do you know if there's a "official" account to use for this stuff?
Comment 17 Ian Wadham 2019-03-21 05:59:27 UTC
Abert and Luigi, supporting themes and hot new stuff is fine, but "build it and they will come" depends on there being known and easy roads to it. Please be assured that there is nothing silly or even simple about producing a new theme or graphics for a KDE Game. The undertaking has a few pre-requisites:

   1. Artistic ability,
   2. Knowledge and proficiency in how to draw for SVG, e.g. with Inkscape,
   3. An understanding and enjoyment of the target game,
   4. A knowledge of how the graphic elements are used in the code.

The last people who had all these pre-requisites for all KDE Games were Eugene Trounev, Luciano Montanaro and Mauricio Piacentini - and they departed KDE Games several years ago, never to be replaced.

I think someone who has pre-requisites 1 and 2 can do a good job on a card deck,
for example, because the graphics have a simple underlying schema - a list of 54 standardised names for the cards and a fairly simple .desktop file. These can be discovered by opening existing card deck files in Inkscape and text editor. So there are quite a few card decks in the KDE Store.

The same should be true of KDiamonds, but I think it fails pre-requisite 3 - the game does not grab artists' attention. At any rate, nobody has produced a new theme for KDiamonds for about 10 years, so why waste time supporting the code for KDiamonds new stuff?

Games like KGoldrunner and KSudoku have somewhat complicated graphics schemas, which may scare artists away. It tended to scare them when KDE 4 games were first being developed, but there was a high degree of co-operation between program authors and artists at that time, which helped overcome difficulties.

Nothing like that these days I am sad to say.
   
So horses for courses, I say. Keep support in the Store for those games where there are interested contributors, but wind it back for other games.

I hope this helps put things in perspective. BTW I have become an artist in the last three years, but I would fail the Inkscape "exam". I prefer real-life brushes, paint and canvas.