forked from CastroFidel/PortWINE
Scripts version 1053
This commit is contained in:
@ -1,5 +1,6 @@
|
||||
#!/bin/bash
|
||||
# Author: PortWINE-Linux.ru
|
||||
export pw_full_command_line=("$0" $*)
|
||||
if [ -f "$1" ]; then
|
||||
export portwine_exe="$(readlink -f "$1")"
|
||||
fi
|
||||
@ -45,22 +46,21 @@ PORTWINE_CREATE_SHORTCUT () {
|
||||
rm -f "${PORTPROTON_PATH}/"*.ico
|
||||
rm -f "${PORTPROTON_PATH}/"*.png
|
||||
fi
|
||||
if [ $? -eq 1 ] ; then exit 1 ; fi
|
||||
if [ ! -z "${PORTWINE_DB}" ]; then
|
||||
PORTWINE_DB_FILE=`grep -il "\#${PORTWINE_DB}.exe" "${PORT_SCRIPTS_PATH}/portwine_db"/*`
|
||||
if [ ! -z "${PORTWINE_DB_FILE}" ] && [ -z "${PW_VULKAN_USE}" ]; then
|
||||
if [ ! -z "${PORTWINE_DB_FILE}" ] && [ -z "`cat "${PORTWINE_DB_FILE}" | grep "export PW_VULKAN_USE=" | grep -v "#"`" ] ; then
|
||||
echo "export PW_VULKAN_USE=${PW_VULKAN_USE}" >> "${PORTWINE_DB_FILE}"
|
||||
elif [ -z "${PORTWINE_DB_FILE}" ]; then
|
||||
echo "#!/bin/bash
|
||||
#Author: "${USER}"
|
||||
#"${PORTWINE_DB}.exe"
|
||||
#Rating=1-5
|
||||
################################################
|
||||
export PW_VULKAN_USE=${PW_VULKAN_USE}" > "${PORT_SCRIPTS_PATH}/portwine_db/$PORTWINE_DB"
|
||||
cat "${PORT_SCRIPTS_PATH}/portwine_db/default" | grep "##" >> "${PORT_SCRIPTS_PATH}/portwine_db/$PORTWINE_DB"
|
||||
echo "#!/bin/bash" > "${PORT_SCRIPTS_PATH}/portwine_db/$PORTWINE_DB"
|
||||
echo "#Author: "${USER}"" >> "${PORT_SCRIPTS_PATH}/portwine_db/$PORTWINE_DB"
|
||||
echo "#"${PORTWINE_DB}.exe"" >> "${PORT_SCRIPTS_PATH}/portwine_db/$PORTWINE_DB"
|
||||
echo "#Rating=1-5" >> "${PORT_SCRIPTS_PATH}/portwine_db/$PORTWINE_DB"
|
||||
echo "########################################################" >> "${PORT_SCRIPTS_PATH}/portwine_db/$PORTWINE_DB"
|
||||
echo "export PW_VULKAN_USE=${PW_VULKAN_USE}" >> "${PORT_SCRIPTS_PATH}/portwine_db/$PORTWINE_DB"
|
||||
cat "${PORT_SCRIPTS_PATH}/portwine_db/default" | grep "##" >> "${PORT_SCRIPTS_PATH}/portwine_db/$PORTWINE_DB"
|
||||
fi
|
||||
fi
|
||||
name_desktop="${PORTPROTON_NAME}"
|
||||
name_desktop="${PORTPROTON_NAME}"
|
||||
echo "[Desktop Entry]" > "${PORT_WINE_PATH}/${name_desktop}.desktop"
|
||||
echo "Name=${PORTPROTON_NAME}" >> "${PORT_WINE_PATH}/${name_desktop}.desktop"
|
||||
if [ -z "${PW_CHECK_AUTOINSTAL}" ]
|
||||
@ -167,7 +167,9 @@ PORTWINE_DEBUG () {
|
||||
sleep 1 && zenity --info --title "DEBUG" --text "${port_debug}" --no-wrap &> /dev/null && KILL_PORTWINE
|
||||
deb_text=$(cat "${PORT_WINE_PATH}/${portname}.log" | awk '! a[$0]++')
|
||||
echo "$deb_text" > "${PORT_WINE_PATH}/${portname}.log"
|
||||
xdg-open "${PORT_WINE_PATH}/${portname}.log"
|
||||
yad --title="${portname}.log" --borders=10 --no-buttons --text-align=center \
|
||||
--text-info --show-uri --wrap --center --width=1200 --height=550 \
|
||||
--filename="${PORT_WINE_PATH}/${portname}.log"
|
||||
}
|
||||
PW_WINECFG () {
|
||||
START_PORTWINE
|
||||
@ -213,7 +215,7 @@ if [ ! -z "${portwine_exe}" ]; then
|
||||
--button='EDIT DB'!!"${loc_edit_db} ${PORTWINE_DB}":118 \
|
||||
--button='CREATE SHORTCUT'!!"${loc_creat_shortcut}":100 \
|
||||
--button='DEBUG'!!"${loc_debug}":102 \
|
||||
--button='LAUNCH'!!"${loc_launch}":106 &> /dev/null )
|
||||
--button='LAUNCH'!!"${loc_launch}":106 )
|
||||
PW_YAD_SET="$?"
|
||||
elif [ ! -z "${PORTWINE_DB_FILE}" ] && [ -z "${PW_VULKAN_USE}" ]; then
|
||||
if [ -z "${PW_COMMENT_DB}" ] ; then
|
||||
@ -222,21 +224,23 @@ if [ ! -z "${portwine_exe}" ]; then
|
||||
OUTPUT_START=$("${pw_yad}" --text-align=center --text "$PW_COMMENT_DB" --wrap-width=150 --borders=15 --form --center \
|
||||
--title "$portname" --image "$PW_GUI_ICON_PATH/port_proton.png" --separator=";" \
|
||||
--window-icon="$PW_GUI_ICON_PATH/port_proton.png" \
|
||||
--field="WINE:CB" "DXVK"!"VKD3D"!"OPENGL" \
|
||||
--field="Run with :CB" "DXVK (DX 9-11 to Vulkan)"\!"VKD3D (DX 12 to Vulkan)"\!"OPENGL " \
|
||||
--button='EDIT DB'!!"${loc_edit_db} ${PORTWINE_DB}":118 \
|
||||
--button='CREATE SHORTCUT'!!"${loc_creat_shortcut}":100 \
|
||||
--button='DEBUG'!!"${loc_debug}":102 \
|
||||
--button='LAUNCH'!!"${loc_launch}":106 &> /dev/null )
|
||||
--button='LAUNCH'!!"${loc_launch}":106 )
|
||||
PW_YAD_SET="$?"
|
||||
export VULKAN_MOD=`echo "$OUTPUT_START" | awk '{print $1}'`
|
||||
else
|
||||
OUTPUT_START=$("${pw_yad}" --wrap-width=250 --borders=15 --form --center \
|
||||
--title "$portname" --image "$PW_GUI_ICON_PATH/port_proton.png" --separator=";" \
|
||||
--window-icon="$PW_GUI_ICON_PATH/port_proton.png" \
|
||||
--field="WINE:CB" "DXVK"!"VKD3D"!"OPENGL" \
|
||||
--field="Run with :CB" "DXVK (DX 9-11 to Vulkan)"\!"VKD3D (DX 12 to Vulkan)"\!"OPENGL " \
|
||||
--button='CREATE SHORTCUT'!!"${loc_creat_shortcut}":100 \
|
||||
--button='DEBUG'!!"${loc_debug}":102 \
|
||||
--button='LAUNCH'!!"${loc_launch}":106 &> /dev/null )
|
||||
--button='LAUNCH'!!"${loc_launch}":106 )
|
||||
PW_YAD_SET="$?"
|
||||
export VULKAN_MOD=`echo "$OUTPUT_START" | awk '{print $1}'`
|
||||
fi
|
||||
elif [ ! -z "${PORTWINE_DB_FILE}" ]; then
|
||||
PORTWINE_LAUNCH
|
||||
@ -244,24 +248,37 @@ if [ ! -z "${portwine_exe}" ]; then
|
||||
OUTPUT_START=$("${pw_yad}" --wrap-width=250 --borders=15 --form --center \
|
||||
--title "$portname" --image "$PW_GUI_ICON_PATH/port_proton.png" --separator=";" \
|
||||
--window-icon="$PW_GUI_ICON_PATH/port_proton.png" \
|
||||
--field="WINE:CB" "DXVK"!"VKD3D"!"OPENGL" \
|
||||
--field="Run with :CB" "DXVK (DX 9-11 to Vulkan)"\!"VKD3D (DX 12 to Vulkan)"\!"OPENGL " \
|
||||
--button='CREATE SHORTCUT'!!"${loc_creat_shortcut}":100 \
|
||||
--button='DEBUG'!!"${loc_debug}":102 \
|
||||
--button='LAUNCH'!!"${loc_launch}":106 &> /dev/null )
|
||||
--button='LAUNCH'!!"${loc_launch}":106 )
|
||||
PW_YAD_SET="$?"
|
||||
export VULKAN_MOD=`echo "$OUTPUT_START" | awk '{print $1}'`
|
||||
fi
|
||||
else
|
||||
button_click () {
|
||||
echo "$1" > "${PORT_WINE_TMP_PATH}/tmp_yad_form"
|
||||
[ ! -z "$1" ] && echo "$1" > "${PORT_WINE_TMP_PATH}/tmp_yad_form"
|
||||
if [ ! -z `pidof -s yad` ] ; then
|
||||
kill -s SIGUSR1 `pgrep -a yad | grep "\-\-key=${KEY} \-\-notebook" | awk '{print $1}'`
|
||||
fi
|
||||
}
|
||||
export -f button_click
|
||||
export KEY=$RANDOM
|
||||
|
||||
open_changelog () {
|
||||
yad --title="Changelog" --borders=10 --no-buttons --text-align=center \
|
||||
--text-info --show-uri --wrap --center --width=1200 --height=550 \
|
||||
--filename="${PORT_WINE_PATH}/data/changelog"
|
||||
}
|
||||
export -f open_changelog
|
||||
|
||||
export KEY=$RANDOM
|
||||
"${pw_yad}" --plug=$KEY --tabnum=2 --form --columns=2 --scroll \
|
||||
--field=" Wargaming Game Center"!"$PW_GUI_ICON_PATH/wgc.png":"BTN" '@bash -c "button_click PW_WGC"' & \
|
||||
--field=" Wargaming Game Center"!"$PW_GUI_ICON_PATH/wgc.png":"BTN" '@bash -c "button_click PW_WGC"' \
|
||||
--field=" Battle.net Launcher"!"$PW_GUI_ICON_PATH/battle_net.png":"BTN" '@bash -c "button_click PW_BATTLE_NET"' \
|
||||
--field=" Epic Games Launcher"!"$PW_GUI_ICON_PATH/epicgames.png":"BTN" '@bash -c "button_click PW_EPIC"' \
|
||||
--field=" GoG Galaxy Launcher"!"$PW_GUI_ICON_PATH/gog.png":"BTN" '@bash -c "button_click PW_GOG"' \
|
||||
--field=" EVE Online Launcher"!"$PW_GUI_ICON_PATH/eve.png":"BTN" '@bash -c "button_click PW_EVE"' \
|
||||
--field=" Origin Launcher"!"$PW_GUI_ICON_PATH/origin.png":"BTN" '@bash -c "button_click PW_ORIGIN"' & \
|
||||
|
||||
"${pw_yad}" --plug=${KEY} --tabnum=1 --columns=3 --form --separator=";" \
|
||||
--image "$PW_GUI_ICON_PATH/port_proton.png" \
|
||||
@ -269,33 +286,36 @@ else
|
||||
--field=":LBL" "" \
|
||||
--field='DEBUG'!!"${loc_debug}":"BTN" '@bash -c "button_click DEBUG"' \
|
||||
--field='WINECFG'!!"${loc_winecfg}":"BTN" '@bash -c "button_click WINECFG"' \
|
||||
--field=":RO" " ${portname} ver.: ${install_ver}" \
|
||||
--field="${portname}-${install_ver} (${scripts_install_ver})"!!"":"FBTN" '@bash -c "open_changelog"' \
|
||||
--field=":LBL" "" \
|
||||
--field='WINEFILE'!!"${loc_winefile}":"BTN" '@bash -c "button_click WINEFILE"' \
|
||||
--field='WINECMD'!!"${loc_winecmd}":"BTN" '@bash -c "button_click WINECMD"' \
|
||||
--field=":RO" " Scripts ver.: ${scripts_install_ver}" \
|
||||
--field="F.A.Q."!!"":"FBTN" '@bash -c "xdg-open https://portwine-linux.ru/portwine-faq/ ; button_click"' \
|
||||
--field=":LBL" "" \
|
||||
--field='WINEREG'!!"${loc_winereg}":"BTN" '@bash -c "button_click WINEREG"' \
|
||||
--field='WINETRICKS'!!"${loc_winetricks}":"BTN" '@bash -c "button_click WINETRICKS"' &> "${PORT_WINE_TMP_PATH}/tmp_yad_form_vulkan" & \
|
||||
|
||||
"${pw_yad}" --key=$KEY --notebook --borders=10 --width=800 --height=50 --no-buttons --text-align=center \
|
||||
--on-top --window-icon="$PW_GUI_ICON_PATH/port_proton.png" --title "$portname" --separator=";" \
|
||||
"${pw_yad}" --key=$KEY --notebook --borders=10 --width=1000 --height=168 --no-buttons --text-align=center \
|
||||
--window-icon="$PW_GUI_ICON_PATH/port_proton.png" --title "$portname" --separator=";" \
|
||||
--tab-pos=right --tab="PORT_PROTON" --tab="AUTOINSTALL" --center
|
||||
|
||||
export PW_YAD_SET=`cat "${PORT_WINE_TMP_PATH}/tmp_yad_form" | head -n 1 | awk '{print $1}'`
|
||||
try_remove_file "${PORT_WINE_TMP_PATH}/tmp_yad_form"
|
||||
echo "PW_YAD_SET=${PW_YAD_SET}"
|
||||
export OUTPUT_START=`cat "${PORT_WINE_TMP_PATH}/tmp_yad_form_vulkan" | grep \;\; | awk '{print $1}'`
|
||||
try_remove_file "${PORT_WINE_TMP_PATH}/tmp_yad_form_vulkan"
|
||||
echo "OUTPUT_START=$OUTPUT_START"
|
||||
if [ -f "${PORT_WINE_TMP_PATH}/tmp_yad_form" ] ; then
|
||||
export PW_YAD_SET=`cat "${PORT_WINE_TMP_PATH}/tmp_yad_form" | head -n 1 | awk '{print $1}'`
|
||||
try_remove_file "${PORT_WINE_TMP_PATH}/tmp_yad_form"
|
||||
fi
|
||||
if [ -f "${PORT_WINE_TMP_PATH}/tmp_yad_form_vulkan" ] ; then
|
||||
export VULKAN_MOD=`cat "${PORT_WINE_TMP_PATH}/tmp_yad_form_vulkan" | grep \;\; | awk '{print $1}'`
|
||||
try_remove_file "${PORT_WINE_TMP_PATH}/tmp_yad_form_vulkan"
|
||||
fi
|
||||
fi
|
||||
|
||||
export VULKAN_MOD=$(echo $OUTPUT_START | awk 'BEGIN {FS=";" } { print $1 }')
|
||||
if [ "${VULKAN_MOD}" = "DXVK" ] ; then export PW_VULKAN_USE="dxvk"
|
||||
elif [ "${VULKAN_MOD}" = "VKD3D" ]; then export PW_VULKAN_USE="vkd3d"
|
||||
elif [ "${VULKAN_MOD}" = "OPENGL" ]; then export PW_VULKAN_USE="0"
|
||||
if [ ! -z "${VULKAN_MOD}" ] ; then
|
||||
if [ "${VULKAN_MOD}" = "DXVK" ] ; then export PW_VULKAN_USE="dxvk"
|
||||
elif [ "${VULKAN_MOD}" = "VKD3D" ]; then export PW_VULKAN_USE="vkd3d"
|
||||
elif [ "${VULKAN_MOD}" = "OPENGL" ]; then export PW_VULKAN_USE="0"
|
||||
fi
|
||||
fi
|
||||
case "$PW_YAD_SET" in
|
||||
1|252) exit 0 ;;
|
||||
100) PORTWINE_CREATE_SHORTCUT ;;
|
||||
DEBUG|102) PORTWINE_DEBUG ;;
|
||||
106) PORTWINE_LAUNCH ;;
|
||||
|
Reference in New Issue
Block a user