diff --git a/dist/changelogs/11.2.md b/dist/changelogs/11.2.md new file mode 100644 index 000000000..b1a02d55f --- /dev/null +++ b/dist/changelogs/11.2.md @@ -0,0 +1,73 @@ +## Scripting improvements + +The scripting system has been reworked in order to make it more intuitive and powerful. + +The script execution types have been renamed, the documentation has been improved, and a new execution type has been added. The new runnable execution type will allow you to call a script from the connection hub directly in a dropdown for each connection when the script is active. This will also replace the current terminal command functionality, which has been removed. + +Any file browser scripts are now grouped by the scripts groups they are in, improving the overview when having many file browser scripts. Furthermore, you can now launch these scripts in the file browser either in the background or in a terminal if they are intended to be interactive. When multiple files are selected, a script is now called only once with all the selected files as arguments. + +## More terminal support + +There is now support to use the following terminals: +- Termius +- MobaXterm +- Xshell +- SecureCRT + +These work via a local SSH bridge that is managed by XPipe. + +## Teleport support + +There is now support to add teleport connections that are available via tsh. You can do that by searching for available connections on any system which has tsh installed. This is a separate integration from SSH, SSH config entries for teleport proxies do not work and are automatically filtered out. It solely works through the tsh tool. + +This feature is available in the Professional edition and is freely available to anyone for two weeks after this release using the Pro Preview. + +## Workspaces + +You can now create multiple user workspaces in the settings menu. This will create desktop shortcuts that you can use to start XPipe with different workspaces active. Having multiple workspaces is useful if you want to separate your personal and work environments for example. + +This feature is available in the Professional edition and is freely available to anyone for two weeks after this release using the Pro Preview. + +## TTYs and PTYs + +Up until now, if you added a connection that always allocated pty, XPipe would complain about a missing stderr. This was usually the case with badly implemented third-party ssh wrappers and proxies. In XPipe 11, there has been a ground up rework of the shell initialization code which will allow for a better handling of these cases. You can therefore now also launch such connections from the hub in a terminal. More advanced operations, such as the file browser, are not possible for these connections though. + +## Serial connection support + +There is now support to add serial connections. This is implemented by delegating the serial connection to another installed tool of your choice and opening that in a terminal session. + +Note that this feature is untested due to me not having physical serial devices around. The plan for this feature is to evolve over time with user feedback and issue reports. It is not expected that this will actually work at the initial release. You can help the development of this feature by reporting any issues and testing it with various devices you have. + +## Pricing model updates + +I received plenty of user feedback and had time to observe the inner workings of potential customers, so I changed the old pricing model to one that should capture the demand better. The old pricing model was created at a time when XPipe had no customers at all and did not reflect the actual user demand. The main changes are the addition of a homelab plan, a monthly subscription, and some changes to the one-year professional edition. + +All changes only apply to new orders. If you have previously purchased any XPipe edition, nothing will change for you. Any prices and conditions will stay the same for you. The community edition is also not changed. If you are interested, you can read about the changes in detail at `https://xpipe.io/blog/pricing-updates`. + +## Fixes + +- Fix git sync freezing when using ssh key with passphrase +- Fix git sync restarting daemon after exit when using git ssh key with passphrase +- Fix git vault readme not being generated on first push when no connections were added +- Fix terminal exit not working properly in fish +- Fix renaming a connection clearing all saved state information +- Fix script enabled status being wrong after editing an enabled script +- Fix download move operation failing when moving a directory that already existed in the downloads folder +- Fix some scrollbars unnecessarily showing +- Fix file browser list jumping around on first show +- Fix missing libxtst6 dependency on some debian-based systems +- Fix file browser root session not applying same color of original connection +- Fix macOS kitty terminal netcat incompatibility with homebrew versions + +## Other + +- Categories can now be assigned colors +- There is now support to view and change users/groups in the file browser +- External git vault data files are now also encrypted by default +- Rework state information display for proxmox VMs +- Automatically fill identity file for ssh config wildcard keys as well +- Improve error messages when system interaction was disabled for a system +- Don't show git vault compatibility warnings on minor version updates +- Enable ZGC on Linux and macOS +- Some small appearance improvements +- Many other miscellaneous fixes all over the place diff --git a/dist/changelogs/11.2_incremental.md b/dist/changelogs/11.2_incremental.md new file mode 100644 index 000000000..27f0387fd --- /dev/null +++ b/dist/changelogs/11.2_incremental.md @@ -0,0 +1,13 @@ +## Hyper-V support + +This release comes with an integration for Hyper-V. Searching for connections on a system where Hyper-V is installed should automatically add connections to your VMs. Note that Hyper-V requires Administrator privileges to interact with the VMs, so you have to start XPipe as an administrator if accessing a local Hyper-V VM and login as a user with Administrator privileges if you're accessing a remote Hyper-V instance. + +XPipe can connect to a VM via PSSession or SSH. PSSession is used by default for Windows guests if no SSH server is available on the guest. In all other cases, it will try to connect via SSH. Since Hyper-V cannot run guest commands on non-Windows systems from the outside, you have to make sure that an SSH server is already running in the VM in that case. + +## Other + +- Fix PSSession connections being broken +- Fix Exception when not allowing XPipe access to certain directories on macOS +- Fix file browser failing when passwd or groups file was corrupt +- Fix various errors when trying to shut down application while it is still starting up +- Automatically select correct connection category if filter string has an unambiguous match diff --git a/lang/proc/strings/translations_da.properties b/lang/proc/strings/translations_da.properties index a07f5392d..1f2a43621 100644 --- a/lang/proc/strings/translations_da.properties +++ b/lang/proc/strings/translations_da.properties @@ -389,3 +389,7 @@ teleportHostDescription=Værtsnavnet på noden teleportUser=Bruger teleportUserDescription=Den bruger, du skal logge ind som login=Login +hyperVInstall.displayName=Hyper-V +hyperVInstall.displayDescription=Opret forbindelse til VM'er, der administreres af Hyper-V +hyperVVm.displayName=Hyper-V VM +hyperVVm.displayDescription=Opret forbindelse til en Hyper-V VM via SSH eller PSSession diff --git a/lang/proc/strings/translations_de.properties b/lang/proc/strings/translations_de.properties index 849b4264f..d6b37e9db 100644 --- a/lang/proc/strings/translations_de.properties +++ b/lang/proc/strings/translations_de.properties @@ -367,3 +367,7 @@ teleportHostDescription=Der Hostname des Knotens teleportUser=Benutzer teleportUserDescription=Der Benutzer, der sich als login=Anmeldung +hyperVInstall.displayName=Hyper-V +hyperVInstall.displayDescription=Verbindung zu VMs, die von Hyper-V verwaltet werden +hyperVVm.displayName=Hyper-V VM +hyperVVm.displayDescription=Verbindung zu einer Hyper-V VM über SSH oder PSSession diff --git a/lang/proc/strings/translations_en.properties b/lang/proc/strings/translations_en.properties index 536bb5a48..764743e1b 100644 --- a/lang/proc/strings/translations_en.properties +++ b/lang/proc/strings/translations_en.properties @@ -365,3 +365,8 @@ teleportHostDescription=The host name of the node teleportUser=User teleportUserDescription=The user to login as login=Login +hyperVInstall.displayName=Hyper-V +hyperVInstall.displayDescription=Connect to VMs managed by Hyper-V +hyperVVm.displayName=Hyper-V VM +hyperVVm.displayDescription=Connect to a Hyper-V VM via SSH or PSSession + diff --git a/lang/proc/strings/translations_es.properties b/lang/proc/strings/translations_es.properties index 17ac8709f..63ec634aa 100644 --- a/lang/proc/strings/translations_es.properties +++ b/lang/proc/strings/translations_es.properties @@ -363,3 +363,7 @@ teleportHostDescription=El nombre de host del nodo teleportUser=Usuario teleportUserDescription=El usuario con el que iniciar sesión login=Inicio de sesión +hyperVInstall.displayName=Hyper-V +hyperVInstall.displayDescription=Conectarse a máquinas virtuales gestionadas por Hyper-V +hyperVVm.displayName=VM Hyper-V +hyperVVm.displayDescription=Conectarse a una máquina virtual Hyper-V mediante SSH o PSSession diff --git a/lang/proc/strings/translations_fr.properties b/lang/proc/strings/translations_fr.properties index d8b47b99b..5f036ab4f 100644 --- a/lang/proc/strings/translations_fr.properties +++ b/lang/proc/strings/translations_fr.properties @@ -363,3 +363,7 @@ teleportHostDescription=Le nom d'hôte du nœud teleportUser=Utilisateur teleportUserDescription=L'utilisateur à connecter en tant que login=Connexion +hyperVInstall.displayName=Hyper-V +hyperVInstall.displayDescription=Se connecter aux machines virtuelles gérées par Hyper-V +hyperVVm.displayName=VM Hyper-V +hyperVVm.displayDescription=Se connecter à une VM Hyper-V via SSH ou PSSession diff --git a/lang/proc/strings/translations_it.properties b/lang/proc/strings/translations_it.properties index b4f310ccd..5838b7fec 100644 --- a/lang/proc/strings/translations_it.properties +++ b/lang/proc/strings/translations_it.properties @@ -363,3 +363,7 @@ teleportHostDescription=Il nome host del nodo teleportUser=Utente teleportUserDescription=L'utente con cui effettuare il login login=Accesso +hyperVInstall.displayName=Hyper-V +hyperVInstall.displayDescription=Connettersi alle macchine virtuali gestite da Hyper-V +hyperVVm.displayName=VM Hyper-V +hyperVVm.displayDescription=Connettersi a una macchina virtuale Hyper-V tramite SSH o PSSession diff --git a/lang/proc/strings/translations_ja.properties b/lang/proc/strings/translations_ja.properties index 2e24a3cd6..265a31d90 100644 --- a/lang/proc/strings/translations_ja.properties +++ b/lang/proc/strings/translations_ja.properties @@ -363,3 +363,7 @@ teleportHostDescription=ノードのホスト名 teleportUser=ユーザー teleportUserDescription=ログインするユーザー login=ログイン +hyperVInstall.displayName=ハイパーV +hyperVInstall.displayDescription=Hyper-Vが管理するVMに接続する +hyperVVm.displayName=Hyper-V VM +hyperVVm.displayDescription=SSHまたはPSSession経由でHyper-V VMに接続する diff --git a/lang/proc/strings/translations_nl.properties b/lang/proc/strings/translations_nl.properties index b139a7bac..8415ab512 100644 --- a/lang/proc/strings/translations_nl.properties +++ b/lang/proc/strings/translations_nl.properties @@ -363,3 +363,7 @@ teleportHostDescription=De hostnaam van het knooppunt teleportUser=Gebruiker teleportUserDescription=De gebruiker om als in te loggen login=Inloggen +hyperVInstall.displayName=Hyper-V +hyperVInstall.displayDescription=Verbinding maken met VM's die worden beheerd door Hyper-V +hyperVVm.displayName=Hyper-V VM +hyperVVm.displayDescription=Verbinding maken met een Hyper-V VM via SSH of PSSession diff --git a/lang/proc/strings/translations_pt.properties b/lang/proc/strings/translations_pt.properties index 0b49ec78e..8a7d2b5b4 100644 --- a/lang/proc/strings/translations_pt.properties +++ b/lang/proc/strings/translations_pt.properties @@ -363,3 +363,7 @@ teleportHostDescription=O nome do anfitrião do nó teleportUser=Utilizador teleportUserDescription=O utilizador para iniciar sessão como login=Acede +hyperVInstall.displayName=Hyper-V +hyperVInstall.displayDescription=Liga-te a VMs geridas pelo Hyper-V +hyperVVm.displayName=VM Hyper-V +hyperVVm.displayDescription=Liga-te a uma VM Hyper-V através de SSH ou PSSession diff --git a/lang/proc/strings/translations_ru.properties b/lang/proc/strings/translations_ru.properties index dd988f7d4..e0b23d848 100644 --- a/lang/proc/strings/translations_ru.properties +++ b/lang/proc/strings/translations_ru.properties @@ -363,3 +363,7 @@ teleportHostDescription=Имя хоста узла teleportUser=Пользователь teleportUserDescription=Пользователь, от имени которого нужно войти в систему login=Логин +hyperVInstall.displayName=Hyper-V +hyperVInstall.displayDescription=Подключение к виртуальным машинам, управляемым Hyper-V +hyperVVm.displayName=Hyper-V VM +hyperVVm.displayDescription=Подключение к виртуальной машине Hyper-V через SSH или PSSession diff --git a/lang/proc/strings/translations_tr.properties b/lang/proc/strings/translations_tr.properties index 47a971d7d..709f79bfa 100644 --- a/lang/proc/strings/translations_tr.properties +++ b/lang/proc/strings/translations_tr.properties @@ -363,3 +363,7 @@ teleportHostDescription=Düğümün ana bilgisayar adı teleportUser=Kullanıcı teleportUserDescription=Giriş yapılacak kullanıcı login=Giriş +hyperVInstall.displayName=Hyper-V +hyperVInstall.displayDescription=Hyper-V tarafından yönetilen VM'lere bağlanma +hyperVVm.displayName=Hyper-V VM +hyperVVm.displayDescription=SSH veya PSSession aracılığıyla bir Hyper-V sanal makinesine bağlanma diff --git a/lang/proc/strings/translations_zh.properties b/lang/proc/strings/translations_zh.properties index e1c69db04..a979613de 100644 --- a/lang/proc/strings/translations_zh.properties +++ b/lang/proc/strings/translations_zh.properties @@ -363,3 +363,7 @@ teleportHostDescription=节点的主机名 teleportUser=用户 teleportUserDescription=要登录的用户 login=登录 +hyperVInstall.displayName=Hyper-V +hyperVInstall.displayDescription=连接由 Hyper-V 管理的虚拟机 +hyperVVm.displayName=Hyper-V 虚拟机 +hyperVVm.displayDescription=通过 SSH 或 PSSession 连接到 Hyper-V 虚拟机 diff --git a/version b/version index ef32e3201..a345113de 100644 --- a/version +++ b/version @@ -1 +1 @@ -11.1 +11.2-1