11#! /usr/bin/env bash
2- export LW_VERSION=" 0.75.4 "
2+ export LW_VERSION=" 0.75.5 "
33export LW_DEVELOPERS=" VHSgunzo"
44
55export RED=' \033[1;91m'
@@ -13,7 +13,7 @@ export GDK_BACKEND="x11"
1313if [ -n " $RUNDIR " ]
1414 then
1515 export LW_EDITOR=" pluma"
16- export LW_FLMGR=" thunar "
16+ export LW_FLMGR=" spacefm "
1717 export SYS_WINETRICKS=1
1818 else
1919 export LW_EDITOR=" xdg-open"
@@ -823,15 +823,27 @@ wine_is_death() {
823823check_display () {
824824 if [ -n " $( which xrandr 2> /dev/null) " ]
825825 then
826- export CHK_PRIMDISPL_OUT=" xrandr --current|grep -w 'connected'|grep -w 'primary'|grep '[0-9]x[0-9]'"
827- export CHK_OTHDISPL_OUT=" xrandr --current|grep -w 'connected'|grep -v 'primary'|grep '[0-9]x[0-9]'"
826+ if [ -n " $( xrandr --current| grep -ow ' primary' ) " ]
827+ then
828+ export CHK_PRIMDISPL_OUT=" xrandr --current|grep -w 'connected'|grep -w 'primary'|grep '[0-9]x[0-9]'"
829+ export CHK_OTHDISPL_OUT=" xrandr --current|grep -w 'connected'|grep -v 'primary'|grep '[0-9]x[0-9]'"
830+ export PRIMDISPL_RES=" $( eval $CHK_PRIMDISPL_OUT | sed -n -e ' s/.* connected primary \([^ +]*\).*/\1/p' ) "
831+ # Old xfce4 bug (xrandr not print 'primary') (Linux Lite, MX Linux, PCLinuxOS, PeppermintOS, Sparky Linux)
832+ elif [ -n " $( xrandr --current| grep -owm1 ' connected' ) " ]
833+ then
834+ export CHK_PRIMDISPL_OUT=" xrandr --current|grep -wm1 'connected'|grep '[0-9]x[0-9]'"
835+ export CHK_OTHDISPL_OUT=" xrandr --current|grep -w 'connected'|grep -v 'primary'|grep -v '+0+0'|grep '[0-9]x[0-9]'"
836+ export PRIMDISPL_RES=" $( eval $CHK_PRIMDISPL_OUT | sed -n -e ' s/.* connected \([^ +]*\).*/\1/p' ) "
837+ else
838+ print_error yad " Could not determine display settings!"
839+ fi
828840 export PRIMDISPL_OUT=" $( eval $CHK_PRIMDISPL_OUT | awk ' {print$1}' ) "
829- export PRIMDISPL_RES=" $( xrandr --current| sed -n -e ' s/.* connected primary \([^ +]*\).*/\1/p' ) "
830- # export PRIMDISPL_RESES="$(xrandr --current|grep -a15 'primary'|grep -v '^[a-zA-Z]'|grep -o '\b.*[0-9]x[0-9]*\b'|sort -rn|awk '!seen[$0]++')"
831841 export OTHDISPL_OUT=" $( eval $CHK_OTHDISPL_OUT | awk ' {print$1}' ) "
832842 export PRIMDISPLCFG=" $( eval $CHK_PRIMDISPL_OUT | sed ' s/(//' | awk -F' [ \+]' ' {print "--output "$1,"--primary","--mode "$4,"--pos "$5"x"$6,"--rotate "$7}' 2> /dev/null) "
833843 export OTHDISPLCFG=" $( eval $CHK_OTHDISPL_OUT | sed ' s/(//' | awk -F' [ \+]' ' {print "--output "$1,"--mode "$3,"--pos "$4"x"$5,"--rotate "$6}' 2> /dev/null) "
834- [ $( echo " $PRIMDISPL_RES " | cut -d' x' -f2) -le 1024 ] && export YADSCROLL=1
844+ # export PRIMDISPL_RESES="$(xrandr --current|grep -a15 'primary'|grep -v '^[a-zA-Z]'|grep -o '\b.*[0-9]x[0-9]*\b'|sort -rn|awk '!seen[$0]++')"
845+ [ $( echo " $PRIMDISPL_RES " | cut -d' x' -f2) -le 1024 ] && \
846+ export YADSCROLL=1
835847 else
836848 print_error yad " xrandr not found in your system!"
837849 fi
@@ -1116,8 +1128,8 @@ check_musthave_dll() {
11161128 then
11171129 export UPDPFX_LOG=" $WINEPREFIX /update_pfx.log"
11181130 print_info notify " Try to install DLL in prefix: [ $NEED_INSTALL_DLLS ]"
1119- $TERM_APP $LWSHELL -c " print_info 'Try to install DLL in prefix: [ $NEED_INSTALL_DLLS ]'|& tee -a '$UPDPFX_LOG ' \
1120- && winetricks -q -f -r $NEED_INSTALL_DLLS |& tee -a '$UPDPFX_LOG '"
1131+ $TERM_APP $LWSHELL -c " print_info 'Try to install DLL in prefix: [ $NEED_INSTALL_DLLS ]'|& tee -a '$UPDPFX_LOG ' ; \
1132+ winetricks -q -f -r $NEED_INSTALL_DLLS |& tee -a '$UPDPFX_LOG '"
11211133 while read WTRXDLL
11221134 do
11231135 if [ ! -n " $( grep -wo " $WTRXDLL " " $WTRX_LOG " 2> /dev/null) " ]
@@ -3027,29 +3039,29 @@ winetricks() {
30273039 fi
30283040 if [ " $SYS_WINETRICKS " == 1 ]
30293041 then
3030- if [ -n " $( which winetricks 2> /dev/null ) " ]
3042+ if [ -x " /usr/bin/winetricks " ]
30313043 then
30323044 print_info notify " Using System winetricks!"
30333045 if [[ ! -n " $NEED_INSTALL_DLLS " && ! -n " $WTRX_ARG " && -n " $WTRX_RUN " ]] \
30343046 || [[ ! -n " $NEED_INSTALL_DLLS " && ! -n " $WTRX_ARG " && -n " $LU_EXE " && -n " $WTRX_RUN " ]] \
30353047 || [[ ! -n " $NEED_INSTALL_DLLS " && ! -n " $WTRX_ARG " && -n " $LU_EXE " && ! -n " $WTRX_RUN " ]]
30363048 then
3037- $TERM_APP $LWSHELL -c " print_info 'Using System winetricks!!' \
3038- && DISABLE_MANGOHUD=1 DISABLE_VKBASALT=1 ' $( which winetricks) ' "
3049+ $TERM_APP $LWSHELL -c " print_info 'Using System winetricks!!' ; \
3050+ DISABLE_MANGOHUD=1 DISABLE_VKBASALT=1 /usr/bin/ winetricks"
30393051 elif [[ -n " $NEED_INSTALL_DLLS " && ! -n " $WTRX_ARG " && ! -n " $WTRX_RUN " ]]
30403052 then
3041- DISABLE_MANGOHUD=1 DISABLE_VKBASALT=1 " $( which winetricks) " $@ || return 1
3053+ DISABLE_MANGOHUD=1 DISABLE_VKBASALT=1 /usr/bin/ winetricks $@ || return 1
30423054 elif [[ ! -n " $NEED_INSTALL_DLLS " && -n " $WTRX_ARG " ]]
30433055 then
3044- DISABLE_MANGOHUD=1 DISABLE_VKBASALT=1 " $( which winetricks) " $WTRX_ARG || return 1
3056+ DISABLE_MANGOHUD=1 DISABLE_VKBASALT=1 /usr/bin/ winetricks $WTRX_ARG || return 1
30453057 fi
30463058 else
30473059 print_error yad " Winetricks" " Winetricks not found in your system. Using Lutris Wine winetricks!"
30483060 check_winetricks
30493061 if [[ ! -n " $WTRX_ARG " && -n " $WTRX_RUN " ]]
30503062 then
3051- $TERM_APP $LWSHELL -c " print_info 'Using Lutris Wine winetricks!' \
3052- && DISABLE_MANGOHUD=1 DISABLE_VKBASALT=1 '$LW_WTRX_DIR /winetricks'"
3063+ $TERM_APP $LWSHELL -c " print_info 'Using Lutris Wine winetricks!' ; \
3064+ DISABLE_MANGOHUD=1 DISABLE_VKBASALT=1 '$LW_WTRX_DIR /winetricks'"
30533065 elif [[ ! -n " $WTRX_ARG " && ! -n " $WTRX_RUN " ]]
30543066 then
30553067 DISABLE_MANGOHUD=1 DISABLE_VKBASALT=1 " $LW_WTRX_DIR /winetricks" $@ || return 1
@@ -3064,8 +3076,8 @@ winetricks() {
30643076 || [[ ! -n " $NEED_INSTALL_DLLS " && ! -n " $WTRX_ARG " && -n " $LU_EXE " && -n " $WTRX_RUN " ]] \
30653077 || [[ ! -n " $NEED_INSTALL_DLLS " && ! -n " $WTRX_ARG " && -n " $LU_EXE " && ! -n " $WTRX_RUN " ]]
30663078 then
3067- $TERM_APP $LWSHELL -c " print_info 'Using Lutris Wine winetricks!' \
3068- && DISABLE_MANGOHUD=1 DISABLE_VKBASALT=1 '$LW_WTRX_DIR /winetricks'"
3079+ $TERM_APP $LWSHELL -c " print_info 'Using Lutris Wine winetricks!' ; \
3080+ DISABLE_MANGOHUD=1 DISABLE_VKBASALT=1 '$LW_WTRX_DIR /winetricks'"
30693081 elif [[ -n " $NEED_INSTALL_DLLS " && ! -n " $WTRX_ARG " && ! -n " $WTRX_RUN " ]]
30703082 then
30713083 DISABLE_MANGOHUD=1 DISABLE_VKBASALT=1 " $LW_WTRX_DIR /winetricks" $@ || return 1
@@ -4188,6 +4200,8 @@ check_vkd3d() {
41884200 then
41894201 wdllover_upd " $( echo $check_dlls_slk | sed ' s/.dll//g' | tr ' ' ' ,' ) =n"
41904202 export VKD3D_FEATURE_LEVEL=12_0
4203+ try_mkdir " $LW_DEF_CACHE /vkd3d_cache"
4204+ export VKD3D_SHADER_CACHE_PATH=" $LW_DEF_CACHE /vkd3d_cache"
41914205 unset GIT_RELEASE_URL
41924206 else
41934207 export VKD3D=0
@@ -4732,7 +4746,7 @@ check_terminal() {
47324746 export TERM_APP=" $LW_TERM_APP -e"
47334747 elif [ -n " $( echo " $LW_TERM_APP " | grep -wo " xfce4-terminal" ) " ]
47344748 then
4735- export TERM_APP=" $LW_TERM_APP $TERM_HOLD -x"
4749+ export TERM_APP=" $LW_TERM_APP --disable-server $TERM_HOLD -x"
47364750 elif [ -n " $( echo " $LW_TERM_APP " | grep -wo " xterm" ) " ]
47374751 then
47384752 export TERM_APP=" $LW_TERM_APP -bg black -fg white $TERM_HOLD -e"
@@ -4760,7 +4774,7 @@ check_terminal() {
47604774 export TERM_APP=" lxterminal -e"
47614775 elif [ -n " $( which xfce4-terminal 2> /dev/null) " ]
47624776 then
4763- export TERM_APP=" xfce4-terminal $TERM_HOLD -x"
4777+ export TERM_APP=" xfce4-terminal --disable-server $TERM_HOLD -x"
47644778 else
47654779 check_hold_terminal xterm
47664780 export TERM_APP=" xterm -bg black -fg white $TERM_HOLD -e"
@@ -5743,7 +5757,7 @@ lu_backupunmnt() {
57435757}
57445758
57455759
5746- if [ $( id -u ) -eq 0 ]
5760+ if [[ " $EUID " == 0 && " $ALLOW_ROOT " != 1 ] ]
57475761 then
57485762 print_error yad " Don't run Lutris Wine as root!"
57495763 exit 1
0 commit comments