Skip to content
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

plans for packaging on different platforms (package manager integration) #320

Closed
13 of 14 tasks
benaryorg opened this issue Sep 1, 2016 · 51 comments
Closed
13 of 14 tasks

Comments

@benaryorg
Copy link

benaryorg commented Sep 1, 2016

Are there any plans on getting zstd into the main package manager repositories of various (or all if possible) platforms?
Is there a list for this already?

A list of platforms includes (but is not limited to):

  • GNU/Linux
    • debian derived
      • *buntu (aptitude)
        • package (xenial : 0.5.1-1 (outdated) ; yakkety : 0.8.0-1 (compatible) ; zesty : 1.1.2-1 (current) )
      • Debian (aptitude)
    • Red Hat
      • Fedora&Red Hat Enterprise Linux
    • SUSE
    • other
  • Unix&BSD
  • Windows
    • Windows (some MSI thing and plain exes)
    • MSYS2
    • Cygwin
@nabijaczleweli
Copy link

nabijaczleweli commented Sep 1, 2016

What about MSYS2 on WIndooze?

@benaryorg
Copy link
Author

Ah, right, sorry, I had them in mind at the time I started writung but somehow forgot about them.

@benaryorg
Copy link
Author

benaryorg commented Sep 1, 2016

Also note that (at least for some people) it would be preferable to really provide both, MSI and simple plain exe/dll builds for Windows.

@tomByrer
Copy link

tomByrer commented Sep 1, 2016

I like the idea, but the builder/output repo does not need to be part of this repo. Eg another repo could provide the source for the builder.

@tomByrer
Copy link

tomByrer commented Sep 1, 2016

/@benaryorg could you add JavaScript via Enscripten please?

@benaryorg
Copy link
Author

benaryorg commented Sep 1, 2016

This would belong to a "port" of the algorithm, I was thinking about the compilation and packaging of the binaries that the code in this repository produces already when running make.

These binaries just need to be wrapped in a deb, rpm, or whatever and uploaded somewhere. This definitely belongs to this repository as the "builder" would be something like travis, buildbot or one of the dozen others that are available, some of them also self-hosted, I don't really know how facebook handles this.

For the *BSD ports or Gentoo parts (actually every source distro/OS) there would probably only be the need to find a (trusted) maintainer.

@Cyan4973
Copy link
Contributor

Cyan4973 commented Sep 1, 2016

For debian, there is this package :
https://packages.debian.org/sid/utils/zstd

though I don't know if it means apt-get works out of the box,
need access to relevant VM to test.

These objectives are pretty good,
I just have little idea how to automate them.
If there is an entry point to look at, I'm willing to investigate.

@benaryorg
Copy link
Author

benaryorg commented Sep 1, 2016

Well, this repository already uses travis and has a very detailed configuration for that so that could be used to package the files needed. Edit: haven't tried yet but there's AppVeyor for the Windows part.

I haven't ever tried to get something into the official repositories ever and don't have experience with the process so you might want to ask someone who was involved in that. Probably asking in the mailinglists for those OSes and distros could even bring up a maintainer or two.

@juanfra684
Copy link
Contributor

I'm an OpenBSD developer. I'm working on an official package.

@benaryorg
Copy link
Author

benaryorg commented Sep 2, 2016

@juanfra684

I'm an OpenBSD developer. I'm working on an official package.

Pkg, ports, or both?

Also, if you finish that package, will that affect the other BSDs?

@juanfra684
Copy link
Contributor

@benaryorg On OpenBSD, the ports are just a tool to build packages.

My work will not affect to other BSDs. Anyway, if zstd works fine on OpenBSD, probably will work also on other BSDs.

@intdel
Copy link

intdel commented Sep 3, 2016

I tried to email the Debian maintainer for zstd, but he uses a spam@ email address, so I didn't even bother. Not sure what the point is of being a maintainer if one cannot contact you.

@pixelb
Copy link
Contributor

pixelb commented Sep 5, 2016

Fedora package review at https://bugzilla.redhat.com/1373218

@benaryorg
Copy link
Author

benaryorg commented Sep 5, 2016

Added it as WIP.

@gyscos
Copy link
Contributor

gyscos commented Sep 5, 2016

Archlinux has had a zstd package for a while, if you want to include it.

@benaryorg
Copy link
Author

I added and checked Arch. Did someone check whether the Debian package works?

@Cyan4973
Copy link
Contributor

