aboutsummaryrefslogblamecommitdiffstats
path: root/i2p/Vagrantfile
blob: 0a1b32da2de10cf170dc686d32670cc62e646e48 (plain) (tree)
1
2
3
4
5
6
7
8
9

                    




                                       
                                    
                               










                                      
                                              

                                  


                                         
           









                                                                                                    
 




                                         

     
                                                                                        









                                                                                      








                                                                                                                                                        

       
# -*- 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