Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Install in custom directory issue #905

Open
2 tasks done
mdtanker opened this issue Nov 26, 2024 · 1 comment
Open
2 tasks done

Install in custom directory issue #905

mdtanker opened this issue Nov 26, 2024 · 1 comment
Labels
type::bug describes erroneous operation, use severity::* to classify the type

Comments

@mdtanker
Copy link

Checklist

  • I added a descriptive title
  • I searched open reports and couldn't find a duplicate

What happened?

Reposting this miniforge issue here as requested.

When trying to install miniforge into a directory that isn't home, using the -p prefix option, as below:

bash Miniforge3-Linux-x86_64.sh -p /local/data/muskox/Users/mtankersley/miniforge3

I receive the following error:

mkdir: cannot create directory ‘/home/mtankersley/.conda’: No such file or directory

This seems like it is not respecting the set prefix and still trying to install in home.

This seems related to conda-forge/miniforge#560.

See my current solution to this here

The full output from the install is below:

Install outputs
[mtankersley@muskox mtankersley]$ bash Miniforge3-Linux-x86_64.sh -p /local/data/muskox/Users/mtankersley/miniforge3

Welcome to Miniforge3 24.9.2-0

In order to continue the installation process, please review the license
agreement.
Please, press ENTER to continue
>>> 
Miniforge installer code uses BSD-3-Clause license as stated below.

Binary packages that come with it have their own licensing terms
and by installing miniforge you agree to the licensing terms of individual
packages as well. They include different OSI-approved licenses including
the GNU General Public License and can be found in pkgs/<pkg-name>/info/licenses
folders.

Miniforge installer comes with a bootstrapping executable that is used
when installing miniforge and is deleted after miniforge is installed.
The bootstrapping executable uses micromamba, cli11, cpp-filesystem,
curl, c-ares, krb5, libarchive, libev, lz4, nghttp2, openssl, libsolv,
nlohmann-json, reproc and zstd which are licensed under BSD-3-Clause,
MIT and OpenSSL licenses. Licenses and copyright notices of these
projects can be found at the following URL.
https://github.com/conda-forge/micromamba-feedstock/tree/master/recipe.

=============================================================================

Copyright (c) 2019-2022, conda-forge
All rights reserved.

Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions are met:

1. Redistributions of source code must retain the above copyright notice, this
list of conditions and the following disclaimer.

2. Redistributions in binary form must reproduce the above copyright notice,
this list of conditions and the following disclaimer in the documentation
and/or other materials provided with the distribution.

3. Neither the name of the copyright holder nor the names of its contributors
may be used to endorse or promote products derived from this software without
specific prior written permission.

THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.


Do you accept the license terms? [yes|no]
>>> 
Please answer 'yes' or 'no':'
>>> yes

Miniforge3 will now be installed into this location:
/local/data/muskox/Users/mtankersley/miniforge3

  - Press ENTER to confirm the location
  - Press CTRL-C to abort the installation
  - Or specify a different location below

[/local/data/muskox/Users/mtankersley/miniforge3] >>> 
PREFIX=/local/data/muskox/Users/mtankersley/miniforge3

Transaction

  Prefix: /local/data/muskox/Users/mtankersley/miniforge3/envs/_virtual_specs_checks

  All requested packages already installed