Cyan4973 commented Sep 7, 2016

A Gentoo package by Patrick Lauer is announced here :
https://packages.gentoo.org/packages/app-arch/zstd

@benaryorg
Copy link
Author

I can confirm the Gentoo package compiles and runs.

@benaryorg
Copy link
Author

Can anyone confirm the debian package works and is at least 1.0.0?

@intdel
Copy link

intdel commented Sep 7, 2016

https://packages.debian.org/search?searchon=names&keywords=zstd

Doesn't look like that there is even one at the moment. If I can find time soon, I'll try to build a debian package.

@benaryorg
Copy link
Author

Okay so whatever this Debian package is, it's possible to install it but.… well:

$ zstd --version
*** zstd command line interface 64-bits v0.8.0, by Yann Collet ***

@Cyan4973
Copy link
Contributor

Cyan4973 commented Sep 9, 2016

Good news is : v0.8.0 is fully compatible with v1.

Anyway, @kdmurray91 seems to be working on next Debian release :
https://qa.debian.org/cgi-bin/vcswatch?package=libzstd

@kdm9
Copy link

kdm9 commented Sep 10, 2016

@benaryorg: As @Cyan4973 says, a Debian package for 1.0.0 is in progress. The package has to make it through the Debian peer review process again, as there are new binary packages and copyright changes.

Please remember that most Debian folks (including myself) are volunteers, and things might not happen instantly 😄.

@intdel
Copy link

intdel commented Sep 10, 2016

