jamulussoftware / jamulus

Jamulus enables musicians to perform real-time jam sessions over the internet.
https://jamulus.io
Other
997 stars 222 forks source link

Remember if user opened Jamulus on last install/skipped ASIO warning #860

Closed ann0see closed 3 years ago

ann0see commented 3 years ago

From: #841 The new windows installer currently only remembers if the user checked "Install desktop icon". Should we also save if the user checked the checkbox to open Jamulus or skipped the ASIO warning?

pljones commented 3 years ago

~I'd prefer all the choices saved for the next run's default settings - a "single-click install with last used settings" is what I'm after.~

Hm. After thinking... For this specific case, it's possible more concerning if there's still no ASIO device found on an update, so yes, ask again.

ann0see commented 3 years ago

Ok. It could get annoying in one specific case: Install Jamulus on Windows as a server only. Each time you update Jamulus, it would warn you. But it's always possible to skip it.

Concerning the "Run Jamulus" button, this it should be easy to solve, although I don't know if it is possible to do it via a section or function.

pljones commented 3 years ago

Install Jamulus on Windows as a server only. Each time you update Jamulus, it would warn you. But it's always possible to skip it.

Better solution: run the server on Linux ;)

Or you could have a "Server only install" on an "Advanced install options" page and have that get remembered and mean you didn't get asked about missing ASIO drivers... Or even just a "Yes, I know you can't find my ASIO driver, don't worry about it" advanced option that gets remembered...

ann0see commented 3 years ago

Or you could have a "Server only install" on an "Advanced install options" page and have that get remembered and mean you didn't get asked about missing ASIO drivers...

... which would make the installer more complicated. Since I don't think many people run a server on Windows, I'm not sure if this is needed.

I thought about adding a counter to the registry. If someone clicks "Yes" let's say on 4 installs, the message would then be skipped.

pljones commented 3 years ago

... which would make the installer more complicated.

Yeah, was joking about that, too ;). The counter might be confusing -- "Suddenly it doesn't ask me..." or then they decide to switch to running the server in the cloud and use that computer for their client and forget it doesn't have an ASIO driver...

Keep it simple for now - maybe just have a note ("Not required for server-only use" or similar).

ann0see commented 3 years ago

Ok. So can you add it to the warning message in the installer? I'm currently testing some stuff with codacy (code quality and security testing)

gene96817 commented 3 years ago

Thanks for all the work you have been doing. I get calls for help when the user is confused after doing an install (because it doesn't seem to work). With the installer remembering information from the previous run, how do I get the user to do a "clean install", meaning do an install without remembering anything?

ann0see commented 3 years ago

A clean install is possible by running the uninstaller before then running the installer.

But the more important question is: what doesn't work?

The user might be confused by the error message "Due to a bug [...] 64 Bit version is installed to a 32 bit directory..." This message might not be clear enough.

ann0see commented 3 years ago

@gene96817 did my answer help you?

I think we can close this issue as wontfix?

gene96817 commented 3 years ago

Go ahead and close the issue. Many users don't know how to process the error message.

Is it possible for a future installer to coordinate the installation of ASIO driver? (As in, (1) check if a usable ASIO driver is installed, (2) ask if the user would allow the installation, (3) install the ASIO driver, and proceed with Jamulus installation. This is currently the first stumbling point for my Win users.)

ann0see commented 3 years ago

This would be possible if we downloaded ASIO4ALL (but this might not be allowed (license) or even trigger some anti-virus software [I read something like this on the plugin page of the NSIS download plugin]).

Maybe Jamulus could ask the user if he wants to install ASIO4ALL on the first run and download it (if that's allowed).

gene96817 commented 3 years ago

Triggering an anti-virus software would be a wash, with or without a Jamulus installer. The naive user would be equally naive in both cases.

Can Jamulus install ASIO4ALL without needing a Jamulus restart? I don't see the distinction between managing the installation of ASIO4ALL by Jamulus or the Jamulus installer.

pljones commented 3 years ago

Maybe Jamulus could ask the user if he wants to install ASIO4ALL on the first run and download it (if that's allowed).

That would unnecessarily add code to Jamulus. Installation should be handled by the installer.