License clarification: Include matrix-rust-sdk in a license-compliant way // was: Check if we can use AGPL-3.0 code in the apps
Problem
Some of the code required to work with the matrix-rust-sdk comes from Element-X and is licensed under AGPL-3.0. Because of AGPL's copyleft clause, we cannot use AGPL-licensed code in our repositories without re-licensing everything to AGPL.
Goal
Find a way how to use matrix-rust-sdk in a license-compliant way.
ACs
-
A license-compliant way is defined on how to include the matrix-rust-sdkin our app (#169) and web client (#170).
Notes/ resources
Possible solutions include:
- Avoid using AGPL-licensed code and re-write everything we need to include
matrix-rust-sdkon our own. - Agree with Element about dual-licensing their glue code.
Requirements uIDs: OZG_10; Zapuk_10; Zapuk_12; Zapuk_13
Relevant parts of our code
for Web, see fit-neo-web!3 (comment 443745)
for iOS, see:
- https://gitlab.opencode.de/fitko/matrix-g2x/fit-neo-ios/-/blob/9f876f0bb915161b35f66f032e983b72b249e0cb/FITNeo/Services/Authentication/AuthenticationServiceProtocol.swift <-> https://github.com/element-hq/element-x-ios/blob/7a1d4a08fb7181b4951ca6de1093fd31fe41b3d4/ElementX/Sources/Services/Authentication/AuthenticationServiceProtocol.swift#L21
- https://gitlab.opencode.de/fitko/matrix-g2x/fit-neo-ios/-/blob/9f876f0bb915161b35f66f032e983b72b249e0cb/FITNeo/Services/Authentication/LoginMode.swift
- https://gitlab.opencode.de/fitko/matrix-g2x/fit-neo-ios/-/blob/9f876f0bb915161b35f66f032e983b72b249e0cb/FITNeo/Services/Authentication/OIDCConfiguration.swift
- https://gitlab.opencode.de/fitko/matrix-g2x/fit-neo-ios/-/blob/9f876f0bb915161b35f66f032e983b72b249e0cb/FITNeo/Services/Authentication/WebAuthPresenter.swift
- https://gitlab.opencode.de/fitko/matrix-g2x/fit-neo-ios/-/blob/9f876f0bb915161b35f66f032e983b72b249e0cb/FITNeo/Services/MatrixClient/SDKListener.swift
Who needs to be involved / informed
- reviewers:
- involved:
- informed:
Edited by Robert Gerbauld