Skip to content
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

Distribute on F-Droid? #9

Open
paulcmal opened this issue May 22, 2018 · 28 comments · May be fixed by #455
Open

Distribute on F-Droid? #9

paulcmal opened this issue May 22, 2018 · 28 comments · May be fixed by #455
Labels
help wanted Extra attention is needed

Comments

@paulcmal
Copy link

Hi! Like many people i'm not using the Play Store (or any Google services) on my Android phone, but I'm very interested in trying out DNS over HTTPS on my phone.

I would like to compile the project, but i think it would be nice to distribute the application outside of Google. F-Droid is a free-software app manager for Android. The main repo at f-droid.org contains only free software, and there may be a few steps to meet the inclusion policy.

Is this something you would be willing to do ? Thanks for building intra :)

@paidfocusgroups
Copy link

I'm sure the "F" in F-Droid means free.....

😎

@mtimvik
Copy link

mtimvik commented Oct 4, 2018

It would be Great if I can install this app from F-droid.

@TPS
Copy link

TPS commented Oct 5, 2018

I've RFP'ed @ F-Droid, but this usually takes several months to publish (even if build is perfectly suited), due to lack of volunteers & hardware.

@TPS
Copy link

TPS commented Oct 5, 2018

@Jigsaw-Code So far, there are a # of initial concerns w/ this, mostly due to proprietary (mostly Google) components.

@cjhenck
Copy link
Contributor

cjhenck commented Oct 5, 2018

Hi all - thanks for the feedback.

If someone is able to create a PR that would enable us to easily create an F-Droid build with each release while maintaining existing functionality for the Play Store then we'd be happy to consider merging it.

@cjhenck cjhenck added the help wanted Extra attention is needed label Oct 5, 2018
@TPS
Copy link

TPS commented Oct 6, 2018

So, the current source is nixed due to the 🤖/scanner's concerns, so, as @cjhenck mentioned, work is required to comply w/ F-Droid.

@osdroid
Copy link

osdroid commented Oct 6, 2018

Ohh by looking at the scanner concerns, as far as I can see it, the only problem is the use of firebase? (which also requires gms)? And the google decision not to use external repositories? If those are the problems, I think it can be worked out quite easily...

@bemasc
Copy link
Contributor

bemasc commented Oct 11, 2018

Intra uses Firebase so that we can get notified if the app is performing poorly or crashing. If you want to produce a build where all Firebase functionality is removed or stubbed-out, that should be straightforward to do.

@paulcmal
Copy link
Author

paulcmal commented Mar 6, 2019

Intra uses Firebase so that we can get notified if the app is performing poorly or crashing.

So basically disabling telemetry would produce a self-contained free-software build that would meet F-Droid's requirements, or am i missing something?

@cjhenck
Copy link
Contributor

cjhenck commented Mar 6, 2019

I'm not very familiar with F-Droid's requirements, but that seems to be their primary concern.

@Ilia1
Copy link

Ilia1 commented Jul 5, 2019

hmm, if you use the gun, the policy f-droid will not be violated? or another from this list

@cjhenck
Copy link
Contributor

cjhenck commented Jul 5, 2019

We don't use firebase for the database, but as before we are open to someone creating a firebase-free branch or build. It should be fairly straightforward.

@WPFilmmaker
Copy link

Are there any updates on this? The ticket on gitlab pointed out by TPS is closed and f-droid has no intra app :/

@TPS
Copy link

TPS commented Sep 15, 2019

The most current release on GPlay has the same concerns, so F-Droid has no reason to reconsider.

@cjhenck
Copy link
Contributor

cjhenck commented Sep 18, 2019

I want to reiterate that we're willing to accept patches to make an F-Droid compatible build. This should be as simple as adding an intermediate class for FirebaseAnalytics and having it perform no operation in a new build flavor

@linsui
Copy link

linsui commented May 3, 2022

I open an MR in F-Droid side. https://gitlab.com/fdroid/fdroiddata/-/merge_requests/11000 It works but I thought it would be cleaner to add a flavor here. I'd like to also add fastlane here.

I want to reiterate that we're willing to accept patches to make an F-Droid compatible build. This should be as simple as adding an intermediate class for FirebaseAnalytics and having it perform no operation in a new build flavor

@cjhenck After 3 years, is that still vaild? I thougth I need to sign a CLA? Can I send a patch to you instead?

@cjhenck
Copy link
Contributor

cjhenck commented May 3, 2022

I want to reiterate that we're willing to accept patches to make an F-Droid compatible build. This should be as simple as adding an intermediate class for FirebaseAnalytics and having it perform no operation in a new build flavor

