diff --git a/x11docker b/x11docker index 29929a26..857ebbb5 100755 --- a/x11docker +++ b/x11docker @@ -1985,20 +1985,20 @@ check_xdepends() { # check dependencies on host for X server option } ;; esac case ${1:-} in - --xpra|--xpra-xwayland) + --xpra) [ -z "$Hostdisplay" ] && [ -n "$Hostwaylandsocket" ] && [ "$Autochooseserver" = "no" ] && { - $Message "Option ${1:-}: Support in pure Wayland is experimental only. - Rather use --weston-xwayland, --kwin-xwayland or --hostwayland + $Message "Option ${1:-}: Support in pure Wayland is experimental only + and needs latest xpra v3.x versions with python3 backend. + If issues occure, use --weston-xwayland, --kwin-xwayland or --hostwayland or use option ${1:-} in an X environment." } || { [ "$Hostdisplay" ] || { - $Message "${1:-} needs a running X server. DISPLAY is empty." + $Message "${1:-} needs a running X server. DISPLAY is empty. Wayland support is experimental only." Return=1 } } ;; -# --hostdisplay|--xpra|--xpra-xwayland|--xephyr|--nxagent) - --hostdisplay|--xephyr|--nxagent) + --hostdisplay|--xpra-xwayland|--xephyr|--nxagent) [ "$Hostdisplay" ] || { $Message "${1:-} needs a running X server. DISPLAY is empty." Return=1 @@ -2661,7 +2661,8 @@ create_xcommand() { # create command to start X server and/or Waylan ;; esac [ "$Dpi" = "-1" ] && Dpi="" - [ -n "$Dpi" ] && Xserveroptions="$Xserveroptions -dpi $Dpi" + [ -n "$Dpi" ] && Xserveroptions="$Xserveroptions \\ + -dpi $Dpi" #### xpra server and client command @@ -2758,11 +2759,9 @@ startup-animation=fade " >> "$Westonini" [ -n "$Xkblayout" ] && echo "keymap_layout=$Xkblayout" >> "$Westonini" [ -z "$Xkblayout" ] && [ "$Hosttty" = "yes" ] && echo "$(echo -n "keymap_layout=" && grep XKBLAYOUT <"/etc/default/keyboard" | cut -d= -f2 | cut -d'"' -f2)" >> "$Westonini" - [ -n "$Hostwaylandsocket" ] && [ "$Xserver" != "--xpra-xwayland" ] && [ "$Hostsystem" != "ubuntu" ] && [ "$Fullscreen" = "no" ] && { - Westonoutput="WL" - } || { - [ -n "$Hostdisplay" ] && Westonoutput="X" - } + + [ -n "$Hostwaylandsocket" ] && [ "$Xserver" != "--xpra-xwayland" ] && [ "$Hostsystem" != "ubuntu" ] && [ "$Fullscreen" = "no" ] && Westonoutput="WL" + [ -n "$Hostdisplay" ] && Westonoutput="X" [ -z "$Westonoutput" ] && [ -n "$Hostwaylandsocket" ] && Westonoutput="WL" [ "$Hosttty" = "yes" ] && { @@ -4277,8 +4276,12 @@ create_dockerrc() { # create dockerrc: This script runs as root (or [ "$Sharehosthome" = "no" ] && echo " echo 'mkdir -p \$Containeruserhome'" echo " echo '# Copy files from /etc/skel into empty HOME'" - echo " echo '[ -d /etc/skel ] && [ -z \"\$(ls -A \"$Containeruserhome\" 2>/dev/null)\" ] && {'" + echo " echo '[ -d /etc/skel ] && [ -z \"\$(ls -A \"$Containeruserhome\" 2>/dev/null | grep -v gnupg)\" ] && {'" + echo " echo ' debugnote \"HOME is empty. Copying from /etc/skel\"'" echo " echo ' cp -n -R /etc/skel/. \$Containeruserhome'" + echo " echo ' :'" + echo " echo '} || {'" + echo " echo ' debugnote \"HOME not empty. Not copying from /etc/skel\"'" echo " echo '}'" while read -r Line; do Path="$(convertpath --container "$Line")" @@ -7491,18 +7494,19 @@ main "$@" #### ToDo notes for development todo() { # CHECK --xpra-xwayland, --weston-xwayland: Xwayland does not fit Weston window size if parts of weston window are offscreen + # x11docker/xwayland: --no-xhost has been removed # --xpra on wayland (experimental): version check, py3 check # dependeny wiki: Cygwin packages # x11docker/check: palinopsia: check video RAM size with glxinfo # BUG --runtime=kata-runtime --nxagent: ALT-GR works wrong. + # x11docker/lxde slow to start due to menu cache # FIXME: myrealpath(): If realpath is missing, the path argument is returned without resolving. # CHECK: Xwayland with X over IP # FIXME: --dbus-system: slow startup (90s timeout) in arch containers for unknown reasons. # FIXME: --interactive with --init=runit|openrc|sysvinit: no job control in shell # CHECK: --interactive not possible without winpty in WSL and Cygwin - # FIXME: x11docker/deepin: new builds have strange issues # BUG x11docker/fluxbox on arch host: background missing, sometimes no context menu. where is the difference? # BUG error message window in wayland fails: xterm: no display. should use konsole # CHECK: elogind in void container: loginctl is empty. ck-list-sessions, too.