Bug 481455

Summary: kiconthemes master failed
Product: [Unmaintained] Craft Reporter: Laurent Montel <montel>
Component: BlueprintsAssignee: Hannah von Reth <vonreth>
Status: RESOLVED FIXED    
Severity: normal CC: kde-windows, kloecker
Priority: NOR    
Version: unspecified   
Target Milestone: ---   
Platform: Other   
OS: Linux   
Latest Commit: Version Fixed In:
Sentry Crash Report:

Description Laurent Montel 2024-02-17 10:43:31 UTC
Hi,
as you see in build:
https://invent.kde.org/pim/kontact/-/jobs/1588464

```
executing command: executing command: ['mklink', '/J', 'C:\\_\\cf37092', 'C:\\gitlab\\craft\\windows-msvc2022_64-cl\\build\\kde\\frameworks\\tier3\\kiconthemes\\work']
================================================================================
Junction created for C:\_\cf37092 <<===>> C:\gitlab\craft\windows-msvc2022_64-cl\build\kde\frameworks\tier3\kiconthemes\work
executing command: executing command: ['C:\\Program Files\\Git\\cmd\\git.exe', 'apply', '--check', '--reverse', '--ignore-space-change', '--verbose', '-p', '1', 'C:\\Users\\ContainerAdministrator\\AppData\\Local\\Temp\\tmpfj_dt08z\\svgiconengine.diff']
================================================================================
Checking patch src/kicontheme.cpp...
error: while searching for:
}
}
}
class KIconThemeDir;
class KIconThemePrivate
{
error: patch failed: src/kicontheme.cpp:61
error: src/kicontheme.cpp: patch does not apply
Checking patch src/kiconloader.cpp...
error: while searching for:
extern KICONTHEMES_EXPORT int kiconloader_ms_between_checks;
KICONTHEMES_EXPORT int kiconloader_ms_between_checks = 5000;
extern void initRCCIconTheme();
```

Patch can't be apply => we can't build it
could you fix it please ?
thanks
Comment 1 Ingo Klöcker 2024-02-18 16:57:40 UTC
kontact master requests master of frameworks and libs via the blueprint settings in its `.craft.ini`:
```
kde/frameworks.version=master
kde/pim.version=master
kde/libs.version=master
```
Don't do this. On Binary Factory Craft builds always used the latest released versions of all dependencies (with very few exceptions). This isn't going to change with GitLab because compiling everything from master is prohibitively expensive. We have a cache for Craft with the latest stable releases for a reason.

The Craft people only update the patches when they switch to a new released version of frameworks. Feel free to submit an MR for the blueprint of kiconthemes which doesn't apply the patch to the master version. Even better: Remove all those `kde/*=master` lines kontact's .craft.ini.
Comment 2 Julius Künzel 2024-03-16 18:44:15 UTC
Git commit 31d55788aaa4ea1869dbb65c487632c3c7f66a79 by Julius Künzel.
Committed on 16/03/2024 at 18:44.
Pushed by jlskuz into branch 'master'.

[craft] Don't build master version for everything

This is bad practice as master versions are not cached. Hence this will take a lot of time to build. Maybe even so much that it will timeout

(and don't set qtVersion, it is set globally with the correct GitLab template)

M  +0    -4    .craft.ini

https://invent.kde.org/pim/kontact/-/commit/31d55788aaa4ea1869dbb65c487632c3c7f66a79
Comment 3 Laurent Montel 2024-03-17 08:07:02 UTC
So you fix only kontact but not kicontheme.cpp where patch will be not apply ?
So ok you revert kontact patch but if kicontheme.cpp failed you can't say that bug is fixed.
Comment 4 Ben Cooksley 2024-03-17 08:44:49 UTC
Building master versions of software with Craft is generally not supported - which is why it fails.

The patch will be removed when the next Frameworks release takes place and the Craft cache is rebuilt.