@kdmurray91 I wanted to contact you via email first to get an update etc. (didn't know you are on Github!), but on the Debian package website you provided a spam@whatever email address. Are you actually able to receive email on that address?

@kdm9
Copy link

kdm9 commented Sep 10, 2016

@intdel Yep, I do, thought it gets heavily filtered for spam.

@kdm9
Copy link

kdm9 commented Sep 11, 2016

Just letting you all know that the 1.0.0 package was accepted into Debian Sid. All going well, it will be in testing in a week or so. That means that it will make it into the next stable release of Debian (and Ubuntu and friends).

@Cyan4973
Copy link
Contributor

There seems to be a FreeBSD version, by @jrmarino :
https://github.com/bsd-hacker/freebsd-ports/tree/master/archivers/zstd

@benaryorg
Copy link
Author

benaryorg commented Sep 29, 2016

*** zstd command line interface 64-bits v1.0.0, by Yann Collet ***

zstd in FreeBSD seems to be up to date and working.

Edit: no pkg install though.

@jrmarino
Copy link
Contributor

On FreeBSD "ports" and "packages" are not separate. All ports that are buildable also have packages generated from those ports (assuming it is legal to distribute them as binary packages).

So there's no port in having two checkboxs. You can do what you did for OpenBSD and put "ports and packages"

by the way, the bullets are messed up. It shows openbsd under freebsd right now.

@benaryorg
Copy link
Author

@jrmarino Thanks for the heads up.

@juanfra684
Copy link
Contributor

@benaryorg zstd is now an official OpenBSD package. The command to install the package is pkg_add zstd and the unofficial web to browse the packages list is: http://openports.se/archivers/zstd.

@jrmarino
Copy link
Contributor

netbsd has had zstd for 2-3 weeks already: http://pkgsrc.se/archivers/zstd

@jrmarino
Copy link
Contributor

oh, and "FreeBSD" also includes "DragonFly" (meaning they share the same ports system so both of them have zstd)

@benaryorg
Copy link
Author

Okay, I just added a few links and checked some boxes.

Does anybody have an idea why Ubuntu is so far behind?

Also, is there anybody who know about Windows' status?

@jrmarino
Copy link
Contributor

jrmarino commented Sep 30, 2016

Another "by the way", NetBSD has it through pkgsrc, which means actually many platforms have it, most notably Illumos, but also some Linux distributions use pkgsrc and technically it's an alternative system for FreeBSD, DragonFly and OpenBSD.

here's a list that I hope is up to date: https://www.netbsd.org/docs/pkgsrc/introduction.html#supported-platforms

  • Note that it's likely that zstd doesn't build on all the available platforms, not until somebody supplies a patch to pkgsrc or upstream

@benaryorg
Copy link
Author

benaryorg commented Sep 30, 2016

I see Cygwin there, that might be worth trying to get to work.

Not saying that the others aren't worth too, but Cygwin is already in the "mainstream OSes" list.

Edit: No OS wars or other things here now, please, I know some "outsiders" are incredibly important to the backbone of various things, but I think those people can manage to get it working on their own, as opposed to the regular Windows, OS X and maybe Buntu user. (Sorry to hardcore Buntu people at that point).

@jforberg
Copy link
Contributor

jforberg commented Oct 1, 2016

I made an Arch Linux package about a year ago when Zstandard was first published and have been maintaining it since. However, it's in the AUR/unsupported section which requires compiling from source. I don't know the process to get it into the supported/binary section as I have no official standing within the Arch project.

@Cyan4973
Copy link
Contributor

Cyan4973 commented Oct 4, 2016

Fedora package is approved :
https://admin.fedoraproject.org/pkgdb/package/rpms/zstd/
and updated to v1.1.0 :
https://bodhi.fedoraproject.org/updates/FEDORA-2016-722779c63b

@pixelb
Copy link
Contributor

pixelb commented Oct 5, 2016

I was asked to add pzstd to the fedora package and was wondering how supported this variant is at present and how long term it might be. I.E. might its functionality be incorporated into the main util at some stage, thus best not making the util widely available?

@benaryorg
Copy link
Author

Status Report on Thursday 2016-10-06 (UTC, somewhen very early):

All of the currently checked platforms these have 1.1:

  • Fedora
  • Gentoo
  • Arch Linux
  • FreeBSD&DragonFlyBSD
  • OpenBSD
  • NetBSD

Except Debian which is still at 1.0.

Ubuntu is just weird with having a package but being way outdated (0.5 on xenial, 0.8 on yakkety), although Ubuntu usually has newer packages.…

Alpine and SUSE still don't have anything or at least we don't know anything.

Red Hat Enterprise Linux takes packages from Fedora if I got that right?

Nobody on GitHub seems to care for Windows (or maybe just nobody who found this issue).

A lot of people here did nice work, if noone else, at least I am going to appreciate that. Thank you!

@jforberg
Copy link
Contributor

jforberg commented Oct 6, 2016

The Arch Linux package was moved to the official repositories yesterday.

https://www.archlinux.org/packages/community/x86_64/zstd/

@Cyan4973
Copy link
Contributor

Not sure if it's related :
http://beta.repology.org/package/zstd.html

@pixelb
Copy link
Contributor

pixelb commented Oct 26, 2016

In the Red Hat section you could say RHEL and CentOS are now available through EPEL.
I.E. you can use the same package link as used for Fedora for a RHEL/CentOS entry

@inikep
Copy link
Contributor

inikep commented Dec 23, 2016

Please check Windows as official Windows binaries compiled with MinGW/MSYS2 are available for zstd v0.8.1 and newer:
https://github.com/facebook/zstd/releases

@Cyan4973
Copy link
Contributor

Cyan4973 commented Feb 6, 2017

Alpine Linux proposes zstd v1.1.1 :
https://pkgs.alpinelinux.org/packages?name=zstd

@Cyan4973
Copy link
Contributor

Cyan4973 commented Feb 6, 2017

Looks like OpenSUSE also has a package now :
https://build.opensuse.org/package/show/Archiving/zstd

@benaryorg
Copy link
Author

I think this issue can be closed by now.
If a distro (looking at you Debian Stable) gets stuck on an old version an issue should be opened on their issue tracker I think.
After all, the initial "creating a package and finding a maintainer"-task is done.

Anyone disagree?

@Cyan4973
Copy link
Contributor

Sounds fair 👍

@rmax
Copy link

rmax commented Mar 31, 2017

I'm not sure where to post this and just to let you know, conda-forge has published packages for zstd, for linux and osx , in the near future there will be packages for windows too.

Packages and installation instructions can be found here: https://anaconda.org/conda-forge/zstd

PD: Recipe is here https://github.com/conda-forge/zstd-feedstock
if anybody want to help maintain it just open an issue and let me know!

@Cyan4973
Copy link
Contributor

Cyan4973 commented Apr 1, 2017

Great news @rolando !
For information, as I see on https://anaconda.org/conda-forge/zstd : "License: Unspecified"
the license is BSD

@rmax
Copy link

rmax commented Apr 1, 2017

@Cyan4973 probably the license is a temporary anaconda.org issue. The recipe has the correct license value https://github.com/conda-forge/zstd-feedstock#about-zstd

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests