Skip to content

RFE: toolbox create --arch #1654

@nwnk

Description

@nwnk

Is your feature request related to a problem? Please describe.

I have a powerful workstation of CPU architecture A, and I am developing for deployment on CPU architecture B.

Describe the solution you'd like
I would like to use toolbox to manage a container for architecture B, so that I can use a "native" development toolchain (because machine A is faster, or because I don't otherwise have access to an architecture B machine).

Describe alternatives you've considered

  • Virtual machines are too heavyweight.
  • Cross-compilers merely produce code, they don't run it.

Additional context

This came from an internal slack conversation:

<ajax> anyone know if it's possible to make toolbox create and manage a non-native-architecture container?
<nalind> doesn't appear to be expected, but it can be worked around, since it accepts the image and container names explicitly, and that image can be a reference to an image of a non-default arch
<nalind> for example the arm64 version of "fedora-toolbox:42", which including the registry part is "registry.fedoraproject.org/fedora-toolbox:42" skopeo inspect --raw docker://registry.fedoraproject.org/fedora-toolbox:42 lists an arm64 image with digest "sha256:1ae68d15077ea747834a20c834cf2617b058f3b452d417d37782d92287363dd9", and telling toolbox to use "registry.fedoraproject.org/fedora-toolbox@sha256:1ae68d15077ea747834a20c834cf2617b058f3b452d417d37782d92287363dd9", along with a manually-specified name for the container it bases on that image, worked over here
<ajax> hah, nice! that didn't work on the first try because "copy" grabbed the http-prefixed url link rather than just the image path, but:
<ajax> toolbox create -i registry.fedoraproject.org/fedora-toolbox@sha256:1ae68d15077ea747834a20c834cf2617b058f3b452d417d37782d92287363dd9 f42-arm
<ajax> some enterprising soul should hook that up to toolbox create --arch or something
<hadess> got an issue filed for that? i've used Flatpak runtimes for that in the past.

Metadata

Metadata

Assignees

Labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions