Commit Graph

27 Commits

Author SHA1 Message Date
Evan Simkowitz
11fec5695c
wsh file overhaul without cross-remote copy and S3 (#1790) 2025-01-22 14:50:09 -08:00
Mike Sawka
d81b6b85c0
longer timeout to read wsh version (2FA prompts) (#1776) 2025-01-20 14:06:37 -08:00
Mike Sawka
a24fe750c5
conn updates 4 (#1726) 2025-01-14 14:09:26 -08:00
Sylvie Crowe
a44a1a4b4b
Remove Old Prototype Plot (#1721)
Removes obsolete plot widget from a prototype version of the app.
2025-01-13 11:55:04 -08:00
Sylvie Crowe
99e122d724
RcFileInstall RPC Command (#1720)
Creates an RPC command for installing shell rcfiles instead of relying
on a separate installation session.
2025-01-12 16:31:00 -08:00
Sylvie Crowe
0174e7cd07
RemoteInfo Rpc (#1719)
Adds an Rpc Command for getting RemoteInfo. This is used to replace the
session that was used to determine the shell on remote machines.
2025-01-12 15:22:07 -08:00
Mike Sawka
ba5f929b3f
conn updates 3 (#1711)
lots of misc connection refactoring / fixes:

* adds blocklogger as a way to writing logging information from the backend directly to the a terminal block
* use blocklogger in conncontroller
* use blocklogger in sshclient
* fix remote name in password prompt
* use sh -c to get around shell weirdness
* remove cmd.exe special cases
* use GetWatcher().GetFullConfig() rather than re-reading the config file
* change order of things we do when establishing a connection.  ask for wsh up front.  then do domain socket, then connserver
* reduce number of sessions required in the common case when wsh is already installed.  running the connserver is now a "multi-command" which checks if it is installed, then asks for the version
* send jwt token over stdin instead of in initial command string
* fix focus bug for frontend conn modal
* track more information in connstatus
* simplify wshinstall function
* add nowshreason
* other misc cleanup
2025-01-10 14:09:32 -08:00
Evan Simkowitz
b51ff834b2
Happy new year! (#1684)
Update all 2024 references to 2025
2025-01-04 20:56:57 -08:00
Mike Sawka
4fd6d36d8e
conn updates 2 (#1660)
* use pwsh over powershell if installed (on windows) for default shell
* refactor blockcontroller.DoRunShellCommand into a "setup" and "manage" phase
* fix wshcmd-conn to also disconnect wsl connections
* new genconn interfaces to make a standardized environment to run SSH/WSL commands via `sh -c`.  also create better quoting functions that are composable
* replace html/template with text/template for shell command templating (avoids special chars getting turned into HTML entities, breaking the commands)
* do not reinstall wsh if the installed version has a higher version (prevents flip-flopping on shared systems)
* simplify clientOs/clientArch detection.  use `uname -sm`.  also validate the os/arch combo as compatible with our builds.
* replace CpHostToRemote with CpWshToRemote. hard codes wsh paths inside of the function instead of having them passed in (quoting restrictions)
* new SyncBuffer class to use with commands that properly synchronizes Writes/String output
* fix setTermSize to actually update DB with terminal size
2025-01-02 14:15:32 -08:00
Mike Sawka
fe91d167b6
fix all panichandlers for the new format (inline recover()) (#1659) 2024-12-31 09:31:55 -08:00
Mike Sawka
b59e9e95bd
conn updates (more consistency) (#1657) 2024-12-30 17:11:50 -08:00
Sylvie Crowe
2590ad037d
fix: more robust processor checks (#1656)
This ensures invalid architectures cannot have wsh installed. This
includes validating the output of `uname -m` and PROCESSOR_ARCHITECTURE
2024-12-30 16:12:14 -08:00
Sylvie Crowe
b778417b9b
Entirely Internal Connection (#1610)
This change allows the user to specify all connection details in an
internal connection rather than forcing them to rely on the ssh config
for certain keywords.
2024-12-23 15:12:14 -08:00
Sylvie Crowe
c003ddff83
Quick Ssh Fix/Logging (#1328)
This adds two things:
- prints a log error if the user isn't parsed properly in ssh
- ensures that a host isn't reused when sending to the conn list
2024-11-20 18:11:47 -08:00
Mike Sawka
360964d4ba
panic handlers everywhere (#1327) 2024-11-20 18:05:13 -08:00
Sylvie Crowe
94eb165346
fix: ignore the match statement in ssh config (#1155)
This change will skip over match statements in the ssh config without
panicking. Note that this change still does not add match statement
parsing--it merely makes it possible to continue parsing if the match
keyword is present.
2024-10-27 20:35:19 -07:00
sawka
e1d538ed8b merge v0.8.13 changes 2024-10-24 17:02:35 -07:00
Sylvie Crowe
bf5bf6f00c
fix: allow capital letters on host match (#1117)
While matching [user@]host[:port], we previously did not allow capital
letters in host.

While this makes sense for a hostname, it does not make sense to make
that restriction for a host. Since this can match on both, we must widen
it to accept characters allowed in host.
2024-10-24 10:58:31 -07:00
Sylvie Crowe
8248637e00
WSL Integration (#1031)
Adds support for connecting to local WSL installations on Windows.

(also adds wshrpcmmultiproxy / connserver router)
2024-10-23 22:43:17 -07:00
Sylvie Crowe
9f57d2d46b
fix: do not canonicalize hostname in list (#994)
This removes the brackets for connections with non-standard ports in the
dropdown list.
2024-10-09 11:08:07 -07:00
Sylvie Crowe
e84f07fa13
SSH Windows Fix (#894)
Only affects windows builds:

Previously, the ~/.waveterm/bin had to exist for wsh to be installed
properly. This fixes it to work on a remote machine where that isn't
already set up.
2024-09-27 16:41:53 -07:00
Sylvie Crowe
fc0b1929ec
Connection Typeahead/Suggestions (#332)
Adds a list of potential remotes to add and filters it as you type. It
also provides options for reconnecting on a disconnection and
specifically connecting to a local connection
2024-09-05 17:02:44 -07:00
Mike Sawka
3e0ca6b41e
connection handling / block controller handling (#326) 2024-09-05 00:21:08 -07:00
Evan Simkowitz
0413b240dd
Only copy the relevant wavesrv binary when packaging for a specific architecture (#316)
This change shaves ~20 MB off the download size by only copying over the
wavesrv binary that is relevant for whichever architecture we're
currently packaging. This is only relevant for macOS at the moment,
though it can also apply to Windows when we get multi-arch builds
working.

This required renaming our Go binaries from .amd64 to .x64 to comply
with electron-builder's naming conventions.
2024-09-04 11:23:39 -07:00
Sylvie Crowe
b3a7c466e5
Powershell Wsh Integration (#320)
Add wsh to the path in powershell. Should work locally and in remote
connections. Should work on both windows and unix systems.
2024-09-04 02:13:00 -07:00
Sylvie Crowe
5cbf2673f4
windows ssh fixes (#250)
a couple small bug fixes
- wsh not being executable in windows (this doesn't add it to the path
yet)
- windows using the wrong slash for the path to wsh on the remote
2024-08-20 12:42:43 -07:00
Mike Sawka
85874f92ca
set up remote connserver (#245) 2024-08-18 21:26:44 -07:00