<div dir="auto"><div>Hi Uwe,<br><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Thu, Aug 13, 2020, 17:50 Uwe Brauer <<a href="mailto:oub@mat.ucm.es">oub@mat.ucm.es</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><br>
Hi <br>
<br>
Since I cannot install kallitea via pip (my python version in Ubuntu<br>
16.04 is too old) I thought to give the installation from source a try.<br>
<br>
<br>
The documentation in <br>
<a href="https://kallithea.readthedocs.io/en/stable/installation.html" rel="noreferrer noreferrer" target="_blank">https://kallithea.readthedocs.io/en/stable/installation.html</a><br>
<br>
Reads<br>
<br>
,----<br>
| hg clone <a href="https://kallithea-scm.org/repos/kallithea" rel="noreferrer noreferrer" target="_blank">https://kallithea-scm.org/repos/kallithea</a> -u stable<br>
| cd kallithea<br>
| python3 -m venv ../kallithea-venv<br>
| . ../kallithea-venv/bin/activate<br>
| pip install --upgrade pip setuptools<br>
| pip install --upgrade -e .<br>
| python3 setup.py compile_catalog   # for translation of the UI<br>
`----<br>
<br>
I don't understand the lines<br>
<br>
 python3 -m venv ../kallithea-venv<br>
 . ../kallithea-venv/bin/activate<br>
<br>
Is this supposed to be one line?<br>
What does the . At the beginning of the second line supposed to be?<br></blockquote></div></div><div dir="auto"><br></div><div dir="auto">The '.' is an alias to the 'source' shell command. It reads and executes the file provided as arguments.</div><div dir="auto">See section "Shell Builtin Commands" at:</div><div dir="auto"><a href="https://linux.die.net/man/1/bash">https://linux.die.net/man/1/bash</a><br></div><div dir="auto"><br></div><div dir="auto">The 'activate' script is provided by virtualenv/venv and sets certain environment variables, like PATH to make sure the right python executable and libraries are used.</div><div dir="auto">This would not be possible of the script were directly executed, as opposed to source'ing it, because environment variables set by a program or script do not impact its parent (shell) process, only the program/script itself and its children.</div><div dir="auto"><br></div><div dir="auto">Note that virtualenv/venv will use the python3 found in PATH, so if you only have python 3.5 you will still not be able to install kallithea.</div><div dir="auto">If you can install python 3 6 or later in another way, you can make sure to call that python executable instead of 'python3', e.g </div><div dir="auto"><br></div><div dir="auto">python3.6 -m venv ../kallithea-venv</div><div dir="auto"><br></div><div dir="auto">There exist ways to install a specific python version as a normal user, e.g. with pyenv (<a href="https://github.com/pyenv/pyenv">https://github.com/pyenv/pyenv</a>) or other similar tools. You could also install a python version from source manually.</div><div dir="auto"><br></div><div dir="auto">Best regards,</div><div dir="auto">Thomas</div></div>