Vagrant.configure(2) do |config|
  config.vm.box = 'ubuntu/jammy64'

  config.vm.synced_folder "..", "/dotbot", mount_options: ["ro"]

  # disable default synced folder
  config.vm.synced_folder ".", "/vagrant", disabled: true

  # install packages
  config.vm.provision "shell", inline: <<-EOS
    apt-get -y update
    apt-get install -y git make build-essential libssl-dev zlib1g-dev \
      libbz2-dev libreadline-dev libsqlite3-dev wget curl llvm \
      libncurses5-dev
  EOS

  # install pyenv
  config.vm.provision "shell", privileged: false, inline: <<-EOS
    rm -rf ~/.pyenv
    git clone https://github.com/pyenv/pyenv.git ~/.pyenv
    cat <<-'PYENV' > ~/.bashrc
      export PYENV_ROOT="$HOME/.pyenv"
      export PATH="$PYENV_ROOT/bin:$PATH"
      eval "$(pyenv init --path)"
      eval "$(pyenv init -)"
PYENV
  EOS
end