This only works for neovim versions 0.6.0+
packer is used to install plugins. Packer installation on UNIX, needs to be done before starting neovim for the fist time:
$ git clone --depth 1 https://github.com/wbthomason/packer.nvim ~/.local/share/nvim/site/pack/packer/start/packer.nvim
All used plugins can be seen in plugins.lua file.
Neovim versions 0.5.0+ have built in lsp client. For common configurations and starting of LSP servers lspconfig is used.
For python both pylsp and pyright are used.
For cpp clangd is used.
For rust rust-analyzer is used. Setup for rust is enhanced using rust-tools.
For LaTeX texlab is used.