Hydro Contest OS

Hydro Contest OS is the standardized workstation environment maintained by the technical team for XCPC onsite contests, providing consistent compilers, IDEs, desktop settings, user restrictions, and onsite operations tools across venues and seasons.

Hydro Contest OS 2026 Administration Guide

Create contestant accounts with Bash or Ansible and apply the contest environment's account restrictions.

Team accounts

After following the installation guide, create contestant accounts with membership in the teams group using either method below.

Bash

useradd --create-home --comment "$(hostname)" --shell /bin/bash \
  --groups teams --password "$(openssl passwd -6 contest)" team

Ansible

---
- name: Create team user
  ansible.builtin.user:
    name: team
    comment: "{{ inventory_hostname }}"
    shell: /bin/bash
    groups: teams
    password: "{{ 'contest' | password_hash('sha512') }}"
    create_home: true

Both examples populate the home directory from /etc/skel, which provides the default contest environment.

Account restrictions

The installed polkit rules restrict members of teams:

  • Shutdown, reboot, suspend, hibernate, and disk mounting are denied.
  • WiFi scanning, WiFi sharing, and NetworkManager changes require administrator authentication.
  • Changing error-reporting settings is denied.