[X] My problem is not solved in the Troubleshooting docs
How did you install Mamba?
Micromamba
Search tried in issue tracker
Done
Latest version of Mamba
[X] My problem is not solved with the latest version
Tried in Conda?
I have this problem with Conda as well, without using Mamba
Describe your issue
When an environment definition file (environment.yaml) containing pip packages is used to create an environment, the installation will fail if the environment definition file is in a read-only directory. This is because mamba/micromamba/conda all attempt to create a temporary file in the same directory as the environment definition file. I have seen multiple instances of users getting tripped up by this in the mamba and micromamba-docker GitHub issue trackers (mamba #2720, micromamba #356).
I'm guessing mamba/micromamba just followed what conda did here, but I would much prefer that the directory for temporary files follows how mktemp selects where to place temporary files.
mamba info / micromamba info
$ docker run -it --rm -v $(pwd)/conda:/conda:ro mambaorg/micromamba:latest micromamba info
libmamba version : 1.4.9
micromamba version : 1.4.9
curl version : libcurl/7.88.1 OpenSSL/3.1.1 zlib/1.2.13 zstd/1.5.2 libssh2/1.11.0 nghttp2/1.52.0
libarchive version : libarchive 3.6.2 zlib/1.2.13 bz2lib/1.0.8 libzstd/1.5.2
envs directories : /opt/conda/envs
package cache : /opt/conda/pkgs
/home/mambauser/.mamba/pkgs
environment : base (active)
env location : /opt/conda
user config files : /home/mambauser/.mambarc
populated config files :
virtual packages : __unix=0=0
__linux=5.15.49=0
__glibc=2.31=0
__archspec=1=x86_64
channels :
base environment : /opt/conda
platform : linux-64
Logs
$ docker run -it --rm -v $(pwd)/conda:/conda:ro mambaorg/micromamba:latest micromamba env create -n my_env -f /conda/environment.yaml -y -v
info libmamba Parsing MatchSpec pip=22.1.2
info libmamba Parsing MatchSpec pip
info libmamba Searching index cache file for repo 'https://conda.anaconda.org/conda-forge/linux-64/repodata.json'
info libmamba No valid cache found
info libmamba Using OpenSSL backend
info libmamba Searching index cache file for repo 'https://conda.anaconda.org/conda-forge/noarch/repodata.json'
info libmamba No valid cache found
info libmamba All targets to download are cached
info libmamba Starting to download targets
[+] 1.0s
conda-forge/linux-64 ━━━━╸━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 3.3MB / 29.5MB @ 3.4MB/s 1.0s
conda-forge/noarch ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━╸━━━━━━━ 10.5MB / 11.9MB @ 10.9MB/s 1.0sinfo libmamba Transfer done for 'conda-forge/noarch'
conda-forge/noarch 11.9MB @ 11.5MB/s 1.1s
[+] 3.0s
conda-forge/linux-64 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━╸━━━ 28.4MB / 29.5MB @ 9.5MB/s 3.0sinfo libmamba Transfer done for 'conda-forge/linux-64'
info libmamba Transfer finalized, status: 200 [https://conda.anaconda.org/conda-forge/linux-64/repodata.jsoconda-forge/linux-64 29.5MB @ 9.7MB/s 3.1s
info libmamba Reading cache files '/opt/conda/pkgs/cache/497deca9.json.*' for repo index 'conda-forge/linux-64'
info libmamba Reading repodata.json file "/opt/conda/pkgs/cache/497deca9.json" for repo conda-forge/linux-64
info libmamba Writing libsolv solv file "/opt/conda/pkgs/cache/497deca9.solv" for repo conda-forge/linux-64
info libmamba Reading cache files '/opt/conda/pkgs/cache/09cdf8bf.json.*' for repo index 'conda-forge/noarch'
info libmamba Reading repodata.json file "/opt/conda/pkgs/cache/09cdf8bf.json" for repo conda-forge/noarch
info libmamba Writing libsolv solv file "/opt/conda/pkgs/cache/09cdf8bf.solv" for repo conda-forge/noarch
info libmamba Adding package record to repo __archspec
info libmamba Adding package record to repo __glibc
info libmamba Adding package record to repo __linux
info libmamba Adding package record to repo __unix
info libmamba Parsing MatchSpec pip=22.1.2
info libmamba Parsing MatchSpec pip=22.1.2
info libmamba Adding job: pip=22.1.2
info libmamba Parsing MatchSpec pip
info libmamba Parsing MatchSpec pip
info libmamba Adding job: pip
info libmamba Problem count: 0
info libmamba Found python version in packages to be installed 3.11.4
Transaction
Prefix: /opt/conda/envs/my_env
Updating specs:
- pip=22.1.2
- pip
Package Version Build Channel Size
────────────────────────────────────────────────────────────────────────────
Install:
────────────────────────────────────────────────────────────────────────────
+ _libgcc_mutex 0.1 conda_forge conda-forge 3kB
+ ld_impl_linux-64 2.40 h41732ed_0 conda-forge 705kB
+ ca-certificates 2023.7.22 hbcca054_0 conda-forge 150kB
+ libgomp 13.1.0 he5830b7_0 conda-forge 419kB
+ _openmp_mutex 4.5 2_gnu conda-forge 24kB
+ libgcc-ng 13.1.0 he5830b7_0 conda-forge 776kB
+ openssl 3.1.2 hd590300_0 conda-forge 3MB
+ libzlib 1.2.13 hd590300_5 conda-forge 62kB
+ libffi 3.4.2 h7f98852_5 conda-forge 58kB
+ bzip2 1.0.8 h7f98852_4 conda-forge 496kB
+ ncurses 6.4 hcb278e6_0 conda-forge 881kB
+ libuuid 2.38.1 h0b41bf4_0 conda-forge 34kB
+ libexpat 2.5.0 hcb278e6_1 conda-forge 78kB
+ xz 5.2.6 h166bdaf_0 conda-forge 418kB
+ libnsl 2.0.0 h7f98852_0 conda-forge 31kB
+ libsqlite 3.42.0 h2797004_0 conda-forge 829kB
+ tk 8.6.12 h27826a3_0 conda-forge 3MB
+ readline 8.2 h8228510_1 conda-forge 281kB
+ tzdata 2023c h71feb2d_0 conda-forge 118kB
+ python 3.11.4 hab00c5b_0_cpython conda-forge 31MB
+ pip 22.1.2 pyhd8ed1ab_0 conda-forge 2MB
+ setuptools 68.0.0 pyhd8ed1ab_0 conda-forge 464kB
+ wheel 0.41.0 pyhd8ed1ab_0 conda-forge 57kB
Summary:
Install: 23 packages
Total download: 44MB
────────────────────────────────────────────────────────────────────────────
info libmamba Cleaned 0 .mamba_trash files. 0 remaining.
Transaction starting
info libmamba Starting to download targets
[+] 0.0s
Downloading (1) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 0.0 B / 44.3MB _libgcc_mutex 0.0s
Extracting ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 0 / 23 0.0sinfo libmamba Transfer done for '_libgcc_mutex'
info libmamba Transfer finalized, status: 200 [https://conda.anaconda.org/conda-forge/linux-64/_libgcc_mutex-0.1-conda_forge.tar.bz2] 2562 bytes
info libmamba Download finished, validating '/opt/conda/pkgs/_libgcc_mutex-0.1-conda_forge.tar.bz2'
info libmamba Transfer done for '_openmp_mutex'
info libmamba Transfer finalized, status: 200 [https://conda.anaconda.org/conda-forge/linux-64/_openmp_mute_libgcc_mutex 2.6kB @ 27.8kB/s 0.1s
_openmp_mutex 23.6kB @ 242.7kB/s 0.1s
[+] 0.1s
Downloading (5) ━╸━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 390.6kB / 44.3MB ca-certificates 0.1s
Extracting (2) ━━━━━━━━━━╸━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 0 / 23 _libgcc_mutex 0.0sinfo libmamba Transfer done for 'ca-certificates'
info libmamba Transfer finalized, status: 200 [https://conda.anaconda.org/conda-forge/linux-64/ca-certificates-2023.7.22-hbcca054_0.conda] 149515 bytes
info libmamba Download finished, validating '/opt/conda/pkgs/ca-certificates-2023.7.22-hbcca054_0.conda'
info libmamba Transfer done for 'libgomp'
info libmamba Transfer finalized, status: 200 [https://conda.anaconda.org/conda-forge/linux-64/libgomp-13.1.0-he5830b7_0.conda] 419184 bytes
info libmamba Download finished, validating '/opt/conda/pkgs/libgomp-13.1.0-he5830b7_0.conda'
info libmamba Transfer done for 'ld_impl_linux-64'
info libmamba Transfer finalized, status: 200 [https://conda.anaconda.org/conda-forge/linux-64/ld_impl_linuca-certificates 149.5kB @ 1.3MB/s 0.1s
libgomp 419.2kB @ 3.5MB/s 0.1s
ld_impl_linux-64 704.7kB @ 3.6MB/s 0.2s
[+] 0.2s
Downloading (5) ╸━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━╸━━━━━━━━ 1.7MB / 44.3MB ncurses 0.2s
Extracting (4) ━━━━━━━━━━━━╸━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 0 / 23 _libgcc_mutex 0.1sinfo libmamba Transfer done for 'wheel'
info libmamba Transfer finalized, status: 200 [https://conda.anaconda.org/conda-forge/noarch/wheel-0.41.0-pyhd8ed1ab_0.conda] 57356 bytes
info libmamba Download finished, validating '/opt/conda/pkgs/wheel-0.41.0-pyhd8ed1ab_0.conda'
info libmamba Transfer done for 'xz'
info libmamba Transfer finalized, status: 200 [https://conda.anaconda.org/conda-forge/linux-64/xz-5.2.6-h16wheel 57.4kB @ 234.5kB/s 0.1s
xz 418.4kB @ 1.6MB/s 0.2s
[+] 0.3s
Downloading (5) ━━╸━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━╸━━━━━━━━ 3.5MB / 44.3MB ncurses 0.3s
Extracting (7) ━━━━━━━━━━━━━━╸━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 0 / 23 _libgcc_mutex 0.2sinfo libmamba Transfer done for 'libzlib'
info libmamba Transfer finalized, status: 200 [https://conda.anaconda.org/conda-forge/linux-64/libzlib-1.2.13-hd590300_5.conda] 61588 bytes
info libmamba Download finished, validating '/opt/conda/pkgs/libzlib-1.2.13-hd590300_5.conda'
info libmamba Transfer done for 'libuuid'
info libmamba Transfer finalized, status: 200 [https://conda.anaconda.org/conda-forge/linux-64/libuuid-2.38libzlib 61.6kB @ 179.6kB/s 0.1s
libuuid 33.6kB @ 96.8kB/s 0.1s
[+] 0.5s
Downloading (5) ━━━╸━━━━━━━━━━━━━━━━━━━━━━━╸━━━━ 6.9MB / 44.3MB @ 13.8MB/s ncurses 0.5s
Extracting (5) ━━━━╸━━━━━━━╸━━━━━━━━━━━━━━━━━━━ 4 / 23 ld_impl_linux-64 0.4sinfo libmamba Transfer done for 'ncurses'
info libmamba Transfer finalized, status: 200 [https://conda.anaconda.org/conda-forge/linux-64/ncurses-6.4-hcb278e6_0.conda] 880967 bytes
info libmamba Download finished, validating '/opt/conda/pkgs/ncurses-6.4-hcb278e6_0.conda'
info libmamba Transfer done for 'libsqlite'
info libmamba Transfer finalized, status: 200 [https://conda.anaconda.org/conda-forge/linux-64/libsqlite-3.42.0-h2797004_0.conda] 828910 bytes
info libmamba Download finished, validating '/opt/conda/pkgs/libsqlite-3.42.0-h2797004_0.conda'
info libmamba Transfer done for 'libexpat'
info libmamba Transfer finalized, status: 200 [https://conda.anaconda.org/conda-forge/linux-64/libexpat-2.5ncurses 881.0kB @ 1.7MB/s 0.4s
libsqlite 828.9kB @ 1.5MB/s 0.2s
libexpat 78.0kB @ 130.6kB/s 0.0s
[+] 0.6s
Downloading (5) ━━━━━╸━━━━━━━━━━━━━━━━━━━━━━━╸━━ 9.0MB / 44.3MB @ 13.8MB/s openssl 0.6s
Extracting (7) ━━━━╸━━━━━━━━━━╸━━━━━━━━━━━━━━━━ 4 / 23 ld_impl_linux-64 0.5sinfo libmamba Transfer done for 'tzdata'
info libmamba Transfer finalized, status: 200 [https://conda.anaconda.org/conda-forge/noarch/tzdata-2023c-htzdata 117.6kB @ 171.0kB/s 0.1s
[+] 0.7s
Downloading (5) ━━━━━━╸━━━━━━━━━━━━━━━━━━━━━━╸━━ 10.7MB / 44.3MB @ 13.8MB/s openssl 0.7s
Extracting (6) ━━━━━━━╸━━━━━━━━╸━━━━━━━━━━━━━━━ 6 / 23 ld_impl_linux-64 0.6sinfo libmamba Transfer done for 'libffi'
info libmamba Transfer finalized, status: 200 [https://conda.anaconda.org/conda-forge/linux-64/libffi-3.4.2libffi 58.3kB @ 75.1kB/s 0.1s
[+] 0.8s
Downloading (5) ━━━━━━━━╸━━━━━━━━━━━━━━━━━━━━╸━━ 12.8MB / 44.3MB @ 13.8MB/s openssl 0.8s
Extracting (7) ━━━━━━━━╸━━━━━━━━━━╸━━━━━━━━━━━━ 7 / 23 ld_impl_linux-64 0.7sinfo libmamba Transfer done for 'readline'
info libmamba Transfer finalized, status: 200 [https://conda.anaconda.org/conda-forge/linux-64/readline-8.2readline 281.5kB @ 316.9kB/s 0.1s
[+] 0.9s
Downloading (5) ━━━━━━━━━╸━━━━━━━━━━━━━━━━━━━━╸━ 14.8MB / 44.3MB @ 13.8MB/s openssl 0.9s
Extracting (6) ━━━━━━━━━━━╸━━━━━━━━╸━━━━━━━━━━━ 9 / 23 libexpat 0.8sinfo libmamba Transfer done for 'pip'
info libmamba Transfer finalized, status: 200 [https://conda.anaconda.org/conda-forge/noarch/pip-22.1.2-pyhpip 1.6MB @ 1.7MB/s 0.6s
[+] 1.0s
Downloading (5) ━━━━━━━━━━━╸━━━━━━━━━━━━━━━━━━╸━ 17.0MB / 44.3MB @ 20.3MB/s python 1.0s
Extracting (6) ━━━━━━━━━━━━╸━━━━━━━━━╸━━━━━━━━━ 10 / 23 ld_impl_linux-64 0.9sinfo libmamba Transfer done for 'bzip2'
info libmamba Transfer finalized, status: 200 [https://conda.anaconda.org/conda-forge/linux-64/bzip2-1.0.8-bzip2 495.7kB @ 461.4kB/s 0.2s
[+] 1.2s
Downloading (5) ━━━━━━━━━━━━━╸━━━━━━━━━━━━━━━━╸━ 20.7MB / 44.3MB @ 20.3MB/s python 1.2s
Extracting (6) ━━━━━━━━━━━━━━╸━━━━━━━━╸━━━━━━━━ 11 / 23 ld_impl_linux-64 1.1sinfo libmamba Transfer done for 'libnsl'
info libmamba Transfer finalized, status: 200 [https://conda.anaconda.org/conda-forge/linux-64/libnsl-2.0.0-h7f98852_0.tar.bz2] 31236 bytes
info libmamba Download finished, validating '/opt/conda/pkgs/libnsl-2.0.0-h7f98852_0.tar.bz2'
info libmamba Transfer done for 'tk'
info libmamba Transfer finalized, status: 200 [https://conda.anaconda.org/conda-forge/linux-64/tk-8.6.12-h2libnsl 31.2kB @ 25.6kB/s 0.1s
tk 3.5MB @ 2.8MB/s 1.1s
[+] 1.3s
Downloading (4) ━━━━━━━━━━━━━━━╸━━━━━━━━━━━━━━━━ 22.5MB / 44.3MB @ 20.3MB/s python 1.3s
Extracting (6) ━━━━━━━━━━━━━━━━━╸━━━━━━━━╸━━━━━ 13 / 23 ld_impl_linux-64 1.2sinfo libmamba Transfer done for 'libgcc-ng'
info libmamba Transfer finalized, status: 200 [https://conda.anaconda.org/conda-forge/linux-64/libgcc-ng-13libgcc-ng 776.3kB @ 581.2kB/s 0.4s
[+] 1.4s
Downloading (3) ━━━━━━━━━━━━━━━━╸━━━━━━━━━━━━━━━ 24.0MB / 44.3MB @ 20.3MB/s setuptools 1.4s
Extracting (6) ━━━━━━━━━━━━━━━━━━╸━━━━━━━━╸━━━━ 14 / 23 libgcc-ng 1.3sinfo libmamba Transfer done for 'setuptools'
info libmamba Transfer finalized, status: 200 [https://conda.anaconda.org/conda-forge/noarch/setuptools-68.setuptools 463.7kB @ 324.4kB/s 0.2s
[+] 1.6s
Downloading (2) ━━━━━━━━━━━━━━━━━━╸━━━━━━━━━━━━━ 27.5MB / 44.3MB @ 17.5MB/s openssl 1.6s
Extracting (5) ━━━━━━━━━━━━━━━━━━━━━╸━━━━━━━╸━━ 16 / 23 libgcc-ng 1.5sinfo libmamba Transfer done for 'openssl'
info libmamba Transfer finalized, status: 200 [https://conda.anaconda.org/conda-forge/linux-64/openssl-3.1.openssl 2.6MB @ 1.6MB/s 1.2s
[+] 2.5s
Downloading (1) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━╸━━ 41.7MB / 44.3MB @ 15.9MB/s python 2.5s
Extracting ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━╸━━ 22 / 23 2.4sinfo libmamba Transfer done for 'python'
info libmamba Transfer finalized, status: 200 [https://conda.anaconda.org/conda-forge/linux-64/python-3.11.python 30.7MB @ 11.9MB/s 2.5s
Linking _libgcc_mutex-0.1-conda_forge
Linking ld_impl_linux-64-2.40-h41732ed_0
Linking ca-certificates-2023.7.22-hbcca054_0
Linking libgomp-13.1.0-he5830b7_0
Linking _openmp_mutex-4.5-2_gnu
Linking libgcc-ng-13.1.0-he5830b7_0
Linking openssl-3.1.2-hd590300_0
Linking libzlib-1.2.13-hd590300_5
Linking libffi-3.4.2-h7f98852_5
Linking bzip2-1.0.8-h7f98852_4
Linking ncurses-6.4-hcb278e6_0
Linking libuuid-2.38.1-h0b41bf4_0
Linking libexpat-2.5.0-hcb278e6_1
Linking xz-5.2.6-h166bdaf_0
Linking libnsl-2.0.0-h7f98852_0
Linking libsqlite-3.42.0-h2797004_0
Linking tk-8.6.12-h27826a3_0
Linking readline-8.2-h8228510_1
Linking tzdata-2023c-h71feb2d_0
Linking python-3.11.4-hab00c5b_0_cpython
Linking pip-22.1.2-pyhd8ed1ab_0
info libmamba Running wrapped python compilation command /opt/conda/envs/my_env/bin/python3.11 -Wi -u /tmp/mambafNKow5S4xc6
info libmamba Compiling 519 files to pyc
Linking setuptools-68.0.0-pyhd8ed1ab_0
info libmamba Compiling 217 files to pyc
Linking wheel-0.41.0-pyhd8ed1ab_0
info libmamba Compiling 27 files to pyc
info libmamba Waiting for pyc compilation to finish
Transaction finished
To activate this environment, use:
micromamba activate my_env
Or to execute a single command in this environment, use:
micromamba run -n my_env mycommand
info libmamba Opening history file: "/opt/conda/envs/my_env/conda-meta/history"
error libmamba Error opening for writing "/conda/mambaffTnhAVCQfT": Read-only file system
error libmamba Error opening for writing "/conda/mambaffTnhAVCQfT": Read-only file system
Installing pip packages: requests
info libmamba Calling: /opt/conda/envs/my_env/bin/python -m pip install -r /conda/mambaffTnhAVCQfT --no-input
ERROR: Could not open requirements file: [Errno 2] No such file or directory: '/conda/mambaffTnhAVCQfT'
terminate called without an active exception
I think we have recently moved some other temp files directly to /tmp for similar reasons. Maybe it's time to replicate those changes everywhere in the code base
Troubleshooting docs
How did you install Mamba?
Micromamba
Search tried in issue tracker
Done
Latest version of Mamba
Tried in Conda?
I have this problem with Conda as well, without using Mamba
Describe your issue
When an environment definition file (
environment.yaml
) containing pip packages is used to create an environment, the installation will fail if the environment definition file is in a read-only directory. This is becausemamba
/micromamba
/conda
all attempt to create a temporary file in the same directory as the environment definition file. I have seen multiple instances of users getting tripped up by this in the mamba and micromamba-docker GitHub issue trackers (mamba #2720, micromamba #356).I'm guessing
mamba
/micromamba
just followed what conda did here, but I would much prefer that the directory for temporary files follows howmktemp
selects where to place temporary files.mamba info / micromamba info
Logs
environment.yml
~/.condarc
No response