A future for the Windows packaging situation.

Dear GHC devs, dear maintainers, Following a discussion that took place on #ghc, I wish to spread it to the whole mailing-list, in order to receive some feedback, and plan for the future now that it has become clear that the present is rather bleak. As some of you may have seen from the long threads in haskell-cafe@, countless steps of various difficulty for Windows users (excluding power-users) need to be taken in order to have a proper working GHC / Haskell installation on their machine. Moreover, some defiance against Chocolatey has come to our ears, due to the mailing-list registration form that appears when one desires to download this package manager. I shall speak for myself by saying that I do not wish the that the Windows Haskell developers need to become a special combo of Chocolatey maintainers and Windows power users. Some GNU/Linux distributions such as Exherbo have made this their creed, the major difference being that they actually give the tools to make such a thing possible. The point of my email to you all is the following: I suggest that Haskell.org, the 501(c)(3) established in NY which, If I am not mistaken, holds the funds from various individual donations, the Amazon Smile programme and Software in the Public Interest grants, hires a company to establish a strong technological basis regarding Windows packaging. I am not talking of delegating the maintaining task to an external entity, but to provide the foundations upon which volunteers will be able to keep things running. Training in such matters would also be beneficial, so that newcomers can learn on the spot how to best interact with this. Their contract would involve the initial setup of CI tasks able to produce MSIX packages, while the people in charge of the haskell.org landing page would ease the user experience by providing clearer ways to install GHC on various platforms. Ideally we could have a GUI to install libraries easily, like many GNU/Linux package managers offer. That being said, I was also suggested the idea of a grant and/or sponsorship. What we need is less a capitalist framework around that task and more of an incentive to invest a serious amount of work and quality so that it becomes, at last, the non-issue it should have always been. The important thing to keep in mind is that the GNU/Linux and macOS users *cannot* hold the Windows users to the same standards in terms of CLI usability. I cannot weigh in my opinion on the most recent iterations of PowerShell, but Windows XP's cmd.exe was excruciating, to say the least. Now, I know some of you will prefer to have this task handled by competent volunteers, but I am under the moral obligation to say that expecting salvation and better tomorrows from people who have yet to make their presence known in the thirty years of existence of our dear language, is at best mild delusion, at worse folly that will only widen the gap between what is needed to get Haskell up and running smoothly on the Windows platform and the average skill of Windows users. I am not suggesting that my email is The True Way to follow so that everything is fixed forever, and if we can, as a community, arrive to some satisfying workflow that would benefit rather than alienate our Windows user base, this would would be wonderful. Thank you for reading until the end. Cheers, Hécate. PS: I am in no way trying to berate anyone for their implied incompetence, or imply that Windows users are stupid and/or technologically impaired. This would be misinterpreting my words and lead nowhere but to another OS war on another mailing-list. PPS: I am serious. Please stay on-topic. PPPS: I hold no share, no money or any other form of capital in any Windows packaging company we might or might not end up hiring for the task. I am speaking of experience, for my company used an external contractor to work on our landing (non-product) page, while all hands were on deck to support the product development effort. This allowed us to have a strong foundation to iterate on, and bought us countless hours of development time.

On Wed, May 13, 2020 at 12:56 PM Hécate
As some of you may have seen from the long threads in haskell-cafe@, countless steps of various difficulty for Windows users (excluding power-users) need to be taken in order to have a proper working GHC / Haskell installation on their machine.
Could you (or someone) summarize these issues and steps? I remember one of the big issues was *network* and the likes (which is frankly an issue with other languages as well), but from the sound of this post, I assume there's more.
Their contract would involve the initial setup of CI tasks able to produce MSIX packages
Hopefully that wouldn't become the only way to download GHC.
Ideally we could have a GUI to install libraries easily, like many GNU/Linux package managers offer.
Sounds great, but is it reasonable? GNU/Linux package managers AFAIK don't install Haskell libraries either.
The important thing to keep in mind is that the GNU/Linux and macOS users *cannot* hold the Windows users to the same standards in terms of CLI usability.
It's true that one-liners and scripting is harder in Cmd, but simple commands (no pipes, no flow control etc.) that are the bread and butter for developers work just fine. I sense I'm missing some context; why is this an issue? -- David Macek

Hopefully that wouldn't become the only way to download GHC.
That wasn't my intention to suggest it to be the One True Way to download it.
Sounds great, but is it reasonable? GNU/Linux package managers AFAIK don't install Haskell libraries either
Some do! On Fedora, the Haskell libraries that are shipped are prefixed with `ghc-`, and Arch Linux has become quite infamous due to the way they ship dynamically-linked Haskell libraries and executables. By GUI I was thinking of something like DNFDragora[0] and its Ubuntu counterpart (whose name I forgot).
It's true that one-liners and scripting is harder in Cmd, but simple commands (no pipes, no flow control etc.) that are the bread and butter for developers work just fine. I sense I'm missing some context; why is this an issue?
cmd.exe is fundamentally a foreign interface to most Windows users, even for developers. IDEs and GUIs have reigned for a long long time in Windows Land, and Microsoft has no will to change this state of fact. WSL is a tool developed to Linux / macOS power-users who incidentally need to deal with Windows, or needed an argument to switch to the platform. In addition to all of this, shipping a .tar.lz format was a terrible mistake, for no tool shipped with Windows is able to properly handle it, but I do not wish to blame anyone, it just needs to be changed to .zip and we can be done with it. [0]: https://github.com/manatools/dnfdragora

