@@ -132,27 +132,29 @@ installed.
- Kallithea can also be installed from ready-made packages using a package manager.
The official released versions are available on PyPI_ and can be downloaded and
installed with all dependencies using ``pip install kallithea``.
With this method, Kallithea is installed in the Python environment as any
other package, usually as a ``.../site-packages/Kallithea-X-py3.8.egg/``
directory with Python files and everything else that is needed.
(``pip install kallithea`` from a source tree will do pretty much the same
but build the Kallithea package itself locally instead of downloading it.)
.. note::
Kallithea includes front-end code that needs to be processed first.
The tool npm_ is used to download external dependencies and orchestrate the
processing. The ``npm`` binary must thus be available.
Kallithea includes front-end code that needs to be processed to prepare
static files that can be served at run time and used on the client side. The
tool npm_ is used to download external dependencies and orchestrate the
processing. The ``npm`` binary must thus be available at install time but is
not used at run time.
Web server
----------
Kallithea is (primarily) a WSGI_ application that must be run from a web
server that serves WSGI applications over HTTP.
Kallithea itself is not serving HTTP (or HTTPS); that is the web server's
responsibility. Kallithea does however need to know its own user facing URL
(protocol, address, port and path) for each HTTP request. Kallithea will
usually use its own HTML/cookie based authentication but can also be configured
@@ -45,25 +45,27 @@ admin account. When choosing a root path
empty location, or a location which already contains existing
repositories. If you choose a location which contains existing
repositories Kallithea will add all of the repositories at the chosen
location to its database. (Note: make sure you specify the correct
path to the root).
.. note:: the given path for Mercurial_ repositories **must** be write
accessible for the application. It's very important since
the Kallithea web interface will work without write access,
but when trying to do a push it will fail with permission
denied errors unless it has write access.
Finally, prepare the front-end by running::
Finally, the front-end files must be prepared. This requires ``npm`` version 6
or later, which needs ``node.js`` (version 12 or later). Prepare the front-end
by running::
kallithea-cli front-end-build
You are now ready to use Kallithea. To run it simply execute::
gearbox serve -c my.ini
- This command runs the Kallithea server. The web app should be available at
http://127.0.0.1:5000. The IP address and port is configurable via the
configuration file created in the previous step.
- Log in to Kallithea using the admin account created when running ``db-create``.
- The default permissions on each repository is read, and the owner is admin.
Status change: