# -*- mode: ruby -*-
# vi: set ft=ruby :
Vagrant.require_version ">= 2.2.6"
Vagrant.configure("2") do |config|
config.vm.box = "bento/debian-10"
config.vm.box_version = "202107.08.0"
config.vm.box_check_update = false
config.vm.hostname = "i2ptun"
# ssh
config.ssh.insert_key = true
config.ssh.keep_alive = true
config.ssh.keys_only = true
# timeouts
config.vm.boot_timeout = 300
config.vm.graceful_halt_timeout = 60
config.ssh.connect_timeout = 15
config.vagrant.plugins = ["vagrant-vbguest"]
config.vbguest.no_install = true
# shares
config.vm.synced_folder ".", "/vagrant"
# network
config.vm.network "forwarded_port", guest: 4444, host: 4444, id: "i2ptunudp", protocol: "udp"
config.vm.network "forwarded_port", guest: 4444, host: 4444, id: "i2ptuntcp", protocol: "tcp"
config.vm.network "forwarded_port", guest: 4445, host: 4445, id: "i2ptunhttpsudp", protocol: "udp"
config.vm.network "forwarded_port", guest: 4445, host: 4445, id: "i2ptunhttpstcp", protocol: "tcp"
config.vm.network "forwarded_port", guest: 6668, host: 6668, id: "i2ptunircudp", protocol: "udp"
config.vm.network "forwarded_port", guest: 6668, host: 6668, id: "i2ptunirctcp", protocol: "tcp"
config.vm.network "forwarded_port", guest: 7654, host: 7654, id: "i2ptuni2pudp", protocol: "udp"
config.vm.network "forwarded_port", guest: 7654, host: 7654, id: "i2ptuni2ptcp", protocol: "tcp"
config.vm.network "forwarded_port", guest: 7657, host: 7657, id: "i2ptunadminudp", protocol: "udp"
config.vm.network "forwarded_port", guest: 7657, host: 7657, id: "i2ptunadmintcp", protocol: "tcp"
config.vm.provider "virtualbox" do |vb|
vb.gui = false
vb.memory = "768"
vb.cpus = 1
# vb.name = "i2ptun"
end
config.vm.provision "i2p-install",type: "shell", name: "i2p-install", inline: <<-SHELL
sudo apt update && sudo apt upgrade -y
sudo apt install -y apt-transport-https curl lynx w3m vim tmux
maindeb https://deb.i2p2.de/ buster
deb-src https://deb.i2p2.de/ buster main
curl -o i2p-debian-repo.key.asc https://geti2p.net/_static/i2p-debian-repo.key.asc
gpg -n --import --import-options import-show i2p-debian-repo.key.asc
sudo apt-key add i2p-debian-repo.key.asc
sudo apt update
sudo apt install -y i2p
# sudo dpkg-reconfigure i2p
# i2prouter install && i2prouter start
SHELL
config.vm.provision "i2p-config-copy",after: "i2p-install", type: "shell", privileged: false, name: "i2p-config-copy", reboot: false, inline: <<-SHELL
sudo cp /vagrant/clients.config /var/lib/i2p/i2p-config/clients.config
sudo cp /vagrant/wrapper.config /etc/i2p/wrapper.config
sudo systemctl enable i2p
sudo systemctl start i2p
i2prouter restart
SHELL
end