Hey, respectful devs, Just now I see https://coder.com/ https://coder.com/ (open source at https://github.com/cdr/code-server https://github.com/cdr/code-server), then I realize it may make a good option for windows users to feel home in starting Haskell development. They happen to be talking about releasing a windows binary from current basis that only Linux/macOS are supported - https://github.com/cdr/code-server/issues/1397#issuecomment-627662902 https://github.com/cdr/code-server/issues/1397#issuecomment-627662902 Their mac experience is right about downloading a .zip file from https://github.com/cdr/code-server/releases https://github.com/cdr/code-server/releases , unpack it, double-click an executable (security option needs to be tuned as a mac thing), then goto http://localhost:8080/ http://localhost:8080/ and voila: Haskell Language Serveralanz.vscode-hie-server can be installed right away I'd think GHC and Cabal-install can be bundled similarly, with such an IDE and batteries of HIE based extensions. Maybe some day HLS can hook ghcup/ghcups/stack up to install GHC wrt per project specification, in a cross-platform way. All the best, Compl
On 2020-05-13, at 18:55, Hécate
wrote: Dear GHC devs, dear maintainers,
Following a discussion that took place on #ghc, I wish to spread it to the whole mailing-list, in order to receive some feedback, and plan for the future now that it has become clear that the present is rather bleak.
As some of you may have seen from the long threads in haskell-cafe@, countless steps of various difficulty for Windows users (excluding power-users) need to be taken in order to have a proper working GHC / Haskell installation on their machine. Moreover, some defiance against Chocolatey has come to our ears, due to the mailing-list registration form that appears when one desires to download this package manager. I shall speak for myself by saying that I do not wish the that the Windows Haskell developers need to become a special combo of Chocolatey maintainers and Windows power users. Some GNU/Linux distributions such as Exherbo have made this their creed, the major difference being that they actually give the tools to make such a thing possible.
The point of my email to you all is the following: I suggest that Haskell.org, the 501(c)(3) established in NY which, If I am not mistaken, holds the funds from various individual donations, the Amazon Smile programme and Software in the Public Interest grants, hires a company to establish a strong technological basis regarding Windows packaging. I am not talking of delegating the maintaining task to an external entity, but to provide the foundations upon which volunteers will be able to keep things running. Training in such matters would also be beneficial, so that newcomers can learn on the spot how to best interact with this.
Their contract would involve the initial setup of CI tasks able to produce MSIX packages, while the people in charge of the haskell.org landing page would ease the user experience by providing clearer ways to install GHC on various platforms. Ideally we could have a GUI to install libraries easily, like many GNU/Linux package managers offer.
That being said, I was also suggested the idea of a grant and/or sponsorship. What we need is less a capitalist framework around that task and more of an incentive to invest a serious amount of work and quality so that it becomes, at last, the non-issue it should have always been.
The important thing to keep in mind is that the GNU/Linux and macOS users *cannot* hold the Windows users to the same standards in terms of CLI usability. I cannot weigh in my opinion on the most recent iterations of PowerShell, but Windows XP's cmd.exe was excruciating, to say the least.
Now, I know some of you will prefer to have this task handled by competent volunteers, but I am under the moral obligation to say that expecting salvation and better tomorrows from people who have yet to make their presence known in the thirty years of existence of our dear language, is at best mild delusion, at worse folly that will only widen the gap between what is needed to get Haskell up and running smoothly on the Windows platform and the average skill of Windows users.
I am not suggesting that my email is The True Way to follow so that everything is fixed forever, and if we can, as a community, arrive to some satisfying workflow that would benefit rather than alienate our Windows user base, this would would be wonderful.
Thank you for reading until the end.
Cheers, Hécate.
PS: I am in no way trying to berate anyone for their implied incompetence, or imply that Windows users are stupid and/or technologically impaired. This would be misinterpreting my words and lead nowhere but to another OS war on another mailing-list. PPS: I am serious. Please stay on-topic. PPPS: I hold no share, no money or any other form of capital in any Windows packaging company we might or might not end up hiring for the task. I am speaking of experience, for my company used an external contractor to work on our landing (non-product) page, while all hands were on deck to support the product development effort. This allowed us to have a strong foundation to iterate on, and bought us countless hours of development time.
_______________________________________________ ghc-devs mailing list ghc-devs@haskell.org http://mail.haskell.org/cgi-bin/mailman/listinfo/ghc-devs
participants (3)
-
Compl Yue
-
David Macek
-
Hécate