This is the IOI 2022 Contestant VM Manual, which is applicable for:
- online contestants, who need to prepare for their workstations, and
- on-site contestants, if they wish to practice with the VM before IOI 2022 week (strongly recommended).
Important changes from IOI 2021 are marked in red.
We plan to release one or more versions of the contestant VM. Between versions, contestants/teams can make feature requests or bug reports according to the following release schedule.
|TBA||TBA||Send all feedback by TBA for consideration to include changes in the next version.|
|TBA||TBA||Send all feedback by TBA. There will be no more feature changes after TBA.|
|TBA||TBA||The grading system will be available, and test credentials will be distributed. Send all bug reports by TBA.|
|TBA||TBA||This is the final release candidate version. Send all critical bug reports immediately.|
|TBA||TBA||This is the final version to be used in IOI 2022. Online teams should install and test immediately.|
Please send the feature requests or bug reports to firstname.lastname@example.org. Note that our priority is to fix bugs.
While we do not plan to release further updates after the final version, online teams must be prepared to download and install newer versions for Contest Day 1 or Contest Day 2 if we determine that there are serious problems that are best fixed with a new VM.
The contestant VM requires VMware Workstation Player 16.x or Workstation Pro 16.x.
For online teams, please refer to the Online Contestant PC Manual for more details.
Importing the Contestant VM
Run VMware Workstation Player. Click on “Open a Virtual Machine”, locate the contestant VM image (file with .ova extension) in the file dialog, and click Open. Then, click Import in the Import Virtual Machine dialog that appears. You may customise the VM name or change the storage path at your discretion.
After the import is complete, you can start running the contestant VM. To run the contestant VM, select the VM, then click Play Virtual Machine.
NOTE: The steps for VMware Workstation Pro are almost identical, save for some slight UI differences.
Running the Contestant VM
The contestant VM runs like any ordinary installation of Ubuntu 20.04. For users unfamiliar with VMware, here are some quick points to take note:
- When the contestant VM runs in windowed mode (i.e. alongside other applications on the Windows desktop), you may sometimes need to click inside the contestant VM display to direct keyboard and mouse inputs into it. If you find your keyboard and mouse inputs “stuck” to the contestant VM, just press Left-Control and Left-Alt simultaneously to “release” the keyboard and mouse back to Windows.
- Like a regular Ubuntu 20.04 computer, you should shutdown the computer in the proper manner. From the Ubuntu desktop, click on the power button in the top right corner, then “Power Off/Log Out”, then “Power Off…”. Then, confirm by clicking on the “Power Off” button.
Local User Account
There is only one normal local (Ubuntu) user account in the contestant VM for the contestant to use. The username is
ioi with default password
You may change the ioi local user account password in the contestant VM. To avoid confusion during the contest days, you should NOT change the
ioi local user account password in the contestant VM.
At your first login to the contestant VM, and every subsequent login as long as you do not complete this step, you will be prompted to run the IOI Setup:
Enter your contestant account (explained below), and wait until you see the following success message:
You can also re-run IOI Setup by running
ioisetup from the terminal.
The IOI Setup will download and install a VPN configuration. The UNIX “gecos real name” is also updated with your contestant username, e.g. XXX1, which will be displayed in the top right corner on subsequent logins.
The VPN connection identifies this VM instance to the IOI 2022 grading system as being associated to the configured contestant. If another contestant takes over the use of this VM instance, they must re-run IOI Setup with their credentials.
The account credentials will be distributed as follows:
|On-site contestants||Online contestants|
|Testing before IOI 2022 week||Test accounts will be distributed to team leaders, according to the schedule in the Releases section above.|
|IOI 2022 week||The on-site workstations will be already logged in with the correct account for each contestant. The IOI Setup prompt will not be shown.||New accounts will be distributed to team leaders, according to the schedule in the Releases section above. These accounts are to be used for actual practice and contest days.|
NOTE: If you haven’t received the contestant account, you can still use the contestant VM to test the software applications, e.g. browser, text editors, and compiler.
IMPORTANT: There must be only one VM instance running and connected to the IOI 2022 grading system per contestant credentials. If the same contestant is logged in more than once, the VPN connection will flap between the two instances and will NOT be usable.
The sidebar on the left is called the Launcher.
The top icon in the Launcher is the Firefox web browser. Firefox has been configured with a default homepage that provides links to CMS (grading system) as well as other locally stored documentation:
The Show Applications icon, located at the bottom of the Launcher, shows all installed applications. You can use the search bar to quickly find an application by name. For example, you can easily find
gnome-terminal by starting to type the letters of
Teams should ensure that they are familiar with finding and using the terminal shell. In case of unexpected problems, we may send direction to proctors to execute commands in a shell.
- On-site contestants should NOT use these features, unless otherwise instructed by the technical committee.
- Online contestants should consult with their leaders/proctors before using these features.
Home Directory Backup
The contestant VM provides a backup/replication mechanism that uses rsync to replicate the home directory to IOI 2022 backup server. This is not enabled by default. Contestants can either:
- Run the
ioibackupscript at any time to perform the rsync.
ioiconf setautobackup onto enable automatic backup at a 5-minute interval. A random delay up to 30 seconds in inserted before automatic backup.
ioiconf setautobackup offto disable automatic backup.
Backups are available only during contest and practice time.
This backup is more accurately described as replication. It uses
rsync with the
--delete option, which means the remote contents are a mirror of the local home directory. In particular, files deleted locally will also be removed at the remote. This replication only includes non-hidden files up to a maximum size of
1 MB 100 KB.
To restore or retrieve files from remote, run
ioibackup -r. The files will be restored in
Automatic Screen Lock
Automatic screen lock is enabled by default, with a 30 second delay after 15 minutes of idle time. You can disable automatic screen lock by running
ioiconf setscreenlock off. Run
ioiconf setscreenlock on to re-enable automatic screen lock.
The contestant VM is configured to show time in the Asia/Jakarta timezone. All dates and times communicated by the IOI 2022 organisers will be in Asia/Jakarta timezone unless otherwise specified.
If you strongly prefer to see the time in your local timezone, you can run
ioiconf settz <timezone>, where
<timezone> is an appropriate TZ specification (according to
tzselect). The changes will be effected the next time you login to the
ioiconf settz UTC to use GMT time.
VPN Protocol Mode
By default, the VPN is configured to use TCP on port 655 only. The VPN software, tinc, can also use UDP on port 655 for data packets, in addition to using TCP on port 655 for metadata. This may improve performance, provided your network permits UDP port 655 traffic outbound and inbound. This mode can be enabled by running
ioiconf setvpnproto auto, then
ioiconf vpnrestart (or restart the contestant VM).
In auto mode, both TCP/UDP will be used, with automatic fallback to TCP-only. To revert to the default TCP-only setting, run
ioiconf setvpnproto tcp, then
ioiconf vpnrestart (or restart the contestant VM).
Note that the VPN protocol mode will return to default if the VPN is re-setup (i.e. by re-running