-
Notifications
You must be signed in to change notification settings - Fork 14
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Update install instructions on landing page #38
Conversation
For some reason I got confused between 34 an 37 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks!
I'm not against this change (and I'm certainly pro cleaning up cruft like mentions of Haskell Platform), but I'd like to point out that I'd expect haskell.org/cabal to roughly follow haskell.org/ghc and be a place to distribute binaries and not teach newcomers how to setup the "Haskell Toolchain" (the /ghc section also never mentions ghcup!). The latter is the job of haskell.org/get-started, which is prominently featured on the index page of haskell.org. I invite you to reflect for a moment on the fact that all these pages live under one domain and arguably should strive for some consistency in terms of what level of abstraction they employ. |
And it's not only a question of consistency, but also of following DRY: I really wish to avoid gazillion independent tutorials preaching ghcup, a tool with a sole maintainer, that can cease to exist at the next cycle of technology innovations. Much better imo would be to reference a single source of truth (e.g. haskell.org or the Cabal user manual), which has a better chance to be updated in a timely manner if the technology shifts. The way I did it in cabal's README is I referenced haskell.org/ghcup which is not as future proof but haskell.org/get-started didn't exist at the time, I think. |
There's a fresh PR against the cabal repo that updates the manual's "getting started" section with a reference to ghcup: haskell/cabal#9212 Exactly what I hoped to avoid. I'd lean towards having it in the manual only, and the website would only reference the "getting started" of the manual rather than giving specific instructions. |
Note that I didn't introduce the reference to GHCup here, it was already there before, but it linked to an older repo of GHCup instead of to the current website. And apart from removing the reference to the Haskell Platform, I only updated the upgrading instructions: If the user has installed his version of cabal with GHCup, then he has the GHCup install directory already in his $PATH, so upgrading via GHCup is then the operation which is more likely to succeed than installing cabal via Hackage (due to the $PATH shenanigans again). |
Oh, I missed that. Good with me then. |
Is this waiting for anything to move it forwards? @andreasabel or @ulysses4ever? |
index.html
Outdated
Platform</a>, install the <span class="inline-code">cabal-install</span> | ||
package from your distributions package manager (if using Linux or Mac), | ||
or download the source or prebuilt binary from | ||
The recommended method to install the <span class="inline-code">cabal</span> executable is to use <a href="https://www.haskell.org/ghcup/">ghcup</a>, which can manage multiple versions of <span class="inline-code">cabal</span> on Linux, Mac and Windows. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@BinderDavid would it be possible to preserve hard wrapping of the text?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I have pushed f0770c9 which breaks up some overly long lines.
@tomjaguarpaw thank you for the ping! I'm fine with the current change. I don't have permissions to merge though. @Mikolaj if you want to give me write permissions, I can help with this kind of contributions. |
I think there's also still a manual step involved for deployment. Maybe the cabal folks would like to incorporate this website into https://github.com/haskell-infra/www.haskell.org/ so it can use our automated deployment technology. |
@tomjaguarpaw this sounds exciting! Is there a description of what exactly we need to do to get there? Maybe a link to a previous migration to auto-deployment for some other sub-site? |
I think you can make a PR that just copies over the contents of this repo into the www.haskell.org repo and then make the tweaks necessary (if any) to persuade Hakyll to include those static files into the artifacts it generates. |
Oh, yes, please! I bumped you minimally, from Write to Maintain. Is that enough now? |
Oh wow, I did have Write permissions after all... All right! @BinderDavid I'm happy to merge but I'd prefer you fixing the wrapping I mentioned in the comment. |
It might have been me, thinking about wiping out cabal-website altogether, but temporarily just adding ghcup to the Haskell Platform that was already there. I totally agree with DRY in this case and automated deployment would be amazing. |
@tomjaguarpaw let me see if I understand the process: if we become a part of the main haskell.org repo, than for every update in this repo, we'll have to open a PR against haskell.org, and when it's merged by someone with write permissions on the haskell.org repo, it will be automatically deployed? Who has write permissions to haskell.org? (is there a list?) Does Mikolaj have those? Right now the extra PR bit feels a little annoying. But I don't know how annoying the current process is, so I can't judge. I thought that an extra PR may not be necessary if we use the git submodules mechanism. In that case, we only need someone to push the Run Workflow button on the haskell.org repo... |
Yes, that's right.
It's the haskell.org committee members. The current policy is that two committee members must approve each MR.
No, but if we go down this route I suggest we amend the policy so that changes to the the cabal subsite require authorization from the cabal team rather than the haskell.org committee.
I wouldn't recommend that, but an alternative is to just copy the same automated deployment mechanism we have and avoid any merging of repositories. Personally I think it's a good idea to merge repositories though. It doesn't seem like a good idea to have several different organizations responsible for different subsites in the long term. |
@tomjaguarpaw thank you for the detailed response. This is a bigger change than what I initially imagined. I think this should be discussed on one of the upcoming Cabal meetings. Would be good to add it to the agenda, @Kleidukos. Unfortunately, I'm still not able to join those because of a scheduling conflict. |
Fixes #37
Haskell platform is officially deprecated, and using ghcup to install cabal and ghc is strongly recommended for beginners.