To learn Migen and a bit more about FPGA programming. I've previously messed around with FuPy but it's a pretty complicated place to dive in.
Also I'm just blown away by what the Gigatron creators have achieved from so few parts and how much this would have changed the history of personal computing if Woz had homebrewed something like this instead of the MOS 6502 in the Apple 1.
It's already been done ...
Other than a bunch of Ubuntu packages, and some of the Python libraries, everything is pulled in as submodules and built within the tree, or at least that's the idea.
git submodule update --init --recursive cat ubuntu-packages.txt | xargs sudo apt install -y make -j$(nproc) pip install -e migen/ pip install tinyprog
PATH=$PWD/build/bin:$PATH python3 test.py
Then you can run tinyprog to copy the gateway onto the FPGA. Press the reset button and then:
tinyprog -p build/test.bin
For more information, and the story behind this project, see Migen Gigatron project on my blog ...