Comments (10)
@benz0li thanks that great, i mentioned your repo as unofficial docker image here https://gitlab.haskell.org/ghc/ghc/-/wikis/building/preparation/linux
i will leave this open because i believe the official image should also either have llvm or provide the ability to install the latest llvm version that is supported by a specific GHC version
from docker-haskell.
for GHC 9.2.6 up to llvm 12 is supported. But debian buster only included up to llvm 11. So the docker OS versions don't match for the latest llvm version for the ghc version
from docker-haskell.
@flip111 You may be interested in my multi‑arch (linux/amd64
, linux/arm64/v8
) GHC musl docker images:
- Multi‑arch:
linux/amd64
,linux/arm64/v8
- Built using Hadrian1, from source, without docs
- Built using the LLVM backend
- flavour:
perf+llvm+split_sections
- flavour:
👉 See the Version Matrix to find out which version of LLVM is included in the image.
Based on Alpine Linux (that is musl libc and BusyBox) = Made to build statically linked executables
Footnotes
-
GHC versions ≥ 9.2.8. ↩
from docker-haskell.
GHC musl Dev Containers available, too.
from docker-haskell.
or provide the ability to install the latest llvm version that is supported by a specific GHC version
@flip111 IMHO the "Haskell Docker Official Images" are released according to the supported platforms.
For GHC 9.2.6 this is Debian 10. And the Debian 10 package repository serves LLVM versions 6, 7, 11 and 13.
My 'Alpine Linux'-based images only include a supported LLVM version – which does not have to be the latest1.
Footnotes
-
2024-04-22, Addendum: The latest version of LLVM supported by a specific GHC version. ↩
from docker-haskell.
So the docker OS versions don't match for the right llvm version for the right ghc version
@flip111 It does. LLVM 11 is among the supported LLVM versions for GHC 9.2.6.
from docker-haskell.
the "Haskell Docker Official Images" are released according to the supported platforms.
Well not exactly in the url you linked you can see the following platforms supported: Alpine, Debian 10, Debian 9, Fedora 27, ubuntu 20.04, CentOS 7. Of those 7 distros only one has the official docker image buster.
My 'Alpine Linux'-based images only include a supported LLVM version – which does not have to be the latest.
I mean the latest supported version by GHC. Not the latest LLVM (19) version which would be incompatible with any GHC version at the moment.
It does. LLVM 11 is among the supported LLVM versions for GHC 9.2.6.
For 11 yes. Question is though why make a docker image for GHC based on an OS that does not support the same LLVM version as GHC, i'm talking about LLVM 12. You want to have the latest supported version for performance and LLVM bugs.
from docker-haskell.
Question is though why make a docker image for GHC based on an OS that does not support the same LLVM version as GHC
@flip111 Because for GHC 9.2.6 there is no binary distribution for Debian 11 (bullseye).
Addendum: If you want something unofficial, you have to build it yourself – from source.
from docker-haskell.
Because for GHC 9.2.6 there is no binary distribution for Debian 11 (bullseye).
@benz0li i appreciate you thinking along, but this doesn't make sense. Specifically choosing Debian for the docker container is a choice of for the docker container and not from the binary distribution. If we look at the release page for 9.2.4 there are more OS supported as i mentioned before. The docker image could be based on ubuntu for example which has LLVM 12 and is also supported by the binary release of 9.2.6.
from docker-haskell.
Specifically choosing Debian for the docker container is a choice of for the docker container and not from the binary distribution.
@flip111 You are correct.
So either
- ask the maintainer(s) to add Ubuntu-based images
or
- create a pull request that adds Ubuntu-based images
from docker-haskell.
Related Issues (20)
- Add image for GHC 9.6 HOT 4
- Update GHC 9.4 to version 9.4.5
- Bump stack to 2.11.1 HOT 1
- 9.4.5 doesn't include the correct GHC HOT 2
- Include language server HOT 2
- Update official 9.8 images HOT 1
- Official Devcontainer feature and template HOT 1
- Add GHC 9.10 image HOT 1
- Cut a release with the new GHC 9.10 image HOT 2
- arm64 does not include stack HOT 7
- The PATH environment variable does not contain the path to ghc when using docker-compose HOT 3
- Templating solution
- Looking for maintainers HOT 34
- Request for Debian bullseye/stable-based images HOT 9
- Add docker image with GHCup and/or HLS for use with devcontainers HOT 7
- 137 exit status on Cabal package installations with DOCKER_DEFAULT_PLATFORM=linux/amd64 on an M1 Mac HOT 3
- Build for Multi-Arch failing (arm64 / aarch64) HOT 10
- Cannot find -lnuma when building executables on arm64 image HOT 2
- Haddock can't find link destinations HOT 5
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from docker-haskell.