waveboxapp icon indicating copy to clipboard operation
waveboxapp copied to clipboard

Windows exec changes path on update. Firewall, Tray & Apps need reconfigure after update

Open VarunAgw opened this issue 6 years ago • 10 comments

  • Wavebox Version: Latest
  • Operating System & Version: Windows 10 1809 x64

With every update, it changes the directory of main executable, i.e. "C:\Users\VarunAgw\AppData\Local\wavebox\app-4.7.2\Wavebox.exe"

This cause issues with firewall since the path is different everytime and I have to manually whitelist it again.

Chrome never have this issue and have constant path for chrome.exe

VarunAgw avatar Mar 29 '19 10:03 VarunAgw

Which firewall are you using? because I never had to do this on windows firewall

nmat avatar Mar 29 '19 10:03 nmat

I use Windows firewall (using WFC wrapper). My rule is "Outbound connection that don't match any rule are blocked".

So instead of blacklist, I maintain a list of whitelisted application by path.

VarunAgw avatar Mar 29 '19 10:03 VarunAgw

You could try to whitelist: C:\Users[youruser]\AppData\Local\wavebox\Wavebox.exe

I am checking how it is launched here and it looks like the target is that one from the shortcut

nmat avatar Apr 01 '19 11:04 nmat

It is launched from there but network request comes from C:\Users\VarunAgw\AppData\Local\wavebox\app-4.7.2\Wavebox.exe

VarunAgw avatar Apr 01 '19 11:04 VarunAgw

This is down to the upstream updater that we use - when the app updates the path to the app also changes. https://github.com/Squirrel/Squirrel.Windows/issues/1052

The root cause is similar to https://github.com/wavebox/waveboxapp/issues/978 in Wavebox.

I'll see if there is anything we can do about this

Thomas101 avatar Apr 01 '19 14:04 Thomas101

Sounds ideal since it would in the case of the report mean you can make the whitelisting of application easier. Many companies nowadays also use this type of whitelisting in some cases.

nmat avatar Apr 04 '19 05:04 nmat

I would just add that it's not just about the firewall, also systray icon configuration is tied to a full executable path, or there're various 3rd party applications which are doing the same thing (e.g. DisplayFusion). All of them I have to reconfigure with every new Wavebox's version, i.e. several times per week.

It's right there's an executable on a stable path "C:\Users\<username>\AppData\Local\wavebox\Wavebox.exe", but the problem is that it's executing the newest installed version of Wavebox as a new process, so what is actually running, making network requests and appearing as application's executable to Windows and 3rd party applications is "C:\Users\<username>\AppData\Local\wavebox\app-<version>\Wavebox.exe" (you can see that in Task Manager on Wavebox's process under the Command line column).

To fix it, the executable "C:\Users\<username>\AppData\Local\wavebox\Wavebox.exe" would have to execute currently installed Wavebox's version "inside" itself instead of executing it as a new process. That way, it would appear that Wavebox's executable is "C:\Users\<username>\AppData\Local\wavebox\Wavebox.exe" to the system and 3rd party applications.

ferenczy avatar Apr 04 '19 23:04 ferenczy

Also a valid case, thanks @ferenczy

Thomas101 avatar Apr 05 '19 08:04 Thomas101

@Thomas101 Do we have a solution for this? I asked this StackOverflow question few months back regarding this.

sandeep1995 avatar Feb 11 '20 21:02 sandeep1995

@sandeep1995 we looked at how we could do this with Squirrel & Electron but it would require big changes to both - which I'm not sure would have been merge-able upstream.

We launched Wavebox 10 at the end of last year, which is built directly on Chromium, this uses a side-by-side configuration to keep the runtime binary and location the same between different versions. As far as I'm aware this kind of configuration isn't supported by Electron

Thomas101 avatar Feb 12 '20 08:02 Thomas101