Skip to content

Broader CI/Docker usage support #283

@l-2-j

Description

@l-2-j

Is your feature request related to a particular use-case?

The usecase is running cargo-spellcheck in my CI system, which is based on Drone.
I'm using the official rust:latest Docker image to run the step in which I'm trying to get cargo-spellcheck to work.

A clean build attempt of cargo-spellcheck can take over 15 minutes (on hertzner cx21 = 2vCore 4GB RAM) and fail due to dynamic library linking errors which weren't as trivial as just apt-get installing hunspell.

Trying to just download the precompiled release binary also fails due to being linked against a newer GLIBC version I think.
Additionally means that using the slimmer rust:alpine docker image is also out of question because of the GLIBC requirement.

Describe the solution you'd like to implement/see implemented

  1. Make prebuilt releases against x86_64-unknown-linux-musl.

Seemed to work on my system after doing a hacky workaround sudo ln -s /usr/bin/g++ /usr/bin/musl-g++, which was from rust-musl-builder which could be used too most likely for the building

  1. Provide a Docker image for cargo-spellcheck.

While it'd be better for my use case, I think that just providing a musl binary would potentially be more applicable for other possible similar use cases. Though both would be even more awesome than just picking one :)

Describe alternatives you've considered

  • Build against an older GLIBC version
  • Look into if making cargo-spellcheck properly supported by cargo-quickinstall/cargo-binstall would solve the glibc issues
  • Document the solution to the compilation/linking issues in the official rust docker image, and accept waiting for the CI runs to compile cargo-spellcheck

Additional context

Relates to #241

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions