clowd / Clowd.Squirrel

Quick and easy installer and automatic updates for cross-platform dotnet applications
427 stars 39 forks source link

Install dependencies silently and w/o admin rights #179

Closed luislhg closed 12 months ago

luislhg commented 1 year ago

Any way we could install .NET dependencies silently? If I recall correctly the original Squirrel used to do everything silently

Also, could and should .NET runtimes be installed w/o admin rights?

KennyTK commented 1 year ago

Could you be more exact about the different between silence in squirrel vs Clowd.squirrel? My experience has been silence in Clowd.squirrel but maybe our use cases are different.

luislhg commented 1 year ago

It installs the application silently if no dependencies are needed, else it will open a prompt asking the user to confirm.

Also, when Squirrel downloads and install the .NET 6 runtimes, it is requesting admin rights. However, accordingly to Microsoft, runtimes can be installed via Powershell script without admin rights, which might be ideal. https://learn.microsoft.com/en-us/dotnet/core/install/windows?tabs=net70#install-with-powershell-automation

caesay commented 12 months ago

It's not possible to install .Net Framework or dotnet core without admin rights. At the link you provided, the first comment is

The dotnet-install scripts are used for CI automation and non-admin installs of the runtime.

The key here is that the dotnet scripts actually don't install dotnet on the system to be used by applications, it just extracts the command line tools in a way that allows a CI server to use them.

If you want to avoid an admin prompt and you're using dotnet core, you should build your app with --self-contained and then omit the --framework argument from squirrel. Basically dotnet will then be bundled with your app and an install is not required.