in reply to thingsiplay

You can think of Docker and Podman as an almost zero overhead (CPU and RAM) way of running one distribution on another. So, you can run an application in Docker that expects to be running on a different distro from what you use (say Ubuntu Jenkins but actually running on Debian). The environment that the applications run in are called “containers”. Mostly they contain the filesystem layout and application libraries that the app expects.

Docker itself is designed to sandbox the application away from your host system. A related technology, Distrobox, uses the same containers but in a way that the applications know they are running on your system with full access to your display manager and home directory.

I run an Arch Distrobox on every distro that I use. This allows me full access to all the Arch repos and the AUR even on other distros ( eg. Alpine, Chinese Linux, or Debian).

Flatpak also uses containers and so you can consider Distrobox as a Flatpak alternative. Flatpak containers are not the same as those that Docker uses but they rely on the same underlying Linux kernel features to do what they do. In Flatpak, you are essentially running the Freedesktop distro on top of your host distro (so much like Distrobox with the guest distro chosen for you).

This entry was edited (3 weeks ago)
in reply to tkw8

whoever says pacman is enough either have all the time in the Universe to configure the miniscule knobs or have never done serious development with multi-platform/compiler deployments. controlling which compilers are used for which packages in pacman (or any other default package manager for that matter) is a headache. having multiple versions of non-conflicting gcc, llvm, cuda etc is priceless and very easy with brew.

elitism aside, brew is genuinely a good package manager when it comes to imperative ones. I still use it on my desktop arch extensively. ofc, if you have nix, there is really no good reason for it (and I'm not even sure it's possible).

PS. "but you can use docker" -- not if you want to have the same performance especially on GPUs. also have you ever tried containerizing HIP? it's a frigging nightmare.

This entry was edited (2 weeks ago)