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

F-Droid.org #47

Open
lichingyun opened this issue Nov 16, 2022 · 18 comments
Open

F-Droid.org #47

lichingyun opened this issue Nov 16, 2022 · 18 comments

Comments

@lichingyun
Copy link

Mastodos with the latest updateis simply amazing, thanks !
Why don't you put this app in Fdroid? Mastodos can be more visible.

@sk22
Copy link
Owner

sk22 commented Nov 16, 2022

because that's something i'd need to figure out how to do. i'd like to add it to f-droid, but i can't say if and when i find the time. same with the play store, actually, but i'd obviously prioritize f-droid (edit: this statement aged poorly, lol). but since the app has an integrated update checker (thanks to upstream!) i don't think it's that urgent

@sk22 sk22 changed the title Fdroid F-Droid Nov 16, 2022
@lichingyun
Copy link
Author

Thanks for your answer Samuel 🙏 I am not a developer/creator and I don't know how to publish to F-Droid, but you are right, is not that urgent

@lichingyun
Copy link
Author

@sk22 I forgetti ask: do you have a Mastodon account for Mastodos or for you?

@sk22
Copy link
Owner

sk22 commented Nov 17, 2022

@lichingyun i don't have one for mastodos (although maybe i should consider making one at some point…) and mine is private :)

@lichingyun
Copy link
Author

lichingyun commented Nov 17, 2022 via email

@IzzySoft
Copy link

Several steps you should do for preparation:

  • you didn't yet update the Fastlane structure. It still has all the original descriptions and screenshots. I'd suggest moving out the locales you cannot cater for at the moment (you can restore them later if someone works on them) and focus on those where you can. en-US is the only mandatory one
  • Screenshots should be added/updated. You could simply replace those in en-US; should be at least 2, more than 5..10 would be overdoing it. No need to copy them over to other locales; en-US serves as fallback for those not having any.
  • for now I've just added your app to my repo, which often is a stepping stone to reach into f-droid.org – it will show up here with the next sync around 7 pm UTC. If you could provide some screenshots before that it would be great – first impression and all that. I could then provide you with what you'll see there for the en-US descriptions.

Once that's ready, next step is to apply for F-Droid inclusion. I can help you with that then as well. Disclosure: I'm one of the F-Droid maintainers 😉

As you're thinking about a Masto account for Mastodos: depending on your language preferences, fosstodon.social (EN only) or floss.social (multi-lang supported) might be good and matching instances to look at. I'm at the latter should you look for me: @[email protected].

@sk22 sk22 pinned this issue Nov 21, 2022
@sk22
Copy link
Owner

sk22 commented Nov 21, 2022

When the next release is fetched and the flag is gone, my updater will send me a notice to remove the corresponding AntiFeature as well, so that will solve (semi-)automatically. Thanks!

Originally posted by @IzzySoft in #72 (comment)

just wanted to let you know: at the moment i only release the github variant (which includes the auto updater) on github. but i could as well release two variants from now on - mastodos.apk and mastodos-fdroid.apk - and let you know once it's ready?
by the way, i requested an account on floss.social - https://floss.social/@mastodos, once it's approved :D

@sk22
Copy link
Owner

sk22 commented Nov 21, 2022

