BijoySingh / Scarlet-Notes

[Discontinued and Unsupported Project] Simple yet powerful rich note taking android application, with a lot of flexibilty of usage
https://play.google.com/store/apps/details?id=com.bijoysingh.quicknote
GNU General Public License v3.0
357 stars 93 forks source link

F-Droid #1

Closed IzzySoft closed 5 years ago

IzzySoft commented 6 years ago

I've the feeling your app would be a perfect candidate for the official F-Droid repository: it looks very privacy friendly and seems to have no proprietary dependencies, while offering a good value to users. Hence I've submitted a request for packaging and hope you'll support that (they will build your app from your sources then, but might need a little help setting things up; if they really need the help they will say so in the linked issue).

Until it becomes available there, it already is available via my F-Droid compatible repo, automatically picking updates as soon as you update the APK.

Thinks for you to consider (most of those you're probably already aware of):

Thanks for making your great app available open-source!

BijoySingh commented 6 years ago

Okay. Thanks IzzySoft. I will make the versionNames with v tag moving forward.

IzzySoft commented 6 years ago

Thanks! Have you seen on the linked RFP (Request For Packaging) what's keeping F-Droid from picking it up? It's a custom Maven repo (http://dl.bintray.com/bijoysingh693/maven) you're using. F-Droid requires that to be a "trusted repository". Any chance you could fix that? Hopefully helpful reference: Which libraries and dependencies are good to use?

relan commented 6 years ago

Hi,

F-Droid maintainer here. I'd like to see Material Notes on F-Droid main repository. Theremare two issues hindering this:

  1. Releases aren't tagged. Without proper git tags we don't know what snapshot to check out (F-Droid builds app from source code). Version name does not need to have "v" prefix.

  2. We can compile com.github.bijoysingh:* libraries from source, but again we need to know which commit to check out. Tags would help with this too.

BijoySingh commented 6 years ago

Hi relan. I realised that the issue is because one of my libraries isn't fetching from JCenter even though it's linked to it. I am trying to resolve that, so I don't need to mention my custom maven in the repositories

Cool. Got that. Will tag releases with the version numbers.

Thanks

relan commented 6 years ago

I am trying to resolve that, so I don't need to mention my custom maven in the repositories

If you manage to serve your libraries from JCenter and remove custom Maven repo, this will be perfect!

BijoySingh commented 6 years ago

Yeah, the sad thing is that I have already linked all my libraries to JCenter. One of them is have issues, I am guessing some problem from Bintray's side. I am notifying the issue to them, hopefully it will be resolved soon.

BijoySingh commented 6 years ago

@relan @IzzySoft the release v3.2.0 doesnt have dependency on custom repo, and works with JCenter. Hope it solves this issue.

relan commented 6 years ago

Added in https://gitlab.com/fdroid/fdroiddata/commit/fb221527c1502ad7c9fcd2562581f2986ad7328a. Will be available in a couple of days. Thanks!

Please note that F-Droid will be able to pull new releases automatically only if versionName corresponds to Git tag name. For example, version 4.0.0 should be tagged as v4.0.0.

BijoySingh commented 6 years ago

Awesome!

IzzySoft commented 6 years ago

@BijoySingh With the "official repo" taking over successfully now, I'll "unlist" the app on my end. Feel free to contact me should the need arise, I'd re-establish it anytime. Thanks so far!

BijoySingh commented 6 years ago

@IzzySoft I would like to make something like a cloud sync. Ideally I would prefer Firebase / Drive Backup, but for both I will need to add API tokens etc, which I think are a bit unsafe to put in a public repo.

Further even if I do, the key will not match for when you sign the APK. Is there something you tend to do in this case or you consider it ok that F-Droid version of the app wont support backup?

If there's some other secure and scalable way of doing it, can you tell me.

IzzySoft commented 6 years ago

F-Droid would no longer accept your app if you integrated Firebase. I wouldn't sign your APKs anyway (which is why I needed the .apk files), so it would work with my repo. Still, I wouldn't find that ideal.

As you ask me how I'd approach this, I'll give you a direct answer. I'd leave that out of the app for multiple reasons:

  1. it's an editor / a note-taking app. Focus on that :wink:
  2. I always prefer separate apps for those things. Here that would ideally mean the Notes app even coming without any network permissions – but instead either saving all documents on shared storage (i.e. internal/external SD) or at least allowing to sync its data to that location. To sync with network ressources I'd use a separate app which focuses on that. No need to have multiple apps implementing the same stuff.
  3. it's open source. Better not mingle it with proprietary dependencies. Especially not with Firebase or other Google stuff: many of us tin-foils especially want to avoid that.

If you really insist on integrating that, I'd strongly recommend using a separate flavour for that (which then also uses a different package name). That way at least the two can be kept apart, and you avoid issues with F-Droid.

Alternatively, put that into a "plugin"/"addon", then it's completely separated :wink:

genofire commented 6 years ago

Would like to use current Version by F-Droid (without thinks like firebase ;( )

BijoySingh commented 5 years ago

@IzzySoft Is there a way to find out why the Fdroid stopped updating?

I can imagine it would be because of firebase, but the "app" target should not have that as a dependency. Or do you blacklist based on the dependency just being in the repository?

IzzySoft commented 5 years ago

@BijoySingh usually via this page – which seems to be wrong, saying F-Droid has the latest version – and this one. As you seem to build versionName/versionCode dynamically somehow, I was not able to check whether the former matches the tag name, for example? A mismatch there would explain things. If that's not the case, I'd recommend opening an issue with fdroiddata so a maintainer can take a closer look. According to your app's Metadata, new tags should be fetched automatically.

licaon-kter commented 5 years ago

Could you keep tagging format consistent? v6.9.5....6.6.3....v5.9.7

Each time you put an extra v or take away one the F-Droid auto update process breaks and no new version is build.

Ref: https://gitlab.com/fdroid/fdroiddata/commit/5b4cd4901e488656a330570315a201246925a468

/close this

BijoySingh commented 5 years ago

Sorry for that @licaon-kter. I had been putting the v before but I missed it on 6.6.3, so I corrected it after... Ofc that meant things broke twice :p

Will continue putting v moving forward.