Been doing something like this for a while with a single self contained .sh file that contains a python script:
https://github.com/thiswillbeyourgithub/envlocker