sudo apt-get update; sudo apt-get install --no-install-recommends make build-essential libssl-dev zlib1g-dev libbz2-dev libreadline-dev libsqlite3-dev wget curl llvm libncurses5-dev xz-utils tk-dev libxml2-dev libxmlsec1-dev libffi-dev liblzma-dev checkinstall libncursesw5-dev libgdbm-dev libc6-dev
curl https://pyenv.run | bash # https://github.com/pyenv/pyenv#automatic-installer
install python 3.12
pyenv install 3.12.6
add this in .bashrc
export PYENV_ROOT="$HOME/.pyenv"
command -v pyenv >/dev/null || export PATH="$PYENV_ROOT/bin:$PATH"
eval "$(pyenv init -)"
set global python
pyenv global 3.12.6
##Install nvm
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.3/install.sh | bash
exec $SHELL
command -v nvm # check if it exists
nvm ls-remote # check desiered version (14 for current invenio)
nvm install v16.20.2
nvm use v16.20.2
node -v
# Insatll cairo
sudo apt-get install libcairo2-dev
# install fonts
# copy fonts
sudo apt install unzip
unzip dejavu-fonts-ttf-2.37.zip
mkdir ~/.local/share/fonts/ # one by one if you get errors
cp dev-2/dejavu-fonts-ttf-2.37/ttf/*.ttf ~/.local/share/fonts/
# install image magic
sudo apt install imagemagick
Install using the apt repository
If you are on WSL2 check the docs
# create venv
pyenv virtualenv 3.12.6 invenio-rdm-demo-1
pyenv activate 3.12.6/envs/invenio-rdm-demo-1