forked from steger/pr3-sose2026
devcontainer
parent
355dcc5a82
commit
5ca76865d1
|
|
@ -0,0 +1,10 @@
|
|||
FROM ubuntu:24.04
|
||||
|
||||
RUN apt-get update && apt-get install -y build-essential curl libffi-dev libffi8ubuntu1 libgmp-dev libgmp10 libncurses-dev
|
||||
RUN curl --proto '=https' --tlsv1.2 -sSf https://get-ghcup.haskell.org | sh
|
||||
ENV PATH="$PATH:/root/.ghcup/bin"
|
||||
RUN ghcup install hls
|
||||
RUN apt-get update && apt-get install -y git zlib1g-dev
|
||||
RUN cabal update && cabal install ghci-dap haskell-debug-adapter
|
||||
RUN cabal update && cabal install --lib HUnit
|
||||
|
||||
|
|
@ -0,0 +1,12 @@
|
|||
{
|
||||
"name": "Haskell Dev Container",
|
||||
"build": {
|
||||
"dockerfile": "Dockerfile"
|
||||
},
|
||||
"customizations": {
|
||||
"vscode": { "extensions": [
|
||||
"haskell.haskell",
|
||||
"phoityne.phoityne-vscode"
|
||||
]}
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,3 @@
|
|||
{
|
||||
"editor.formatOnSave": true
|
||||
}
|
||||
|
|
@ -0,0 +1,61 @@
|
|||
|
||||
{
|
||||
// Automatically created by phoityne-vscode extension.
|
||||
|
||||
"version": "2.0.0",
|
||||
"presentation": {
|
||||
"reveal": "always",
|
||||
"panel": "new"
|
||||
},
|
||||
"tasks": [
|
||||
{
|
||||
// F7
|
||||
"group": {
|
||||
"kind": "build",
|
||||
"isDefault": false
|
||||
},
|
||||
"label": "haskell build",
|
||||
"type": "shell",
|
||||
"command": "cabal configure && cabal build"
|
||||
},
|
||||
{
|
||||
// F6
|
||||
"group": "build",
|
||||
"type": "shell",
|
||||
"label": "haskell clean & build",
|
||||
"command": "cabal clean && cabal configure && cabal build"
|
||||
},
|
||||
{
|
||||
// F8
|
||||
"group": {
|
||||
"kind": "test",
|
||||
"isDefault": true
|
||||
},
|
||||
"type": "shell",
|
||||
"label": "haskell test",
|
||||
"command": "cabal test"
|
||||
},
|
||||
{
|
||||
// F6
|
||||
"isBackground": true,
|
||||
"type": "shell",
|
||||
"label": "haskell watch",
|
||||
"command": "stack build --test --no-run-tests --file-watch"
|
||||
}
|
||||
|
||||
,
|
||||
{
|
||||
// Build a single Haskell file
|
||||
"type": "shell",
|
||||
"label": "haskell build single file",
|
||||
"command": "ghc",
|
||||
"args": [ "${file}" ],
|
||||
"problemMatcher": [],
|
||||
"group": {
|
||||
"kind": "build",
|
||||
"isDefault": true
|
||||
}
|
||||
}
|
||||
|
||||
]
|
||||
}
|
||||
Loading…
Reference in New Issue