There is a Conda package manager that can create independent virtual environments. But the most economic and default way to use it is to let it create hardlinks for packages used in several environments. So if a file is modified in one environment then it's modified everywhere. I need to fix it somehow.
Let's assume that I can make sure that installation part by Conda is done in a way that doesn't mess anything. So the only part that is left is to prevent apps from messing (changing themself and others) during their work-time. I assumed that I can control Conda behaviour but cannot control apps behaviour.
I also would like to use conda as a non-sudo and non-root.
The fastest solution on Windows for this problem would be to create a folder owned by another non-admin user. So that the current user can only execute apps and store settings in userdata. But app maintenance done by Conda is performed from another user account (or from admin - but that only as an option).
How this problem can be solved on Linux and macOS? Would another user solution work or should be changed somehow? Are there better options (even on Windows)?