ITextras/ComputerRecommendations.html
So you can have a working environment, I provide:
1. a container and its build scripts,
2. scripts and dotfiles for full VMs,
3. help with your own bare-metal installs
4. instructions about using Mill-Desktop
General details on Linux and VMs I very strongly suggest you read and
review for every class!
../Classes/CompSciTools/Content/LinuxBash.html
../Classes/ComputationalThinking/Content/18-InputOutput.html
../Classes/CompSciTools/Content/VirtualMachines.html
../Classes/Security/Content/Virtualization.html
Develop, test, and submit your assignments using the class-supported
virtual sandbox.
We grade in this environment (on the Gitlab CI/CD), and your code must
run there.
If you write your code on your Windows or Mac install,
test it on the class environment, where it was designed.
This is essentially guaranteed to work.
https://git.mst.edu/os/container
I maintain a simple container for running with podman
,
docker
, or singularity
:
It can be run via podman
or docker
on Windows,
Mac, Linux,
or via singularity
/ apptainer
on
Mill-Desktop.
The container documentation and build files are included in the template
for each grade.sh repo:
ClassroomCode.html
This terminal runs a fully configured Linux environment to run your
auto-grader, test, etc.
It shares a folder with the current directory (your git
repository),
so that you can edit in your host, and run in the container.
Typically, you are given a git repository for each assignment.
In that repository are some files for running a container.
This system allows you to launch a working terminal.
It is a fully configured Linux environment to run your auto-grader,
test, etc.
It shares a folder with the current directory (your repository).
This folder sharing allows you to edit in your host,
and actually execute tests and code in the container.
This is essentially guaranteed to work,
though may take a bit more setup effort.
I recommend using a Fedora with XFCE desktop.
I provide scripts to install and configure:
https://git.mst.edu/os/linux_config
This will likely to work,
though may take a bit more setup effort.
If you are already running Linux on your own machine, bare
metal:
The class environment is likely similar enough.
If you want to skip the VM (and are not in Security), you can do
so.
If it breaks an assignment grading, talk to me after, and we can fix
your grade.
I am always willing to help you figure this option out!
Security note:
This exception does not apply for Security,
which you really should sometimes NOT execute our class scripts in your
host;
they will break things.
In addition to HPC batch-job processing capabilities,
the Mill offers a full virtual desktop running Linux (Fedora/Red-Hat)
with the XFCE desktop,
available from within the web browser, either on or off campus.
In general, to use the Mill as a student, you can request access
here:
https://itrss.mst.edu/cluster/mill/
https://docs.itrss.umsystem.edu/pub/hpc/mill
If you are in a class that uses the Mill,
which has submitted your account information,
then use your campus Single Sign-On (SSO) to authenticate:
https://mill-classes.mst.edu/
For a full login here to be sucessful, you need to both:
1. Be part of a netgroup for a particuar class using mill-classes.
2. Have an account setup at mill-classes by requesting access.
If when logging in, you get a:
400 error, your authentication might be stale
(either open an incognito browser instance or restart your browser,
etc.).
500 error, your account might not be setup and attached to a
course
(verify with your instructor that you have been added to a Mill Classes
Netgroup).
You can easily run Singularity/Apptainer/Docker/Podman/OCI containers
using this interface.
The specific commands shown at the class container link above!