elm-format icon indicating copy to clipboard operation
elm-format copied to clipboard

Release for musl

Open husio opened this issue 5 years ago • 2 comments

Thank you for this awesome project!

Thank to release artifacts, installation of elm-format on a glibc based linux system is a simple task of downloading elm-format-0.x.x-linux-x64.tgz asset.

I was wondering if it would be possible to include building and releasing a binary for musl libc as part of the release process well. I am using a musl based system, and I was not able to compile elm-format from source due to build errors from tools that I have no experience with :see_no_evil:

This is related to running elm-format on apline which is also musl based.

Edit: I have just realized, that elm-compiler releases are also providing a single binary. There is no issue running elm on musl, because it is not dynamically linked. Maybe static linking is easier to achieve than supporting multiple libc implementations.

$ ldd elm 
        not a dynamic executable

If adding support for musl platform is possbile, then great and I look forward to the binary! If this is unlikely to happen, please feel free to close this issue.

husio avatar Nov 12 '19 12:11 husio

I also have a development environment on Alpine Linux and it would be great to have a static binary version.

danmack avatar Feb 27 '20 21:02 danmack

In case this helps somebody, I've successfully built elm-format on Void Linux:

xbps-install ghc cabal-install ncurses-devel libnuma
cabal update
git clone https://github.com/avh4/elm-format.git
cd elm-format
./build.sh -- build

edkv avatar Nov 23 '20 13:11 edkv

Do folks wanting a musl release need to install it via npm, or is this just for having a downloadable binary on the release page?

avh4 avatar Feb 14 '23 02:02 avh4

A statically linked binary on the release page would be great.

husio avatar Feb 14 '23 08:02 husio

There is already a statically linked binary on the release page?

❯ tar xf elm-format-0.8.5-linux-x64.tgz
❯ file elm-format
elm-format: ELF 64-bit LSB executable, x86-64, version 1 (SYSV), statically linked, stripped

lydell avatar Feb 14 '23 09:02 lydell