Overview
In the template setup.sh, there are some lines that intend to detect the system architecture within a Docker container, but they never quite work correctly.
Pandoc installation assumes that every machine is compatible with amd64:
This line:
|
wget -nv https://github.com/jgm/pandoc/releases/download/3.1.11.1/pandoc-3.1.11.1-1-amd64.deb \ |
certainly does not work if users have a Mac that is of aarch64 or arm. So in that sense, instead of generalizing with amd64 for every single user, why not also putting another case where you guys would say arm64 instead?
uname -p would NEVER work in Docker containers!
In your Docker container, if you run:
The output will be unknown. So I suggest having a variable that says:
Then whenever you need to check the architecture, instead of saying $(uname -p), it is just as simple as saying $ARCH instead!
Overview
In the template
setup.sh, there are some lines that intend to detect the system architecture within a Docker container, but they never quite work correctly.Pandocinstallation assumes that every machine is compatible withamd64:This line:
otter-grader/otter/generate/templates/python/setup.sh
Line 10 in ad61b3f
certainly does not work if users have a Mac that is of
aarch64orarm. So in that sense, instead of generalizing withamd64for every single user, why not also putting another case where you guys would sayarm64instead?uname -pwould NEVER work in Docker containers!In your Docker container, if you run:
The output will be
unknown. So I suggest having a variable that says:Then whenever you need to check the architecture, instead of saying
$(uname -p), it is just as simple as saying$ARCHinstead!