-
Notifications
You must be signed in to change notification settings - Fork 6.1k
Add Winget support for Netdata Windows agent #19595
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
base: master
Are you sure you want to change the base?
Conversation
Related to netdata#19565 Implemented Winget support for Windows. --- For more details, open the [Copilot Workspace session](https://copilot-workspace.githubnext.com/netdata/netdata/issues/19565?shareId=XXXX-XXXX-XXXX-XXXX).
@Ferroin : Can you review this? I was having some fun.. :) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Aside from the mentioned issues, the documentation should be in a separate PR to be merged only once we’re actually publishing Winget packages and have confirmed that they work correctly.
${GITHUB_ACTIONS+echo "::group::Publish Winget Package"} | ||
winget create --manifest "${output_manifest}" --token "${WINGET_TOKEN}" | ||
${GITHUB_ACTIONS+echo "::endgroup::"} |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This should be handled separately from this script, unless we expect people building the agent to publish things directly (instead of relying on CI to do it).
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Also, dropping this will fix the Windows build failure in CI.
"License": "GPL-3.0", | ||
"LicenseUrl": "https://www.gnu.org/licenses/gpl-3.0.txt", |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This is blatantly wrong, it needs to point to a unified license that covers the whole package.
@@ -27,3 +27,19 @@ function check_and_get_file() { | |||
check_and_get_file "gpl-3.0.rtf" "https://www.gnu.org/licenses/gpl-3.0.txt" | |||
check_and_get_file "ncul1.rtf" "https://app.netdata.cloud/LICENSE.txt" | |||
|
|||
function create_unified_license() { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Strictly speaking this is likely to not be ‘correct’ from a legal perspective. We need to be explicitly calling out what parts are under what license.
Reorganizing it so the NCUL comes first, and then putting something about ‘All other parts of the software are licensed under the GPL version 3.0’. Even that may not quite be correct though, we’re bundling and shipping a large chunk of MSYS2 on Windows and I’m not certain that 100% of the stuff we are bundling there has GPL compatible licenses (in which case those components that don’t need to be called out separately).
@Ferroin @ilyam8 : Sorry this was automatically generated by GitHub Copilot and all of us (@ktsaou @shyamvalsan @ralphm and I) wanted to check what you think about the PR.. :) This may indeed not be the solution but at least it tells us that the Copilot can work in some cases. |
I think we need this to allow windows users easily update |
Co-authored-by: Ilya Mashchenko <ilya@netdata.cloud>
Co-authored-by: Ilya Mashchenko <ilya@netdata.cloud>
Co-authored-by: Ilya Mashchenko <ilya@netdata.cloud>
Co-authored-by: Ilya Mashchenko <ilya@netdata.cloud>
Co-authored-by: Ilya Mashchenko <ilya@netdata.cloud>
Co-authored-by: Ilya Mashchenko <ilya@netdata.cloud>
To distribute Netdata effectively via WinGet while handling its dual licensing model (Agent: GPLv3, Dashboard: NCUL), we could consider using a three-package structure that leverages WinGet's dependency features. Here's a proposed breakdown:
Proposed User Experience:
Potential Benefits of this Approach:
This proposed strategy could allow us to distribute Netdata correctly via WinGet, respecting its licensing, while potentially offering a straightforward installation path for our users. Feedback and discussion are welcome. |
To have multiple packages via WinGet we would need to provide multiple separate MSI packages, which would in turn be a backwards incompatible change. So having a single package here is better overall because it won’t break things needlessly for our existing users and won’t complicate things for new users. It is generally accepted that providing EULA style license text for the package as a whole that explains what license each of the individual components is under is perfectly acceptable for this type of thing. Actually having that license is literally the only thing blocking me from preparing both WinGet and Chocolatey packages for Netdata (and I have brought this specific issue up multiple times in multiple channels on Slack). If we can get that (and ideally include it properly in our MSI packages as well, because that would also simplify our MSI packages), I can likely have us fully published via both WinGet and Chocolatey within at most a week and without any breakage for end users. |
Related to #19565
Implemented Winget support for Windows.