Debate Timer

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)

  1. 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
  1. Output: Creates Debate Timer.exe in the dist/ folder
  2. Distribution: The .exe file can run on any Windows machine without requiring Python

Linux

  1. 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
  1. Output: Creates Debate Timer executable in the dist/ folder
  2. 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.

This entry was posted in Uncategorized. Bookmark the permalink.

Leave a Reply

Your email address will not be published. Required fields are marked *