(and speaking of anti-features: i didn't change the push notifications implementation (yet anyway), and the upstream implementation uses google services)

@sk22 sk22 closed this as completed Nov 21, 2022
@sk22 sk22 reopened this Nov 21, 2022
@IzzySoft
Copy link

at the moment i only release the github variant

My updater currently picks from each tag not being marked pre-release. And for the app in my repo it doesn't matter if an updater is inside (the APK that updater would fetch has the same signature as the one in my repo, so no problems updating). But once you "go F-Droid.org" that will need a variant without the updater as signatures would no longer match, thus causing conflicts and confusion.

Should you one day attach more than one APK at a release, please let me know which to pick. Ideally, have a naming schema then that makes matching via a regular expression easy so it covers future releases as well (your examples perfectly fit, so I could either pick the /fdroid/i or ignore it, effectively picking the other one).

i requested an account on floss.social

Wonderful idea! And right in time (before the "cap" is reached). No idea why it should not be approved.

speaking of anti-features: i didn't change the push notifications implementation

Oh, good point! As the FCM libs are not present, that didn't trigger my library scanner. Copied the NonFreeNet over then.

upstream implementation uses google services

They use their own implementation, which is why it was accepted. And the build just succeeded, so it should pop up in the repo soon. Looks like many just move on to Mastodos – calling it "the future" and "the bar raised for the official app". Congrats!

@sk22
Copy link
Owner

sk22 commented Nov 21, 2022

Should you one day attach more than one APK at a release, please let me know which to pick.

that day might just be today – i think i will also attach an upstream mastodon build to each release so it's easier to know whether my fork causes crashes or whether it's upstream issues.

should be 3 variants then:

  • mastodos.apk – release incl. updater
  • mastodos-fdroid.apk – release without updater
  • mastodon-upstream.apk – upstream build

except… (and maybe you can help me decide?) should i ever want to publish my app to the play store – does it make sense to have another build variant for that? (i've never done this before, so i'm not sure about that) or should i call the f-droid release mastodos-appcenter.apk right ahead? no, right?

@IzzySoft
Copy link

OK, so I should definitely ignore the upstream one. Which one do you wish me to pick then? The one with the integrated updater, or the other one? I need to set that up before you attach them, else my updater might be faster. Further, apart from the upstream one, will the other two each have their own dedicated packageName, or both come as org.joinmastodon.android.sk? That's what's in my repo now, and so that's what the packageName must be with the one I pick for updates.

For Playstore you could simply use the one with the integrated updater (Google sometimes takes a while to review new versions, especially with Fediverse apps – so it's good if users have a separate update path to get it faster).

How you name the APKs is totally up to you. I just need to know so I can prepare my updater accordingly.

@sk22
Copy link
Owner

sk22 commented Nov 21, 2022

okay, so, i think it'll be fine if you use the build with the updater – i'll omit the f-droid build for now.
the apk name will stay mastodos.apk as that's also what the updater expects. thanks! :)

@IzzySoft
Copy link

Currently the updater randomly picks whatever *.apk is there. So let me make sure it won't be the upstream one… done: ApkIgnore: /upstream/i. Now you can go ahead. Should I need another regex just let me know; next to ApkIgnore there's also ApkMatch if you decide on a dedicated pattern for that. The advantage to that would be you can add any other APK you like without causing trouble – the minor disadvantage is you should never change the pattern for the name of the APK to be fetched without letting me know, or nothing would be picked up 🙈

@sk22 sk22 unpinned this issue Nov 29, 2022
@sk22 sk22 changed the title F-Droid F-Droid.org Dec 7, 2022
@IzzySoft
Copy link

And while talking about it: Could you please make sure to use * (asterisks) or - (minus) as bullet-points in your fastlane full_description.txt files? I see you use (a long dash). That's not recognised as a bullet-point and hence the entire list converted to a single wall-of-text. Not all locales are affected; e.g. de-DE is fine but ca is broken, and in uk you use which breaks it as well. I've for now fixed it locally here, but your next update would overwrite it, so please take care. Thanks!

@sk22
Copy link
Owner

sk22 commented Dec 20, 2022

And while talking about it: Could you please make sure to use * (asterisks) or - (minus) as bullet-points in your fastlane full_description.txt files? I see you use (a long dash). That's not recognised as a bullet-point and hence the entire list converted to a single wall-of-text. Not all locales are affected; e.g. de-DE is fine but ca is broken, and in uk you use which breaks it as well. I've for now fixed it locally here, but your next update would overwrite it, so please take care. Thanks!

Oh dear, thanks for pointing this out! Will try to make sure things coming from Weblate are well-formatted…

@IzzySoft
Copy link

Thanks a lot! Unfortunately, that is quite common with PlayStore listings. Even more unfortunate is that both are multi-byte characters (other than the permitted *+- characters): I tried to add that dot as allowed char, but obviously the library used cannot deal with multi-byte in that place…

@rugk
Copy link

rugk commented Jan 13, 2023

It would be great to see this Android app on F-Droid!

F-Droid is an Android app store specifically for free/libre open-source apps. It would be great if your app could be released there, as it is the number one for getting FLOSS Android apps for many people.
F-Droid also builds all apps from source (optionally even reproducible), so downloads from there can be trusted.

Seeing this I guess you already kmow, but in case yoi dont, the app developer FAQ or the quick start guide may help you to get started.

BTW a release on F-Droid could also bring some (more) popularity (in case that is intended), as it will show up in the app (new apps are featured there).

@tcely
Copy link

tcely commented Aug 24, 2023

It would be useful to look at the metadata for the upstream app:

https://gitlab.com/fdroid/fdroiddata/-/blob/3046aaecef9d19f5d67ef72491e419bd78e18f91/metadata/org.joinmastodon.android.yml

This has notes about auto-updating and reproducible builds as well as the NonFree tag.

If Megalodon can remove NonFree and be a reproducible build, that would be yet another competitive advantage over the upstream app.

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

No branches or pull requests

5 participants