fsharp / fsharp.org

The F# Software Foundation website
https://fsharp.org
291 stars 280 forks source link

Don't suggest the install-scripts for linux #936

Closed baronfel closed 3 months ago

baronfel commented 11 months ago

This is a foot-gun - the install docs on learn.ms.com are more comprehensive and we really do not want users installing local versions of the SDK. It's inconsistent in a lot of small ways that I have to wrestle with day-to-day. Since the SDK is available in many package managers now by default we should lean into that mechanism.

baronfel commented 10 months ago

@vzarytovskii thoughts on this one too?

Also found three other reasons to dislike recommending the scripts by default:

LAC-Tech commented 10 months ago

As someone who last seriously used F# back in the Framework days and tried to get it working in 2023 - let me cosign this. It was so much easier to get ionide and all the toolking working by using my distros package manager (Alpine).

AngelMunoz commented 10 months ago

can we rather than encourage it

Use this one-liner to acquire an installation script if that's your preference:

we'd rather put a big warning implying something like "if you know what you're doing then take this approach but you're on your own"?

I haven't gone through the verbiage in my head yet but given the amount of linux'es around for some people this could be their only sane approach

I've had my fair share of issues with distro packages in "based of " that don't work with official solutions I personally end up resorting to this method

Just my 2 cents

vzarytovskii commented 10 months ago

@vzarytovskii thoughts on this one too?

Also found three other reasons to dislike recommending the scripts by default:

  • they tend to prevent users from updating their tooling easily
  • when users try to update they may install packages and end up in a 'mixed' SDK scenario
  • the scripts don't set DOTNET_ROOT in a persistent way (i.e. bashrc, zshrc) so a user is in an invalid state post-restart and tooling (especially Ionide) will not recognize this situation.

I, as in macOS one, think that we shouldn't encourage it, but should keep it somewhere under advanced scenarios.

I'm using install scripts exclusively on all linux machines/WSL, since it's easier for me to experiment with, but i would definitely not recommend using it.

baronfel commented 10 months ago

@AngelMunoz I honestly wouldn't even do that - the link on this same page points to the download page for .NET, which for Linux leads to a document that describe the many distro-specific options (including the scripts for distros where package support isn't available).

Separately,

I've had my fair share of issues with distro packages in "based of " that don't work with official solutions I personally end up resorting to this method

Literally my job to fix these :D Mind reaching out either via the dotnet/installer repo or chats on slack/discord/DMs/etc about what you've seen?