sk22/megalodon

F-Droid.org

lichingyun opened this issue · 17 comments

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

sk22 commented

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

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

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

sk22 commented

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

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: @IzzyOnDroid@floss.social.

sk22 commented

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 commented

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

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 commented

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?

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 commented

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! :)

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 🙈

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 commented

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…

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 commented

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).