mirror of
https://github.com/haskell/haskell-language-server.git
synced 2024-09-17 11:47:09 +03:00
Add a Gitpod descriptor (#2161)
* add a gitpod descriptor * preinstall haskell extension and error lens * before * fix tasks * workspace * cabal dir * stack root * Make HLS work in gitpod * tweaks * Fix GHC version
This commit is contained in:
parent
10d3554a19
commit
5afea908d8
65
.gitpod.yml
Normal file
65
.gitpod.yml
Normal file
@ -0,0 +1,65 @@
|
||||
# List the start up tasks. Learn more https://www.gitpod.io/docs/config-start-tasks/
|
||||
tasks:
|
||||
- before: |
|
||||
# Only the /workspace folder is persistent
|
||||
export XDG_DATA_HOME=/workspace/.local/share
|
||||
export XDG_CONFIG_HOME=/workspace/.local/config
|
||||
export XDG_STATE_HOME=/workspace/.local/state
|
||||
export XDG_CACHE_HOME=/workspace/.cache
|
||||
export CABAL_DIR=/workspace/.cabal
|
||||
export STACK_ROOT=/workspace/.stack
|
||||
|
||||
# install ghcup, ghc and cabal
|
||||
export GHCUP_INSTALL_BASE_PREFIX=/workspace
|
||||
export BOOTSTRAP_HASKELL_NONINTERACTIVE=1
|
||||
export BOOTSTRAP_HASKELL_MINIMAL=1
|
||||
curl --proto '=https' --tlsv1.2 -sSf https://get-ghcup.haskell.org | sh
|
||||
/workspace/.ghcup/bin/ghcup install ghc --set
|
||||
/workspace/.ghcup/bin/ghcup install cabal
|
||||
|
||||
# Add ghcup binaries to the PATH since VSCode does not see 'source .ghcup/env'
|
||||
pushd /usr/local/bin
|
||||
sudo ln -s /workspace/.ghcup/bin/* /usr/local/bin
|
||||
popd
|
||||
|
||||
# Fix the Cabal dir since VSCode does not see CABAL_DIR
|
||||
cabal update
|
||||
echo "Symlinking /workspace/.cabal to ~/.cabal"
|
||||
ln -s /workspace/.cabal ~
|
||||
|
||||
# Configure VSCode to use the locally built version of HLS
|
||||
mkdir -p .vscode
|
||||
echo '{ "haskell.serverExecutablePath": "/workspace/.cabal/bin/haskell-language-server" }' > .vscode/settings.json
|
||||
|
||||
init: |
|
||||
cabal configure --enable-executable-dynamic
|
||||
cabal build --enable-tests
|
||||
cabal install exe:haskell-language-server
|
||||
command: |
|
||||
cabal build --enable-tests
|
||||
|
||||
# List the ports to expose. Learn more https://www.gitpod.io/docs/config-ports/
|
||||
ports: []
|
||||
|
||||
github:
|
||||
prebuilds:
|
||||
# enable for the master/default branch (defaults to true)
|
||||
master: true
|
||||
# enable for all branches in this repo (defaults to false)
|
||||
branches: false
|
||||
# enable for pull requests coming from this repo (defaults to true)
|
||||
pullRequests: true
|
||||
# enable for pull requests coming from forks (defaults to false)
|
||||
pullRequestsFromForks: true
|
||||
# add a "Review in Gitpod" button as a comment to pull requests (defaults to true)
|
||||
addComment: false
|
||||
# add a "Review in Gitpod" button to pull requests (defaults to false)
|
||||
addBadge: false
|
||||
# add a label once the prebuild is ready to pull requests (defaults to false)
|
||||
addLabel: prebuilt-in-gitpod
|
||||
|
||||
vscode:
|
||||
extensions:
|
||||
- "haskell.haskell"
|
||||
- "justusadam.language-haskell"
|
||||
- "usernamehw.errorlens"
|
Loading…
Reference in New Issue
Block a user