Dry run. Not executing the transaction.
Unpacking payload ...
Extracting _libgcc_mutex-0.1-conda_forge.tar.bz2
Extracting ca-certificates-2024.8.30-hbcca054_0.conda
Extracting ld_impl_linux-64-2.43-h712a8e2_2.conda
Extracting pybind11-abi-4-hd8ed1ab_3.tar.bz2
Extracting python_abi-3.12-5_cp312.conda
Extracting tzdata-2024b-hc8b5060_0.conda
Extracting libgomp-14.2.0-h77fa898_1.conda
Extracting _openmp_mutex-4.5-2_gnu.tar.bz2
Extracting libgcc-14.2.0-h77fa898_1.conda
Extracting libexpat-2.6.4-h5888daf_0.conda
Extracting libgcc-ng-14.2.0-h69a702a_1.conda
Extracting libstdcxx-14.2.0-hc0a3c3a_1.conda
Extracting libzlib-1.3.1-hb9d3cd8_2.conda
Extracting openssl-3.3.2-hb9d3cd8_0.conda
Extracting bzip2-1.0.8-h4bc722e_7.conda
Extracting c-ares-1.32.3-h4bc722e_0.conda
Extracting keyutils-1.6.1-h166bdaf_0.tar.bz2
Extracting libev-4.33-hd590300_2.conda
Extracting libffi-3.4.2-h7f98852_5.tar.bz2
Extracting libiconv-1.17-hd590300_2.conda
Extracting libnsl-2.0.1-hd590300_0.conda
Extracting libsqlite-3.47.0-hadc24fc_1.conda
Extracting libssh2-1.11.0-h0841786_0.conda
Extracting libstdcxx-ng-14.2.0-h4852527_1.conda
Extracting libuuid-2.38.1-h0b41bf4_0.conda
Extracting libxcrypt-4.4.36-hd590300_1.conda
Extracting lzo-2.10-hd590300_1001.conda
Extracting ncurses-6.5-he02047a_1.conda
Extracting reproc-14.2.4.post0-hd590300_1.conda
Extracting tk-8.6.13-noxft_h4845f30_101.conda
Extracting xz-5.2.6-h166bdaf_0.tar.bz2
Extracting fmt-10.2.1-h00ab1b0_0.conda
Extracting libedit-3.1.20191231-he28a2e2_2.tar.bz2
Extracting libnghttp2-1.64.0-h161d5f1_0.conda
Extracting libsolv-0.7.30-h3509ff9_0.conda
Extracting libxml2-2.13.4-h064dc61_2.conda
Extracting lz4-c-1.9.4-hcb278e6_0.conda
Extracting readline-8.2-h8228510_1.conda
Extracting reproc-cpp-14.2.4.post0-h59595ed_1.conda
Extracting yaml-cpp-0.8.0-h59595ed_0.conda
Extracting zstd-1.5.6-ha6fb4c9_0.conda
Extracting krb5-1.21.3-h659f571_0.conda
Extracting libarchive-3.7.4-hfca40fe_0.conda
Extracting python-3.12.7-hc5c86c4_0_cpython.conda
Extracting libcurl-8.10.1-hbbe4b11_0.conda
Extracting menuinst-2.2.0-py312h7900ff3_0.conda
Extracting archspec-0.2.3-pyhd8ed1ab_0.conda
Extracting boltons-24.0.0-pyhd8ed1ab_0.conda
Extracting brotli-python-1.1.0-py312h2ec8cdc_2.conda
Extracting certifi-2024.8.30-pyhd8ed1ab_0.conda
Extracting charset-normalizer-3.4.0-pyhd8ed1ab_0.conda
Extracting colorama-0.4.6-pyhd8ed1ab_0.tar.bz2
Extracting distro-1.9.0-pyhd8ed1ab_0.conda
Extracting frozendict-2.4.6-py312h66e93f0_0.conda
Extracting hpack-4.0.0-pyh9f0ad1d_0.tar.bz2
Extracting hyperframe-6.0.1-pyhd8ed1ab_0.tar.bz2
Extracting idna-3.10-pyhd8ed1ab_0.conda
Extracting jsonpointer-3.0.0-py312h7900ff3_1.conda
Extracting libmamba-1.5.9-h4cc3d14_0.conda
Extracting packaging-24.1-pyhd8ed1ab_0.conda
Extracting platformdirs-4.3.6-pyhd8ed1ab_0.conda
Extracting pluggy-1.5.0-pyhd8ed1ab_0.conda
Extracting pycosat-0.6.6-py312h98912ed_0.conda
Extracting pycparser-2.22-pyhd8ed1ab_0.conda
Extracting pysocks-1.7.1-pyha2e5f31_6.tar.bz2
Extracting ruamel.yaml.clib-0.2.8-py312h66e93f0_1.conda
Extracting setuptools-75.3.0-pyhd8ed1ab_0.conda
Extracting truststore-0.10.0-pyhd8ed1ab_0.conda
Extracting wheel-0.45.0-pyhd8ed1ab_0.conda
Extracting cffi-1.17.1-py312h06ac9bb_0.conda
Extracting h2-4.1.0-pyhd8ed1ab_0.tar.bz2
Extracting jsonpatch-1.33-pyhd8ed1ab_0.conda
Extracting libmambapy-1.5.9-py312h7fb9e8e_0.conda
Extracting pip-24.3.1-pyh8b19718_0.conda
Extracting ruamel.yaml-0.18.6-py312h66e93f0_1.conda
Extracting tqdm-4.67.0-pyhd8ed1ab_0.conda
Extracting zstandard-0.23.0-py312hef9b889_1.conda
Extracting conda-package-streaming-0.11.0-pyhd8ed1ab_0.conda
Extracting urllib3-2.2.3-pyhd8ed1ab_0.conda
Extracting conda-package-handling-2.4.0-pyh7900ff3_0.conda
Extracting requests-2.32.3-pyhd8ed1ab_0.conda
Extracting conda-24.9.2-py312h7900ff3_0.conda
Extracting conda-libmamba-solver-24.9.0-pyhd8ed1ab_0.conda
Extracting mamba-1.5.9-py312h9460a1c_0.conda
mkdir: cannot create directory ‘/home/mtankersley/.conda’: No such file or directory
[mtankersley@muskox mtankersley]$ 

Additional Context

No response

@mdtanker mdtanker added the type::bug describes erroneous operation, use severity::* to classify the type label Nov 26, 2024
@github-project-automation github-project-automation bot moved this to 🆕 New in 🧭 Planning Nov 26, 2024
@marcoesters
Copy link
Contributor

This is likely related to this line: https://github.com/conda/constructor/blob/main/constructor/header.sh#L516

However, even if we fix it, I think this will just delay the problem because conda will try and create that directory when the base environment is installed.

@jaimergp, do you know if mamba does the same thing?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
type::bug describes erroneous operation, use severity::* to classify the type
Projects
Status: 🆕 New
Development

No branches or pull requests

2 participants