Hi, I’m looking to open-source a small CLI application I wrote and I’m struggling with how to provide the built app since just providing the binary will not work. I had a friend test it and he had to compile from source due to glibc version differences.
My first thought was providing it as a flatpak but that isn’t really suitable for CLI software.
I’ve googled around a bit and most guides I find just mention packaging separately for multiple package managers/formats (rpm, apt etc.). This seems really inefficient/hard to maintain. What is the industry standard for packaging a Linux software for multi-distro use?
Statically link it with Musl instead. Then you don’t have do deal with bullshit glibc issues.
For distribution I package my Rust programs as Pip packages using Maturin. Theoretically you can do the same with any language but I’ve only tried Rust.
Why on earth would I publish pure Rust programs on PyPI you ask? I stole the idea from CMake, which is distributed there too despite being completely C++. The main advantage is that your users probably already have Pip installed no matter what distro they are using. Maybe even on Mac too. And installation is a single command. No fannying around adding custom repos and keys, making 5 different kinds of packages, etc.