haskell / docker-haskell

MIT License
61 stars 36 forks source link

bump stack all versions #94

Closed jappeace closed 1 year ago

jappeace commented 1 year ago

This modifies the stack install script to be installed on all architectures (although it still likely will fail on sha, but I intend to get those from the error message). The stack install script has also been moved outside of the docker file for easier future edits. (hence the large amount of deletions).

this also adds support for debian aarch64, solving https://github.com/haskell/docker-haskell/issues/59

AlistairB commented 1 year ago

Thanks!

My suggestion would be to not rewrite how the images work until you understand and are comfortable with the current pattern. For example, the directory structure exists as that is how the official images reference the dockerfiles for different GHC versions.

In terms of separate install scripts.. I don't know why not.. but this is not really done in any of the official images. The current install pattern pretty much mirrors all the official images. I suppose for one you are forced to have an image layer with the install script sticking around which is not valuable to the end user. You could create an issue on the official images repo asking them about the pros and cons of the install script being copied in solution.

If you want to fix the duplication problem, I think like the go official images the right solution is to use templating. In general, we should following the patterns from the other official images which have been developed by very knowledge people, unless we have a good reason.

In terms of the shas, the dockerfiles have a comments like # sha256 from https://github.com/commercialhaskell/stack/releases/download/v${STACK}/stack-${STACK}-linux-$ARCH.tar.gz.sha256 telling you where to get them. Still, this is clearly not obvious enough. I'll spend some time on the weekend making sure this info is clear in the README.

So yeah, I suggest just doing the minimum to bump stack for now without other changes. If you want to do bigger changes that could go in a separate PR. Or feel free to create an issue.

AlistairB commented 1 year ago

Oh and the GPG release key for stack never changes. I'll try and incorporate this better into the docs.

AlistairB commented 1 year ago

I have gone ahead and done this bump. See https://github.com/haskell/docker-haskell/issues/72#issuecomment-1365508001 for details.