Added upstream repo for F-Droid #12

Closed
iamflorencejay wants to merge 5 commits from master into master
iamflorencejay commented 2021-02-11 16:41:30 +01:00 (Migrated from github.com)

PR Checklist

Please check all that apply to this PR using "x":

  • I have checked that this PR is not a duplicate of an existing PR (open, closed or merged)
  • I have checked that this PR does not introduce a breaking change
  • This PR introduces breaking changes and I have provided a detailed explanation below

PR Type

What kind of change does this PR introduce?

  • Bugfix
  • Feature
  • Code style update (formatting)
  • Refactoring (no functional changes)
  • Documentation changes
  • Other - Please describe:

Fixes

Added F-Droid upstream repo to automatically update without waiting for a week to publish

P.S for devs: can you do the building app stuff like fdroid build for the repo?
Also turn github pages on to make it work

## PR Checklist <!-- For the checkbox formatting to work properly, make sure there are no spaces on either side of the "x" --> Please check all that apply to this PR using "x": - [x] I have checked that this PR is not a duplicate of an existing PR (open, closed or merged) - [x] I have checked that this PR does not introduce a breaking change - [ ] This PR introduces breaking changes and I have provided a detailed explanation below ## PR Type What kind of change does this PR introduce? - [ ] Bugfix - [x] Feature - [ ] Code style update (formatting) - [ ] Refactoring (no functional changes) - [ ] Documentation changes - [ ] Other - Please describe: ## Fixes Added F-Droid upstream repo to automatically update without waiting for a week to publish P.S for devs: can you do the building app stuff like ``fdroid build`` for the repo? Also turn github pages on to make it work
kekkyojin commented 2021-02-11 17:31:26 +01:00 (Migrated from github.com)

Could you please explain all those changes?

Could you please explain all those changes?
kekkyojin commented 2021-02-11 18:27:20 +01:00 (Migrated from github.com)

This is not how it works.

FDroid operates a bot which is run about once a day. That bot visits every registered source code repository -on their metadata- and checks for new tags. On the metadata file it is said the format of the tag, which is custom for every app. If a new tag is detected, metadata file is updated on their GitLab repository. Then, once a day, their build server sees which new releases APKs are missing and builds them. Once built, a human operator has to sign the APK.

Your changes do not help, as FDroid bot had still to detect the changes on the metadata file you attempt to add.

On building it on LBRY side, I am not the person to decide. But I see two "problems":

  • Signature will be different from the one currently being distributed on FDroid official repo.
  • A release not built by FDroid doesn't guarantee it is not including any of the 3rd party libraries which aren't allowed by FDroid, which I think is the main purpose of FDroid official repositories

On this last point, other apps are certainly doing it that way, providing their users with an APK built by them and asking them to add app developers own repository. It works as an alternative way for distributing the app, but there would be no difference in manually building it locally and then releasing it on LBRY web server the same way the Play Store version is released.

Sorry for reiterate, but solving current problem by releasing the APK on LBRY servers would not work, as LBRY doesn't have the digital signature which is being used by FDroid build server. But I am not the person which should decide on this.

FDroid also allows to verify if app developer built APK is the same as FDroid built one, excepting digital signature, but again, they also have to perform the build, which is currently not working on their side.

This is not how it works. FDroid operates a bot which is run about once a day. That bot visits every registered source code repository -on **their** `metadata`- and checks for new tags. On the `metadata` file it is said the format of the tag, which is custom for every app. If a new tag is detected, `metadata` file is updated on their GitLab repository. Then, once a day, their build server sees which new releases APKs are missing and builds them. Once built, a human operator has to sign the APK. Your changes do not help, as FDroid bot had still to detect the changes on the metadata file you attempt to add. On building it on LBRY side, I am not the person to decide. But I see two "problems": * Signature will be different from the one currently being distributed on FDroid official repo. * A release not built by FDroid doesn't guarantee it is not including any of the 3rd party libraries which aren't allowed by FDroid, which I think is the main purpose of FDroid official repositories On this last point, other apps are certainly doing it that way, providing their users with an APK built by them and asking them to add app developers own repository. It works as an alternative way for distributing the app, but there would be no difference in manually building it locally and then releasing it on LBRY web server the same way the Play Store version is released. Sorry for reiterate, but solving current problem by releasing the APK on LBRY servers would not work, as LBRY doesn't have the digital signature which is being used by FDroid build server. But I am not the person which should decide on this. FDroid also allows to verify if app developer built APK is the same as FDroid built one, excepting digital signature, but again, they also have to perform the build, which is currently not working on their side.
iamflorencejay commented 2021-02-12 05:31:42 +01:00 (Migrated from github.com)

I do the upstream repository just like newpipe is doing with their repo, to recieve updates as fast as possible @kekkyojin

I do the upstream repository just like newpipe is doing with their repo, to recieve updates as fast as possible @kekkyojin
kekkyojin (Migrated from github.com) reviewed 2021-02-13 04:44:41 +01:00
@ -0,0 +14,4 @@
# 'r9b': None,
# 'r10e': None,
# 'r11c': None,
# 'r12b': "$ANDROID_NDK",
kekkyojin (Migrated from github.com) commented 2021-02-13 04:43:22 +01:00

That's not the NDK version being used for LBRY

That's not the NDK version being used for LBRY
@ -0,0 +115,4 @@
# different than the keypass below, it can be OK to store the password in this
# file for real use. But in general, sensitive passwords should not be stored
# in text files!
keystorepass = "fY1Y1tAegMrzZcQTgrs/7tcpOLSa+sg80JnbZnKpAYI="
kekkyojin (Migrated from github.com) commented 2021-02-13 04:42:57 +01:00

I am not a DevOp or SecOp, but this would allow anyone to get the signing key used to sign the APK. That should not be published.

I am not a DevOp or SecOp, but this would allow anyone to get the signing key used to sign the APK. That should not be published.
@ -0,0 +120,4 @@
# The password for keys - the same is used for each auto-generated key as well
# as for the repository key. You should not normally store this password in a
# file since it is a sensitive password.
keypass = "fY1Y1tAegMrzZcQTgrs/7tcpOLSa+sg80JnbZnKpAYI="
kekkyojin (Migrated from github.com) commented 2021-02-13 04:43:04 +01:00

Same here

Same here
@ -0,0 +9,4 @@
RepoType: git
Repo: https://github.com/lbryio/lbry-fdroid
Builds:
kekkyojin (Migrated from github.com) commented 2021-02-13 04:42:33 +01:00

This will not build LBRY

This will not build LBRY
iamflorencejay commented 2021-02-13 04:49:13 +01:00 (Migrated from github.com)

I will retry it later

I will retry it later
akinwale commented 2021-02-15 19:27:38 +01:00 (Migrated from github.com)

From what I can make of the changes, you are trying to create a separate F-Droid repository from the default one which is controlled by the maintainer, and allows us to push binary updates earlier than scheduled F-Droid builds. I'm fine with just sticking with the F-Droid scheduled builds (every 2 to 3 days, IIRC), but ultimately, it's up to @kekkyojin to decide if the extra work is worth it.

From what I can make of the changes, you are trying to create a separate F-Droid repository from the default one which is controlled by the maintainer, and allows us to push binary updates earlier than scheduled F-Droid builds. I'm fine with just sticking with the F-Droid scheduled builds (every 2 to 3 days, IIRC), but ultimately, it's up to @kekkyojin to decide if the extra work is worth it.
iamflorencejay commented 2021-02-16 06:49:01 +01:00 (Migrated from github.com)

Ok, i see

Ok, i see

Pull request closed

Sign in to join this conversation.
No description provided.