Skip to content

Instantly share code, notes, and snippets.

@chrplr
Last active October 19, 2025 08:17
Show Gist options
  • Select an option

  • Save chrplr/09917139df5d66d16b88b7e09fbb995b to your computer and use it in GitHub Desktop.

Select an option

Save chrplr/09917139df5d66d16b88b7e09fbb995b to your computer and use it in GitHub Desktop.
How to install a fresh Linux station with Expyriment and Psychopy

How to install a fresh Linux station with Expyriment and Psychopy

Christophe Pallier [email protected] 11 Oct. 2025

This how-to provides step-by-step instructions to set up a PC with the psychology experiments generators expyriment and psychopy.

  1. Install fresh Ubuntu 24.04

    • when asked, choose extented selection of software, and check "installation of third party software" and "support for additional media"
    • create an account "neurostim" with the usual password
  2. update the system's packages and install a few more

sudo apt-get update && sudo apt-get upgrade -y

sudo apt install vim git curl openssh-server tmux build-essential  
sudo apt install libssl-dev libffi-dev libncurses5-dev zlib1g zlib1g-dev libreadline-dev libbz2-dev 
sudo apt install libsqlite3-dev make gcc liblzma5 tk-dev libsqlite3-0 libgtk-3-dev libusb-1.0-0-dev 
sudo apt install portaudio19-dev libasound2-dev libsdl2-dev libsdl2-image-2.0-0   libsdl2-mixer-2.0-0 libsdl2-ttf-2.0-0  
  1. Install visual studio code
sudo snap install code --classic   
  1. Install the python package manager uv
curl -LsSf https://astral.sh/uv/install.sh | sh
source $HOME/.local/bin/env
  1. Create a virtual environement in $HOME$/.venv and install expyriment
cd
uv venv --python 3.12 
source .venv/bin/activate
echo "source .venv/bin/activate" >> $HOME/.bashrc  # this will become the default python virtualenv

uv pip install numpy pandas matplotlib seaborn ipython jupyter

uv pip install expyriment
expyriment -D
expyriment -T
  1. Install psychopy.
sudo groupadd --force psychopy
sudo usermod -a -G psychopy $USER

sudo bash -c 'printf "@psychopy - nice -20\n@psychopy - rtprio 50\n@psychopy - memlock unlimited\n" >>/etc/security/limits.d/99-psychopylimits.conf'

# run psychopy
uvx --python 3.10 --with https://extras.wxpython.org/wxPython4/extras/linux/gtk3/ubuntu-24.04/wxPython-4.2.2-cp310-cp310-linux_x86_64.whl psychopy
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment