Skip to content

Can remote libraries be provided locally to mx? #284

Open

Description

@aragos

I'm attempting to build Graal targets in a hermetic environment (no network access) to assure supply chain security. Because of this I need to find a way to provide libraries normally downloaded over the network (example) locally.

I've managed to track down where mx stores these kinds of dependencies once they're downloaded (~/.mx/cache) but fiddling with that location seems unwise. Is there a way to pass an alternate location for a given library, perhaps by flag, or a minimal patch to apply to the suite.pys so they can find the dependencies on the local file system instead?

Activity

  1. dougxc commented on Jun 24, 2024

    @dougxc
    Member

    It should be possible to replace the urls attribute of each library in suite.py with a path attribute which is the absolute path to the installed library. That said, it has been a long time since we've used explicit path attributes so I cannot guarantee that it works out of the box. If not, it should not be too hard to fix though.

  2. rschatz commented on Jun 25, 2024

    @rschatz
    Member

    Another way to do this is just pre-populate the mx cache. You can use the MX_CACHE env variable to point it at a different cache.

    I don't know whether MX_URLREWRITE works with local (file:///) urls, but that might also be worth checking out.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions