Commit Graph

1002 Commits (7aab785be0e826eb341554f83971e843e5d470f2)
 

Author SHA1 Message Date
kari-ts 7aab785be0
android: add tailnet deletion dialog (#682)
Add dialog for deleting tailnet in user switcher view.

Fixes tailscale/corp#31024

Signed-off-by: kari-ts <kari@tailscale.com>
4 months ago
kari-ts b3626fc342
android: bump OSS (#680)
OSS and Version updated to 1.85.241-t729d6532f-ge5a704f78

Signed-off-by: kari-ts <kari@tailscale.com>
Signed-off-by: kari-ts <135075563+kari-ts@users.noreply.github.com>
4 months ago
kari-ts 483a949eb2
android: don't show Taildrop picker on TV (#679)
Updates tailscale/tailscale#16164

Signed-off-by: kari-ts <kari@tailscale.com>
4 months ago
Nick O'Neill 05f3b58e10
android: bump OSS (#678)
OSS and Version updated to 1.85.235-t8453170aa-ge5a704f78

Signed-off-by: Nick O'Neill <nick@tailscale.com>
4 months ago
kari-ts e5a704f785
android: bump OSS (#674)
OSS and Version updated to 1.85.128-t0a64e86a0-g460736a15

Signed-off-by: kari-ts <kari@tailscale.com>
5 months ago
kari-ts 460736a151
android: add All() to state store implementation (#673)
Android has its own SharedPreferences-backed implementation of ipn.StateStore. Due to https://github.com/golang/go/issues/13445, we bundle the key list into a single primitive and unpack it in Go in our All() implementation.
This also adds a compile-time check to prevent drift the interface.

Updates tailscale/tailscale#15830

Signed-off-by: kari-ts <kari@tailscale.com>
5 months ago
Nick Khyl f392619036 libtailscale: set EventBus in wgengine.Config
Updates tailscale/tailscale#16369

Signed-off-by: Nick Khyl <nickk@tailscale.com>
5 months ago
kari-ts 014f591a66
android: use new System with pre-populated event bus (#670)
Updates tailscale/tailscale#15160

Signed-off-by: kari-ts <kari@tailscale.com>
6 months ago
Jonathan Nobels 14b0bd8b19
android: bump OSS (#668)
OSS and Version updated to 1.85.55-t3ed76ceed-g28f193153

Signed-off-by: Jonathan Nobels <jonathan@tailscale.com>
6 months ago
Jonathan Nobels 28f1931531
android: touchless auth key login (#667)
updates tailscale/corp#29482

If an authKey is detected in the mdm payload, we will now skip the
onboarding flows and several of the other non-mandatory permission
prompts.

Signed-off-by: Jonathan Nobels <jonathan@tailscale.com>
6 months ago
Zach Buchheit b9993097fc
mdm: define OnboardingFlow syspolicy on Android (#648)
Adds an MDM setting `OnboardingFlow` which allows for the intro screen to be skipped when set to true.

Adds MDM Setting update to the top of MainActivity onCreate to ensure the latest MDMSettings are accurate. When attempting to do this while
relying on MDMSettings being update during onResume it created a race condition where occasionally OnboardingFlow was being evaluated to the
default value `show` when in reality it should be set to `hide`.

updates tailscale/corp#29482

Signed-off-by: zbuchheit <zachb@tailscale.com>
6 months ago
kari-ts 5f59a367e3
android: bump OSS (#666)
OSS and Version updated to 1.85.36-t66ae8737f-g28084cbd2

Signed-off-by: kari-ts <kari@tailscale.com>
6 months ago
kari-ts 211eb45535
android: add fallback VPN permission (#662)
Some heavily customized OEMS may auto-deny VPN requests without exposing the setting. Show a fallback dialog for devices with no visible VPN panel.

Updates tailscale/tailscale#14095

Signed-off-by: kari-ts <kari@tailscale.com>
6 months ago
kari-ts 28084cbd27
android: do not stop running on login, and edit prefs after startLogi… (#659)
android: do not stop running on login, and edit prefs after startLoginInteractive

Previously: start, edit prefs with wantRunning=false, then startLoginInteractive
Now: 1. editPrefs() with WantRunning=true, LoggedOut=false if AuthKey != null
     2. start() -> boots tailscaled
     3. startLoginInteractive()
Do not call wantRunning=false; the route clearing issue requiring that is resolved.

This also:
-add deepCopy function which copies MaskedPrefs. Note that .copy() does not copy the non-constructor parameters
-removes InternalExitNodePriorSet in MaskedPrefs, since this can't be set on the client

Updates tailscale/corp#24002

Signed-off-by: kari-ts <kari@tailscale.com>
6 months ago
Jonathan Nobels 296b582520
android: detect amazon fire stick as a AndroidTV (#664)
fixes tailscale/tailscale#16164

We weren't detecting fire stick devices as TV devices.

Signed-off-by: Jonathan Nobels <jonathan@tailscale.com>
6 months ago
Anton Tolchanov a5a5cbb2d5 android: add definitions for the DeviceSerialNumber MDM key
Updates tailscale/tailscale#16010

Signed-off-by: Anton Tolchanov <anton@tailscale.com>
6 months ago
kari-ts 1ec621c382
android: make currentDir reactive (#661)
-The composables were reading the currentDir value once and not observing it. This fixes it so that we recompose when the StateFlow changes.
-Use commit() instead of apply() when writing to EncryptedSharedPreferences since we are reading from it immediately and need the writes to happen synchronously
-Remove unused function in PermissionsViewModel

Fixes tailscale/corp#29283

Signed-off-by: kari-ts <kari@tailscale.com>
6 months ago
kari-ts 87f0e9754b
android: allow users to update taildrop directory (#658)
-Modify Permissions view to navigate to Taildrop dir view and Notifications view, and to reflect state
-Add Taildrop dir view which navigates to directory selector
-Add Notifications view which navigates to Taildrop notifications setting

Updates tailscale/tailscale#15263

Signed-off-by: kari-ts <kari@tailscale.com>
6 months ago
Jonathan Nobels a14d4c7184
android: add explanatory dialog for taildrop directory selection (#657)
fixes tailscale/corp#29067

Adds an interstitial explaining that the user needs to select/create
a taildrop target directory on startup.

Signed-off-by: Jonathan Nobels <jonathan@tailscale.com>
6 months ago
Jonathan Nobels 88a5d3c140
android: modify mullvad exit node detection logic (#656)
updates tailscale/corp#29045

We ran into an issue where the current detection logic was not
sufficient to filter out mullvad nodes.  This modifies the logic so we
scan both the Name and ComputedName for the mullvad domain and
also treat all nodes with location info as mullvad nodes.  While all
of these conditions *should* be true for any mullvad node, in practice
it's possible that they aren't so we or them together for some redundancy
and define a mullvad exit node to be any node where any of these
conditions is true.

Signed-off-by: Jonathan Nobels <jonathan@tailscale.com>
6 months ago
Jonathan Nobels 38f2662ecb
android: bump OSS (#655)
OSS and Version updated to 1.85.8-t09582bdc0-gbd5191363

Signed-off-by: Jonathan Nobels <jonathan@tailscale.com>
6 months ago
kari-ts bd5191363c
android: use SAF for storing Taildropped files (#632)
Use Android Storage Access Framework for receiving Taildropped files.

-Add a picker to allow users to select where Taildropped files go
-If no directory is selected, internal app storage is used
-Provide SAF API for Go to use when writing and renaming files
-Provide Android FileOps implementation

Updates tailscale/tailscale#15263

Signed-off-by: kari-ts <kari@tailscale.com>
7 months ago
kari-ts eb0a124ba6
android: bump OSS (#653)
OSS and Version updated to 1.83.240-t5a8b99e97-gd3f34c579

Signed-off-by: kari-ts <kari@tailscale.com>
Signed-off-by: kari-ts <135075563+kari-ts@users.noreply.github.com>
7 months ago
Jonathan Nobels f01fb7062b
android: bump OSS (#652)
OSS and Version updated to 1.83.237-tc4fb380f3-g7f56d0c0f

Signed-off-by: Jonathan Nobels <jonathan@tailscale.com>
7 months ago
kari-ts d5988faf9a
android: add IME action to trigger custom CustomLogin (#649)
Updates tailscale/tailscale#14864

Signed-off-by: kari-ts <kari@tailscale.com>
7 months ago
kari-ts 81ff898782
android: replace broadcast intent with service intent (#650)
We were previously calling startService(intent), which is a direct call consumed by IPNService, but restartVPN was not working as intended because the broadcast receiver was never triggered.
Rather than use a broadcast receiver, directly start the service in restartVPN as we do in stopVPN. Also, batch changes to excluded apps so that we don't restart the VPN each time the user toggles an app.

Fixes tailscale/corp#28668

Signed-off-by: kari-ts <kari@tailscale.com>
7 months ago
kari-ts e3c76eb812
android: fix isExitNode check (#646)
&& takes precedence over ?:, so fix isExitNode to check both IPv4 and IPv6

Updates tailscale/tailscale#15785

Signed-off-by: kari-ts <kari@tailscale.com>
7 months ago
kari-ts 7f56d0c0fe
android: bump OSS (#651)
OSS and Version updated to 1.83.223-t336b3b7df-gd3f34c579

Signed-off-by: kari-ts <kari@tailscale.com>
7 months ago
kari-ts d3f34c579d
android: defer vpn permission until activity is resumed (#647)
Right now, we register the launcher in MainActivity.onCreate(), inject this into the ViewModel, then show the launcher in MainView.
There is no guarantee that the activity is in RESUMED when the Composable runs, showing the launcher. This can lead to a silent RESULT_CANCELED on some OEMs.
The fix is to add a lifecycle-aware wrapper that defers the launch.

Updates tailscale/tailscale#15419

Signed-off-by: kari-ts <kari@tailscale.com>
7 months ago
davfsa ca7dc5f8a8
android: ensure in secure state to interact with quicktile (#622)
* android: ensure in secure state to interact with quicktile

Updates tailscale/tailscale#14628

Signed-off-by: davfsa <davfsa@gmail.com>

* Update android/src/main/java/com/tailscale/ipn/QuickToggleService.java

Signed-off-by: davfsa <davfsa@gmail.com>

---------

Signed-off-by: davfsa <davfsa@gmail.com>
7 months ago
Jonathan Nobels 976ba8eee4
android: bump OSS (#645)
OSS and Version updated to 1.83.190-tfd263adc1-g5b4eff216

Signed-off-by: Jonathan Nobels <jonathan@tailscale.com>
7 months ago
Jonathan Nobels 6fb006e91b
android: bump OSS (#644)
OSS and Version updated to 1.83.162-ta9b3e09a1-g8683c789f

Fixes a breaking change in the NetMon constructor.

Signed-off-by: Jonathan Nobels <jonathan@tailscale.com>
7 months ago
Jakub Meysner 8683c789fd
android/src/main: show exit node information in the permanent notification (#642)
* android/src: ktfmt

Signed-off-by: Jakub Meysner <git@jakubmeysner.com>

* android/src/main: show exit node information in the permanent notification

Displays exit node status (including the name of the exit node) in the permanent connection notification's content (moving the overall connected/disconnected status to the title).

Fixes tailscale/tailscale#14438

Signed-off-by: Jakub Meysner <git@jakubmeysner.com>

* docker: fix invalid instruction in Dockerfile not using trailing slash for files destination directory

> If the source is a file, and the destination doesn't end with a trailing slash, the source file will be written to the destination path as a file.
~ https://docs.docker.com/reference/dockerfile/#destination

Signed-off-by: Jakub Meysner <git@jakubmeysner.com>

---------

Signed-off-by: Jakub Meysner <git@jakubmeysner.com>
7 months ago
kari-ts ff4a49a076
android: fix IllegalStateException in navigation (#643)
Update to androidx.navigation 2.8.5: this fixes the NavHost exception per https://developer.android.com/jetpack/androidx/releases/navigation#2.8.5

Fixes tailscale/tailscale#15755

Signed-off-by: kari-ts <kari@tailscale.com>
8 months ago
kari-ts 6e856b1242
android: log when VPN not established (#641)
Updates tailscale/tailscale#15506

Signed-off-by: kari-ts <kari@tailscale.com>
8 months ago
sakuram 79cd12a159 android: fix typo in comment
Signed-off-by: sakuram <trge241@gmail.com>
8 months ago
James Tucker e784933a9c go.mod: bump OSS for x/crypto and friends
Fixes tailscale/tailscale#15680

Signed-off-by: James Tucker <james@tailscale.com>
8 months ago
James Tucker 9c933a08a2 libtailscale: drop inet.af dependency, use net/netip
Move to the stdlib version, inet.af is bitrotting as a domain and
implementation.

Updates #cleanup

Signed-off-by: James Tucker <james@tailscale.com>
8 months ago
Sam Mikes (He/him/his) 22dabbeeb5 docker: refactor and update docker image build
Fixes tailscale/tailscale#15674

update docker image datestamp
make docker-shell target use the build image with an explicit /bin/bash command
retain the docker-remove-shell-image target in case something depends on it, but clarify that it is now a no-op
hoist all ENV declarations
hoist all mkdir commands
combine mkdir commands
use env vars in mkdir
combine apt-get commands into single RUN
make argument order consistent in apt-get commands
collect packages into fewer apt-get commands
add clean up of temporary files after apt-get
expand apt-get commands to one package per line
sort packages in apt-get commands
combine go installation commands into single RUN
update golang version to 1.24.1
also copy build.gradle file
ensure gradlew is executable before running
remove trailing newline

per review comment, extract multiline apt-get command
into shell script, copy and run that shell script within
image during docker build

Signed-off-by: Sam Mikes (He/him/his) <sam.mikes@gm.com>
8 months ago
kari-ts a684f89eea
android: bump OSS (#634)
OSS and Version updated to 1.83.88-t6fb5e3b0c-g89e7be0a4

Updates tailscale/tailscale#13452
Signed-off-by: kari-ts <kari@tailscale.com>
8 months ago
Mario Minardi 89e7be0a46
.github/workflows: pin GitHub action versions (#631)
Pin versions of GitHub actions that are used in our workflows.

Bumps an instance of actions/checkout from v3.x to v4.x.

Bumps actions/setup-java from v3.x to v4.x.

Updates #cleanup

Signed-off-by: Mario Minardi <mario@tailscale.com>
8 months ago
kari-ts fdaeda063f
android: bump OSS (#630)
OSS and Version updated to 1.83.0-t1ec1a60c1-g0888b3c24

Signed-off-by: kari-ts <kari@tailscale.com>
8 months ago
kari-ts 0888b3c248
android: add missing import (#629)
Updates tailscale/corp#27375

Signed-off-by: kari-ts <kari@tailscale.com>
8 months ago
kari-ts f9c0639196
android: bump OSS (#628)
OSS and Version updated to 1.81.212-tfea74a60d-g9652dbc6e

Signed-off-by: kari-ts <kari@tailscale.com>
8 months ago
kari-ts 9652dbc6e4
android: only use new search for API 33+ (#627)
disable search for Android TV running < API 33

Updates tailscale/corp#27375

Signed-off-by: kari-ts <kari@tailscale.com>
8 months ago
Jonathan Nobels 6ac6a45bbb
android: bump OSS (#626)
OSS and Version updated to 1.81.194-te1078686b-g9a69bc348

Signed-off-by: Jonathan Nobels <jonathan@tailscale.com>
9 months ago
Jonathan Nobels 9a69bc3483
android: update base builder image (#625)
Updating our base builder to eclipse-temurin:21 to
fix apt dependency errors.  Updating the default
toolchains to speed up the build.

Updates tailscale/tailscale#15210

Signed-off-by: Jonathan Nobels <jonathan@tailscale.com>
9 months ago
kari-ts 45d97105fb
android: intall zip (#624)
Add zip installation to Dockerfile and bump Docker image version

Updates tailscale/tailscale#15210
Signed-off-by: kari-ts <kari@tailscale.com>
9 months ago
Jonathan Nobels 599fa15104
android: bump OSS (#623)
OSS and Version updated to 1.81.169-tf0b395d85-g99712c14d

Signed-off-by: Jonathan Nobels <jonathan@tailscale.com>
9 months ago
kari-ts 99712c14da
android: enable search for TV (#620)
Updates tailscale/corp#18973

Signed-off-by: kari-ts <kari@tailscale.com>
9 months ago