prefix-dev / pixi

Package management made easy
https://pixi.sh
BSD 3-Clause "New" or "Revised" License
2.88k stars 156 forks source link

Pixi cannot detect `glibc` 2.39 on gentoo but micromamba can #1609

Closed SobhanMP closed 3 weeks ago

SobhanMP commented 1 month ago

Checks

Reproducible example

❯ pixi info
      Pixi version: 0.25.0
          Platform: linux-64
  Virtual packages: __unix=0=0
                  : __linux=6.5.9=0
                  : __cuda=12.5=0
                  : __archspec=1=x86_64_v4
         Cache dir: /home/sobhan/.cache/rattler/cache
      Auth storage: /home/sobhan/.rattler/credentials.json
❯ micromamba info

       libmamba version : 1.5.7
     micromamba version : 1.5.7
           curl version : libcurl/8.5.0 OpenSSL/3.2.1 zlib/1.2.13 zstd/1.5.5 libssh2/1.11.0 nghttp2/1.58.0
     libarchive version : libarchive 3.7.2 zlib/1.2.13 bz2lib/1.0.8 libzstd/1.5.5
       envs directories : /home/sobhan/micromamba/envs
          package cache : /home/sobhan/micromamba/pkgs
                          /home/sobhan/.mamba/pkgs
            environment : None (not found)
           env location : -
      user config files : /home/sobhan/.mambarc
 populated config files : /home/sobhan/.condarc
       virtual packages : __unix=0=0
                          __linux=6.5.9=0
                          __glibc=2.39=0
                          __archspec=1=x86_64-v4
                          __cuda=12.5=0
               channels : https://conda.anaconda.org/conda-forge/linux-64
                          https://conda.anaconda.org/conda-forge/noarch
                          https://conda.anaconda.org/nodefaults/linux-64
                          https://conda.anaconda.org/nodefaults/noarch
       base environment : /home/sobhan/micromamba
               platform : linux-64

Issue description

I have glibc 2.39 on my machine, but Pixi doesn't recognize it as a valid __glibc, while Mamba does.

Expected behavior

Pixi should recognize glibc 2.39

ruben-arts commented 1 month ago

Ah that is strange, this is part of our Rattler library. This is the code that find the version: https://github.com/mamba-org/rattler/blob/main/crates/rattler_virtual_packages/src/libc.rs#L34

Does this ring a bell for you that might help us understand why it's not getting the version?

Also pinging @baszalmstra for his expertise

baszalmstra commented 1 month ago

@SobhanMP What is the output when you run:

ldd --version
SobhanMP commented 1 month ago
❯ ldd --version
ldd (Gentoo 2.39-r9 (patchset 9)) 2.39
Copyright (C) 2024 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
Written by Roland McGrath and Ulrich Drepper.

regardless of whether having the string GLIBC or GNU LIBC is required or not, a fix is very much appreciated.

baszalmstra commented 1 month ago

Im attempting a fix in https://github.com/mamba-org/rattler/pull/779

SobhanMP commented 1 month ago

thanks!

SobhanMP commented 3 weeks ago

Works like a charm! thanks.