@linsui:

@cjhenck After 3 years, is that still vaild?

Yes, if it were controlled by a flag/build flavor. (We wouldn't want to remove firebase for the main build, so the changes would need to be enabled/disabled.)

I thougth I need to sign a CLA? Can I send a patch to you instead?

Yes, you need to sign a CLA for us to accept it. May I ask the concern with the CLA? Is it that it requires a Google account?

If you made a fork with an appropriate license (the existing license is Apache 2) then maybe we could incorporate the changes. (Assuming it's not too much work.)

@linsui
Copy link

linsui commented May 3, 2022

Yes, you need to sign a CLA for us to accept it. May I ask the concern with the CLA? Is it that it requires a Google account?

I don't have that. I did have one but now it requires my phone number so I can't access it anymore.

If you made a fork with an appropriate license (the existing license is Apache 2) then maybe we could incorporate the changes. (Assuming it's not too much work.)

Sounds good to me. Thanks!

@linsui
Copy link

linsui commented May 5, 2022

@cjhenck https://github.com/linsui/Intra/tree/fdroid I create a fork with fdroid flavor and fastlane structure.

@rugk
Copy link

rugk commented May 7, 2022

welll… then maybe first (try to) contribute that back upstream? (i.e. create a PR) Otherwise, you may open issues on your fork, maintain it and then publish it on F-Droid…

@linsui
Copy link

linsui commented May 7, 2022

@rugk The CLA is the problem.

Yes, you need to sign a CLA for us to accept it. May I ask the concern with the CLA? Is it that it requires a Google account?

If you made a fork with an appropriate license (the existing license is Apache 2) then maybe we could incorporate the changes. (Assuming it's not too much work.)

@licaon-kter
Copy link

@eighthave
Copy link

About CLAs, they are a contract. This CLA is a custom document put together by Google's very expensive lawyers to protect Google. The first reasonable step to getting unpaid contributors to sign such a document would be to offer funds for legal counsel. Otherwise, people are either being forced into signing it, or just blindly trusting Google and hoping for the best.

@linsui
Copy link

linsui commented Jun 6, 2022

I merged the MR with downstream patches. Anyone who has a Google account and can sign the CLA feels free to upstream them. Thanks!

@Poussinou Poussinou linked a pull request Jun 15, 2022 that will close this issue
@ignoramous
Copy link
Contributor

ignoramous commented Jul 9, 2022

@linsui where is outline-go-tun2socks being pulled from for Intra on F-Droid (particularly, how is it built?)? Its APK size is 12MB, when I expected it to be higher because gomobile should be building an outline-go-tun2socks lib per arch target (x86, x64, arm64, and arm32) and that can't be just 12MB?

@linsui
Copy link

linsui commented Jul 9, 2022

See https://gitlab.com/fdroid/fdroiddata/-/commit/1e2cb715a2acc6132eb40ae96c42a68c7d684e15#f9241e17bfd1ddc18e18fd31d7b986cae8d85812_0_64 The tun2soucks aar in this repo is 10MB. I see no problem. The gomobile files are there. You can unzip the apk and check them.

-rw-rw-rw-  0.0 unx  5437048 b- defN 81-Jan-01 01:01 lib/arm64-v8a/libgojni.so
-rw-rw-rw-  0.0 unx  5237076 b- defN 81-Jan-01 01:01 lib/armeabi-v7a/libgojni.so
-rw-rw-rw-  0.0 unx  5303120 b- defN 81-Jan-01 01:01 lib/x86/libgojni.so
-rw-rw-rw-  0.0 unx  5722936 b- defN 81-Jan-01 01:01 lib/x86_64/libgojni.so

@cjhenck
Copy link
Contributor

cjhenck commented Jul 15, 2022

Hi @linsui - I'm slightly concerned about needing to update near-duplicate versions of similar files. I was hoping there might be some way to use mocks, though I can't find any off-the-shelf mocks for Firebase analytics other than for javascript/typescript. Apologies for the late engagement.

@linsui
Copy link

linsui commented Jul 16, 2022

@cjhenck Some apps use their own mock but I don't know if there if any standalong implementation. How about this method: https://github.com/zhanghai/MaterialFiles/blob/f13a397ad5f86b8e60cbdf14c2f510f887b7a411/app/src/main/java/me/zhanghai/android/files/provider/archive/archiver/ArchiveException.kt#L8?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
help wanted Extra attention is needed
Projects
None yet
Development

Successfully merging a pull request may close this issue.