# -*- mode: ruby -*-
# vi: set ft=ruby :

Vagrant.configure("2") do |config|
  config.vm.box = "roboxes/freebsd14"

  config.vm.synced_folder ".", "/vagrant", disabled: true
  config.vm.synced_folder "../../", "/bindfs",
    type: "rsync",
    rsync__auto: false,
    rsync__exclude: ["vagrant"],
    rsync__args: ["-av", "--delete-after"]

  config.vm.provider "virtualbox" do |v|
    v.name = "bindfs-freebsd14"
  end
  config.vm.provider "libvirt" do |v|
    v.driver = if File.exist?('/dev/kvm') then 'kvm' else 'qemu' end
  end

  config.vm.provision "shell", inline: <<-SHELL
    pkg update
    pkg install -y fusefs-libs3 pkgconf autoconf automake libtool ruby

    kldload fusefs
    echo 'fusefs_load="YES"' >> /boot/loader.conf

    sysctl vfs.usermount=1
    echo vfs.usermount=1 >> /etc/sysctl.conf

    pw groupmod operator -m vagrant  # For access to /dev/fuse
  SHELL
end
