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

Package in FDroid #29

Closed
vHanda opened this issue Dec 1, 2019 · 14 comments
Closed

Package in FDroid #29

vHanda opened this issue Dec 1, 2019 · 14 comments
Labels
android cannot-fix This will not be worked on

Comments

@vHanda
Copy link
Contributor

vHanda commented Dec 1, 2019

We should provide GitJournal via FDroid. The process seems quite complex though.

Custom FDroid Repo for now: http://gitjournal.io/fdroid/repo

(Pro version is still through Google Play, please contact me for a workaround)

@vHanda vHanda added the blocked label Dec 6, 2019
@vHanda
Copy link
Contributor Author

vHanda commented Dec 6, 2019

This is blocked as GitJournal currently has 2 proprietary components -

  1. Crashlytics - Even the client side code is proprietary. We currently rely on the ndk crash reporting, for which I cannot find any open source solution. Once Dart to C layer comes out of beta, and into Flutter, we can access libgit2 directly without going through the Android NDK. This should let us move to an open source crash reporting solution.
    We could either use sentry or use catcher and run something entirely custom.

  2. Firebase Analytics - Client side is also proprietary. One alternative is - https://count.ly/ but they are still working on their Flutter SDK. Additionally, their community edition doesn't provide revenue tracking (not that we still have any) or retention tracking.

@vHanda
Copy link
Contributor Author

vHanda commented Mar 26, 2020

Update: Crashlytics's SDK is now open source.

@vHanda
Copy link
Contributor Author

vHanda commented Apr 17, 2020

Update: Even though Crashlytics is supposed to be open source. In its code base I see references to Firebase Analytics, whose codebase I cannot find. Therefore, I've started moving to Sentry instead. So far all Flutter/Dart level errors are sent to Sentry and ios/Android crashes are still sent to Crashlytics. I'm hoping to move everything to Sentry within the next week.

For Analytics, I haven't found an open source solution which gives me what I want (#105). So I'm going to slowly start building my own, and deploy it in parallel to Firebase Analytics.

@vHanda
Copy link
Contributor Author

vHanda commented Jun 4, 2020

Update: I'm getting closer to replacing Firebase analytics with a custom solution.

Though now we have another blocker - pro version. In Android we use Google Play for paying for the pro version. I would still like there to be a Pro version in F-Droid which means integrating Stripe or some other provider.

@ghost
Copy link

ghost commented Jul 20, 2020

About payments: Maybe you can check with Marcel (creator of NetGuard & FairEmail / https://www.faircode.eu/) -- he has a system where he takes a code generated in-app and money via Paypal and then sends back registration codes. Alternatively, you could register at liberapay.com (similar to Patreon).

(Also be sure that whatever alternative payment method you implement can be fully disabled in the Google Play version of the app. Google doesn't like competing in-app payments.)

@vHanda
Copy link
Contributor Author

vHanda commented Jul 28, 2020

Update: Crashlytics has been completely removed. Now only 'Analytics' and pricing are blockers. If I can figure out the pricing, I'll create a separate branch for fdroid without any analytics. Though I would ideally want it to be opt-in for fdroid.

@sknorr : Thanks. Regarding different payment methods - from what I understood - if your app is accessible via different platforms, you can use your own billing, and therefore skip the 30% overhead. Do you think I'm interpreting the text incorrectly? - https://support.google.com/googleplay/android-developer/answer/9858738

Payment is for digital content that may be consumed outside of the app itself (e.g. songs that can be played on other music players).

It doesn't seem clear if "notes" would count as "digital content".

@ghost
Copy link

ghost commented Jul 28, 2020

I am neither a lawyer nor a Google employee but I think your interpretation of that clause is incorrect. If I understand your payment model correctly, people pay for the premium version of the app itself, not for an additional service.

It might (again, not a Google employee or lawyer) be different if people were paying for repo-hosting instead.

@weakish
Copy link

weakish commented Sep 26, 2020

It doesn't seem clear if "notes" would count as "digital content".

No. You are selling application features, not notes.

@MrHallows
Copy link

About payments: Maybe you can check with Marcel (creator of NetGuard & FairEmail / https://www.faircode.eu/) -- he has a system where he takes a code generated in-app and money via Paypal and then sends back registration codes. Alternatively, you could register at liberapay.com (similar to Patreon).

(Also be sure that whatever alternative payment method you implement can be fully disabled in the Google Play version of the app. Google doesn't like competing in-app payments.)

I'm glad to see Marcel mentioned here and I completely agree. I had gotten the Pro versions for both NetGuard and FairEmail, and his purchasing process works quite well. As an Android guy who avoids all things Google like the plague, I would love to see more independent FOSS developers using an alternative method like this.

@darhma
Copy link

darhma commented Sep 9, 2021

Any news on progress for inclusion in the official f-droid repo?

@vHanda vHanda added the android label Jan 18, 2022
@sgtpep
Copy link

sgtpep commented Jan 31, 2022

Tasks.org (https://f-droid.org/packages/org.tasks/) which is hosted on F-Droid as well may use some payment solution. In that case it maybe worth looking what they use. At least it says:

In order to support development some features require a subscription

  • 7-day free trial
  • Choose your subscription price, starting at $1 per year

@weakish
Copy link

weakish commented Feb 12, 2022

Custom FDroid Repo for now: http://gitjournal/fdroid/repo

There is a typo in the URL.
It should be https://gitjournal.io/fdroid/repo/

@vHanda
Copy link
Contributor Author

vHanda commented Nov 20, 2022

I'm closing this as a wontfix. Let me be specific - I'm always going to support installing this app without FDroid and I plan to continue providing the custom F-Droid repo, and an alternative to Google Play for payment.

However, I'm not keen on me submitting this app into the official FDroid repos. I much prefer having control over when updates are shipped. However, this app is completely open source - and will always be - so if someone else wants to add it. Please feel free.

@vHanda vHanda closed this as completed Nov 20, 2022
@vHanda vHanda added cannot-fix This will not be worked on and removed blocked labels Nov 20, 2022
@idle-meerkat
Copy link

Hi! So as of now there is no non-FOSS dependencies, right? Crashlytics has been replaced with Sentry and Firebase also was removed.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
android cannot-fix This will not be worked on
Projects
None yet
Development

No branches or pull requests

6 participants