ghcup-hs/docs/index.md

6.1 KiB

hide
navigation
toc

{: .main-logo style="width:100px"} GHCup

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 Donate

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 from scratch. It follows the unix UNIX philosophy of do one thing and do it well. Similar in scope to rustup, pyenv and jenv.

Getting Started User Guide Issue tracker

Select your platform

Linux logo

Linux

		<div class="platform">
			<div class="platform-name"><img src="os-osx.svg" alt="Mac logo"> <h3>Mac OS X</h3></div>
				<a class="expander" href="#mac-link">
					<div>
						<img src="expand-piece.svg" class="expand-1">
						<img src="expand-piece.svg" class="expand-2">
						<img src="expand-piece.svg" class="expand-3">
					</div>
				</a>
		</div>

		<div class="platform">
			<div class="platform-name"><img src="os-freebsd.svg" alt="FreeBSD logo" style="fill: black;"> <h3>FreeBSD</h3></div>
			<a class="expander" href="#freebsd-link">
				<div>
					<img src="expand-piece.svg" class="expand-1">
					<img src="expand-piece.svg" class="expand-2">
					<img src="expand-piece.svg" class="expand-3">
				</div>
			</a>
		</div>

		<div class="platform">
			<div class="platform-name"><img src="os-windows.svg" alt="Windows logo"> <h3>Windows</h3></div>
			<a class="expander" href="#windows-link">
				<div>
					<img src="expand-piece.svg" class="expand-1">
					<img src="expand-piece.svg" class="expand-2">
					<img src="expand-piece.svg" class="expand-3">
				</div>
			</a>
		</div>

		<div class="platform">
			<div class="platform-name"><img src="os-windows.svg" alt="Windows logo"> <h3>WSL2</h3></div>
			<a class="expander" href="#wsl-link">
				<div>
					<img src="expand-piece.svg" class="expand-1">
					<img src="expand-piece.svg" class="expand-2">
					<img src="expand-piece.svg" class="expand-3">
				</div>
			</a>
		</div>

	</div>

	<div id="linux-link">
		<hr/>
		<h4>On Linux, run the following in your terminal (as a user other than root), then follow the onscreen instructions:</h4>
		<div class="command-button">
			<pre><span class="ghcup-command">curl --proto '=https' --tlsv1.2 -sSf https://get-ghcup.haskell.org | sh</span></pre>
		</div>
	</div>
	<div id="mac-link">
		<hr/>
		<h4>On Mac, run the following in your terminal (as a user other than root), then follow the onscreen instructions:</h4>
		<div class="command-button">
			<pre><span class="ghcup-command">curl --proto '=https' --tlsv1.2 -sSf https://get-ghcup.haskell.org | sh</span></pre>
		</div>
	</div>
	<div id="freebsd-link">
		<hr/>
		<h4>On FreeBSD, run the following in your terminal (as a user other than root), then follow the onscreen instructions:</h4>
		<div class="command-button">
			<pre><span class="ghcup-command">curl --proto '=https' --tlsv1.2 -sSf https://get-ghcup.haskell.org | sh</span></pre>
		</div>
	</div>
	<div id="windows-link" class="anchor">
		<hr/>
		<h4>On Windows, run the following in a powershell session (as a non-admin user), then follow the onscreen instructions:</h4>
		<div class="command-button">
			<pre><span class="ghcup-command">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</span></pre>
		</div>
	</div>

	<div id="wsl-link">
		<hr/>
		<h4>On WSL2, run the following in your terminal (as a user other than root), then follow the onscreen instructions:</h4>
		<div class="command-button">
			<pre><span class="ghcup-command">curl --proto '=https' --tlsv1.2 -sSf https://get-ghcup.haskell.org | sh</span></pre>
		</div>
	</div>
</div>

GHCup{: .center style="width:700px"}