Skip to content

Commit 271b493

Browse files
authored
Add a basic Remote Assistance page (#5)
This PR implements the Remote Assistance page (which was previously just a placeholder in the app) to provide an easy GUI for making a machine join a Tailscale network via a device auth key. This PR is only a minimal functional prototype of the UX as specified in https://www.notion.so/DN-9-Tailscale-based-remote-assistance-system-in-ImSwitch-OS-2854e612c78a80038d5ac7d99da32698?source=copy_link; if we want to more thoroughly stop Tailscale when disabling remote assistance (which would involve interacting with systemd to manage `tailscaled.service`), that should be done in a future PR. This work is tracked on Notion at https://www.notion.so/Provide-a-GUI-for-toggling-remote-assistance-2864e612c78a80c782e8e15e2f32a463?source=copy_link
1 parent b6b16f3 commit 271b493

File tree

9 files changed

+445
-15
lines changed

9 files changed

+445
-15
lines changed

go.mod

Lines changed: 19 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,19 +1,20 @@
11
module github.com/openUC2/device-admin
22

3-
go 1.25.1
3+
go 1.25.3
44

55
require (
66
github.com/Masterminds/sprig/v3 v3.3.0
77
github.com/benbjohnson/hashfs v0.2.2
88
github.com/dgraph-io/ristretto v0.2.0
9-
github.com/godbus/dbus/v5 v5.1.0
9+
github.com/godbus/dbus/v5 v5.1.1-0.20230522191255-76236955d466
1010
github.com/google/uuid v1.6.0
1111
github.com/labstack/echo/v4 v4.13.4
1212
github.com/labstack/gommon v0.4.2
1313
github.com/pkg/errors v0.9.1
1414
github.com/sargassum-world/godest v0.6.1
1515
github.com/unrolled/secure v1.17.0
1616
golang.org/x/sync v0.17.0
17+
tailscale.com v1.90.4
1718
)
1819

1920
require (
@@ -35,6 +36,7 @@ require (
3536
dario.cat/mergo v1.0.2 // indirect
3637
dev.gaijin.team/go/exhaustruct/v4 v4.0.0 // indirect
3738
dev.gaijin.team/go/golib v0.6.0 // indirect
39+
filippo.io/edwards25519 v1.1.0 // indirect
3840
github.com/42wim/httpsig v1.2.3 // indirect
3941
github.com/4meepo/tagalign v1.4.3 // indirect
4042
github.com/Abirdcfly/dupword v0.1.6 // indirect
@@ -73,6 +75,7 @@ require (
7375
github.com/OpenPeeDeeP/depguard/v2 v2.2.1 // indirect
7476
github.com/ProtonMail/go-crypto v1.3.0 // indirect
7577
github.com/agnivade/levenshtein v1.2.1 // indirect
78+
github.com/akutz/memconn v0.1.0 // indirect
7679
github.com/alecthomas/chroma/v2 v2.20.0 // indirect
7780
github.com/alecthomas/go-check-sumtype v0.3.1 // indirect
7881
github.com/alexkohler/nakedret/v2 v2.0.6 // indirect
@@ -157,6 +160,7 @@ require (
157160
github.com/client9/misspell v0.3.4 // indirect
158161
github.com/cloudflare/circl v1.6.1 // indirect
159162
github.com/cncf/xds/go v0.0.0-20250501225837-2ac532fd4443 // indirect
163+
github.com/coder/websocket v1.8.12 // indirect
160164
github.com/containerd/errdefs v1.0.0 // indirect
161165
github.com/containerd/errdefs/pkg v0.3.0 // indirect
162166
github.com/containerd/stargz-snapshotter/estargz v0.16.3 // indirect
@@ -168,6 +172,7 @@ require (
168172
github.com/dave/dst v0.27.3 // indirect
169173
github.com/davecgh/go-spew v1.1.2-0.20180830191138-d8f796af33cc // indirect
170174
github.com/davidmz/go-pageant v1.0.2 // indirect
175+
github.com/dblohm7/wingoes v0.0.0-20240119213807-a09d6be7affa // indirect
171176
github.com/denis-tingaikin/go-header v0.5.0 // indirect
172177
github.com/dghubble/go-twitter v0.0.0-20211115160449-93a8679adecb // indirect
173178
github.com/dghubble/oauth1 v0.7.3 // indirect
@@ -195,6 +200,7 @@ require (
195200
github.com/felixge/httpsnoop v1.0.4 // indirect
196201
github.com/firefart/nonamedreturns v1.0.6 // indirect
197202
github.com/fsnotify/fsnotify v1.9.0 // indirect
203+
github.com/fxamacker/cbor/v2 v2.7.0 // indirect
198204
github.com/fzipp/gocyclo v0.6.0 // indirect
199205
github.com/gabriel-vasile/mimetype v1.4.8 // indirect
200206
github.com/ghostiam/protogetter v0.3.16 // indirect
@@ -206,6 +212,7 @@ require (
206212
github.com/go-git/go-billy/v5 v5.6.2 // indirect
207213
github.com/go-git/go-git/v5 v5.16.1 // indirect
208214
github.com/go-jose/go-jose/v4 v4.1.0 // indirect
215+
github.com/go-json-experiment/json v0.0.0-20250813024750-ebf49471dced // indirect
209216
github.com/go-logr/logr v1.4.3 // indirect
210217
github.com/go-logr/stdr v1.2.2 // indirect
211218
github.com/go-openapi/analysis v0.23.0 // indirect
@@ -277,6 +284,7 @@ require (
277284
github.com/hashicorp/go-version v1.7.0 // indirect
278285
github.com/hashicorp/golang-lru v1.0.2 // indirect
279286
github.com/hashicorp/golang-lru/v2 v2.0.7 // indirect
287+
github.com/hdevalence/ed25519consensus v0.2.0 // indirect
280288
github.com/hexops/gotextdiff v1.0.3 // indirect
281289
github.com/huandu/xstrings v1.5.0 // indirect
282290
github.com/in-toto/attestation v1.1.1 // indirect
@@ -303,6 +311,7 @@ require (
303311
github.com/jjti/go-spancheck v0.6.5 // indirect
304312
github.com/jmespath/go-jmespath v0.4.1-0.20220621161143-b0104c826a24 // indirect
305313
github.com/josharian/intern v1.0.0 // indirect
314+
github.com/jsimonetti/rtnetlink v1.4.0 // indirect
306315
github.com/julz/importas v0.2.0 // indirect
307316
github.com/karamaru-alpha/copyloopvar v1.2.1 // indirect
308317
github.com/kevinburke/ssh_config v1.2.0 // indirect
@@ -336,10 +345,13 @@ require (
336345
github.com/mattn/go-localereader v0.0.2-0.20220822084749-2491eb6c1c75 // indirect
337346
github.com/mattn/go-mastodon v0.0.10 // indirect
338347
github.com/mattn/go-runewidth v0.0.16 // indirect
348+
github.com/mdlayher/netlink v1.7.3-0.20250113171957-fbb4dce95f42 // indirect
349+
github.com/mdlayher/socket v0.5.0 // indirect
339350
github.com/mgechev/revive v1.12.0 // indirect
340351
github.com/minio/sha256-simd v1.0.1 // indirect
341352
github.com/mitchellh/copystructure v1.2.0 // indirect
342353
github.com/mitchellh/go-homedir v1.1.0 // indirect
354+
github.com/mitchellh/go-ps v1.0.0 // indirect
343355
github.com/mitchellh/mapstructure v1.5.1-0.20231216201459-8508981c8b6c // indirect
344356
github.com/mitchellh/reflectwalk v1.0.2 // indirect
345357
github.com/moby/docker-image-spec v1.3.1 // indirect
@@ -427,6 +439,7 @@ require (
427439
github.com/stretchr/objx v0.5.2 // indirect
428440
github.com/stretchr/testify v1.11.1 // indirect
429441
github.com/subosito/gotenv v1.6.0 // indirect
442+
github.com/tailscale/go-winio v0.0.0-20231025203758-c4f33415bf55 // indirect
430443
github.com/tetafro/godot v1.5.4 // indirect
431444
github.com/theupdateframework/go-tuf v0.7.0 // indirect
432445
github.com/theupdateframework/go-tuf/v2 v2.0.2 // indirect
@@ -452,6 +465,7 @@ require (
452465
github.com/wagoodman/go-progress v0.0.0-20220614130704-4b1c25a33c7c // indirect
453466
github.com/whyrusleeping/cbor-gen v0.1.3-0.20240731173018-74d74643234c // indirect
454467
github.com/wk8/go-ordered-map/v2 v2.1.8 // indirect
468+
github.com/x448/float16 v0.8.4 // indirect
455469
github.com/xanzy/ssh-agent v0.3.3 // indirect
456470
github.com/xen0n/gosmopolitan v1.3.0 // indirect
457471
github.com/xo/terminfo v0.0.0-20220910002029-abceb7e1c41e // indirect
@@ -483,6 +497,8 @@ require (
483497
go.uber.org/multierr v1.11.0 // indirect
484498
go.uber.org/zap v1.27.0 // indirect
485499
go.yaml.in/yaml/v2 v2.4.2 // indirect
500+
go4.org/mem v0.0.0-20240501181205-ae6ca9944745 // indirect
501+
go4.org/netipx v0.0.0-20231129151722-fdeea329fbba // indirect
486502
gocloud.dev v0.42.0 // indirect
487503
golang.org/x/crypto v0.42.0 // indirect
488504
golang.org/x/exp v0.0.0-20250620022241-b7579e27df2b // indirect
@@ -496,6 +512,7 @@ require (
496512
golang.org/x/time v0.12.0 // indirect
497513
golang.org/x/tools v0.37.0 // indirect
498514
golang.org/x/xerrors v0.0.0-20240903120638-7835f813f4da // indirect
515+
golang.zx2c4.com/wireguard/windows v0.5.3 // indirect
499516
google.golang.org/api v0.246.0 // indirect
500517
google.golang.org/genproto v0.0.0-20250603155806-513f23925822 // indirect
501518
google.golang.org/genproto/googleapis/api v0.0.0-20250721164621-a45f3dfb1074 // indirect

0 commit comments

Comments
 (0)