1
0
Fork
You've already forked JetBird
0
forked from bg443/JetBird
An unofficial, FLOSS, native Android NetBird client built with privacy in mind
  • Kotlin 98.1%
  • Shell 1.9%
Find a file
2024年11月17日 20:15:39 +00:00
.gitea/issue_template JetBird 2024年08月18日 16:28:44 +01:00
.idea Update JDK version 2024年10月15日 23:34:18 +01:00
app Bump version number 2024年11月17日 20:04:05 +00:00
assets Add locales ( #22 ) 2024年10月15日 21:48:11 +00:00
fastlane/metadata/android/en-US JetBird 2024年08月18日 16:28:44 +01:00
gradle Add locales 2024年09月02日 23:33:09 +01:00
lib JetBird 2024年08月18日 16:28:44 +01:00
netbird @a7d5c52203 Bump NetBird to v0.32.0 2024年11月17日 14:44:02 +00:00
patches Relay support 2024年09月14日 20:32:35 +01:00
scripts Move to wget 2024年11月17日 20:15:39 +00:00
.gitignore JetBird 2024年08月18日 16:28:44 +01:00
.gitmodules JetBird 2024年08月18日 16:28:44 +01:00
.woodpecker.yml Extract golang setup to separate script 2024年11月17日 14:56:02 +00:00
build.gradle.kts JetBird 2024年08月18日 16:28:44 +01:00
gradle.properties JetBird 2024年08月18日 16:28:44 +01:00
gradlew JetBird 2024年08月18日 16:28:44 +01:00
gradlew.bat JetBird 2024年08月18日 16:28:44 +01:00
LICENCE.md JetBird 2024年08月18日 16:28:44 +01:00
README.md Add locales ( #22 ) 2024年10月15日 21:48:11 +00:00
settings.gradle.kts JetBird 2024年08月18日 16:28:44 +01:00

JetBird banner

status-badge

An unofficial, FLOSS, native Android NetBird client built with privacy in mind

About

JetBird is an implementation of the NetBird client for Android.

It has been built with privacy in mind and contains no blobs or trackers.

Features

  • Native UI
  • Use SSO or setup keys
  • Use pre-shared keys
  • See all logs in real time
  • Quick tile
  • Exclude apps from the tunnel
  • Exit nodes (with client-side customisation)
  • Tablet support
  • Reconnect on restart
  • Relay support from JetBird v1.0.4+ (with NetBird v0.29.0+ peers)

Differences

There are a few differences between NetBird official Android client and JetBird. Some of these features rely on patches to the NetBird source (these are in patches/):

  • See all peer info
  • Use setup keys even with SSO support
  • Rosenpass support
  • Split tunneling via routes and/or per app
  • l18n

Install

Prebuilt binaries

  • Available to download in the releases tab
  • You can see the steps of the build on JetBird's CI page
  • Where possible, download the specific build for your device's architecture because the NetBird client is ~25MB and downloading the universal version will download all 4 architectures regardless of if you need them

Build from source

  1. Build NetBird
./scripts/build_netbird.sh

JetBird's NetBird client patches will be applied automatically.

  1. Build APK
./gradlew :app:assembleRelease

Privacy

JetBird does not, and never will, call home.

JetBird/NetBird has to talk to your management server, which will have it's own privacy policy.

In the NetBird management portal, admins will be able to see:

  • You are using JetBird
  • JetBird and NetBird versions
  • Device model e.g. Pixel 9 Pro Fold
  • Operating system e.g. Android 14

JetBird makes no extra connections or requests outside of the NetBird client.

Permissions

JetBird requires a few permissions in order to function:

  • INTERNET
  • FOREGROUND_SERVICE/FOREGROUND_SERVICE_SYSTEM_EXEMPTED - used to run the VPN service
  • ACCESS_NETWORK_STATE/CHANGE_NETWORK_STATE - used to monitor network to check if VPN is already running etc.
  • POST_NOTIFICATIONS - used for notifications when JetBird is running and when upstream sends new routes
  • QUERY_ALL_PACKAGES - used so you can choose which apps aren't tunneled
  • RECEIVE_BOOT_COMPLETED - used to start the tunnel when the device reboots - this is disabled by default in the manifest and will enable itself once you enable it in settings

Notifications

Notifications are optional but Android requires JetBird to show a notification when the tunnel is running. This is dismissible on Android 13+.

JetBird will also send you a notification when there are route changes, as you will need to restart the tunnel. This can be configured in the settings to automatically restart the tunnel but this process will stop the VPN momentarily.

Screenshots

Phone

Tablet

Issues

As JetBird is just a wrapper around the official NetBird client, most connection/peer/management issues will reside with upstream.

Please open an issue using the template provided if you believe you have found a bug or have a feature request!

Translations

You can contribute to JetBird translations here

Translation status

Libraries

See a full list of libraries used here

License


JetBird is free software: you can redistribute it and/or modify it under the terms of the GNU GPL-3.0-or-later License as published by the Free Software Foundation.

This software is provided with no warranty.

Other

"NetBird" and the "NetBird" logo are copyright owned by or licensed to Wiretrustee UG.

"WireGuard" and the "WireGuard" logo are registered trademarks of Jason A. Donenfeld.

"IzzyOnDroid" and the "IzzyOnDroid" logo are registered trademarks of IzzySoft.