A Mac based Python application for managing class debate timing.

Downloads
– Mac app and pdf instructions (just unzip on your local machine)
– Base files (for those who want to build on Windows or Linux – see instructions below)
Instructions for building from base files (if not on Mac)
Please note that I only currently have a Mac so have not tested these steps on Windows or Linux.
- download the base files and place in a new directory called “debate_timer” (or whatever) on your system
- open up command prompt and navigate to this directory (via ‘cd’ command and the relevant path)
- follow the steps described below for your operating system (courtesy of Claude AI):
Cross-Platform Packaging Steps
Windows (PC)
- On a Windows machine (or Windows VM):
bash
# Install dependencies
pip install PyQt5 pyinstaller
# Create executable (note the semicolon in --add-data)
pyinstaller --onefile --windowed --name "Debate Timer" --add-data "bell.wav;." debate_timer.py
- Output: Creates
Debate Timer.exe
in thedist/
folder - Distribution: The
.exe
file can run on any Windows machine without requiring Python
Linux
- On a Linux machine (or Linux VM):
bash
# Install dependencies (Ubuntu/Debian)
sudo apt update
sudo apt install python3-pip python3-pyqt5
pip3 install pyinstaller
# OR for other distributions
pip3 install PyQt5 pyinstaller
# Create executable
pyinstaller --onefile --windowed --name "Debate Timer" --add-data "bell.wav:." debate_timer.py
- Output: Creates
Debate Timer
executable in thedist/
folder - Distribution: The executable can run on similar Linux distributions
Important Notes
Platform-Specific Differences
- File path separator: Windows uses
;
while Mac/Linux use:
in the--add-data
flag - Executable extensions: Windows creates
.exe
, Mac/Linux create files without extensions - Cross-compilation: You cannot create Windows executables from Mac/Linux or vice versa – you need to build on each target platform
File Structure for Each Platform
your_project/
├── debate_timer.py
├── bell.wav
└── dist/
├── Debate Timer.exe (Windows)
├── Debate Timer (Mac)
└── Debate Timer (Linux)
The resulting executables will be completely standalone – users won’t need Python, PyQt5, or any other dependencies installed on their systems.