I wondered whether conda actually made duplicate files for certain dependencies shared by independent environments.

I installed two environments env1 and env2. Then I installed the same module cryptography in both of them. Next I searched for the module's name in my system with find and found it in miniconda3/envs/env1/lib/python3.7/site-packages/ as well as miniconda3/envs/env2/lib/python3.7/site-packages/.

Next I went through all directories from site-packages on and ls -al-ed for symlinks. I did not find any symlinks on the path to cryptography. Hence these must be actual copies of the same module and the same version of it.

Is this not very wasteful of disk space? Why does conda not use symlinks for cases like this? I would like to know the rationale behind this design as I suspect other environment managers handle things the same way?

closed as too broad by Thomas Dickey, msp9011, schily, Jeff Schaller, G-Man Aug 5 '18 at 2:20

Please edit the question to limit it to a specific problem with enough detail to identify an adequate answer. Avoid asking multiple distinct questions at once. See the How to Ask page for help clarifying this question. If this question can be reworded to fit the rules in the help center, please edit the question.

  • 2
    what is "too broad" about it? – lo tolmencre Aug 5 '18 at 13:16