pacman -S arch-install-scripts mkdir test cd test su pacstrap -i -c . base cd .. mkdir files systemd-nspawn \ -bD $PWD/test -M "c1" \ --volatile=no \ --bind=/dev/shm \ --bind=/dev/fuse \ --bind=/dev/snd \ --bind=/dev/dri \ --bind=/dev/input \ --bind-ro=/run/user/1000/wayland-0 \ --bind-ro=/run/user/1000/wayland-0.lock \ --bind=/run/user/1000/ \ --capability=CAP_SYS_ADMIN \ --bind=$PWD/files:/files \ --property="DeviceAllow=/dev/tty1 rwm" \ --property="DeviceAllow=/dev/dri rwm" \ --property="DeviceAllow=/dev/shm rwm" \ --property="DeviceAllow=/dev/fuse rwm" \ --property="DeviceAllow=/dev/input rwm" \ --property="DeviceAllow=/dev/dri/renderD128 rwm" \ --property="DeviceAllow=char-input rwm" \ --property="DeviceAllow=char-alsa rwm" \ --property="DeviceAllow=char-drm rwm" in a separate tab su machinectl shell c1 useradd test mkdir /home/test chown -R test /home/test passwd test pacman -Sy #copy custom mesa, qt5-base, qt5-wayland, glmark2 .xz packages to the files directory in the container directory #install custom mesa pacman -U /files/mesa* #install custom qt5-base pacman -U /files/qt5-base* #install custom qt5-wayland pacman -U /files/qt5-base* #install custom glmark2 pacman -U /files/glmark2* #install weston pacman -Sdd weston pixman libxkbcommon xkeyboard-config libva cairo pango libwebp libxrender fribidi libthai login in the first tab as test run weston from user terminal from the first logged in tab #from host copy compiled cube and calendar QT_QPA_PLATFORM=wayland /files/cube/cube -> doesn't work QT_QPA_PLATFORM=wayland /files/calendar/calendar -> works glmark2-es2-way -> works