android-client icon indicating copy to clipboard operation
android-client copied to clipboard

Anyone working on a F-droid build?

Open Darin755 opened this issue 1 year ago • 24 comments

I have never contributed an app to F-droid but since I get all of my apps from F-droid I would like to jump start the process. However, I do not want to duplicate efforts so I am reaching out to see who else has started working on adding Netbird to F-droid. If someone would like to help out I am more than willing to collaborate. I see that adding Netbird to F-droid is on the Netbird roadmap so if the Netbird developers want me to hold off I will me more than happy to comply. Either way, the existence of this repository is a great step in the right direction. Way to go Netbird!

Darin755 avatar Mar 05 '24 01:03 Darin755

I would also love to see builds released on GitHub Releases or F-Droid.

My primary phone is degoogled, so I don't have the Google Play Store, and I primarily download my applications via Obtainium, which has a number of sources, with GitHub Releases and F-Droid being two of them.

Saturn745 avatar Mar 06 '24 19:03 Saturn745

Hello, @Darin755. We have yet to start working on F-droid; we moved it to this month now, but we will probably start working on it only in a couple of weeks. So, it would be great to have some community support on that, and we would be happy to help you with any code needed for the process. What do you think?

mlsmaycon avatar Mar 06 '24 19:03 mlsmaycon

@mlsmaycon hey that's great to hear! I have forked the Android client already and removed the 9 proprietary libraries, and so the fork should be eligible for F-droid now.

However, if you want to keep it all as one codebase it might be a little bit more difficult as react-native-device-info pulls in 3 offending libraries, shown here. I have implemented the functionality used by Netbird from that library as native methods that the UI calls.

I am happy to either make this go upstream, be it in master branch or another branch. Another option is I maintain the fork and rebase when there are upstream updates.

I have not provided any builds on the fork yet, however they are reproducible & functional.

Fork is here: https://github.com/Outlet7493/libre-netbird-android

Outlet7493 avatar Mar 06 '24 20:03 Outlet7493

@mlsmaycon hey that's great to hear! I have forked the Android client already and removed the 9 proprietary libraries, and so the fork should be eligible for F-droid now.

However, if you want to keep it all as one codebase it might be a little bit more difficult as react-native-device-info pulls in 3 offending libraries, shown here. I have implemented the functionality used by Netbird from that library as native methods that the UI calls.

I am happy to either make this go upstream, be it in master branch or another branch. Another option is I maintain the fork and rebase when there are upstream updates.

I have not provided any builds on the fork yet, however they are reproducible & functional.

Fork is here: https://github.com/Outlet7493/libre-netbird-android

Thanks! It seems someone already did the work for me. Assuming that the Netbird team doesn't have any issues with it I'm fine moving forward.

Darin755 avatar Mar 06 '24 23:03 Darin755

Should I go ahead and create an issue on the F-droid Gitlab?

Darin755 avatar Mar 13 '24 16:03 Darin755

Here is the issue: https://gitlab.com/fdroid/rfp/-/issues/2688

Darin755 avatar Mar 13 '24 16:03 Darin755

It would be great to have a tracker free android client to work with a self-hosted server.

Is a github release possible while we wait for the f-droid work? :)

mannp avatar Apr 14 '24 11:04 mannp

I was working on an F-droid build but it looks like the Debian project doesn't build the Android NDK.

Darin755 avatar Apr 21 '24 22:04 Darin755

Would it be possible to release an APK on Github in the mean time? This way you could use something like Obtainium, without relying on Play services.

aqxa1 avatar Jun 10 '24 06:06 aqxa1

I was working on an F-droid build but it looks like the Debian project doesn't build the Android NDK.

Any progress on the F-Droid build?

Integral-Tech avatar Sep 09 '24 04:09 Integral-Tech

@Darin755 don't worry about NDK and whatnot, just make sure you have a clean FOSS flavor for F-Droid to build ;)

also make sure to add a Fastlane folder structure for metadata, ref: https://gitlab.com/-/snippets/1895688

licaon-kter avatar Sep 09 '24 11:09 licaon-kter

I started working on this and then got busy and forgot. If someone wants to tackle this feel free. Before I couldn't get it to build.

I will give it another go this week

Darin755 avatar Sep 09 '24 22:09 Darin755

I spend time trying to set this up but I had trouble with the Android SDK from Debian. If someone more knowledgeable wants to step in that is fine but right now this to big of project for me to start on. I have experience with Java but I have never done Android envelopment so this is more than I want to start on for now. Ideally this should be build using containers as that would provide a repeatable environment that would make development easier.

Darin755 avatar Sep 11 '24 21:09 Darin755

@Darin755 just install Android Studio and do whatever you need to do instead of wasting time with stuff F-Droid will do.

Debians SDK is old anyway. F-Droid uses Googles.

licaon-kter avatar Sep 23 '24 09:09 licaon-kter

I will just let someone else work on this. Thank you all for your time.

Darin755 avatar Sep 23 '24 22:09 Darin755

Can we have this issue re-opened just for the tracking purposed / so it's easier to find?

Also - any possibility to have .apk on release page?

woj-tek avatar Apr 12 '25 09:04 woj-tek

We're currently planning a rewrite of Android client into native app in near future, we might start considering F-Droid release while at it.

nazarewk avatar Apr 14 '25 16:04 nazarewk

~~JetBird is on F-Droid, if someone needs a solution in the meanwhile.~~

JetBird can be installed through F-Droid, if someone needs a solution in the meanwhile.

nbdy avatar Apr 19 '25 09:04 nbdy

@nbdy I don't see it on f-droid.org

licaon-kter avatar Apr 19 '25 10:04 licaon-kter

@licaon-kter You'll need the IzzyOnDroid repository. All relevant information is here.

nbdy avatar Apr 19 '25 10:04 nbdy

Ok, then rephrase it as "it's in a repo somewhere"

This issue is about f-droid.org, right?

licaon-kter avatar Apr 19 '25 10:04 licaon-kter

@nbdy I've just submitted an issue on Codeberg to request F-Droid publication. Although it is available on IzzyOnDroid, only armeabi-v7a is provided, which means latest 64-bit only Android devices can't run it.

Integral-Tech avatar Apr 19 '25 10:04 Integral-Tech

~JetBird is on F-Droid, if someone needs a solution in the meanwhile.~

JetBird can be installed through F-Droid, if someone needs a solution in the meanwhile.

This is really cool. I'll have to try it out when I can.

Darin755 avatar Apr 22 '25 18:04 Darin755

We're currently planning a rewrite of Android client into native app in near future, we might start considering F-Droid release while at it.

Hopefully the new Android Client will stay connected and will always connected again after starting the phone, or disabling the flight mode.

Nordlicht-13 avatar May 10 '25 22:05 Nordlicht-13