e.g. if I install fish inside a container, can I set it as my login shell? If so, where are these contained binaries?
You shouldn’t use binaries from the inside of a container on the host. If you need something on the host install it using rpm-ostree install {package}
. Also see this documentation page.
Technically they are accessible from the outside and are stored in .local/share/containers/storage/overlay/{container id}/diff/*
. But they won’t be accessible for your user and when running directly will miss the libraries stored in the container.
I would recommend against doing that.
The toolbox run ...
command can do something like what you are asking. Though I wouldn’t run a shell that way.
Yes, you can use toolbox run
as suggested. But I think it will not run apps on your host system, so it may not be ideal to set it as the login shell.
KDE Konsole supports setting up profiles where you can set the shell to toolbox -c <container_name> run fish
, and I believe GNOME Terminal and Ptyxis also allow you to do the same.