SimonSchubert / LinuxCommandLibrary

1M+ downloads Linux reference app with basics, tips and formatted man pages
http://linuxcommandlibrary.com/
Apache License 2.0
799 stars 63 forks source link

your app for f-droid #3

Closed theScrabi closed 2 years ago

theScrabi commented 8 years ago

Hello,

since your App is free software, and seem to not have any bindings to nonfree libraries, you could easily promote it to pecome part of the f-droid repository. https://f-droid.org/

rgds schabi

theScrabi commented 8 years ago

I could write a f-droid buildscript for you, but in order to do that youd have to tag new releases.

theScrabi commented 8 years ago

No to pure :( U use app index, therefore no support for fdroid. Please consider a FLOSS version without com.google.android.gms:play-services-appindexin, also no commins.io would be helpfull if you realy wanted to push on f-droid.

SimonSchubert commented 8 years ago

Thank you for the interest, if I get the time at some point I will do it.

theScrabi commented 8 years ago

I can help you create the f-droid build script, but in order to do that, you might have to get rid of some libraries:

as I said, please consider an F-droid fork. The rest can be done by me.

Poussinou commented 7 years ago

This app on fdroid would be something awesome!

SimonSchubert commented 5 years ago

@theScrabi Sorry that that it took such a long time(3 years..) to get back to this issue.

But finally I managed to remove the google play services, even without a special f-droid fork. Since my goal is to make the app even more lightweight and performant.

Could you have a look again if the current state of the master branch compliance with the f-droid guidelines?

Poussinou commented 5 years ago

I'm not sure we support build.gradle.kts yet.

Could you rollback to the good old build.gradle ?

SimonSchubert commented 5 years ago

In may we successfully released(https://gitlab.com/fdroid/rfp/issues/931#note_168935002) my other app on an f-droid private repo(https://apt.izzysoft.de/fdroid/index/apk/com.inspiredandroid.newsout). It was build with gradle.kts, so I think and hope it is fully supported. :) Since I would like to avoid to rollback.

Poussinou commented 5 years ago

@Izzysoft just took the apk attached in the release section without building the app by himself, it's not the same to build the app from source on the F-Droid servers to put it in the official repo. Newsout isn't in the official repo btw.

I like this app too, and I really would like to see it in the official repo, but it probably won't be possible yet with the build.gradle.kts file. I understand that you don't want to rollback everything. Could you attach an apk in the release section with the last release in the meantime?

IzzySoft commented 5 years ago

@Poussinou is correct. And while support for .kts is already on our wish-list, it will probably be a while until it's available at F-Droid. Another show-stopper for the official repo was Firebase (GCM and Analytics) – which I'm glad to see you just removed \o/

So, with an .apk attached to releases/ as suggested by Poussinou, I gladly take your app into my repo until .kts support is ready at F-Droid. Just ping me when that release is ready 😉

SimonSchubert commented 5 years ago

Ok got it. .kts build scripts are not supported yet. But it's cool to see that it's in the pipeline. Thanks for the explanation.

I will try to push a release with .apk during the weekend.

IzzySoft commented 5 years ago

Great! Just give me a ping when it's there. Updates are a bit faster with my repo (max 24h if you're extremely unlucky and publish at the same time as the repo sync runs).

IzzySoft commented 4 years ago

Just found the last notification while cleaning up my mail: looks like .kts is supported now. So maybe your RFP is faster than your APK here :speak_no_evil:

Lonerider2010 commented 3 years ago

What is the current status of this project in F-Droid?

IzzySoft commented 3 years ago

There was an RFP opened yesterday. The bot check returned green, but it would be nice if @SimonSchubert could establish Fastlane structures here in the app's repo (details behind the link; mainly for screenshots and so summary/description etc. can be maintained with the app itself). Double value: the very same can be used to publish to Play, if wanted.

IzzySoft commented 3 years ago

The RFP is still stalled waiting for Fastlane structures (at least short_description.txt and full_description.txt for en-US, all else is optional though screenshots would be a very good idea as well). @SimonSchubert any chance we get this running?

SimonSchubert commented 2 years ago

Hey @IzzySoft sorry I hadn't maintained the project for a while. I've reworked all the source code and added a bunch of new content recently.

Is the bot still returning green and do I only need to set up the fastlane files?

IzzySoft commented 2 years ago

The RFP has meanwhile be closed for inactivity. But if you'd setup Fastlane here (just need to merge #5 :smiley:) and explicitly add a license (if I read the code correctly, it seems to be Apache-2.0?), be welcome to give me a ping when it's ready and we can see to reopen it and pick up again.

PS: It would be a good idea if you can get the tag names in sync with your versioning. So the current tag should be either 69 (corresponding to the versionCode) or 3.0.0 (corresponding to the versionName). the 4 is a bit irritating and makes matching hard.

For starters, I've just added your app to my repo, so it should show up here with the next sync around 6 pm UTC.

SimonSchubert commented 2 years ago

You even made the effort to create a PR with all the necessary info and I kept you in the dark for 2 years. Apologize!

Will be epic to close the 6 years old issue.

The 4 on the releases page automatically increments, now it's 5 because of the PR merge. New debug release will get created with github actions every time a push to master branch happens. I'm not too familiar with github actions but I will see what I can do.

Just on thing, also regarding your repo. The database.db is currently missing in the project because I was unsure about the licencing. All my code is licensed under Apache-2.0 correct. But what if man pages are licensed under a different license? Is it enough to write something like All man pages are copyrighted by their respective authors in the README.md?

IzzySoft commented 2 years ago

You even made the effort to create a PR with all the necessary info

Well, I've set that up anyway so I was able to add your app to my repo. Local structure is just a touch different, so creating the PR was basically just copying things over. Thanks for merging, I'll then tell my updater to check that as well whenever a new release is pulled, so your changes will be reflected. For formatting of full_description.txt: my framework will parse that as Markdown, so when updating please keep that in mind e.g. regarding the bullet-point lists. Some formatting hints can be found here.

Will be epic to close the 6 years old issue.

Yeah, right in time for its sabbatical :see_no_evil:

The 4 on the releases page automatically increments, now it's 5 because of the PR merge.

Yes, I thought so. But why not taking e.g. versionCode for that so it can easily be matched? A la "I have versionCode: 59 here. Is there something newer?"

New debug release will get created

That's another thing I wanted to ask. As for my repo I simply take the APKs provided by developers (I'm not a dev and thus don't have a build system in place), is there any chance you could provide a release build?

I'm not too familiar with github actions but I will see what I can do.

Thanks a lot!

As for the licensing: It's not unusual that content uses a different license than the code. Sometimes it's even the graphics using a third one. I'd just point that out in the Readme (and optionally also in the app's description if you feel it needed there). Should it be a non-free license, we'll need to add the NonFreeAssets anti-feature then, but it wouldn't be a show-stopper for F-Droid (disclosure: I'm one of the F-Droid maintainers).

SimonSchubert commented 2 years ago

Please let me know if there is an issue with the updated full_description.txt and short_description.txt. I have created a script to automatically build the files with information from the current state of the database. desktop/src/jvmMain/kotlin/FdroiInfoBuilder.k

database.db and license info with respect to the man page authors is also back in. I have not encountered a non-free license in the man pages but I cannot guarantee that there is none. So a NonFreeAssets will be needed for now.

Last but not least I will dig into the versionCode for the release now

SimonSchubert commented 2 years ago

@IzzySoft Yeeeaaah the Github action finally seems to work properly(after dozens of failures)

Do you want me to sign the apk with the same key I used in the Play Store or different key?

IzzySoft commented 2 years ago

Please let me know if there is an issue with the updated full_description.txt and short_description.txt.

They look both excellent, thanks!

NonFreeAssets will be needed for now.

Full ack. And "in good trust" I'd not expect a Linux man page to be non-free :smile:

Yeeeaaah the Github action finally seems to work properly

Congrats! :tada: I've just pinned update checking to v<versionName> then. So if there's some tag you don't want my updater to pick up, just name it differently (omitting the leading v or replacing it by something else suffices to let the updater skip it – useful if you want to place some testing APK that should not be spread widely, or some different build variant).

Do you want me to sign the apk with the same key I used in the Play Store or different key?

Up to you. I'd suggest going with the same key, as that makes it easier for existing users to switch over (or even cross-update if for one reason or another one side misses updates – most likely Play due to some crazy G-stuff, see e.g. Your app is not compliant with Google Play Policies: A story from hell – or a misnamed tag leading to my updater failing).


That said: all looks very fine now, and I see no show-stoppers bringing your app to F-Droid.org's own repo. Let me know if you want to go that path again; being one of the maintainers there, I could then reopen the existing RFP to be picked up again, or you could open a new one if you prefer.

SimonSchubert commented 2 years ago

Full ack. And "in good trust" I'd not expect a Linux man page to be non-free 😄

Exactly 😀 if I find a way to verify that I will let you know

Congrats! 🎉 I've just pinned update checking to v then

Perfect

being one of the maintainers there, I could then reopen the existing RFP

Yes please reopen. I would love to see the app in the main repo.

I will sign v3.0.1 with the Play Store Release key. And I agree, it will be a better experience for the user. Google might also warn users if they try to install an app with a package name which is on their store but signed with a different key.

Please let me know what else you will need for the RFP.

IzzySoft commented 2 years ago

Great! I've just revived the RFP and sent the bot again for a fresh scan. Once results are there we'll see if anything is missing.

SimonSchubert commented 2 years ago

The F-Droid Bot results look good I guess. Just 2 things I noticed: bot lists the project dependencies twice and desktop/build.gradle.kts dependencies are not used for the mobile app. Only android/build.gradle.kts and common/build.gradle.kts

image

But I don't think those are either showbreakers, are they?

Also, v3.0.1 is released and signed with the Play Store Release key.

IzzySoft commented 2 years ago

That's no stopper, no. The bot at RFP only nows the repo to scan, not the subdirs it should use or ignore. Once the merge request at fdroiddata is set up (you can do that yourself, I posted the contents and the name of the YAML file), the bot gets precise instructions (see the Builds block) and only will scan what it's told to.

v3.0.1 should be picked up automatically by my updater then. Should you open said MR yourself, you can adjust the build block accordingly (at F-Droid, we always start with the latest version only).

licaon-kter commented 2 years ago

For the future do add changelogs/<versionCode>.txt here https://github.com/SimonSchubert/LinuxCommandLibrary/tree/master/fastlane/metadata/android/en-US

FYI, https://gitlab.com/fdroid/fdroiddata/-/merge_requests/11309

SimonSchubert commented 2 years ago

Good point, I just added the changelog v3.0.0 and v3.0.1.

Do you need me to do anything with the merge on gitlab?

licaon-kter commented 2 years ago

No, just a heads up :)

