Skip to content
Adrian Sampson edited this page Apr 7, 2018 · 7 revisions

To make beets more easily available to users it would be nice to create packages / installers for different platforms so that people can get a stable release for beets without having to mess with getting packages from pypi and so on.

Currently beets is very much in development but for a 1.0 release it would be nice if we could have something like this.

An additonal problem could be that some of the python libraries we use are not packaged for the different distributions so we'd need to do that too. That alone makes it a lot more difficult.

Linux

About every Linux distribution (except for derivatives) has their own way of handling the installation of software.

PKGBUILD (Arch Linux)

The current PKGBUILD for beets here on AUR. It's been suggested that we add a dev build (pulling straight for git/hg) as well.

RPM (RedHat, Fedora, openSuSE, CentOS, Mandriva)

DEB (Debian/Ubuntu and derivatives)

I think the best way to make deb packages from distutils/setuptools is using stdeb. Should probably set up a PPA for Ubuntu users.

The official Debian package is available at http://packages.debian.org/sid/beets For Ubuntu, worst case scenario would be that it would be available in 12.10.

Here are diverse resources if needed:

Perhaps we could simplify our lives by using fpm. It allows for generation of source-rpm's, debian packages and Solaris packages and can handle python modules.

BSD

The BSD-family of operating systems uses a system called ports to provide information to you ports/package-manager on how to download, compile and install software.

Mac OS X

Mac OS X has no unified way of installing extras into its Unix base system. A few solutions have been created to remediate the situation.

MacPorts

Here's a guide to writing portfiles for MacPorts.

Homebrew

Homebrew has a policy where it will not include packages which are installable via pip. So you can use pip install beets. See https://github.com/mxcl/homebrew/wiki/Homebrew-and-Python for more information.