aboutsummaryrefslogtreecommitdiff
path: root/src/cli/stasis_indexer/helpers.c
diff options
context:
space:
mode:
authorJoseph Hunkeler <jhunkeler@users.noreply.github.com>2026-06-18 14:05:46 -0400
committerGitHub <noreply@github.com>2026-06-18 14:05:46 -0400
commite2008513b5fb4ae71d87ca6d05bdab5f3cb3a53f (patch)
tree46faf70adbcbe727f6f74f07f387f8330ee390ab /src/cli/stasis_indexer/helpers.c
parent252b9646c1cb0538123d51ced4a733f3dcfc266b (diff)
downloadstasis-1.7.0.tar.gz
Micromamba improvement (#148)HEAD1.7.0master
* Update micromamba installation logic * Split installation from micromamba() into micromamba_install() * Return -1 when micromamba cannot be installed * Add stasis.ini option "indexer.micromamba_download_url" * Add global variable micromamba_download_url * The installation function attempts two known-good URLs by default * * Add indexer arugment '--micromamba-download-url' * Add is_file_compressed() function to utils * Call micromamba_install() from tests * Add space in usage statement * Fix usage output when option array contains arguments without short options * Add --micromamba-download-url to README.md
Diffstat (limited to 'src/cli/stasis_indexer/helpers.c')
-rw-r--r--src/cli/stasis_indexer/helpers.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/src/cli/stasis_indexer/helpers.c b/src/cli/stasis_indexer/helpers.c
index 3ef96e4..b89622b 100644
--- a/src/cli/stasis_indexer/helpers.c
+++ b/src/cli/stasis_indexer/helpers.c
@@ -157,6 +157,7 @@ int micromamba_configure(const struct Delivery *ctx, struct MicromambaInfo *m) {
m->conda_prefix = globals.conda_install_prefix;
m->micromamba_prefix = micromamba_prefix;
m->download_dir = ctx->storage.tmpdir;
+ m->download_url = globals.micromamba_download_url;
const size_t pathvar_len = strlen(getenv("PATH")) + strlen(m->micromamba_prefix) + strlen(m->conda_prefix) + 3 + 4 + 1;
// ^^^^^^^^^^^^^^^^^^
@@ -172,6 +173,11 @@ int micromamba_configure(const struct Delivery *ctx, struct MicromambaInfo *m) {
setenv("PATH", pathvar, 1);
guard_free(pathvar);
+ if (micromamba_install(m)) {
+ SYSERROR("Micromamba installation failed");
+ return -1;
+ }
+
status += micromamba(m, "config prepend --env channels conda-forge");
if (!globals.verbose) {
status += micromamba(m, "config set --env quiet true");