IzzySoft commented 2 years ago

@SimonSchubert please rename the changelogs as indicated above: <versionCode>.txt, not <versionName>.txt. Else they are not found/matched.

SimonSchubert commented 2 years ago

@IzzySoft Yeah I didn't read carefully enough. Fixed

IzzySoft commented 2 years ago

Already used with my repo (I pulled and renamed it manually).

SimonSchubert commented 2 years ago

Yeeeeeees

Screenshot_20220711-222707

Just the feature graphic isn't showing https://github.com/SimonSchubert/LinuxCommandLibrary/blob/master/fastlane/metadata/android/en-US/images/featureGraphic.png

SimonSchubert commented 2 years ago

Ohh nevermind. Feature graphic is showing. Thanks a lot to everyone especially @IzzySoft

6 years old issue will finally be closed

IzzySoft commented 2 years ago

Congrats! So shall I still keep your app in my repo then? Usually I remove apps at this stage (after an overlap of about 10 days so people get their F-Droid clients synced) unless explicitly requested otherwise (see here for some background).

SimonSchubert commented 2 years ago

@IzzySoft Good question, to keep it in your repo really has some advantages. Don't know how relevant it would be in this apps case. I guess you could remove it after the 10 days. And if there might be a reason in the future it would be easy to add it back to your repo right?

