Release statically linked executables on Linux #34
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
One of the major benefits of dotslash is to be used to bootstrap other tools on pretty much any system. Unfortunately when it comes to linux the executables included in the release are built on Ubuntu 22.04 which means that they link a fairly modern glibc. Trying to use the executable on an older Ubuntu (or any other flavor of Linux that doesn't use glibc) will fail due to linking errors.
We could instead build the binary on a super old linux version but Github only goes back to 20.04 so instead let's produce a fully static executable that statically links the musl libc.
This is a common pattern that many tools built for linux adopt and it will greatly simplify the adoption on linux distros that don't repackage dotslash.