mortenn / BrowserPicker

Smart browser selector for Windows
MIT License
265 stars 17 forks source link

Provided .Net Link Insufficient #141

Open ZenRevision opened 2 months ago

ZenRevision commented 2 months ago
  1. Newly installed and and fully updated Windows 10 system.
  2. Installed BrowserPicker and when launching app I got the .NET required notification with a download link.
  3. Downloaded & installed .NET 8.0 Desktop Runtime (v8.08) from the link provided by BrowserPicker.
  4. Tried launching BrowserPicker again, but recieved same .NET required notification.
  5. Rebooted system... no change.
  6. Uninstalled and reinstalled BrowserPicker... no change.

So apparently the provided link to download the required .NET runtime does not actually include all requirements... or something else is broken.

Not going to install a ~300mb BrowserPicker version that includes all requirements bundled, as I'll need .NET runtimes on this system anyway for various other apps. Currently in the process of downloading/installing various other .NET versions and components.

This seems like an issue in BrowserPicker. If you aren't going to include links to all requirements within the app, then all requirements should at least be documented in the README here on github.

The only thing about requirements mentioned in the README here on github was this; "BrowserPicker.msi and Bundle.zip are JIT compiled and require you have the .NET 8 runtime installed." *With no links provided.

The other possibility is that BrowserPicker is just failing to recognize that the .NET 8 Desktop Runtime actually is installed, and failing to launch correctly. Either way... something in BrowserPicker is not working as intended, making the app unusable for me currently. Perhaps as I install additional .NET components/versions this issue may be resolved, which will be an annoying process of trial and error at best.

Edit: ASP.NET Core 8.0 Runtime is apparently required. Installing it resolved the issue described above. As far as I can tell, this requirement is undocumented.

mortenn commented 1 month ago

I think the popup you are referring to is something that I do not have control over, could you share a screenshot of it?

ZenRevision commented 1 month ago

Edit Correction: Sorry, I would have to uninstall either: ASP.NET Core 8.0 Runtime or .NET 8.0 Desktop Runtime in order to get the popup notification window to reappear when trying to launch BrowserPicker. I can't do that right now without disrupting other processes.

To Clarify:

In Summary & The Main Point:

Simple Solution:

Just edit the description here on github to include a note about both of these requirements with links to download them (I provided the links right there just above this).

This ASP.NET Requirement is Mentioned in Another Issue Here Also

Where the person reporting the issue said:

The BrowserPicker.App.csproj project is a WinExe WPF project. ... but the same .csproj file also has <FrameworkReference Include="Microsoft.AspNetCore.App" /> ...why does it have this FrameworkReference? Can/should it be removed?

They did also mention that they successfully removed the reference and built the project, but then mentioned other stuff breaking, so I don't know about all that.

mortenn commented 1 month ago

Thanks for the additional details.

I was not aware of any special requirements, but I do have all manner of stuff installed on all the systems I use this on, so that is natural.

There is no way I can make a popup display when the app launches on a system without a runtime installed, so that must be something dotnet adds to the executable it builds automatically.

I do not want asp.net to be a requirement to install the app, so I'll have a poke around if I can get that requirement removed.

drogga commented 1 month ago

Windows has an optional SandBox feature which can be enabled (the Virtualization must be enabled and the CPU must support the instructions necessary for the SandBox feature) in which you can test without the requirements or in a VM and make a screenshot of the prompt, anyway from what I remember, only the Core was necessary, I can't confirm tho, because on my Core2Duo I ended up having to use the portable archive with included requirements and I don't want to poke around and mess with something that is currently working, risking of breaking it. I wish it didn't have any requirements and was still like under ~100 MB installed/extracted, but that will probably require to be rewritten and I'm not familiar with all of this, but it's probably possible.

BTW, speaking of the ReadMe - there's a typo I noticed under "Native image generation", where it says "This significantly enhances launch times for he executable.".

dmadiedo commented 1 month ago

I encountered this issue. The required component is "ASP.NET Core Runtime", and it can be found here: https://versionsof.net/core/8.0/8.0.0/ this may be useful for updating the links in the installer.