IzzySoft commented 2 years ago

That's correct. "Removing" basically means I archive the metadata (the *.yml file) and remove the APKs plus Fastlane structure. So re-establishing is as easy as moving the YAML back into place, pick the latest APK, and then have all else automatically fetched from Fastlane.

As for "relevance": if you plan frequent updates, this might wight in (as updates with my repo are available within 24h while F-Droid takes several days). But I don't think that will be the case. There are neither different builds – so we should be fine with archiving.

I'll put a mark now that once it's reported for removal you've confirmed that – and should you change your mind you let me know and we either cancel archiving (when in time) or re-establish the app. Thanks!

licaon-kter commented 2 years ago
ERROR: Found unknown maven repo 'https://maven.pkg.jetbrains.space/public/p/compose/dev' at settings.gradle.kts
ERROR: Could not build app com.inspiredandroid.linuxcommandbibliotheca: Can't build due to 1 error while scanning

ref: https://github.com/SimonSchubert/LinuxCommandLibrary/commit/91badc8ca77b381d97d766f7c26ad13b30744ccb#diff-5625e3601fa0ad3a6a2824239e5a2fde71c149597d31394f9224a08c24be7b9dR7

SimonSchubert commented 2 years ago

Thanks for pointing that out. I removed the outdated repo in the latest commit