GithubHelp home page GithubHelp logo

Comments (7)

wolfv avatar wolfv commented on July 30, 2024 2

I am using Apple Silicon every day :) But I understand that it's an issue for bioconda folks. We're working on it!

from pixi.

wolfv avatar wolfv commented on July 30, 2024 1

I think the user needs to manually install rosetta, but Apple makes it pretty easy.
We actually have a similar problem for emscripten-wasm32 and wasi-wasm32 - for those architectures we would also always want to install the defined platform instead of the native one.

But I agree with Bas that we might find a straightforward solution for the osx-arm64 -> osx-64 case and could allow automatic cross-platform installation of the environments.

@ruben-arts I think the bioconda project has not yet started to build packages for osx-arm64.

from pixi.

ruben-arts avatar ruben-arts commented on July 30, 2024

He @corneliusroemer

This is indeed something we're not supporting yet. We've had a similar request on in this issue

Although its not super trivial, as we want a project to be completely reproducible and I believe to make your request work you need Rosetta on your machine and we can't check if that is installed yet.

On the short therm, in most cases it's not hard to build the conda package for osx-arm64 which packages do you need this for?

from pixi.

baszalmstra avatar baszalmstra commented on July 30, 2024

I would want this to be supported out of the box without the user having to specify additional flags.

@ruben-arts Perhaps we should extend our logic in some places to use osx-64 as the "current" platform if the project is not configured for osx-arm64? With a small warning perhaps?

@corneliusroemer Do macOS x86 applications always work on macOS arm64? Or do you need to enable this somehow?

from pixi.

ruben-arts avatar ruben-arts commented on July 30, 2024

I guess with a virtual package we could easily define and document the logic right? This probably also goes for the wasm platforms, not sure what you would need for those.

from pixi.

corneliusroemer avatar corneliusroemer commented on July 30, 2024

Do macOS x86 applications always work on macOS arm64? Or do you need to enable this somehow?
Yes, one needs to install rosetta, but most devs have done so already and it's easy if not. It's literally a one-liner:

/usr/sbin/softwareupdate --install-rosetta --agree-to-license

It's also not too hard to test if rosetta is installed and warn the user, see how nextstrain-cli does that here for inspiration:

I can't use any bioconda packages with pixi yet, indeed, as there are no arm versions. Also by far not all conda-forge osx packages have been migrated to arm yet.

I highly recommend one of you get an ARM mac to dogfood pixi on that platform, it's quite widespread and is fairly important for pixi to fly, I think - I wouldn't recommend it to anyone until it works decently on arm.

from pixi.

wolfv avatar wolfv commented on July 30, 2024

Here is a workaround:

curl -L https://github.com/prefix-dev/pixi/releases/download/v0.18.0/pixi-x86_64-apple-darwin -o ~/.pixi/bin/pixi-64
chmod u+x ~/.pixi/bin/pixi-64

Now you can use pixi-64 on osx-arm64 to install "cross-platform" packages. Of course, the downside is that you have 2x pixi installations, but this works for the time being. We'll implement some more clever cross-platform ideas: #1020

from pixi.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.