I started looking into this a few days ago but got nowhere. I think you are right about the pseudo terminal. I was thinking there must be a way to capture the ID of the original terminal and pass the distrobox commands back to it. Maybe it would be possible by passing the distrobox container a variable at launch and making that variable a named pipe, but like, I barely know named pipes are a thing and didn’t manage to get it working using a script or function call in the distroboxrc file. I tried making a bunch of different things in this file, like making a startup loop to launch stuff, but none of them worked either.