Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Discussion] Link to github.com/toolbx-images/images as a source for prepared distro images #544

Closed
travier opened this issue Dec 2, 2022 · 10 comments
Labels
question Further information is requested

Comments

@travier
Copy link

travier commented Dec 2, 2022

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

We're making "toolbox ready" container images for common Linux distributions available in https://github.com/toolbx-images/images.

If I correctly understood the note in https://github.com/89luca89/distrobox/blob/main/docs/compatibility.md#containers-distros, those images should work well with distrobox too, but I have not tested that yet.

Describe the solution you'd like

Would you be open to mentioning this project in your documentation?

Feel free to let us know what's missing from those images for distrobox.

Thanks!

@travier travier added the question Further information is requested label Dec 2, 2022
@travier
Copy link
Author

travier commented Dec 2, 2022

I've tried it and some packages still need to be installed apparently:

$ distrobox-create --image quay.io/toolbx-images/centos-toolbox:stream9
$ distrobox enter centos-toolbox-stream9
📦❯ sudo dnf history
ID     | Command line                                                     | Date and time    | Action(s)      | Altered
-----------------------------------------------------------------------------------------------------------------------
    10 | upgrade -y                                                       | 2022-12-02 19:29 | Upgrade        |   12 EE
     9 | install -y mesa-dri-drivers mesa-vulkan-drivers vulkan           | 2022-12-02 19:23 | Install        |   12   
     8 | install -y --allowerasing zsh bc curl diffutils dnf-plugins-core | 2022-12-02 19:23 | E, I           |    4   
     7 | install -y zsh                                                   | 2022-12-02 19:23 | Install        |    1   
     6 | -y upgrade                                                       | 2022-11-28 02:40 | Upgrade        |    2   

So it works but not fully "faster"/ready.

travier added a commit to travier/toolbx-images that referenced this issue Dec 5, 2022
The images should also work well with distrobox. They may not include
all the packages by default but should still reduce the setup time for
new containers via distrobox.

See: 89luca89/distrobox#544
travier added a commit to travier/toolbx-images that referenced this issue Dec 5, 2022
The images should also work well with distrobox. They may not include
all the packages by default but should still reduce the setup time for
new containers via distrobox.

See: 89luca89/distrobox#544
@89luca89
Copy link
Owner

89luca89 commented Dec 5, 2022

Hi @travier I'm extremely glad for this! 😄

As you noted, the images are already compatible with distobox, they are still doing the "install packages" because I think distrobox add some packages more than Toolbx, doing a quick test I see:


quay.io/toolbx-images/almalinux-toolbox:*
quay.io/toolbx-images/centos-toolbox:*
quay.io/toolbx-images/rhel-toolbox:*
quay.io/toolbx-images/rockylinux-toolbox:*

  • curl
  • pinentry
  • mesa-dri-drivers
  • mesa-vulkan-drivers
  • vulkan-loader

quay.io/toolbx-images/alpine-toolbox:3.16:

  • vte3

And generally doing

		apk add \
			$(apk search -q mesa-dri) \
			$(apk search -q mesa-vulkan) \
			vulkan-loader

quay.io/toolbx-images/ubuntu-toolbox:*

  • bc
  • libvte-2.91-common
  • libvte-common
  • libegl1-mesa
  • libgl1-mesa-glx
  • libvulkan1
  • mesa-vulkan-drivers

quay.io/toolbx-images/opensuse-toolbox:tumbleweed

  • libvte-2*
  • Mesa-dri
  • libvulkan1
  • libvulkan_intel
  • libvulkan_radeon

quay.io/toolbx-images/debian-toolbox:*

  • curl
  • dialog
  • gnupg2
  • bc
  • libvte-2.91-common
  • libvte-common
  • libegl1-mesa
  • libgl1-mesa-glx
  • libvulkan1
  • mesa-vulkan-drivers

quay.io/toolbx-images/archlinux-toolbox:latest

  • bc
  • mesa
  • opengl-driver
  • vulkan-intel
  • vulkan-radeon

@89luca89
Copy link
Owner

89luca89 commented Dec 5, 2022

If you're interested, I can provide the PRs to add the packages to the various extra-packages files,
let me know if it's of interest, and if in case, you prefer all-in-one PR, or a PR for each image

Thanks!

@travier
Copy link
Author

travier commented Dec 5, 2022

So overall, it looks like we are mainly missing the vulkan & mesa libs. Any idea why we don't have those in toolbox already?

For all the others, feel free to make a PR directly and we'll pull them in. One commit for each distro would be nice and one PR in total is fine.

@travier
Copy link
Author

travier commented Dec 5, 2022

containers/toolbox#1124 > Looks like they were added to the toolbox image recently and we missed that.

So I'd say we should add them too so that we're good.

@89luca89
Copy link
Owner

89luca89 commented Dec 5, 2022

Cool for the others, the same stands, let me know if it's ok and if it is, how you'd like the contribution to be split 👍

@travier
Copy link
Author

travier commented Dec 5, 2022

Overall, it looks like we need everything. So let's add everything! 🙂

@travier
Copy link
Author

travier commented Dec 5, 2022

Not sure how distrobox does things regarding packages but it might be able to skip the package installation phase if it finds everything it needs directly. That would skip the repo fetch step and thus considerably speed up the first setup step.

@89luca89
Copy link
Owner

89luca89 commented Dec 5, 2022

Yep that would make the creation/enter time, the same as normal toolbox, as no package management would be needed 👍

Do you prefer if I do a PR for each image, or do one for everything?

@89luca89
Copy link
Owner

89luca89 commented May 2, 2023

@travier I've added the images in the docs 👍 sorry but I wasn't able to do a PR on the main project to add the missing "distrobox-only" packages, but $day_job is quite demanding of time lately 😂

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
question Further information is requested
Projects
None yet
Development

No branches or pull requests

2 participants