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?

  • FizzyOrange@programming.dev
    link
    fedilink
    arrow-up
    1
    arrow-down
    1
    ·
    7 months ago

    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.