diff --git a/vagrant-env/Vagrantfile b/vagrant-env/Vagrantfile
index eb8227568d566700c72c25bbd5a76710867bcb06..03f4843e467b5058f7ec06053d5863a1cf490090 100644
--- a/vagrant-env/Vagrantfile
+++ b/vagrant-env/Vagrantfile
@@ -4,7 +4,7 @@ require 'yaml'
 Vagrant.configure("2") do |config|
   config.vm.define :kadeploy do |server|
     server.vm.provider "virtualbox"
-    server.vm.box = 'debian/contrib-buster64'
+    server.vm.box = 'debian/bookworm64'
     server.vm.hostname = 'kadeploy'
     server.vm.synced_folder '.', '/vagrant'
     server.vm.synced_folder '..', '/kadeploy'
@@ -27,10 +27,10 @@ Vagrant.configure("2") do |config|
   nodes.each_pair do |name,node|
     config.vm.define name do |agent|
     # Vagrant want a box even if we don't use it
-      agent.vm.box = "debian/contrib-buster64"
+      agent.vm.box = "debian/bookworm64"
 
       agent.vm.provider :virtualbox do |vb|
-        vb.memory = '1024'
+        vb.memory = '4096'
         vb.cpus = '1'
         vb.gui = 'true'
 
diff --git a/vagrant-env/kadeploy_conf/sample-cluster.conf b/vagrant-env/kadeploy_conf/sample-cluster.conf
index 70af3691a2280265abb4b1215595ec3b89dc1135..069634116707d8dfc3f2b1fe0012cc71e6cd06e7 100644
--- a/vagrant-env/kadeploy_conf/sample-cluster.conf
+++ b/vagrant-env/kadeploy_conf/sample-cluster.conf
@@ -28,9 +28,9 @@ boot:
   startup_script: /vagrant/scripts/startup.sh
   kernels:
     deploy:
-      initrd: kernels/kadeploy3-deploy-kernel-buster.initrd.img
-      vmlinuz: kernels/kadeploy3-deploy-kernel-buster.vmlinuz
-      params: ETH_DEV=eth0 console=tty0 ramdisk_size=260000 rw root=/root.tmp net.ifnames=0 biosdevname=0 break=premount
+      initrd: kernels/kadeploy3-deploy-kernel-bookworm.initrd.img
+      vmlinuz: kernels/kadeploy3-deploy-kernel-bookworm.vmlinuz
+      params: ETH_DEV=eth0 console=tty0 console=ttyS0,115200 ramdisk_size=260000 rw root=/root.tmp net.ifnames=0 biosdevname=0
       supported_fs: ext2, ext3, ext4
     user:
       params: console=ttyS0,115200
@@ -71,7 +71,7 @@ automata:
   macrosteps:
     BootNewEnv:
     - timeout: 150
-      type: Classical
+      type: Kexec 
       retries: 3
     BroadcastEnv:
     - timeout: 300
diff --git a/vagrant-env/kadeploy_provision.sh b/vagrant-env/kadeploy_provision.sh
index 03265bf050b00db8f8cb0bddd87e9494806e72c4..7ca0222c8682c226148c4556b93e29c39246eb7a 100644
--- a/vagrant-env/kadeploy_provision.sh
+++ b/vagrant-env/kadeploy_provision.sh
@@ -3,20 +3,23 @@ set -xe
 
 install_package() {
 # The following requires to be inside the Grid'5000 network, for instance by using the Grid'5000 VPN
+DEBIAN_FRONTEND=noninteractive apt-get update
+DEBIAN_FRONTEND=noninteractive apt-get install -y gnupg 
 wget http://packages.grid5000.fr/grid5000-archive-key.asc -q -O- | apt-key add -
 echo deb http://packages.grid5000.fr/deb/g5k-postinstall/ ./ > /etc/apt/sources.list.d/postinstall.list
 echo deb http://packages.grid5000.fr/deb/kadeploy-kernels/ ./ > /etc/apt/sources.list.d/kadeploykernel.list
 
-sed -i '/backports/s|deb.debian.org|archive.debian.org|g' /etc/apt/sources.list
+#sed -i '/backports/s|deb.debian.org|archive.debian.org|g' /etc/apt/sources.list
 DEBIAN_FRONTEND=noninteractive apt-get update
-DEBIAN_FRONTEND=noninteractive apt-get install -y ruby rubygems lsb-release git taktuk rake help2man mariadb-server libmariadbclient-dev ruby-dev ident2 syslinux ncat dnsmasq isc-dhcp-server tftpd-hpa pxelinux apache2
-DEBIAN_FRONTEND=noninteractive apt-get install -y g5k-postinstall kadeploy3-deploy-kernel-{buster,bullseye}{,-arm64,-ppc64}
+DEBIAN_FRONTEND=noninteractive apt-get install -y build-essential ruby rubygems lsb-release git taktuk rake help2man mariadb-server libmariadb-dev ruby-dev ident2 syslinux ncat dnsmasq isc-dhcp-server tftpd-hpa pxelinux apache2 
+#DEBIAN_FRONTEND=noninteractive apt-get install -y g5k-postinstall kadeploy3-deploy-kernel-{buster,bullseye}{,-arm64,-ppc64}
+DEBIAN_FRONTEND=noninteractive apt-get install -y g5k-postinstall=1.2022042109 kadeploy3-deploy-kernel-{buster,bullseye,bookworm}{,-arm64}
 # Optional:
 DEBIAN_FRONTEND=noninteractive apt-get install -y vim tcpdump
-gem install --conservative --no-ri --no-rdoc mysql2
-gem install --conservative --no-ri --no-rdoc net-ssh -v 4.2.0
-gem install --conservative --no-ri --no-rdoc byebug -v 9.0.6
-gem install --conservative --no-ri --no-rdoc rspec
+gem install --conservative --no-document mysql2   
+gem install --conservative --no-document net-ssh -v 4.2.0
+gem install --conservative --no-document byebug -v 9.0.6
+gem install --conservative --no-document rspec
 }
 
 setup_tftp() {
diff --git a/vagrant-env/scripts/install-grub2-dev.sh b/vagrant-env/scripts/install-grub2-dev.sh
index f8d4219babb1d314babae24f1af5dfd5d2afe56a..7b3f0a297ef8076783e6d2de21abe794ffd7c0fc 100644
--- a/vagrant-env/scripts/install-grub2-dev.sh
+++ b/vagrant-env/scripts/install-grub2-dev.sh
@@ -390,6 +390,12 @@ else
   info "No grub installation done, as requested."
 fi
 
+
+
+if  chroot ${KADEPLOY_ENV_EXTRACTION_DIR} /bin/ssh-keygen -A; then
+   echo "it just works"
+fi
+
 ###
 ## End
 ##
diff --git a/vagrant-env/vbhelper.sh b/vagrant-env/vbhelper.sh
index 9f93f4dad6c9f05f2c363f0949c88d51828691be..7f577cf4c06b56a28d2e4c07348cc771df77f71d 100755
--- a/vagrant-env/vbhelper.sh
+++ b/vagrant-env/vbhelper.sh
@@ -15,7 +15,9 @@ case "$action" in
     VBoxManage startvm $vm 1>&2
     ;;
   restart)
-    VBoxManage controlvm $vm reset 1>&2
+    VBoxManage controlvm $vm poweroff 1>&2
+    sleep 3
+    VBoxManage startvm $vm 1>&2
     ;;
   *)
     echo "Operation not known"