Some distributions (Debian , Ubuntu , others?) package BE. If you’re running one of those distributions, you can install the package with your regular package manager. For Debian, Ubuntu, and related distros, that’s:
$ apt-get install bugs-everywhere
However, the official packages can lag behind current development.
If you’re running Gentoo, I’ve got a live ebuild in my overlay that installs the current version of BE from the Git source.
Michel Alexandre Salim maintains a Fedora package.
If your distribution does not package BE, you’ll have to install it yourself, along with its dependencies. Not all of these are strictly required. See Minimal installs for possible shortcuts.
Package | Role | Debian | Gentoo |
---|---|---|---|
PyYAML | upgrade old BE storage | python-yaml | dev-python/pyyaml |
Jinja | HTML templating | python-jinja2 | dev-python/jinja |
CherryPy | serve repos over HTTPS | python-cherrypy3 | dev-python/cherrypy |
Sphinx | see Producing this documentation | python-sphinx | dev-python/sphinx |
numpydoc | see Producing this documentation | dev-python/numpydoc [1] | |
Docutils | manpage generation | python-docutils | dev-python/docutils |
[1] | In the science overlay. |
BE is available as a Git repository:
$ git clone git://gitorious.org/be/be.git be
See the homepage for details. If you do branch the Git repo, you’ll need to run:
$ make
to build some auto-generated files (e.g. libbe._version), and:
$ make install
to install BE. By default BE will install into your home directory, but you can tweak the INSTALL_OPTIONS variable in Makefile to install to another location. With the default installation, you may need to add ~/.local/bin/ to your PATH so that your shell can find the installed be script.
By default, make builds both a man page for be and the HTML Sphinx documentation (Producing this documentation). You can customize the documentation targets (if, for example, you don’t want to install Sphinx) by overriding the DOC variable. For example, to disable all documentation during a build/install, run:
$ make DOC= install
Note that setup.py (called during make install) will install the man page (doc/man/be.1) if it exists, so:
$ make
$ make DOC= install
will build (first make) and install (second make) the man page.
Also note that there is no need to edit the Makefile to change any of its internal variables. You can override them from the command line, as we did for DOC above.
Finally, if you want to do the absolute minimum required to install BE locally, you can skip the Makefile entirely, and just use setup.py directly:
$ python setup.py install
See:
$ python setup.py install --help
for a list of installation options.
You only need YAML support if you will be upgrading a BE repository based on Bugs Everywhere Directory v1.4 or earlier (see .be/version). If you’re installing a fresh instance of BE, there’s no need to install PyYAML. Jinja is only used by the html command, so there’s no need to install Jinja if you don’t mind avoiding that command. Similarly, CherryPy is only used for the serve-* commands. The other dependencies are only used for building these docs, so feel free to skip them and just use the docs wherever you’re currently reading them.
For those not interested in the cutting edge, or those who don’t want to worry about installing Git, we’ll post release tarballs. After you’ve downloaded the release tarball, unpack it with:
$ tar -xzvf be-<VERSION>.tar.gz
And install it with::
$ cd be-<VERSION>
$ make install