Open walksanatora opened 1 year ago
That is actually really cool! I personally don't know how to use rust currently, but maybe in the future. My initial idea to use Rust for programs was because of how easy it was to just compile directly on the client system, and preventing unsafe executable distribution while also running in a language as fast as rust made it a good candidate. I also don't have any experience with docker, though I've heard lots about it. I also think the current version that is written in C++ is probably sufficient for most use-cases, though I suppose I am open to changes for the better. Using unprivileged users is also a really great idea, although I'm not sure how to make that cross-platform and implement something similar on windows. And the option of just restricting compute to only linux based systems isn't much of an option, since a huge portion of PC's are windows, as well as the fact windows has much better graphics card support.
docker is nice because you could offer "network-limited" compute instances, or the Miner or Runner or whatever can set per-program resource limits
https://docs.docker.com/config/containers/resource_constraints/
also by running in docker i think mabey possible support for "untrusted" programs to run (or other programming langs Eg: C, Zig)
docker also allows us to depend on project-specific dependicies
so if one project needs say libpulse
(probally allready on the base system but) you can depend on Only that package
also docker on linux would allow for a finer choice of OS, it could be running in Debian/Ubuntu/Alpine/Arch
docker has a wide range of containers see: https://hub.docker.com/
(also personally i would like support for a dcc_output
directory/env Var)
hmm, if only the folder name was consistent
then i could use WORKDIR
in docker to CD while creating the image
heck could have them include a build.sh/bat
file in the Top of the ZIP
that explains how to build the program
build.sh would work on mac/linux
build.bat would be the build file for windows