Skip to content

Conversation

@joserebelo
Copy link

@joserebelo joserebelo commented Feb 23, 2020

  • Adds git submodule with rclone v1.51.0
  • Builds rclone from source with build-rclone.py, adapted from syncthing-android

This + #39 should get F-Droid support very close.

Not sure if this approach is what you had in mind, but it should work, at least for now.

@claassistantio
Copy link

claassistantio commented Feb 23, 2020

CLA assistant check
All committers have signed the CLA.

@x0b
Copy link
Owner

x0b commented Feb 27, 2020

(edited because I accidentally closed this while writing)

There is a reason why you were never asked to merge your pull request here - while the technical aspects can be reworked, the "legally compatible" is more tricky. The file you based this on build-syncthing.py, is from a MPL 2 licensed repository, and MPL 2 is incompatible with MIT (it is one-way compatible, but in the wrong direction).

The CLA tries to make this clear,

Which third party licenses are okay?

Any work licensed under license terms of which a combined work can still be released under the MIT license.

but it seems we should provide a list of licenses that are actually okay (It can not require anything more than attribution or retaining a copyright notice).

However, since this was asked in #47, I ported my build process to a gradle file that can build the required binaries using go and the clang from the Android NDK.

I have to admit that F-Droid is very far down the roadmap for a few reasons. For one, F-Droid and other non-play distribution channels require enabling unknown sources, which would otherwise protect against malicious apps - and most Android devices don't receive updates, which means that an installed app can easily obtain more privileges, and that on a device that a lot of people carry around almost everywhere they go.

This also affects the speed at which users update - it took months to until users updated from vulnerable app versions, and I can understand that - I don't update my F-Droid that often either. The only reason why I won't cease third party distribution is because that would only support the Google Play store monopoly.

The most important thing for me however is time - working on the app is only one of my hobbies, meaning I have to prioritize what I work on. How many of the (potential) app users are F-Droid users, and of them, how many can't install apps from Google Play? F-Droid does not provide user statistics, but it is hard spending time on this, when there are other things that the other >95% of users will benefit from. Especially if that version also does not supply logging, which is crucial for fast bug triage - without this, I couldn't do anything other than bug hunting.

However, this only means that I personally won't spend much time on this - I welcome any contribution, and would very much appreciate if someone takes the role of a F-Droid distribution maintainer. This also applies to one-time contributions - If this PR (together with #39) would not require such extensive rework, merging it would be a no-brainer.

@x0b x0b closed this Feb 27, 2020
@x0b x0b reopened this Feb 27, 2020
@joserebelo
Copy link
Author

While I understand your points towards not investing time on an F-Droid build, it would be a shame for such a project not to be available there.

About the license, I am sorry. I completely forgot about potential licensing issues, it's not something I had yet ran into, since I don't usually port code across open repositories like this. I will close this for now, and while I don't have a lot of time to work on it in the immediate future, I would be willing to work towards the F-Droid distribution, this time in a more license-complying and possibly technically improved manner.

@joserebelo joserebelo closed this Feb 28, 2020
@joserebelo joserebelo deleted the ft-jr-rclone-src branch July 5, 2021 20:41
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants