89luca89 / distrobox

Use any linux distribution inside your terminal. Enable both backward and forward compatibility with software and freedom to use whatever distribution you’re more comfortable with. Mirror available at: https://gitlab.com/89luca89/distrobox

Home Page:https://distrobox.it/

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Importing display for running mutter.

cheako opened this issue · comments

I saw how this is experimental and this request to get low priority. I setup my system for running gnome-session inside distrobox, but I get errors trying to open the display.

May 05 19:37:42 mx1 systemd[34811]: Started gvfs-metadata.service - Virtual filesystem metadata service.
May 05 19:37:42 mx1 sddm[934]: Session started
May 05 19:37:42 mx1 systemd[1426]: Started podman-35034.scope.
May 05 19:37:42 mx1 systemd[1426]: Started podman-35077.scope.
May 05 19:37:42 mx1 podman[35077]: 2024-05-05 19:37:42.796225003 -0500 CDT m=+0.029856502 container exec 88679e2ef6894c6828d0c49759dfa23c7207dd4960ab95dc7321746c715c1ebc (image=localhost/c>
May 05 19:37:42 mx1 gnome-session-c[35159]: cannot open display: 
May 05 19:37:42 mx1 gnome-session-c[35160]: cannot open display: 
May 05 19:37:42 mx1 gnome-session[35100]: gnome-session-binary[35100]: WARNING: software acceleration check failed: Child process exited with code 1
May 05 19:37:42 mx1 gnome-session-binary[35100]: WARNING: software acceleration check failed: Child process exited with code 1
May 05 19:37:42 mx1 gnome-session-f[35161]: Cannot open display: 
May 05 19:37:42 mx1 podman[35077]: 2024-05-05 19:37:42.857964022 -0500 CDT m=+0.091595531 container exec_died 88679e2ef6894c6828d0c49759dfa23c7207dd4960ab95dc7321746c715c1ebc (image=localh>
May 05 19:37:42 mx1 sddm-helper[34987]: [PAM] Closing session
May 05 19:37:42 mx1 sddm-helper[34987]: pam_unix(sddm:session): session closed for user cheako

cheako@mx1:~$ cat /usr/share/wayland-sessions/distrobox-gnome.desktop

[Desktop Entry]
Name=distrobox GNOME
Comment=This session logs you into GNOME
Exec=/usr/bin/distrobox-enter -n gnome-session -- /usr/bin/gnome-session
TryExec=/usr/bin/distrobox-enter
Type=Application
DesktopNames=GNOME
X-GDM-SessionRegisters=true

==> ./go.sh <==

#!/bin/sh -ex

clean_docker() {
  docker image rm cheako-debian-firefox:sid-slim || true
  docker image rm cheako-debian-gnome-session:sid-slim || true
  docker image rm cheako-debian-base:sid-slim || true
}

clean_docker
docker build -t cheako-debian-base:sid-slim sid-slim-base
docker build -t cheako-debian-gnome-session:sid-slim gnome-session
#docker build -t cheako-debian-firefox:sid-slim firefox

clean_distrobox () {
  distrobox stop firefox || true
  distrobox rm firefox || true
  podman rmi localhost/cheako-debian-firefox:sid-slim || true
}

#clean_distrobox 
sudo docker save cheako-debian-gnome-session:sid-slim | podman load
#sudo docker save cheako-debian-firefox:sid-slim | podman load
clean_docker
distrobox create -n gnome-session -i localhost/cheako-debian-gnome-session:sid-slim
#distrobox create -n firefox -i localhost/cheako-debian-firefox:sid-slim

==> ./sid-slim-base/Dockerfile <==

FROM debian:sid-slim
ADD root_bash_aliases /root/.bash_aliases
ADD root_bashrc /root/.bashrc
ADD experimental.list /etc/apt/sources.list.d/experimental.list
ADD experimental.preferences /etc/apt/preferences.d/experimental
RUN \
  sed -i -e's/ main/ main contrib non-free/g' \
    /etc/apt/sources.list.d/debian.sources; \
  apt -y -qq update; \
  apt -y -qq --no-install-suggests --no-install-recommends install \
    bash-completion

These two are unimportant.
==> ./sid-slim-base/root_bash_aliases <==
==> ./sid-slim-base/root_bashrc <==
==> ./sid-slim-base/experimental.list <==

deb [arch=amd64,i386] http://deb.debian.org/debian experimental main contrib non-free non-free-firmware
#deb-src [arch=amd64,i386] http://deb.debian.org/debian experimental main contrib non-free non-free-firmware

==> ./sid-slim-base/experimental.preferences <==

Package: *
Pin: release a=experimental
Pin-Priority: 475

==> ./gnome-session/Dockerfile <==

FROM cheako-debian-base:sid-slim
RUN echo set -x; \
  apt -y -qq update; \
  apt -y -qq $(: --install-suggests) install gnome-session gnome-shell; \
  apt -y -qq $(: --install-suggests) -t experimental install gnome-session gnome-shell;