Operating System: Debian 12
Minimum 8GB RAM
X86_64 / AMD64 CPU architecture Intel i5 or higher
Minimum 250 GB storage
Debian 12 will need to be installed on the build machine. You can find detailed instructions for that process in the Installing Debian 12 to VxBuild section. Once that is complete, follow these steps to install the VotingWorks build system: vxsuite-build-system.
Throughout the rest of this document, substitute <inventory name> w/ the inventory provided by VotingWorks.
At this point, you should have three separate VMs: debian12base110-frozen<date>, online, and offline. You can confirm this by running:
The debian12base110-frozen<date> VM will not be used unless you need to clone the online or offline VMs at a later time.
To install Debian 12 on the build machine (VxBuild), you will need to download the latest Debian 12 amd64 installer file here: Latest Debian Release
You should use a blank USB for this install drive. The process described below will wipe any existing content.
To create a USB install drive with the downloaded iso file:
Ensure the USB is available to the system. By default, it tries to attach as the /dev/sda device. An easy way to verify this is via the following command:
If the USB is not attached as the /dev/sda device, that’s ok. Simply replace “/dev/sda” with the device your USB did attach to.
NOTE: The command below should not include any number as part of the device path. As an example, if the above command returns “/dev/sda1”, you must use “/dev/sda” as the path in the next command.
Now that you know the correct device path, you can create the USB install drive via the following command:
NOTE: At the time of this writing, the latest stable release is 12.2. Please update to the appropriate filename if you use a newer version.)
Once the above command completes, you can safely remove the USB install drive from your system.
Before turning the VxBuild system on, insert the USB install drive created in the previous step.
Boot the system from the USB install drive. (After powering the build machine on, begin pressing F12 until it enters the Boot Menu)
You will be presented with the following screen:
Select Graphical Install and press Enter
Select your preferred language and click Continue.
Select your location and click Continue.
Select your keyboard layout and click Continue.
Select your network device (may differ from screenshot) and click Continue.
If using a wireless connection, follow the next steps. If using a wired connection, it will configure automatically.
Select your network device (may differ from screenshot) and click Continue.
Select WPA/WPA2 PSK and click Continue.
Enter your wireless network password and click Continue.
Enter “VxBuild” for the hostname and click Continue.
Leave the domain name blank and click Continue.
Set the root user password and click Continue.
Enter “Vx” for the full name for the new user and click Continue.
Enter “vx” as the username and click Continue.
Enter a password for the “vx” user and click Continue.
Select your timezone and click Continue.
Select “Guided - use entire disk” and click Continue.
Select the “/dev/nvme0n1” disk and click Continue.
Select “All files in one partition” and click Continue.
Select “Finish partitioning and write changes to disk” and click Continue.
Select “Yes” and click Continue.
The base OS installation will now begin. During the installation you will be asked to answer questions related to package management.
Select “United States” and click Continue.
Select “deb.debian.org” and click Continue.
Leave the proxy information blank and click Continue.
The installation process will continue automatically. You will be asked to configure “popularity-contest”.
Select “No” and click Continue.
Select the options as shown above and click Continue.
The installation process will continue. Once it completes, you will be presented with a final screen confirming it was successful.
Remove the USB drive and Click Continue.
The system will reboot and automatically start Debian 12
Log in with the “vx” user and password you created during the installation process.
Several basic configuration prompts will be displayed.
Select Next.
Select your keyboard preference and click Next.
Turn off Location Services and click Next.
Do not configure any Online Accounts. Select Skip.
Click the “Start Using Debian GNU/Linux” button. The dialog will be closed.
The “vx” user needs to be granted sudo privileges related to configuring and initializing the build environment tools. To do this, open a terminal window. (TODO: terminal instructions)
The “vx” user needs to be granted sudo privileges related to configuring and initializing the build environment tools. To do this, open a terminal window. (TODO: terminal instructions)
As the “vx” user, you will temporarily log in to the “root” account.
You will see your terminal window prompt change to “root@VxBuild”. To grant the “vx” user sudo privileges, run the following command as root.
You will see your terminal window prompt change to “vx@VxBuild”. You are now the “vx” user instead of the “root” user. To confirm sudo privileges, run the following command:
The command should return “root”. This confirms sudo privileges have been granted correctly.