Hello,
KDE packages used to build fine on the Hurd port.
Since recently, we have started seeing this build error:
“
Your current platform 'GNU' is not supported. The list of supported
platorms is 'Linux;FreeBSD;Windows;macOS;Android'.If you think this is a
mistake or you are working on enabling the platform please build with the
KF_IGNORE_PLATFORM_CHECK variable set to true
”
We have tried to make kde add the Hurd in the list of supported
platforms, but they'd only do it if there is active support with CI
setup etc., see:
https://invent.kde.org/frameworks/extra-cmake-modules/-/merge_requests/294
I wonder what debian KDE maintainers' position is: would it be fine
to just make debian/rules with KF_IGNORE_PLATFORM_CHECK set for some platforms? Or add the platform in extra-cmake-modules and add the
supported platform as a patch in the packages?
Hi Samuel![…]
Explicitly CCing Aurélien who is the c-e-m maintainer.
On Sun, 4 Sept 2022 at 17:18, Samuel Thibault
<[email protected]> wrote:
Hello,
KDE packages used to build fine on the Hurd port.
Since recently, we have started seeing this build error:
I wonder what debian KDE maintainers' position is: would it be fine
to just make debian/rules with KF_IGNORE_PLATFORM_CHECK set for some
platforms? Or add the platform in extra-cmake-modules and add the
supported platform as a patch in the packages?
Well, Hurd is a non-official arch, so I guess a patch in
extra-cmake-modules could be added and you will have to deal with
FTBFSs, etc. Is that suitable for you?
Well, Hurd is a non-official arch, so I guess a patch in
extra-cmake-modules could be added and you will have to deal with
FTBFSs, etc. Is that suitable for you?
Yes, we quickly discussed this with Samuel over IRC and I said I was supportive of the idea.of our own choices that they explicitly declined to follow. That could easily be perceived as a hostile move from us.
I still wanted to have some more input from the team so here I have at least one bit. :-)
Besides FTBFS in Debian I insisted with Samuel that the porters have a minimal interest in following up Hurd related bug reports that may end-up in the upstream bugtracker as a consequence of our patch.
The main reason stated upstream for not accepting the patch is that they don't want to have to deal with bug reports for platforms for which they don't do CI and don't have porter knowledge. The last thing we want is to load them with the consequences
But I for one wasn't aware of your work getting fixes upstream so that's really good to know !
As I understand it if someone stepped up to add a CI pipeline upstream for Hurd there are good chances that the patch would get accepted.
If all goes well the change will land in Frameworks 5.98 which should reach in Debian in a not too distant future. :-)
Hello,of our own choices that they explicitly declined to follow. That could easily be perceived as a hostile move from us.
The main reason stated upstream for not accepting the patch is that they don't want to have to deal with bug reports for platforms for which they don't do CI and don't have porter knowledge. The last thing we want is to load them with the consequences
Err, well, yes for sure, just like we've been doing it in the past
years?
I mean, before the "supported list" feature got introduced in kde,
packages were building fine or not, and we'd submit patches to fix them
when not. There is no reason for us to change this habit, and there is
no reason for bugreports to appear upstream without a proposed patch, at >least not more than what happened in the past years. Perhaps upstream
doesn't realize that kde has been building fine on the Hurd for years
before this, and thus there is no actual "move" here?
Aurélien COUDERC, le dim. 11 sept. 2022 21:59:17 +0200, a ecrit:
If all goes well the change will land in Frameworks 5.98 which should reach in Debian in a not too distant future. :-)
Great :-)
Le 11 septembre 2022 22:40:59 GMT+02:00, Samuel Thibault <[email protected]> a écrit :
Aurélien COUDERC, le dim. 11 sept. 2022 21:59:17 +0200, a ecrit:
If all goes well the change will land in Frameworks 5.98 which should reach in Debian in a not too distant future. :-)
Great :-)
I've integrated the patch from the MR on invent.kde.org [0] into our package [1].
But it doesn't work : [2].
Hello,
Aurélien COUDERC, le mar. 20 sept. 2022 13:03:58 +0200, a ecrit:
Le 11 septembre 2022 22:40:59 GMT+02:00, Samuel Thibault <[email protected]> a écrit :
Aurélien COUDERC, le dim. 11 sept. 2022 21:59:17 +0200, a ecrit:
If all goes well the change will land in Frameworks 5.98 which should reach in Debian in a not too distant future. :-)
Great :-)
I've integrated the patch from the MR on invent.kde.org [0] into our package [1].
Thanks!
But it doesn't work : [2].
Each package now has to explicitly add Hurd to the list of supported OS
in metainfo.yaml:
Le 20 septembre 2022 15:09:08 GMT+02:00, Samuel Thibault <[email protected]> a écrit :
Each package now has to explicitly add Hurd to the list of supported OS
in metainfo.yaml:
Ouch !
That's 83 Frameworks source packages, 51 Plasma, however many Gears…
I didn't have that in mind and I'm not doing it.
Aurélien COUDERC, le mar. 20 sept. 2022 15:23:04 +0200, a ecrit:
Le 20 septembre 2022 15:09:08 GMT+02:00, Samuel Thibault <[email protected]> a écrit :
Each package now has to explicitly add Hurd to the list of supported OS >in metainfo.yaml:
Ouch !
That's 83 Frameworks source packages, 51 Plasma, however many Gears…
I didn't have that in mind and I'm not doing it.
I can understand that indeed...
I'm thinking: perhaps we can patch extra-cmake-modules to take KF_IGNORE_PLATFORM_CHECK as an environment variable, as attached, and I
can easily make the hurd buildd define it to ON?
--- KDEMetaInfoPlatformCheck.cmake.orig 2022-09-20 20:10:41.000000000 +0000
+++ KDEMetaInfoPlatformCheck.cmake 2022-09-20 20:11:21.000000000 +0000
@@ -19,6 +19,9 @@
#]=======================================================================]
option(KF_IGNORE_PLATFORM_CHECK "Ignore the supported platform check against metainfo.yaml" OFF)
+if ($ENV{KF_IGNORE_PLATFORM_CHECK} STREQUAL "ON")
+ set(KF_IGNORE_PLATFORM_CHECK ON)
+endif()
if (NOT "${KF_IGNORE_PLATFORM_CHECK}")
file(STRINGS metainfo.yaml MetaInfoContents)
Hello,
Samuel Thibault, le mar. 20 sept. 2022 22:12:46 +0200, a ecrit:
Aurélien COUDERC, le mar. 20 sept. 2022 15:23:04 +0200, a ecrit:
Le 20 septembre 2022 15:09:08 GMT+02:00, Samuel Thibault <[email protected]> a écrit :
Each package now has to explicitly add Hurd to the list of supported OS >> > >in metainfo.yaml:
Ouch !
That's 83 Frameworks source packages, 51 Plasma, however many Gears…
I didn't have that in mind and I'm not doing it.
I can understand that indeed...
I'm thinking: perhaps we can patch extra-cmake-modules to take
KF_IGNORE_PLATFORM_CHECK as an environment variable, as attached, and I
can easily make the hurd buildd define it to ON?
So how does it look like as a solution? That only requires a very simple >patch in extra-cmake-modules, and setting the environment variable on
the buildds will enable building all kde packages.
Le 4 octobre 2022 00:41:04 GMT+02:00, Samuel Thibault <[email protected]> a écrit :
Samuel Thibault, le mar. 20 sept. 2022 22:12:46 +0200, a ecrit:
Aurélien COUDERC, le mar. 20 sept. 2022 15:23:04 +0200, a ecrit:
Le 20 septembre 2022 15:09:08 GMT+02:00, Samuel Thibault <[email protected]> a écrit :
Each package now has to explicitly add Hurd to the list of supported OS >> > >in metainfo.yaml:
Ouch !
That's 83 Frameworks source packages, 51 Plasma, however many Gears… >> >
I didn't have that in mind and I'm not doing it.
I can understand that indeed...
I'm thinking: perhaps we can patch extra-cmake-modules to take
KF_IGNORE_PLATFORM_CHECK as an environment variable, as attached, and I
can easily make the hurd buildd define it to ON?
So how does it look like as a solution? That only requires a very simple >patch in extra-cmake-modules, and setting the environment variable on
the buildds will enable building all kde packages.
No objection from my side.
I'm working on the next Plasma for now so an MR is welcome if want it quick.
Consider applying the following instead:
diff --git a/kde-modules/KDEMetaInfoPlatformCheck.cmake b/kde-modules/ KDEMetaInfoPlatformCheck.cmake
index c02cfff0..49af1aab 100644
--- a/kde-modules/KDEMetaInfoPlatformCheck.cmake
+++ b/kde-modules/KDEMetaInfoPlatformCheck.cmake
@@ -70,6 +70,6 @@ if (NOT "${KF_IGNORE_PLATFORM_CHECK}")
endforeach()
if (NOT _MetainfoFoundSupportedPlatform)
- message(FATAL_ERROR "Your current platform '${CMAKE_SYSTEM_NAME}' is not supported. The list of supported platorms is '$ {_MetainfoSupportedPlatforms}'.If you think this is a mistake or you are working on enabling the platform please build with the KF_IGNORE_PLATFORM_CHECK variable set to true")
+ message(WARNING "Your current platform '${CMAKE_SYSTEM_NAME}' is not supported. The list of supported platorms is '$ {_MetainfoSupportedPlatforms}'.If you think this is a mistake or you are working on enabling the platform please build with the KF_IGNORE_PLATFORM_CHECK variable set to true")
Hello,
Sune Stolborg Vuorela, le mar. 20 sept. 2022 20:37:20 +0200, a ecrit:
Consider applying the following instead:
[…]
That would be sort of simpler indeed :)
I wonder if upstream could accept this way of making the build only
produce that warning, and not fail the build completely?
| Sysop: | Keyop |
|---|---|
| Location: | Huddersfield, West Yorkshire, UK |
| Users: | 715 |
| Nodes: | 16 (0 / 16) |
| Uptime: | 166:41:56 |
| Calls: | 12,096 |
| Calls today: | 4 |
| Files: | 15,003 |
| Messages: | 6,517,808 |