-
Notifications
You must be signed in to change notification settings - Fork 43
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
bug in DeveloperTips wiki page #1274
Comments
Thats why there is code reference in wiki when code changes you can still find relevant parts. |
Hi, FetchContent is the recommended workflow for modern CMake because it allows the maximum flexibility for users, developers, packagers and downstream consumer. While it is designed for integrating with CMake dependencies it can and should be used for downloading arbitrary files. Some features:
Please use this especially for replacing find_package, because there is native support to have fallback from find_package to FetchContent, with built-in options to preffer the latter or only use the former. Regarding theacomment in the DevelopersTip, I wish that you don't find it offensive, but I agree that such workflow is inappropriate, because for starters the links are pointing to a There is of course multiple alternative designs besides FetchContent to avoid the workflow in the DevelopersTip, simplest being to control it with options, but because we are not developers of the project, I at least cannot give more detailed suggestions or PR support without a bit of context, knowledge of requirements, or forbidden setups from the project developers. I would happily offer review and advice support on anything CMake related. |
My concern is that it should not be offline. The config files should be updated regularly. Least once on every release. |
Thanks for the explanation. Would it make sense to use a versioning like
We can however offer upstream more control of this process to perform this update more regularly. But it depends how regular is this required?
This at least we can accommodate without any infrastructure change (except for the handling the However I think having the build dependent on something that changes so regularly is a design flaw. I would recommend three possible approaches (not mutually exclusive):
|
I am actually not sure how the config and TSL-s are licensed.
This is something that EU designed to distribute digital signature trust chains and there are many moving parts. There is already tool for downloading TSL-s I can probably change the build if files are already in build directory or least in source directory then it will skip the downloading part and continue. |
This would depend on the distribution page, but I don't see anything obvious in the header metadata, and top page (https://id.eesti.ee/) is empty. Ianal, but these could be simply unlicensed. It would be good if someone can confirm these.
Yes, of course that would work as well.
Thanks for the reference, I will forward this to see how we can incorporate it with our monitoring backend (https://release-monitoring.org) What would be very helpful, for designing the CMake project, managing the monitor and for packaging is if all of these files can be aggregated into a single folder (or better yet, and archive). Having a script to check the downloaded/local sources daily and update if contents change should be rather trivial to implement, if not already provided as a service somewhere. I could ask the forum for their experience on such tools if it helps. |
Another point that will help is to understand the distinction between the various downloaded files: URL: https://github.com/open-eid/DigiDoc4-Client
Source0: %{url}/releases/download/v%{version}/%{upstream_name}-%{version}.tar.gz
# https://id.eesti.ee/config.json
Source1: config.json
# https://id.eesti.ee/config.pub
Source2: config.pub
# https://id.eesti.ee/config.rsa
Source3: config.rsa
# https://github.com/open-eid/DigiDoc4-Client/wiki/DeveloperTips
Source4: config.qrc
# https://sr.riik.ee/tsl/estonian-tsl.xml
Source5: EE.xml
# https://github.com/open-eid/DigiDoc4-Client/wiki/DeveloperTips
Source6: TSL.qrc
# https://ec.europa.eu/tools/lotl/eu-lotl.xml`
Source7: eu-lotl.xml For example,
|
What do you mean? Only file |
Sorry, I meant |
It is already in repo |
Ok, must have been outdated from Then what about the remaining points?
A more specific breakdown for the files. The idea is that if we make the versioning like |
I think updating files with DigiDoc release is good enough. |
Aaah, perfect to know. I was just over-complicating things. Than we can just add a note to update those files whenever a new release is published. I was afraid that if we were using too old of files, it could brick itself. Then the only thing that we would need are possibilities to redirect the source of these files. Feel free to implement whatever approach works best for you, and if you need eyes to review, feel free to ping me. The minimum that we would need is to remove the need for manual patching, and to be able to point to the pre-downloaded files. Here are some snippets that you could use for reference:
Navigating a bit I find that these should be updated upstream at open-eid/qt-common. That should be a standalone (importable) CMake project that is used via Regarding |
Hello, i would like to say that i am having the same problem. I am trying to package digidoc4-client for gentoo, I got most of the fixing done, its just that one particular command:
is failing, i assume that this is because it is trying to connect to the internet and since digidoc4-client has been updated alot, and the wiki page for Sandboxed environments isn't updated, it doesnt include instructions on how to fix this. |
@pxrb for a better code impagination, use 4.5.1 works because yesterday I managed to build it |
Thanks. It finally compiled. |
Please use Qt6 |
IB-8136, open-eid/DigiDoc4-Client#1274 Signed-off-by: Raul Metsma <[email protected]>
IB-8136, open-eid/DigiDoc4-Client#1274 Signed-off-by: Raul Metsma <[email protected]>
IB-8136, open-eid/DigiDoc4-Client#1274 Signed-off-by: Raul Metsma <[email protected]>
IB-8136, Fixes open-eid#1274 Signed-off-by: Raul Metsma <[email protected]>
Does #1277 resolve this issue? |
Indeed, that's an acceptable minimal solution 👍. But don't forget to update the wiki page to reflect the difference, and where the pre-downloaded resource files should point to ( |
IB-8136, Fixes open-eid#1274 Signed-off-by: Raul Metsma <[email protected]>
IB-8136, Fixes open-eid#1274 Signed-off-by: Raul Metsma <[email protected]>
IB-8136, open-eid/DigiDoc4-Client#1274 Signed-off-by: Raul Metsma <[email protected]>
IB-8136, Fixes open-eid#1274 Signed-off-by: Raul Metsma <[email protected]>
Hello, Fedora package co-maintainer here.
There is a bug in the DeveloperTips wiki page: the section
contains a link that does not point to the
line. Instead it points to
line.
Also, the current approach to CMake usage is quite prone to errors for maintainers, and the Fedora developer @LecrisUT in an internal discussion proposed the usage of https://cmake.org/cmake/help/v3.30/module/FetchContent.html
He will soon write a comment explaining his view.
Best regards
The text was updated successfully, but these errors were encountered: