Installing BE¶
Distribution packages¶
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.
Dependencies¶
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. |
Git repository¶
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.
Minimal installs¶
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
html
and serve-*
commands with the --ssl
option set. 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.
Release tarballs¶
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