From 309a3a23488d5dd7247e7edca8686671b25951e8 Mon Sep 17 00:00:00 2001 From: Hakan Bayindir Date: Wed, 17 Jan 2024 00:05:09 +0300 Subject: [PATCH] =?UTF-8?q?proj:=20Add=20buhtz=E2=80=99s=20BackInTime=20de?= =?UTF-8?q?velopment=20machines.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - proj: Create a contrib file for contributed VMs. - proj: Add buhtz’s BackInTime development VMs. Thanks! - proj: Update .gitignore to ignore macOS specific files. - docs: Update README.md. --- .gitignore | 1 + README.md | 8 ++ contrib/debian12-backintime-dev/Vagrantfile | 87 +++++++++++++++++++++ contrib/debian12-backintime-qt6/Vagrantfile | 87 +++++++++++++++++++++ 4 files changed, 183 insertions(+) create mode 100644 .gitignore create mode 100644 contrib/debian12-backintime-dev/Vagrantfile create mode 100644 contrib/debian12-backintime-qt6/Vagrantfile diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..e43b0f9 --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +.DS_Store diff --git a/README.md b/README.md index 84d443a..39621c5 100644 --- a/README.md +++ b/README.md @@ -3,6 +3,8 @@ Contains commonly used Vagrant machine definitions to easily create VMs ready fo Otherwise noted, all VMs have virtual networking IPs, run on VirtIO network cards and updates themselves to latest version of the OS automatically. For automatic installation of VirtualBox guest additions, please use `vagrant-vbguest` plugin. +Virtual Machines in `contrib` folder are generously contributed to this repository by others. Machines are vetted, but not thoroughly tested. *Please read `Vagrantfile`s before running them*. + Currently contains the following VMs: - **debian-xfce-development:** Debian Jessie 64bit which updates itself and installs `task-xfce-desktop` metapackage. Suited for working on XFCE desktop components or as a general purpose VM. @@ -29,6 +31,10 @@ Currently contains the following VMs: - **Note:** `requirements.txt` file under `files/` folder is unused (it appears verbatim inside `Vagrantfile`) during build, but it's kept for reference purposes, since the exact versions are necessary for correct builds. - **debian12-maven:** Debian Bookworm 64bit which updates itself and installs Maven, to be able to build Java projects. +The `contrib` folder contains the following VMs: +- **contrib/debian12-backintime-dev:** Debian Bookworm 64bit which updates itself, installs XFCE desktop and clones BackInTime from its [official git repository](https://github.com/bit-team/backintime.git). Designed for general BackInTime development. Machine has four processors and 4GBs of RAM, with 128MB of VRAM. +- **contrib/debian12-backintime-qt6:** Debian Bookworm 64bit which updates itself, installs XFCE desktop and clones BackInTime from its [buhtz's git repository](https://github.com/buhtz/backintime.git). Designed for BackInTime Qt6 migration effort. Machine has four processors and 4GBs of RAM, with 128MB of VRAM. + ## Private IP List Following list contains the Private IP addresses of the host-only networking interfaces of the machines: @@ -56,3 +62,5 @@ Following list contains the Private IP addresses of the host-only networking int - **debian12-backintime-lab:** `192.168.56.75` - **debian-sphinx-builder:** `192.168.56.74` - **debian12-maven:** `192.168.56.73` +- **contrib/debian12-backintime-dev:** `192.168.56.72` +- **contrib/debian12-backintime-qt6:** `192.168.56.71` diff --git a/contrib/debian12-backintime-dev/Vagrantfile b/contrib/debian12-backintime-dev/Vagrantfile new file mode 100644 index 0000000..ceae805 --- /dev/null +++ b/contrib/debian12-backintime-dev/Vagrantfile @@ -0,0 +1,87 @@ +# -*- mode: ruby -*- +# vi: set ft=ruby : + +Vagrant.configure(2) do |config| + # For a complete reference, please see the online documentation at + # https://docs.vagrantup.com. + config.vm.box = "debian/bookworm64" + + # Create a private network, which allows host-only access to the machine + # using a specific IP. + config.vm.hostname = "d12bit" + config.vm.network "private_network", ip: "192.168.56.72" + # config.vm.network "forwarded_port", guest: 80, host: 8080 + + config.vm.provider "virtualbox" do |vb| + vb.memory = 4096 + vb.cpus = 4 + # Display the VirtualBox GUI when booting the machine + vb.gui = true + # Increase the Video RAM to 128MB to allow bigger desktops: + vb.customize ["modifyvm", :id, "--vram", "128"] + + # Change the network cards to VirtIO for better performance: + # Two network cards since I also have a host-only network. + vb.customize ["modifyvm", :id, '--nictype1', 'virtio'] + vb.customize ["modifyvm", :id, '--nictype2', 'virtio'] + + # Enable USB 2.0 controllers on the VM + vb.customize ['modifyvm', :id, '--usbehci', 'on'] + end + + config.vm.provision "shell", env: {"DEBIAN_FRONTEND" => "noninteractive"}, inline: <<-SHELL + apt-get update + apt-get --yes dist-upgrade + + apt-get install --yes \ + aptitude \ + task-xfce-desktop libreoffice-*- firefox-esr- xsane- synaptic- yelp- parole- \ + build-essential linux-headers-amd64 \ + vim git \ + gettext python3-packaging python3-pyqt5 python3-dbus python3-dbus.mainloop.pyqt5 \ + libnotify-bin python3-keyring python3-secretstorage python3-pyfakefs policykit-1 \ + rsync sshfs encfs meld oxygen-icon-theme \ + at-spi2-core \ + fakeroot debhelper dh-python + + # Downloading and installing things have ended, clean the downloaded packages. + apt-get clean + + cat > /etc/lightdm/lightdm.conf < ~/.config/backintime/config < "noninteractive"}, inline: <<-SHELL + apt-get update + apt-get --yes dist-upgrade + + apt-get install --yes \ + aptitude \ + task-xfce-desktop libreoffice-*- firefox-esr- xsane- synaptic- yelp- parole- \ + build-essential linux-headers-amd64 \ + vim git \ + gettext python3-packaging python3-pyqt6 python3-dbus python3-dbus.mainloop.pyqt6 \ + libnotify-bin python3-keyring python3-secretstorage python3-pyfakefs policykit-1 \ + rsync sshfs encfs meld oxygen-icon-theme \ + at-spi2-core \ + fakeroot debhelper dh-python + + # Downloading and installing things have ended, clean the downloaded packages. + apt-get clean + + cat > /etc/lightdm/lightdm.conf < ~/.config/backintime/config <