-
Notifications
You must be signed in to change notification settings - Fork 125
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Get oxipng into linux distributions and Homebrew #69
Comments
Good luck, rust's static compilation means no distro will want to touch this with a 10 foot pole |
Ripgrep is at least in Homebrew and Gentoo. For Arch there's the AUR. The other distros will probably be a harder sell. |
You could use AppImage: https://github.com/AppImage/AppImageKit/ |
I have build a package for |
pngquant (later versions) is written in rust as well, and it's present in many distros: https://pkgs.org/download/pngquant |
@magicgoose that pngquant must not be the one you're referring to, because the one you linked is written in C99. |
@CounterPillow I'm referring to https://github.com/kornelski/pngquant |
What's the status of this? Will there be Ubuntu packages anytime soon? Perhaps a PPA? |
It's been in Homebrew for a while. |
It's also in the official Arch Linux repositories https://archlinux.org/packages/community/x86_64/oxipng/ Since Debian and Ubuntu ship other rust utilities now (e.g. the excellent ripgrep) I imagine it's only a matter of time before a Debian or Ubuntu contributor takes interest and packages it. |
It's now in fedora. https://src.fedoraproject.org/rpms/rust-oxipng |
It was orphaned in Fedora since 2022-04 :( update: it was unretired in 2024-02. Packages are again available in Fedora 38 and up, as well as EPEL 9. |
I agree it'd be great to see this in Debian, which would perhaps help get into Ubuntu as well. There's been a request open since 2018. However, it'll probably require someone active in the project to get involved as they have security maintenance requirements. The Arch Linux package is now over here. Technically, if you tar xvf the package and install it to /usr/bin, it seems to work on Debian Bookworm. (It may rely on certain libraries.) |
OxiPNG distributes fully statically linked Linux binaries, whose release archive names end in
I would love to see OxiPNG on Debian as well, but frankly, the amount of work required to play by the Debian repository rules is significant, and I am not convinced that it is worth the effort for a core OxiPNG developer to also become a Debian maintainer, given the apparent lack of interest so far from any Debian maintainer to even consider getting in touch with this project, as far as I know. If anyone with more experience with Debian packaging has a concrete plan to make it work well ("well" as in that the package has |
Actually, neither of these things is as substantial as you think. The debian devs have set up a LOT of automated tooling for rust packages1, which effectively handles most of the requirements of packaging for you. There are some bits of policy you'd need to be in compliance with; generating a real man page, with proper macro-based formatting, among them. Being a maintainer isn't that much effort; especially for the rust ecosystem, where things are standarized so heavily that you really can just fire off a cargo build script and get files in the right spots. In short, its definitely worth taking a look at the packaging pages, and dedicating an hour or two and maybe a message to the existing maintainers about getting the package in. |
@calumapplepie Thanks for the info! It's been on the todo list to get a man page, I can at least look at getting that sorted... |
I’m the new maintainer. Feel free to ping me any time you need to talk about how oxipng is packaged in Fedora and/or EPEL. |
This PR adds a build script to generate a man page using clap_mangen, as per this example: https://github.com/sondr3/clap-man-example/blob/main/build.rs I'm not sure what to actually do with the man file from here, I guess it's up to the packaging process to do something with it? See #69 (comment) Note I couldn't see a way to include the `DISPLAY` chunk names from the constant as we did before. They're now just hardcoded into the help and will require manually updating if the list changes. Closes #526 --------- Co-authored-by: Alejandro González <[email protected]>
Bump; any news in this department? |
@Chubercik We have a man page now. It also looks like oxipng is available on Gentoo, but no movement on Ubuntu/Debian afaik. |
I think it's useful to point out that since this issue was created, an infographic powered by |
What's very nice on the linked repology page is that platform maintainers are linked. Ubuntu/Debian is conspicuously entirely absent from that page. Interested, @Chubercik @calumapplepie? |
I don't really have nearly enough knowledge about the Debian/Ubuntu ecosystem to tackle this myself; for now, I've followed the "Requesting a new package for Ubuntu" section of https://wiki.ubuntu.com/UbuntuDevelopment/NewPackages and filed a [needs-packaging] bug report here (that also mentions the Debian WNPP): |
So I fiddled with packaging
Unfortunately, a few dependencies are outdated (or absent) and thus require to be taken care of first. |
As
cargo install
is not recommended to be used for installing end-user binaries, we should move to get oxipng listed in Linux distributions and Homebrew.We may not have immediate control over some of these.
This will also require a plan for pushing updates to these distributions.
The text was updated successfully, but these errors were encountered: