mirror of
https://github.com/Hopiu/linkchecker.git
synced 2026-05-02 11:54:43 +00:00
Makes it easier to contribute and accept translations.
Does add a new dependency on installation from source, polib. This is
not made mandatory because not all users will want translations.
polib has no further dependencies and can be installed anywhere
LinkChecker can, using pip too.
Add release process step to check polib is installed
The Wheel still includes translations. Recommend install from PyPI in
the README.
Translations were being compiled in setup.py until 2014, using a bundled
copy of msgfmt.py.
9c3739f1c ("Replace msgfmt.py with local tools.", 2014-09-08)
148 lines
4.8 KiB
Text
148 lines
4.8 KiB
Text
Installation
|
|
============
|
|
If you are upgrading from older versions of LinkChecker you should
|
|
also read the upgrading documentation stored in upgrading.txt.
|
|
|
|
When installing from source, for application translations to be installed
|
|
polib_ needs to be installed before LinkChecker. After LinkChecker installation
|
|
polib_ can be removed.
|
|
|
|
.. _polib: https://pypi.org/project/polib/
|
|
|
|
Setup with pip
|
|
------------------
|
|
pip_ can be used to install LinkChecker on the local system.
|
|
|
|
If you want application translations, first:
|
|
``pip3 install polib``
|
|
|
|
Then this command will install LinkChecker from the latest source:
|
|
``pip3 install git+https://github.com/linkchecker/linkchecker.git``
|
|
|
|
.. _pip: https://pypi.org/project/pip/
|
|
|
|
Setup for Windows
|
|
-----------------
|
|
Python from the Microsoft Store does include pip_, but installing
|
|
within Windows Subsystem for Linux (WSL) is the preferred option:
|
|
https://docs.microsoft.com/en-us/windows/python/beginners
|
|
|
|
Setup for macOS
|
|
------------------
|
|
Python from Homebrew includes pip_. Otherwise ``get-pip.py`` can be used to
|
|
install pip_ (untested):
|
|
https://pip.pypa.io/en/stable/installation/
|
|
|
|
Setup for GNU/Linux
|
|
-------------------
|
|
On all major Linux distributions (Debian, Mandriva, Redhat, Suse, Ubuntu),
|
|
the ``linkchecker`` package is available for installation. pip_ will be
|
|
available, often as a package e.g. ``python3-pip``, to install the latest
|
|
LinkChecker.
|
|
|
|
Manual setup for Unix systems
|
|
-----------------------------
|
|
First, install the required software.
|
|
|
|
1. Python >= 3.6 from https://www.python.org/
|
|
|
|
Be sure to also have installed the included distutils module.
|
|
On most distributions, the distutils module is included in
|
|
an extra ``python-dev`` package.
|
|
|
|
2. Python requests package from https://pypi.org/project/requests/
|
|
|
|
3. Python Beautiful Soup package from https://pypi.org/project/beautifulsoup4/
|
|
|
|
4. *Optional, installation time only, for translations:*
|
|
polib Python module from https://pypi.org/project/polib/
|
|
|
|
5. *Optional, for bash-completion:*
|
|
argcomplete Python module from https://pypi.org/project/argcomplete/
|
|
|
|
6. *Optional, for displaying country codes:*
|
|
GeoIP from https://pypi.org/project/GeoIP/
|
|
|
|
7. *Optional, used for Virus checking:*
|
|
ClamAv from https://www.clamav.net/
|
|
|
|
8. *Optional, for GNOME proxy setting parsing:*
|
|
PyGObject and GIO.
|
|
Best installed from your distribution e.g. ``python3-gi``
|
|
|
|
9. *Optional, to run the WSGI web interface:*
|
|
Apache from https://httpd.apache.org/
|
|
mod_wsgi from https://pypi.org/project/mod-wsgi/
|
|
|
|
Note for developers: if you want to regenerate the po/linkchecker.pot template
|
|
from the source files, you will need xgettext with Python support. This is
|
|
available in gettext >= 0.12.
|
|
|
|
Now install the application.
|
|
|
|
1. Compile Python modules
|
|
|
|
Run ``python setup.py sdist --manifest-only`` to create the MANIFEST
|
|
file.
|
|
Run ``python setup.py build`` to compile the Python files.
|
|
For help about the setup.py script options, run
|
|
``python setup.py --help``.
|
|
|
|
2.
|
|
a) Installation as root
|
|
|
|
Run ``sudo python setup.py install`` to install LinkChecker.
|
|
|
|
b) Installation as a normal user
|
|
|
|
Run ``python setup.py install --home $HOME``. Note that you have
|
|
to adjust your PATH and PYTHONPATH environment variables, eg. by
|
|
adding the commands ``export PYTHONPATH=$HOME/lib/python`` and
|
|
``export PATH=$PATH:$HOME/bin`` to your shell configuration
|
|
file.
|
|
|
|
For more information look at the `Modifying Python's search path`_
|
|
documentation.
|
|
|
|
.. _Modifying Python's search path:
|
|
https://docs.python.org/3/install/#inst-search-path
|
|
|
|
|
|
After installation
|
|
------------------
|
|
LinkChecker is now installed. Have fun!
|
|
|
|
|
|
WSGI web interface
|
|
-----------------------
|
|
The included WSGI script can run LinkChecker with a nice graphical web
|
|
interface.
|
|
You can use and adjust the example HTML files in the lconline directory
|
|
to run the script.
|
|
|
|
1. Note that running LinkChecker requires CPU and memory resources.
|
|
Allowing a WSGI script to execute such a program for possibly a
|
|
large number of users might deplete those resources.
|
|
Be sure to only allow access from trusted sites to this script.
|
|
|
|
2. Copy the script lc.wsgi in the WSGI directory.
|
|
|
|
3. Adjust the "action=..." parameter in lconline/lc_cgi.html
|
|
to point to your WSGI script.
|
|
|
|
4. If you use Apache, copy config/linkchecker.apache2.conf
|
|
into your Apache configuration directory (eg. /etc/apache2/conf.d)
|
|
and enable it.
|
|
|
|
5. Load the lconline/index.html file, enter an URL and click on the
|
|
check button.
|
|
|
|
6. If something goes wrong, check the following:
|
|
|
|
a) look in the error log of your web server
|
|
b) be sure that you have enabled WSGI support in your web server,
|
|
for example by installing mod_wsgi for Apache
|
|
c) be sure that you have enabled the negotiation and versioning
|
|
modules for Apache:
|
|
a2enmod version
|
|
a2enmod negotiation
|