From f137d5cc21f050ce059b2f3b23f822ba66d39345 Mon Sep 17 00:00:00 2001 From: Julian Ospald Date: Mon, 11 Oct 2021 21:05:06 +0200 Subject: [PATCH 01/10] Bring back the original install look&feel with platform detection --- docs/Discord-Logo-Black.svg | 10 ++++ docs/Matrix_logo.svg | 7 +++ docs/Octicons-bug.svg | 36 ++++++++++++++ docs/css/extra.css | 48 +++++++++++++++++++ docs/index.md | 52 ++++++++++---------- docs/install.md | 9 ++-- docs/irc.svg | 38 +++++++++++++++ docs/javascripts/extra.js | 96 +++++++++++++++++++++++++++++++++++++ 8 files changed, 269 insertions(+), 27 deletions(-) create mode 100644 docs/Discord-Logo-Black.svg create mode 100644 docs/Matrix_logo.svg create mode 100644 docs/Octicons-bug.svg create mode 100644 docs/irc.svg diff --git a/docs/Discord-Logo-Black.svg b/docs/Discord-Logo-Black.svg new file mode 100644 index 0000000..9da6ee0 --- /dev/null +++ b/docs/Discord-Logo-Black.svg @@ -0,0 +1,10 @@ + + + + + + + + + + diff --git a/docs/Matrix_logo.svg b/docs/Matrix_logo.svg new file mode 100644 index 0000000..216e199 --- /dev/null +++ b/docs/Matrix_logo.svg @@ -0,0 +1,7 @@ + + +Matrix (protocol) logo + + + + diff --git a/docs/Octicons-bug.svg b/docs/Octicons-bug.svg new file mode 100644 index 0000000..b211f5b --- /dev/null +++ b/docs/Octicons-bug.svg @@ -0,0 +1,36 @@ + + + + + + diff --git a/docs/css/extra.css b/docs/css/extra.css index 868d09a..c19835a 100644 --- a/docs/css/extra.css +++ b/docs/css/extra.css @@ -234,6 +234,15 @@ footer > hr { display: flex; flex-direction: column; align-items: center; + + background-color: rgb(250, 250, 250); + margin-top: 2rem; + margin-bottom: 2rem; + margin-left: auto; + margin-right: auto; + border-radius: 3px; + border: 1px solid rgb(204, 204, 204); + box-shadow: 0px 1px 4px 0px rgb(204, 204, 204); } .ghcup-os-container { @@ -249,3 +258,42 @@ ul > li { overflow-wrap: anywhere; } + +.footer { + color: grey; + font-size: 0.7em; + margin-top: 1rem; + margin-bottom: 1rem; +} + +.footer div.show-all-platforms { + display: inline-block; +} + +#help, #collective { + margin-bottom: 0px; + display: block; + + margin-left: auto; + margin-right: auto; + margin-top: 15px; + text-align: center; + + font-size: 0.8em; +} + +#help img { + border: none; + margin: 0px; + height: 22px; +} + +#collective img { + border: none; + margin: 0px; +} + +#collective { + margin-top: 10px; +} + diff --git a/docs/index.md b/docs/index.md index 3062982..46729fa 100644 --- a/docs/index.md +++ b/docs/index.md @@ -12,35 +12,17 @@ hide:

GHCup is an installer for the general purpose language Haskell.

-
-Join the chat at Libera.chat -Join the chat at Matrix.org -Join the chat at Discord -Join the chat at https://gitter.im/haskell/ghcup - -
- ----- - -GHCup makes it easy to install specific versions of GHC on GNU/Linux, -macOS (aka Darwin), FreeBSD and Windows and can also bootstrap a fresh [Haskell developer environment](./install/#supported-tools) from scratch. -It follows the unix UNIX philosophy of [do one thing and do it well](https://en.wikipedia.org/wiki/Unix_philosophy#Do_One_Thing_and_Do_It_Well). Similar in scope to [rustup](https://github.com/rust-lang-nursery/rustup.rs), [pyenv](https://github.com/pyenv/pyenv) and [jenv](http://www.jenv.be). -
-Quick Install Getting Started User Guide Issue tracker
-[![GHCup](./ghcup.gif){: .center style="width:700px"}](install#installation) -
-

Quick Install

-
-

Linux, macOS, FreeBSD or WSL2

-

Run the following in a terminal (as a non-root user):

+

+

To install on Linux, macOS, FreeBSD or WSL2

+

run the following in a terminal (as a non-root user):

             curl --proto '=https' --tlsv1.2 -sSf https://get-ghcup.haskell.org | sh
@@ -49,11 +31,14 @@ It follows the unix UNIX philosophy of [do one thing and do it well](https://en.
       
+
-
-

Windows

-

Run the following in a PowerShell session (as a non-admin user):

+

+

To install on Windows

+

run the following in a PowerShell session (as a non-admin user):

@@ -62,5 +47,24 @@ It follows the unix UNIX philosophy of [do one thing and do it well](https://en.
         
+
+ +
+ +

+Need help? Ask on IRC, Discord, or report a bug +

+ +
+

+ +---- + +![GHCup](./ghcup.gif){: .center style="width:700px"} + diff --git a/docs/install.md b/docs/install.md index cc5c0a5..d5bb299 100644 --- a/docs/install.md +++ b/docs/install.md @@ -1,6 +1,8 @@ # Getting started -Let's get started.... +GHCup makes it easy to install specific versions of GHC on GNU/Linux, +macOS (aka Darwin), FreeBSD and Windows and can also bootstrap a fresh [Haskell developer environment](./install/#supported-tools) from scratch. +It follows the unix UNIX philosophy of [do one thing and do it well](https://en.wikipedia.org/wiki/Unix_philosophy#Do_One_Thing_and_Do_It_Well). Similar in scope to [rustup](https://github.com/rust-lang-nursery/rustup.rs), [pyenv](https://github.com/pyenv/pyenv) and [jenv](http://www.jenv.be). ## Installation @@ -20,7 +22,9 @@ For Windows, run this in a PowerShell session: Set-ExecutionPolicy Bypass -Scope Process -Force;[System.Net.ServicePointManager]::SecurityProtocol = [System.Net.ServicePointManager]::SecurityProtocol -bor 3072;Invoke-Command -ScriptBlock ([ScriptBlock]::Create((Invoke-WebRequest https://www.haskell.org/ghcup/sh/bootstrap-haskell.ps1 -UseBasicParsing))) -ArgumentList $true ``` -Advanced users may want to perform a [manual installation](#manual-install) and GPG verify the binaries. +If you want to know what these scripts do, check out the [source code at the repository](https://gitlab.haskell.org/haskell/ghcup-hs/-/tree/master/scripts/bootstrap). Advanced users may want to perform a [manual installation](#manual-install) and GPG verify the binaries. + +**Advice: Make sure to check out the [Haskell documentation](https://www.haskell.org/documentation/) after installation.** ## Supported tools @@ -98,4 +102,3 @@ export PATH="$HOME/.cabal/bin:$HOME/.ghcup/bin:$PATH" ## Vim integration See [ghcup.vim](https://github.com/hasufell/ghcup.vim). - diff --git a/docs/irc.svg b/docs/irc.svg new file mode 100644 index 0000000..5660201 --- /dev/null +++ b/docs/irc.svg @@ -0,0 +1,38 @@ + + + + + + diff --git a/docs/javascripts/extra.js b/docs/javascripts/extra.js index 15c6c58..ca3b73e 100644 --- a/docs/javascripts/extra.js +++ b/docs/javascripts/extra.js @@ -1,3 +1,93 @@ +var platforms = ["win", "unix"]; +var platform_override = null; + +function detect_platform() { + "use strict"; + + if (platform_override !== null) { + return "unknown"; + } + + var os = "unknown"; + + if (navigator.platform == "Linux x86_64") {os = "unix";} + if (navigator.platform == "Linux i686") {os = "unix";} + if (navigator.platform == "Linux i686 on x86_64") {os = "unix";} + if (navigator.platform == "Linux aarch64") {os = "unix";} + if (navigator.platform == "Linux armv6l") {os = "unix";} + if (navigator.platform == "Linux armv7l") {os = "unix";} + if (navigator.platform == "Linux armv8l") {os = "unix";} + if (navigator.platform == "Linux ppc64") {os = "unix";} + if (navigator.platform == "Linux mips") {os = "unix";} + if (navigator.platform == "Linux mips64") {os = "unix";} + if (navigator.platform == "Mac") {os = "unix";} + if (navigator.platform == "Win32") {os = "win";} + if (navigator.platform == "Win64" || + navigator.userAgent.indexOf("WOW64") != -1 || + navigator.userAgent.indexOf("Win64") != -1) {os = "win";} + if (navigator.platform == "FreeBSD x86_64") {os = "unix";} + if (navigator.platform == "FreeBSD amd64") {os = "unix";} + // if (navigator.platform == "NetBSD x86_64") {os = "unix";} + // if (navigator.platform == "NetBSD amd64") {os = "unix";} + + // I wish I knew by now, but I don't. Try harder. + if (os == "unknown") { + if (navigator.appVersion.indexOf("Win")!=-1) {os = "win";} + if (navigator.appVersion.indexOf("Mac")!=-1) {os = "unix";} + if (navigator.appVersion.indexOf("FreeBSD")!=-1) {os = "unix";} + } + + // Firefox Quantum likes to hide platform and appVersion but oscpu works + if (navigator.oscpu) { + if (navigator.oscpu.indexOf("Win32")!=-1) {os = "win";} + if (navigator.oscpu.indexOf("Win64")!=-1) {os = "win";} + if (navigator.oscpu.indexOf("Mac")!=-1) {os = "unix";} + if (navigator.oscpu.indexOf("Linux")!=-1) {os = "unix";} + if (navigator.oscpu.indexOf("FreeBSD")!=-1) {os = "unix";} + // if (navigator.oscpu.indexOf("NetBSD")!=-1) {os = "unix";} + } + + return os; +} + +function adjust_for_platform() { + "use strict"; + + var platform = detect_platform(); + + if (platforms.includes(platform)) { + platforms.forEach(function (platform_elem) { + var platform_div = document.getElementById("ghcup-instructions-" + platform_elem); + platform_div.style.display = "none"; + if (platform == platform_elem) { + platform_div.style.display = "block"; + } + }); + } +} + + +function show_all_platforms() { + platforms.forEach(function (platform_elem) { + var platform_div = document.getElementById("ghcup-instructions-" + platform_elem); + platform_div.style.display = "block"; + }); + + var buttons = document.getElementsByClassName("show-all-platforms"); + console.log(buttons); + Array.from(buttons).forEach(function (button) { + button.style.display = "none"; + }); + +} + +function set_up_default_platform_buttons() { + var defaults_buttons = document.getElementsByClassName('show-all-platforms-button'); + for (var i = 0; i < defaults_buttons.length; i++) { + defaults_buttons[i].onclick = show_all_platforms; + } +} + function copyToClipboardNux() { const text = document.getElementById("ghcup-command-linux").innerText; const el = document.createElement('textarea'); @@ -21,3 +111,9 @@ function copyToClipboardWin() { const button = document.getElementById("ghcup-windows-button"); button.focus(); } + +(function () { + adjust_for_platform(); + set_up_default_platform_buttons(); +}()); + From 1f100623a7df1d99cf25b6d4ec1233c78ffcaead Mon Sep 17 00:00:00 2001 From: Julian Ospald Date: Mon, 11 Oct 2021 21:06:02 +0200 Subject: [PATCH 02/10] Link to Haskell documentation after installation --- scripts/bootstrap/bootstrap-haskell | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/scripts/bootstrap/bootstrap-haskell b/scripts/bootstrap/bootstrap-haskell index 7146720..c8c20b1 100755 --- a/scripts/bootstrap/bootstrap-haskell +++ b/scripts/bootstrap/bootstrap-haskell @@ -157,6 +157,8 @@ _done() { green "open the \"Mingw haskell shell\"" green "and the \"Mingw package management docs\"" green "desktop shortcuts." + green + green "If you are net to Haskell, check out https://www.haskell.org/documentation/" ;; *) green @@ -170,6 +172,8 @@ _done() { green green "To install other GHC versions and tools, run:" green " ghcup tui" + green + green "If you are net to Haskell, check out https://www.haskell.org/documentation/" ;; esac From c0c6cd4fb32e057a8fdfcc1aa1bdad8cd3dca1a2 Mon Sep 17 00:00:00 2001 From: Julian Ospald Date: Mon, 11 Oct 2021 21:11:29 +0200 Subject: [PATCH 03/10] Fix some https links --- docs/dev.md | 2 +- docs/guide.md | 2 +- docs/install.md | 4 ++-- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/docs/dev.md b/docs/dev.md index 2f3e240..79f2318 100644 --- a/docs/dev.md +++ b/docs/dev.md @@ -76,7 +76,7 @@ Some light suggestions: ### Adding a new CLI command -An example illustration on how to deal with [optparse-applicative](https://hackage.haskell.org/package/optparse-applicative) can be seen here: https://gitlab.haskell.org/haskell/ghcup-hs/-/commit/c19dd5ee8b2edbaf0336af143f1c75b6f4843e26 +An example illustration on how to deal with [optparse-applicative](https://hackage.haskell.org/package/optparse-applicative) can be seen here: [https://gitlab.haskell.org/haskell/ghcup-hs/-/commit/c19dd5ee8b2edbaf0336af143f1c75b6f4843e26](https://gitlab.haskell.org/haskell/ghcup-hs/-/commit/c19dd5ee8b2edbaf0336af143f1c75b6f4843e26) ## Major refactors diff --git a/docs/guide.md b/docs/guide.md index 98e07d2..7bef29c 100644 --- a/docs/guide.md +++ b/docs/guide.md @@ -199,7 +199,7 @@ For the full list of env variables and parameters to tweak the script behavior, ### Example github workflow -On github workflows you can use https://github.com/haskell/actions/ +On github workflows you can use [https://github.com/haskell/actions/](https://github.com/haskell/actions/) If you want to install ghcup manually though, here's an example config: diff --git a/docs/install.md b/docs/install.md index d5bb299..50f86fc 100644 --- a/docs/install.md +++ b/docs/install.md @@ -61,8 +61,8 @@ This list may not be exhaustive and specifies support for bindists only. May or may not work, several issues: -* https://gitlab.haskell.org/haskell/ghcup-hs/-/issues/140 -* https://gitlab.haskell.org/haskell/ghcup-hs/-/issues/197 +* [https://gitlab.haskell.org/haskell/ghcup-hs/-/issues/140](https://gitlab.haskell.org/haskell/ghcup-hs/-/issues/140) +* [https://gitlab.haskell.org/haskell/ghcup-hs/-/issues/197](https://gitlab.haskell.org/haskell/ghcup-hs/-/issues/197) ### WSL1 From 237ed173eefbad998f86624aee7cb951924a983e Mon Sep 17 00:00:00 2001 From: Arjun Kathuria Date: Tue, 12 Oct 2021 14:11:30 +0530 Subject: [PATCH 04/10] format extra.css with 2 spaces uniformly for readability --- docs/css/extra.css | 274 ++++++++++++++++++++++----------------------- 1 file changed, 136 insertions(+), 138 deletions(-) diff --git a/docs/css/extra.css b/docs/css/extra.css index c19835a..1d1b281 100644 --- a/docs/css/extra.css +++ b/docs/css/extra.css @@ -1,202 +1,202 @@ h2 { - border-bottom:1px solid #CCC; - padding-bottom:5px; - padding-top:15px; + border-bottom:1px solid #CCC; + padding-bottom:5px; + padding-top:15px; } h1 { - text-align: center; - font-size: 60px; - font-weight: 300; - padding-top:15px; + text-align: center; + font-size: 60px; + font-weight: 300; + padding-top:15px; } h3 { - font-size: 30px; - padding-top:10px; + font-size: 30px; + padding-top:10px; } h4 { - font-size: 25px; - padding-top:10px; + font-size: 25px; + padding-top:10px; } div.col-md-9 h1:first-of-type { - text-align: center; - font-size: 60px; - font-weight: 300; + text-align: center; + font-size: 60px; + font-weight: 300; } div.col-md-9>p:first-of-type { - text-align: center; + text-align: center; } div.col-md-9 p.admonition-title:first-of-type { - text-align: left; + text-align: left; } div.col-md-9 h1:first-of-type .headerlink { - display: none; + display: none; } code.no-highlight { - color: black; + color: black; } div.gh-badge img { - margin: 0; - padding: 0; - height: 25px; + margin: 0; + padding: 0; + height: 25px; } a.donate-badge img { - margin-top: 10px; - margin-bottom: 0; - padding: 0; - height: 35px; + margin-top: 10px; + margin-bottom: 0; + padding: 0; + height: 35px; } @media only screen and (min-width: 1000px) { - a.donate-badge img { - margin-top: 0; - } + a.donate-badge img { + margin-top: 0; + } } /* Definition List styles */ dd { - padding-left: 20px; + padding-left: 20px; } /* Homepage */ body.homepage div.jumbotron { - margin-top: 1.5rem; - padding-top: 1rem; - padding-bottom: 0; + margin-top: 1.5rem; + padding-top: 1rem; + padding-bottom: 0; } body.homepage div.jumbotron div.card { - margin-bottom: 2rem; + margin-bottom: 2rem; } body.homepage>div.container div.col-md-3 { - display: none; + display: none; } body.homepage>div.container div.col-md-9 { - /* margin-left: 0; */ - /* padding-left: 0; */ - flex: 0 0 100%; - max-width: 100%; + /* margin-left: 0; */ + /* padding-left: 0; */ + flex: 0 0 100%; + max-width: 100%; } .center { - display: block !important; + display: block !important; } .bg-primary { - background-image: -webkit-gradient(linear, left top, left bottom, from(#996FC2), color-stop(60%, #6A478D), to(#5E5086)) !important; - background-image: linear-gradient(#996FC2, #6A478D 60%, #5E5086) !important; - background-repeat: no-repeat !important; + background-image: -webkit-gradient(linear, left top, left bottom, from(#996FC2), color-stop(60%, #6A478D), to(#5E5086)) !important; + background-image: linear-gradient(#996FC2, #6A478D 60%, #5E5086) !important; + background-repeat: no-repeat !important; } .btn-primary { - background-image: -webkit-gradient(linear, left top, left bottom, from(#996FC2), color-stop(60%, #6A478D), to(#5E5086)) !important; - background-image: linear-gradient(#996FC2, #6A478D 60%, #5E5086) !important; - background-repeat: no-repeat !important; + background-image: -webkit-gradient(linear, left top, left bottom, from(#996FC2), color-stop(60%, #6A478D), to(#5E5086)) !important; + background-image: linear-gradient(#996FC2, #6A478D 60%, #5E5086) !important; + background-repeat: no-repeat !important; - color: #fff; - background-color: #996FC1; - border-color: #996FC1; + color: #fff; + background-color: #996FC1; + border-color: #996FC1; - border-bottom: 1px solid #453A62; + border-bottom: 1px solid #453A62; } .navbar { - background-image: -webkit-gradient(linear, left top, left bottom, from(#996FC2), color-stop(60%, #6A478D), to(#5E5086)) !important; - background-image: linear-gradient(#996FC2, #6A478D 60%, #5E5086) !important; - background-repeat: no-repeat !important; + background-image: -webkit-gradient(linear, left top, left bottom, from(#996FC2), color-stop(60%, #6A478D), to(#5E5086)) !important; + background-image: linear-gradient(#996FC2, #6A478D 60%, #5E5086) !important; + background-repeat: no-repeat !important; - color: #fff; - background-color: #996FC1; - border-color: #996FC1; + color: #fff; + background-color: #996FC1; + border-color: #996FC1; - border-bottom: 1px solid #453A62; + border-bottom: 1px solid #453A62; } a { - color: #996FC2; + color: #996FC2; } a:hover { - color: #674489; + color: #674489; } .col-md-9 img.main-logo { - border: 0px; - padding: 0px; - margin: 0px; + border: 0px; + padding: 0px; + margin: 0px; } .navbar-default .navbar-nav>.active>a, .navbar-default .navbar-nav>.active>a:hover, .navbar-default .navbar-nav>.active>a:focus { - color: #fff; - background-color: #453A62; - border-color: #996FC1; + color: #fff; + background-color: #453A62; + border-color: #996FC1; } .navbar-default .navbar-nav>li>a:hover, .navbar-default .navbar-nav>li>a:focus { - color: #fff; - background-color: #453A62; + color: #fff; + background-color: #453A62; } .ghcup-intro { - text-align: center; + text-align: center; } .main-buttons { - display: flex; - align-items: center; - flex-wrap: wrap; - justify-content: center; + display: flex; + align-items: center; + flex-wrap: wrap; + justify-content: center; } .main-buttons a { - margin-right: 5px; - margin-bottom: 5px; + margin-right: 5px; + margin-bottom: 5px; } .command-button { - display: flex; - align-items: center; + display: flex; + align-items: center; } .command-button > pre { - flex: 0 1 80%; - margin: 0; - padding: 10px; - text-align: center; - background-color: #515151; - color: white; - border-radius: 3px; - box-shadow: inset 0px 0px 20px 0px #333333; - font-size: 1em; - white-space: nowrap; - overflow: auto; + flex: 0 1 80%; + margin: 0; + padding: 10px; + text-align: center; + background-color: #515151; + color: white; + border-radius: 3px; + box-shadow: inset 0px 0px 20px 0px #333333; + font-size: 1em; + white-space: nowrap; + overflow: auto; } .ghcup-command:before { - color: #999; - content: " $ "; - margin-left: 15px; + color: #999; + content: " $ "; + margin-left: 15px; } div.command-button { - display: flex; - align-items: center; - justify-content: center; + display: flex; + align-items: center; + justify-content: center; } .command-button pre { @@ -204,96 +204,94 @@ div.command-button { } div.command-button button { - color: #515151; - background: rgb(230, 230, 230); - border: 1px solid grey; - margin: 0 0 0 10px; - padding: 10px; - flex-basis: 0 0 20%; + color: #515151; + background: rgb(230, 230, 230); + border: 1px solid grey; + margin: 0 0 0 10px; + padding: 10px; + flex-basis: 0 0 20%; } div.command-button button .fa { - font-size: x-large; + font-size: x-large; } div.command-button button:hover { - background: rgb(220, 220, 220); - color: black; - border: 1px solid black; + background: rgb(220, 220, 220); + color: black; + border: 1px solid black; } div.command-button button:focus { - background-color: #04aa6d; + background-color: #04aa6d; } footer > hr { - border-top: 0.5px solid #CCC; + border-top: 0.5px solid #CCC; } .qi-container { - display: flex; - flex-direction: column; - align-items: center; + display: flex; + flex-direction: column; + align-items: center; - background-color: rgb(250, 250, 250); - margin-top: 2rem; - margin-bottom: 2rem; - margin-left: auto; - margin-right: auto; - border-radius: 3px; - border: 1px solid rgb(204, 204, 204); - box-shadow: 0px 1px 4px 0px rgb(204, 204, 204); + background-color: rgb(250, 250, 250); + margin-top: 2rem; + margin-bottom: 2rem; + margin-left: auto; + margin-right: auto; + border-radius: 3px; + border: 1px solid rgb(204, 204, 204); + box-shadow: 0px 1px 4px 0px rgb(204, 204, 204); } .ghcup-os-container { - width: 100%; - margin: 10px 0; + width: 100%; + margin: 10px 0; } .ghcup-os-container > * { - text-align: center; + text-align: center; } /* fix list overflows (esp about page) */ ul > li { - overflow-wrap: anywhere; + overflow-wrap: anywhere; } .footer { - color: grey; - font-size: 0.7em; - margin-top: 1rem; - margin-bottom: 1rem; + color: grey; + font-size: 0.7em; + margin-top: 1rem; + margin-bottom: 1rem; } .footer div.show-all-platforms { - display: inline-block; + display: inline-block; } #help, #collective { - margin-bottom: 0px; - display: block; + margin-bottom: 0px; + display: block; - margin-left: auto; - margin-right: auto; - margin-top: 15px; - text-align: center; - - font-size: 0.8em; + margin-left: auto; + margin-right: auto; + margin-top: 15px; + text-align: center; } #help img { - border: none; - margin: 0px; - height: 22px; + border: none; + margin: 0px; + height: 24px; } #collective img { - border: none; - margin: 0px; + border: none; + margin: 0px; } #collective { - margin-top: 10px; + margin-top: 10px; } From 6b0c915077c3b1bb118bdf23ca36a10f914fef86 Mon Sep 17 00:00:00 2001 From: Arjun Kathuria Date: Tue, 12 Oct 2021 14:24:41 +0530 Subject: [PATCH 05/10] align the top haskell logo and "GHCUP" text correctly --- docs/css/extra.css | 17 +++++++++++++++++ docs/index.md | 5 ++++- 2 files changed, 21 insertions(+), 1 deletion(-) diff --git a/docs/css/extra.css b/docs/css/extra.css index 1d1b281..9afcca4 100644 --- a/docs/css/extra.css +++ b/docs/css/extra.css @@ -22,6 +22,23 @@ h4 { padding-top:10px; } +.index-ghcup-hero { + display: flex; + flex-direction: row; + justify-content: center; + align-items: center; +} + +.index-ghcup-hero img { + width: 10%; + min-width: 110px; + max-width: 120px; + border: none; + margin: 0; +} + +.index-ghcup-hero h1 { +} div.col-md-9 h1:first-of-type { text-align: center; diff --git a/docs/index.md b/docs/index.md index 46729fa..f7fb284 100644 --- a/docs/index.md +++ b/docs/index.md @@ -8,7 +8,10 @@ hide: -# ![](./haskell_logo.png){: .main-logo style="width:100px"} GHCup +
+ haskell logo +

GHCup

+

GHCup is an installer for the general purpose language Haskell.

From 569b46f0c4b029a2ccd750cd61872bcf35f31c8d Mon Sep 17 00:00:00 2001 From: Arjun Kathuria Date: Tue, 12 Oct 2021 14:58:11 +0530 Subject: [PATCH 06/10] improves the look of central download box --- docs/css/extra.css | 15 +++++++++++++-- 1 file changed, 13 insertions(+), 2 deletions(-) diff --git a/docs/css/extra.css b/docs/css/extra.css index 9afcca4..2068ed4 100644 --- a/docs/css/extra.css +++ b/docs/css/extra.css @@ -251,7 +251,8 @@ footer > hr { display: flex; flex-direction: column; align-items: center; - + box-sizing: border-box; + padding: 0.75rem; background-color: rgb(250, 250, 250); margin-top: 2rem; margin-bottom: 2rem; @@ -259,7 +260,17 @@ footer > hr { margin-right: auto; border-radius: 3px; border: 1px solid rgb(204, 204, 204); - box-shadow: 0px 1px 4px 0px rgb(204, 204, 204); + box-shadow: + 4px 8px 10px -6px rgb(204, 204, 204), + 4px 8px 10px -6px rgb(153, 111, 194); +} + +@media only screen and (max-width:1000px) { + .qi-container { + box-shadow: + 4px 10px 10px -6px rgb(204, 204, 204), + 4px 10px 10px -9px rgb(153, 111, 194); + } } .ghcup-os-container { From 2cb40af62f7511255e7fbffdd3f360273ed36ae6 Mon Sep 17 00:00:00 2001 From: Arjun Kathuria Date: Tue, 12 Oct 2021 15:35:42 +0530 Subject: [PATCH 07/10] make donate button primary call-to-action, move it above-the-fold for better visibility, move need-help section near footer --- docs/css/extra.css | 37 ++++++++++++++++++++++++------------- docs/index.md | 23 +++++++++++++---------- 2 files changed, 37 insertions(+), 23 deletions(-) diff --git a/docs/css/extra.css b/docs/css/extra.css index 2068ed4..44c272c 100644 --- a/docs/css/extra.css +++ b/docs/css/extra.css @@ -68,19 +68,6 @@ div.gh-badge img { height: 25px; } -a.donate-badge img { - margin-top: 10px; - margin-bottom: 0; - padding: 0; - height: 35px; -} - -@media only screen and (min-width: 1000px) { - a.donate-badge img { - margin-top: 0; - } -} - /* Definition List styles */ dd { @@ -273,6 +260,30 @@ footer > hr { } } +.index-cta-donate .donate-button a { + position: absolute; + top:0; + left: 0; + width: 100%; + height: 100%; +} + +.index-cta-donate .donate-button { + margin: 10px auto; + position: relative; + display: block; + background: none; + padding: none; + border: none; + background: url("https://opencollective.com/webpack/donate/button@2x.png?color=blue"); + width: 35%; + min-width: 240px; + max-width: 280px; + height: 50px; + background-size: contain; + background-repeat: no-repeat; +} + .ghcup-os-container { width: 100%; margin: 10px 0; diff --git a/docs/index.md b/docs/index.md index f7fb284..68ff946 100644 --- a/docs/index.md +++ b/docs/index.md @@ -54,20 +54,23 @@ hide: What does this do?  ·  I don't like curl | sh

- - -

-Need help? Ask on IRC, Discord, or report a bug -

- -
-

+
+

+IRC, +Discord, or report a bug +

+ + From ae85f7152ebb8187d0cd0a29ed2ea287b3b28fe8 Mon Sep 17 00:00:00 2001 From: Julian Ospald Date: Tue, 12 Oct 2021 12:54:40 +0200 Subject: [PATCH 08/10] Close the link, otherwise it spans to the bottom of the page --- docs/index.md | 1 + 1 file changed, 1 insertion(+) diff --git a/docs/index.md b/docs/index.md index 68ff946..6da801e 100644 --- a/docs/index.md +++ b/docs/index.md @@ -59,6 +59,7 @@ hide:
From d19602d06fd91495b7e91be842c326681835497a Mon Sep 17 00:00:00 2001 From: Julian Ospald Date: Tue, 12 Oct 2021 12:54:55 +0200 Subject: [PATCH 09/10] Reduce donate button size a bit --- docs/css/extra.css | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/css/extra.css b/docs/css/extra.css index 44c272c..4ce5518 100644 --- a/docs/css/extra.css +++ b/docs/css/extra.css @@ -279,7 +279,7 @@ footer > hr { width: 35%; min-width: 240px; max-width: 280px; - height: 50px; + height: 40px; background-size: contain; background-repeat: no-repeat; } From 940b5842b696948d172a9aeeb2faafd978351558 Mon Sep 17 00:00:00 2001 From: Julian Ospald Date: Tue, 12 Oct 2021 12:58:21 +0200 Subject: [PATCH 10/10] Add "Get help" section --- docs/install.md | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/docs/install.md b/docs/install.md index 50f86fc..49fe10b 100644 --- a/docs/install.md +++ b/docs/install.md @@ -102,3 +102,11 @@ export PATH="$HOME/.cabal/bin:$HOME/.ghcup/bin:$PATH" ## Vim integration See [ghcup.vim](https://github.com/hasufell/ghcup.vim). + +## Get help + +* [Libera IRC chat on #haskell-ghcup or #haskell](https://kiwiirc.com/nextclient/irc.libera.chat/?nick=Guest%7C?#haskell,#haskell-ghcup) +* [GHCup issue tracker](https://gitlab.haskell.org/haskell/ghcup-hs/issues) +* [Matrix](https://app.element.io/#/room/#haskell-tooling:matrix.org) +* [Discord](https://discord.gg/pKYf3zDQU7) +