VHSgunzo
commited on
Commit
·
c9f87bc
1
Parent(s):
446c6a1
v0.78.3.3
Browse files- CHANGELOG.md +23 -0
- README.md +37 -47
- applications/rmapp.desktop +2 -2
- db/ACOdyssey.lwdb +0 -1
- db/game.lwdb +1 -1
- lutris-wine +1 -1
- lux-wine +251 -180
- lwrap/PKGBUILD +3 -3
- lwrap/lwrap.install +3 -0
- main.zip +2 -2
CHANGELOG.md
CHANGED
@@ -1,3 +1,26 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
# v0.78.3.2
|
2 |
|
3 |
* Fix exit error on install init
|
|
|
1 |
+
# v0.78.3.3
|
2 |
+
|
3 |
+
* Update [lwrun](https://huggingface.co/lux-wine/lwrun/tree/main/releases/v0.39.1) packages
|
4 |
+
* Update [GE-Proton](https://github.com/VHSgunzo/ge-proton-lw/releases/tag/v9.1) `v9.1`
|
5 |
+
* Update [lw-runtime](https://github.com/VHSgunzo/lw-runtime/releases/tag/v0.0.3) `v0.0.3`
|
6 |
+
* Fix showing notify
|
7 |
+
* Update DB script for `Infernal`
|
8 |
+
* Update DB script for `Assassin's Creed Odyssey`
|
9 |
+
* Disable check default Wine for some arguments
|
10 |
+
* Fix run Debug if in EXEs path exist single quotes
|
11 |
+
* Add editable for `Wine version` field in settings
|
12 |
+
* Add question for restore from default prefix backup if custom Wine prifix doesn't exist
|
13 |
+
* Add run `console` EXEs in terminal
|
14 |
+
* Fix `Wine manager` lists
|
15 |
+
* Add `GTK theme` selector to settings (from $HOME/.themes)
|
16 |
+
* Add `WINE_CPU_TOPOLOGY` for `CPU limit`
|
17 |
+
* Add open apps settings with `-appcfg` arg
|
18 |
+
* Add linking for Steam Proton's `9.0 (Beta)` `Hotfix`
|
19 |
+
* Add linking Proton's GE from LW `Wine manager` to `Steam` ($HOME/.local/share/Steam/compatibilitytools.d)
|
20 |
+
* Update `README.md`
|
21 |
+
* Replace `firefox` with `chromium` in `lwrun` container
|
22 |
+
* Minor fixes
|
23 |
+
|
24 |
# v0.78.3.2
|
25 |
|
26 |
* Fix exit error on install init
|
README.md
CHANGED
@@ -1,13 +1,3 @@
|
|
1 |
-
---
|
2 |
-
title: Git
|
3 |
-
emoji: 🔥
|
4 |
-
colorFrom: green
|
5 |
-
colorTo: blue
|
6 |
-
sdk: static
|
7 |
-
pinned: false
|
8 |
-
license: mit
|
9 |
-
---
|
10 |
-
|
11 |
# **Lux Wine**
|
12 |
This project allows you to easily run your favorite applications and games for Windows on almost any Linux x86_64 distribution using a specially configured Wine/Proton and [RunImage](https://github.com/VHSgunzo/runimage) container. Lux Wine also comes with a native Steam, which allows you not to think about installing a large number of libraries into your system (especially 32-bit ones) for its work.
|
13 |
|
@@ -25,7 +15,7 @@ curl -sL lwrap.github.io|bash
|
|
25 |
```
|
26 |
* HF mirror:
|
27 |
```
|
28 |
-
curl -sL lux-wine-git.static.hf.space|bash
|
29 |
```
|
30 |
|
31 |
* or with `wget`:
|
@@ -34,7 +24,7 @@ wget -qO - lwrap.github.io|bash
|
|
34 |
```
|
35 |
* HF mirror:
|
36 |
```
|
37 |
-
wget -qO - lux-wine-git.static.hf.space|bash
|
38 |
```
|
39 |
|
40 |
## Video of the installation process:
|
@@ -51,42 +41,42 @@ wget -qO - lux-wine-git.static.hf.space|bash
|
|
51 |
┌──[user@linux]─[~]
|
52 |
└──╼ $ lwrap {lwrap arg} blabla.exe {exe args}
|
53 |
|
54 |
-
-explorer
|
55 |
-
-cmd
|
56 |
-
-shell
|
57 |
-
-config
|
58 |
-
-
|
59 |
-
-
|
60 |
-
-
|
61 |
-
-
|
62 |
-
-
|
63 |
-
-
|
64 |
-
-
|
65 |
-
-
|
66 |
-
-
|
67 |
-
-
|
68 |
-
-
|
69 |
-
-
|
70 |
-
-
|
71 |
-
-
|
72 |
-
-
|
73 |
-
-
|
74 |
-
-
|
75 |
-
-
|
76 |
-
-
|
77 |
-
-
|
78 |
-
-
|
79 |
-
-
|
80 |
-
-
|
81 |
-
-
|
82 |
-
-
|
83 |
-
-
|
84 |
-
-
|
85 |
-
-
|
86 |
-
-update {all}
|
87 |
{dx|dxvk} {vkd|vkd3d} {d3d|d3d_extras|d3d-extras} {eac|eac_runtime}
|
88 |
-
{dxnv|dxvk-nvapi|dxvk_nvapi} {
|
89 |
-
{
|
90 |
```
|
91 |
|
92 |
### **Forced re/install Lux Wine**:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
# **Lux Wine**
|
2 |
This project allows you to easily run your favorite applications and games for Windows on almost any Linux x86_64 distribution using a specially configured Wine/Proton and [RunImage](https://github.com/VHSgunzo/runimage) container. Lux Wine also comes with a native Steam, which allows you not to think about installing a large number of libraries into your system (especially 32-bit ones) for its work.
|
3 |
|
|
|
15 |
```
|
16 |
* HF mirror:
|
17 |
```
|
18 |
+
curl -sL lux-wine-git.static.hf.space|sed 1d|bash
|
19 |
```
|
20 |
|
21 |
* or with `wget`:
|
|
|
24 |
```
|
25 |
* HF mirror:
|
26 |
```
|
27 |
+
wget -qO - lux-wine-git.static.hf.space|sed 1d|bash
|
28 |
```
|
29 |
|
30 |
## Video of the installation process:
|
|
|
41 |
┌──[user@linux]─[~]
|
42 |
└──╼ $ lwrap {lwrap arg} blabla.exe {exe args}
|
43 |
|
44 |
+
-explorer Wine explorer
|
45 |
+
-cmd Open CMD or open file in CMD
|
46 |
+
-shell Open SHELL or open file in SHELL
|
47 |
+
-config Settings
|
48 |
+
-regedit Registry editor
|
49 |
+
-control Control panel
|
50 |
+
-winecfg Wine settings
|
51 |
+
-winemgr {delonly} Wine manager
|
52 |
+
-taskmgr Task manager
|
53 |
+
-uninstaller Wine uninstaller
|
54 |
+
-winetricks {arguments} Winetricks
|
55 |
+
-openpfx Open drive C:\
|
56 |
+
-killwine Kill Wine processes
|
57 |
+
-killtray Kill tray
|
58 |
+
-killexe Kill running EXE
|
59 |
+
-killshell Kill SHELL
|
60 |
+
-exit Force exit
|
61 |
+
-clearpfx Clear prefix
|
62 |
+
-shortcut Create shortcut
|
63 |
+
-debug DEBUG
|
64 |
+
-help Show this usage info
|
65 |
+
-version Show version info
|
66 |
+
-tray {noclose} Tray
|
67 |
+
-init Forced initialization
|
68 |
+
-pfxbackup {xz} Create prefix backup
|
69 |
+
-pfxrestore Restore prefix from backup
|
70 |
+
-backupmnt Mount prefix backup
|
71 |
+
-backupunmnt Unmount prefix backup
|
72 |
+
-lsapp Show a list of applications
|
73 |
+
-runapp {num|name} Launch the application
|
74 |
+
-rmapp {num|name|all} Remove application shortcut
|
75 |
+
-appcfg {num|name|resetall} Applications settings
|
76 |
+
-update {all} Runtime updater
|
77 |
{dx|dxvk} {vkd|vkd3d} {d3d|d3d_extras|d3d-extras} {eac|eac_runtime}
|
78 |
+
{nvml|wine_nvml} {dxnv|dxvk-nvapi|dxvk_nvapi} {wtrx|winetricks}
|
79 |
+
{bat|battleye|battleye_runtime} {dg|dgvoodoo2}
|
80 |
```
|
81 |
|
82 |
### **Forced re/install Lux Wine**:
|
applications/rmapp.desktop
CHANGED
@@ -3,8 +3,8 @@ Categories=Lux Wine
|
|
3 |
Exec="/usr/bin/lux-wine" -rmapp %f
|
4 |
Icon=/usr/share/lux-wine/icons/lw_default_icon.png
|
5 |
MimeType=application/x-ms-dos-executable;application/x-msdos-program;text/win-bat;application/x-ms-shortcut;text/x-ms-regedit;application/x-msi
|
6 |
-
Name=Remove
|
7 |
-
Name[ru_RU]=Удалить
|
8 |
NoDisplay=false
|
9 |
StartupNotify=true
|
10 |
Terminal=0
|
|
|
3 |
Exec="/usr/bin/lux-wine" -rmapp %f
|
4 |
Icon=/usr/share/lux-wine/icons/lw_default_icon.png
|
5 |
MimeType=application/x-ms-dos-executable;application/x-msdos-program;text/win-bat;application/x-ms-shortcut;text/x-ms-regedit;application/x-msi
|
6 |
+
Name=Remove shortcut
|
7 |
+
Name[ru_RU]=Удалить ярлык
|
8 |
NoDisplay=false
|
9 |
StartupNotify=true
|
10 |
Terminal=0
|
db/ACOdyssey.lwdb
CHANGED
@@ -6,4 +6,3 @@ WINEARCH=win64
|
|
6 |
WINE_VERSION=System
|
7 |
USE_DEFPFX_BACKUP=1
|
8 |
MUST_HAVE_DLL=Disabled
|
9 |
-
WPREFIX_NAME=syswinepfx
|
|
|
6 |
WINE_VERSION=System
|
7 |
USE_DEFPFX_BACKUP=1
|
8 |
MUST_HAVE_DLL=Disabled
|
|
db/game.lwdb
CHANGED
@@ -9,7 +9,7 @@ infernal() {
|
|
9 |
then
|
10 |
physexe="$LW_DEF_TMP/PhysX.v2.5.2.exe"
|
11 |
if [ -f "$physexe" ]||try_download "https://github.com/VHSgunzo/wine-dlls/releases/download/physx-v2.5.2/PhysX.v2.5.2.exe" "$LW_DEF_TMP"
|
12 |
-
then sleep 0.5 ;
|
13 |
else
|
14 |
try_rm "$physexe" &>/dev/null
|
15 |
print_error yad "Failed to download PhysX v2.5.2!"
|
|
|
9 |
then
|
10 |
physexe="$LW_DEF_TMP/PhysX.v2.5.2.exe"
|
11 |
if [ -f "$physexe" ]||try_download "https://github.com/VHSgunzo/wine-dlls/releases/download/physx-v2.5.2/PhysX.v2.5.2.exe" "$LW_DEF_TMP"
|
12 |
+
then sleep 0.5 ; "$WINE" "$physexe" /VERYSILENT
|
13 |
else
|
14 |
try_rm "$physexe" &>/dev/null
|
15 |
print_error yad "Failed to download PhysX v2.5.2!"
|
lutris-wine
CHANGED
@@ -1 +1 @@
|
|
1 |
-
LW_VERSION="0.78.3.
|
|
|
1 |
+
LW_VERSION="0.78.3.3"
|
lux-wine
CHANGED
@@ -1,6 +1,6 @@
|
|
1 |
#!/usr/bin/env bash
|
2 |
|
3 |
-
export LW_VERSION="0.78.3.
|
4 |
export LW_DEVELOPERS="VHSgunzo"
|
5 |
|
6 |
export RED='\033[1;91m'
|
@@ -143,12 +143,15 @@ done
|
|
143 |
[ ! -n "$ZSTD_CMPRSS_LVL" ] && export ZSTD_CMPRSS_LVL="1"
|
144 |
[ ! -n "$SYS_LDLIBPTH" ] && export SYS_LDLIBPTH="$LD_LIBRARY_PATH"
|
145 |
[ ! -n "$SYS_STM_COMPAT_DIR" ] && export SYS_STM_COMPAT_DIR="/usr/share/steam/compatibilitytools.d"
|
|
|
146 |
[ ! -n "$DEF_MANGOHUDCFG" ] && export DEF_MANGOHUDCFG="gpu_text=GPU,cpu_color=2e97cb,cpu_text=CPU,io_color=a491d3,vram_color=ad64c1,ram_color=c26693,\
|
147 |
engine_color=eb5b5b,gpu_color=2e9762,wine_color=eb5b5b,frametime_color=00ff00,background_alpha=0.4,background_color=020202,position=top-right,\
|
148 |
text_color=ffffff,toggle_hud=Shift_R+F12,gpu_load_change,cpu_load_change,core_load_change,arch,cpu_mhz,cpu_temp,engine_version,gamemode,\
|
149 |
gpu_core_clock,gpu_mem_clock,gpu_name,gpu_power,gpu_temp,no_display,ram,resolution,show_fps_limit,time,vkbasalt,vram,vulkan_driver,wine"
|
150 |
-
[
|
151 |
-
|
|
|
|
|
152 |
|
153 |
export LWPID=$BASHPID
|
154 |
[ ! -n "$LWPPID" ] && \
|
@@ -213,6 +216,7 @@ check_def_config() {
|
|
213 |
[ ! -n "$CHKSTEAMAPPS" ] && export CHKSTEAMAPPS=1
|
214 |
[ ! -n "$RESIZABLE_BAR" ] && export RESIZABLE_BAR=1
|
215 |
[ ! -n "$DEFPFX_VERSION" ] && export DEFPFX_VERSION='v0.0.8'
|
|
|
216 |
export DEFPFX_URL="https://github.com/VHSgunzo/wine-prefix/releases/download/$DEFPFX_VERSION/defprefix.xz.lwpfx"
|
217 |
export DEFPFXDOTNET_URL="https://github.com/VHSgunzo/wine-prefix/releases/download/$DEFPFX_VERSION/defprefix_dotnet.xz.lwpfx"
|
218 |
export DEFPFXDOTNETDESKTOP_URL="https://github.com/VHSgunzo/wine-prefix/releases/download/$DEFPFX_VERSION/defprefix_dotnetdesktop.xz.lwpfx"
|
@@ -1213,8 +1217,7 @@ check_musthave_dll() {
|
|
1213 |
if [ -n "$NEED_INSTALL_DLLS" ]
|
1214 |
then
|
1215 |
export UPDPFX_LOG="$WINEPREFIX/update_pfx.log"
|
1216 |
-
print_info notify
|
1217 |
-
$TERM_APP $LWSHELL -c "print_info 'Try to install DLL in prefix: [ $NEED_INSTALL_DLLS ]'|& tee -a '$UPDPFX_LOG' ; \
|
1218 |
winetricks -q -f -r $NEED_INSTALL_DLLS|& tee -a '$UPDPFX_LOG'"
|
1219 |
while read WTRXDLL
|
1220 |
do
|
@@ -1569,15 +1572,15 @@ create_shortcut() {
|
|
1569 |
echo "Icon="$SHRT_ICON"" >> "$DESKF"
|
1570 |
echo "Actions=rmapp;config;openpfx;debug;cmd;explorer;control;regedit;winecfg;taskmgr;uninstaller;winetricks;clearpfx;pfxbackup;pfxrestore;killwine;version;init" >> "$DESKF"
|
1571 |
echo -e "\n[Desktop Action rmapp]" >> "$DESKF"
|
1572 |
-
echo "Name=Remove
|
1573 |
-
echo "Name[ru_RU]=Удалить
|
1574 |
echo "Icon="$SHRT_ICON"" >> "$DESKF"
|
1575 |
echo "Exec='$LW_SOURCE' -rmapp '$SHRT_NAME'" >> "$DESKF"
|
1576 |
echo -e "\n[Desktop Action config]" >> "$DESKF"
|
1577 |
echo "Name=Settings" >> "$DESKF"
|
1578 |
echo "Name[ru_RU]=Настройки" >> "$DESKF"
|
1579 |
echo "Icon="$SHRT_ICON"" >> "$DESKF"
|
1580 |
-
echo "Exec='$LW_SOURCE' -config $SHRTEXEPATH" >> "$DESKF"
|
1581 |
echo -e "\n[Desktop Action openpfx]" >> "$DESKF"
|
1582 |
echo "Name=Open drive C:\\\\\\" >> "$DESKF"
|
1583 |
echo "Name[ru_RU]=Открыть диск C:\\\\\\" >> "$DESKF"
|
@@ -1696,13 +1699,14 @@ lu_debug() {
|
|
1696 |
check_ld_library
|
1697 |
export PRINT_VARS="$(print_var "WINE_VERSION" "WINEDIR" "WINE" "WINEARCH" "WINEPREFIX" "WIN_VER" "WINEDLLOVERRIDES" "CHK_UPDATE" "NVPRIME" \
|
1698 |
"VKBASALT_EFFECTS" "WINE_MONO_OVERRIDES" "EXE_PATH" "LU_EXE" "VKD3D_CONFIG" "LD_LIBRARY_PATH" "PATH" "WINEDEBUG" "CPU_LIMIT" "VSYNC" \
|
1699 |
-
"VKD3D_DEBUG" "WINE_MONO_TRACE" "VKBASALT_LOG_LEVEL" "DXVK_LOG_LEVEL" "
|
1700 |
"LW_DIR" "LW_CFG" "GSTREAMER" "HIDE_NVIDIA_GPU" "EXE_LWDB" "EXE_LWDBFL" "GST_PLUGIN_SYSTEM_PATH_1_0" "WINE_GST_REGISTRY_DIR" "RUNSRC" "RUNROOTFS_VERSION" \
|
1701 |
"WINE_SANDBOX" "WINEFSYNC" "WINEFSYNC_FUTEX2" "WINE_FULLSCREEN_FSR" "WINE_FULLSCREEN_FSR_STRENGTH" "STAGING_SHARED_MEMORY" "WINEESYNC" "VKBASALT_LOG_FILE" \
|
1702 |
"LOG_FILE" "WINE_LARGE_ADDRESS_AWARE" "TERM_APP" "VKBASALT" "DXVK_NVAPIHACK" "MANGOHUD" "MANGOHUD_USER_CONF" "RUN_GAMEMODE" "VKD3D_LOG_FILE" \
|
1703 |
"VKBASALT_CONFIG_FILE" "VK_ICD_FILENAMES" "__GL_THREADED_OPTIMIZATIONS" "DXVK_STATE_CACHE_PATH" "__GLX_VENDOR_LIBRARY_NAME" "__NV_PRIME_RENDER_OFFLOAD" \
|
1704 |
"WINE_FULLSCREEN_FSR_MODE" "DXVK_STATE_CACHE" "__GL_DXVK_OPTIMIZATIONS" "__GL_SHADER_DISK_CACHE_PATH" "__GL_SHADER_DISK_CACHE" "__GL_SHADER_DISK_CACHE_SIZE" \
|
1705 |
-
"WD3DMODE" "MEDIACONV_AUDIO_DUMP_FILE" "MEDIACONV_AUDIO_TRANSCODED_FILE" "MEDIACONV_VIDEO_DUMP_FILE" "MEDIACONV_VIDEO_TRANSCODED_FILE" "LW_STEAMAPPS_DIR")
|
|
|
1706 |
export LD_LIBRARY_PATH="$SYS_LDLIBPTH"
|
1707 |
echo "---------------------------------------------------------------------------------------" >> "$TMP_DBG"
|
1708 |
echo "[ Date and time of start debug ] : $(date)" >> "$TMP_DBG"
|
@@ -1972,27 +1976,44 @@ updcfgchksum() {
|
|
1972 |
}
|
1973 |
|
1974 |
check_def_wine() {
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1975 |
setpfxdefwine() { echo "$1" > "$WINEPREFIX/.defwine" ; }
|
1976 |
def_wine_selector() {
|
|
|
1977 |
unset SETWINE
|
1978 |
export SETWINE="$(echo -e "\n$(echo "${LOCWINELST}$([ -n "$SYS_WINE" ] && echo -e '\nSystem')$([[ -n "$LU_EXE" \
|
1979 |
-
&& ! -n "$FIRST_RUN" ]] && echo -e '\nDefault')"|sed ':a;N;$!ba;s/\n/\n\n/g')"
|
1980 |
yad --window-icon="$LW_DEF_ICO" --title "Wine Manager" --column="" --column="Select default Wine:" \
|
1981 |
--width=400 --height=500 --list --radiolist --separator "\n" --button="EXIT:1" --button="OK:0" \
|
1982 |
--center --on-top 2>/dev/null|sed '/^TRUE$/d'|sed '/^$/d')"
|
|
|
1983 |
}
|
1984 |
export_wine_changes() {
|
1985 |
sed -i "s/WINE_VERSION.*/WINE_VERSION=\'$SETWINE\'/g" "$LW_CFG"
|
1986 |
export NEW_WINE_VERSION="$SETWINE"
|
1987 |
export OLD_WINE_VERSION="$WINE_VERSION"
|
1988 |
export OLD_WINE="$WINE"
|
|
|
|
|
|
|
1989 |
}
|
|
|
1990 |
IGNWINE=('Default' 'SETWINE' 'System' 'Proton 7.0' 'Proton 8.0' 'Proton - Experimental')
|
1991 |
-
if [[ -n "$WINE_VERSION" && ! -d "$LW_WINE_DIR/$WINE_VERSION" && \
|
1992 |
! -L "$LW_WINE_DIR/$WINE_VERSION" && ! "${IGNWINE[@]}" =~ "$WINE_VERSION" ]]
|
1993 |
then
|
1994 |
print_info notify "Trying to install Wine: $WINE_VERSION"
|
1995 |
-
try_dl_install_wine "$WINE_VERSION"
|
|
|
|
|
|
|
1996 |
fi
|
1997 |
(IFS=$'\n' ; for BINWINE in $(ls -1 -t "$LW_WINE_DIR" 2>/dev/null)
|
1998 |
do
|
@@ -2019,7 +2040,6 @@ check_def_wine() {
|
|
2019 |
fi
|
2020 |
fi
|
2021 |
done)
|
2022 |
-
LOCWINELST="$(ls -1 -t "$LW_WINE_DIR" 2>/dev/null)"
|
2023 |
if [[ ! -f "$WINE" && "$(echo "$LOCWINELST"|sedspaces|wc -l)" == 0 && -n "$SYS_WINE" ]]
|
2024 |
then
|
2025 |
print_info "System Wine found"
|
@@ -2042,22 +2062,10 @@ check_def_wine() {
|
|
2042 |
print_info yad "Wine Manager" "Wine is not installed, you must download Wine!"
|
2043 |
lu_winemgr
|
2044 |
check_def_wine
|
2045 |
-
elif [ ! -f "$WINE"
|
2046 |
-
&&
|
2047 |
-
|
2048 |
-
|
2049 |
-
then
|
2050 |
-
print_error yad "Wine Manager" "Default Wine not selected, you must select default Wine!"
|
2051 |
-
def_wine_selector
|
2052 |
-
if [ -n "$SETWINE" ]
|
2053 |
-
then
|
2054 |
-
export_wine_changes
|
2055 |
-
import_luwine_wcfg
|
2056 |
-
check_proton_d3dlib
|
2057 |
-
print_info notify "Wine $SETWINE selected as default!"
|
2058 |
-
else
|
2059 |
-
check_def_wine
|
2060 |
-
fi
|
2061 |
elif [[ -f "$WINE" && "$(echo "$LOCWINELST"|sedspaces|wc -l)" == 1 && "$WINE_VERSION" != "System" ]] \
|
2062 |
&& [ "$W_INST" == 1 ]; then :
|
2063 |
elif [ ! -f "$WINE" ] && [[ "$(echo "$LOCWINELST"|sedspaces|wc -l)" == 1 \
|
@@ -2066,22 +2074,12 @@ check_def_wine() {
|
|
2066 |
then
|
2067 |
export SETWINE="$(ls -1 -t "$LW_WINE_DIR" 2>/dev/null|grep -v '.*.tar.*'|head -1)"
|
2068 |
export_wine_changes
|
2069 |
-
import_luwine_wcfg
|
2070 |
-
check_proton_d3dlib
|
2071 |
-
print_info notify "Wine $SETWINE selected as default!"
|
2072 |
elif [ "$W_INST" == 1 ] \
|
2073 |
&& [[ ! -n "$P_DXVK" || ! -n "$P_NVAPI" || ! -n "$P_VKD3D" ]]
|
2074 |
then
|
2075 |
if [ ! -n "$(pgrep -fa yad|grep "Wine Manager"|awk '{print$1}')" ]
|
2076 |
-
then
|
2077 |
-
|
2078 |
-
if [ -n "$SETWINE" ]
|
2079 |
-
then
|
2080 |
-
export_wine_changes
|
2081 |
-
import_luwine_wcfg
|
2082 |
-
check_proton_d3dlib
|
2083 |
-
print_info notify "Wine $SETWINE selected as default!"
|
2084 |
-
fi
|
2085 |
else
|
2086 |
print_error yad "Wine Manager" "Wine Manager already runing!"
|
2087 |
fi
|
@@ -2089,9 +2087,6 @@ check_def_wine() {
|
|
2089 |
then
|
2090 |
export SETWINE="$(ls -1 -t "$LW_WINE_DIR" 2>/dev/null|grep -v '.*.tar.*'|head -1)"
|
2091 |
export_wine_changes
|
2092 |
-
import_luwine_wcfg
|
2093 |
-
check_proton_d3dlib
|
2094 |
-
print_info notify "Wine $SETWINE selected as default!"
|
2095 |
fi
|
2096 |
try_mkdir "$WINEPREFIX"
|
2097 |
PFXDEFWINE="$(cat "$WINEPREFIX/.defwine" 2>/dev/null)"
|
@@ -2241,11 +2236,13 @@ lu_run() {
|
|
2241 |
$RUN_VKCAPTURE $RUN_FPSLIMIT $RUN_GAMEMODE $RUN_MANGOHUD $RUN_CPU_LIMIT \
|
2242 |
"$WINE" $RUN_VDESKTOP "${EXE_WRAPPER[@]}" "${LU_EXEC[@]}" "${EXE_ARGS[@]}"
|
2243 |
}
|
|
|
|
|
2244 |
exec_with_log() {
|
2245 |
[[ "$E_LU_EXEC" =~ ^declare ]] && eval "$E_LU_EXEC"
|
2246 |
echo_dbg|& tee -a "$LOG_FILE" ; "${LU_EXEC[@]}"|& tee -a "$LOG_FILE"
|
2247 |
}
|
2248 |
-
export -f exec_wine echo_dbg exec_with_log
|
2249 |
pre_launch 2>/dev/null
|
2250 |
shrt_loop &
|
2251 |
dis_displ_sw 2>/dev/null
|
@@ -2274,14 +2271,13 @@ lu_run() {
|
|
2274 |
else $TERM_APP $LWSHELL
|
2275 |
fi
|
2276 |
else
|
2277 |
-
$TERM_APP $LWSHELL -c
|
2278 |
clear_log 2>/dev/null
|
2279 |
$LW_EDITOR "$LOG_FILE" 2>/dev/null &
|
2280 |
fi
|
2281 |
elif [ "$LOG" == 1 ]
|
2282 |
then
|
2283 |
-
|
2284 |
-
exec_wine|& tee -a "$LOG_FILE"
|
2285 |
clear_log 2>/dev/null
|
2286 |
$LW_EDITOR "$LOG_FILE" 2>/dev/null &
|
2287 |
elif [ "$TERMINAL" == 1 ]
|
@@ -2305,8 +2301,8 @@ lu_run() {
|
|
2305 |
else
|
2306 |
if [ "$LU_LNK" == 1 ]
|
2307 |
then
|
2308 |
-
export TMP_OUT=
|
2309 |
-
$TERM_APP $LWSHELL -c
|
2310 |
else
|
2311 |
$TERM_APP $LWSHELL -c 'echo_dbg ; exec_wine'
|
2312 |
fi
|
@@ -2379,6 +2375,8 @@ check_startfile() {
|
|
2379 |
[ ! -n "$FULLCMDLINE" ] && export FULLCMDLINE=("$0" "$1")
|
2380 |
fi
|
2381 |
[ ! -n "$LU_START" ] && export LU_START="$ipath_pth"
|
|
|
|
|
2382 |
case "$LU_START" in
|
2383 |
*.[Mm][Ss][Ii]) export LU_MSI=1 ;;
|
2384 |
*.[Bb][Aa][Tt]) export LU_BAT=1 ;;
|
@@ -2584,12 +2582,20 @@ check_steamapps() {
|
|
2584 |
then
|
2585 |
try_mkdir "$LW_WINE_DIR"
|
2586 |
STMBATTLEYE="$LW_STEAMAPPS_DIR/Proton BattlEye Runtime"
|
2587 |
-
STMEAC="$LW_STEAMAPPS_DIR/Proton EasyAntiCheat Runtime"
|
2588 |
-
|
|
|
|
|
|
|
|
|
|
|
2589 |
do
|
2590 |
-
|
2591 |
-
|
2592 |
-
STMverPRTN
|
|
|
|
|
|
|
2593 |
if [[ -f "$STMverPRTN/bin/wine" && ! -d "$LW_WINE_DIR/Proton ${ver}" ]]
|
2594 |
then
|
2595 |
try_ln "$STMverPRTN" "$LW_WINE_DIR/Proton ${ver}"
|
@@ -2597,7 +2603,7 @@ check_steamapps() {
|
|
2597 |
try_ln "$STMverPRTN/../version" "$STMverPRTN/version"
|
2598 |
print_info notify "Found Proton ${ver} in Steam and linked to Lux Wine"
|
2599 |
fi
|
2600 |
-
done
|
2601 |
else
|
2602 |
unset STMEAC STMBATTLEYE
|
2603 |
fi
|
@@ -2652,7 +2658,10 @@ check_latencyflex() {
|
|
2652 |
|
2653 |
lite_init() {
|
2654 |
unset EXE_ARGS
|
2655 |
-
DEPRECATE_INIT=(
|
|
|
|
|
|
|
2656 |
export_all_functions
|
2657 |
if ! [[ "${DEPRECATE_INIT[@]}" =~ "$1" ]] || [ ! -n "$1" ]
|
2658 |
then
|
@@ -2678,7 +2687,12 @@ lite_init() {
|
|
2678 |
check_nvprime
|
2679 |
check_driprime
|
2680 |
check_videodrv
|
2681 |
-
|
|
|
|
|
|
|
|
|
|
|
2682 |
check_def_wine
|
2683 |
check_proton_d3dlib
|
2684 |
check_path
|
@@ -2795,11 +2809,11 @@ lu_config() {
|
|
2795 |
ls_dlls() { ls -I "*.json" -1 -t "$LW_RUNTIME_DIR/$1" 2>/dev/null|grep -v '.*.tar.*' ; }
|
2796 |
is_exe_nofirstrun() { [[ -n "$LU_EXE" && ! -n "$FIRST_RUN" ]] ; }
|
2797 |
export LWCFGKEY=$RANDOM
|
2798 |
-
WINELST="$(ls -1 -t "$LW_WINE_DIR" 2>/dev/null|grep -v '.*.tar.*') $(is_exe_nofirstrun && echo '\n Default') $([ -n "$SYS_WINE" ] && echo '\n System')"
|
2799 |
WINETHEMESLST="Disabled \n $(ls -1 "$LW_THEMES_DIR" 2>/dev/null|sed 's|.reg||gi')"
|
2800 |
WDLLOVERLST="steam_api,steam_api64,steamclient,steamclient64=n;lsteamclient,winemenubuilder.exe= \n Disabled"
|
2801 |
WMONOOVERLST="Microsoft.Xna.Framework.*,Gac=n \n Disabled"
|
2802 |
-
WINVERLST="10 \n \n 8 \n 7 \n xp"
|
2803 |
WARCHLST="win64 \n win32"
|
2804 |
MHAVEDLLST="corefonts vcrun2022 mfc42 mfc140 \n corefonts lucida tahoma vcrun6 vcrun6sp6 vcrun2005 vcrun2008 vcrun2010 vcrun2012 vcrun2013 vcrun2022 mfc120 mfc140 mfc42 msvcirt vb6run openal 7zip \n dotnet20 xna40 dotnet48 faudio \n dotnetdesktop6 dotnetdesktop7 \n physx \n Disabled"
|
2805 |
TERMAPPLST="$(for whichterm in {konsole,gnome-terminal,kitty,deepin-terminal,xfce4-terminal,xterm} ; do which_exe "$whichterm" ; done)"
|
@@ -2821,13 +2835,14 @@ lu_config() {
|
|
2821 |
FSRMODELST="Enabled \n ultra \n quality \n balanced \n performance \n Disabled"
|
2822 |
MANGOHUDLST="Enabled \n DLSYM \n Disabled"
|
2823 |
VKCAPTURELST="Vulkan \n OpenGL \n Disabled"
|
|
|
2824 |
lwconfig_save() {
|
2825 |
LWCFGVAR="WINE_VERSION WIN_VER WINEARCH WINEPREFIX WINE_THEME WDLLOVER WMONOVER WD3DMODE DISABLE_NVAPI WINE_DXGI D3D_EXTRAS DGVOODOO2 \
|
2826 |
DXVK_VERSION VKD3D_VERSION DXVK_NVAPI_VERSION D3D_EXTRAS_VERSION DGVOODOO2_VERSION WINE_NVML_VERSION VKD3DCFG MUST_HAVE_DLL \
|
2827 |
FSR_MODE WINE_SANDBOX ESYNC FSYNC GSTREAMER SHOW_WINEDBG LARGE_ADDRESS OLD_GL_STRING \
|
2828 |
NO_WRITE_WATCH HIDE_NVIDIA_GPU HEAP_DELAY_FREE SHARED_MEMORY ALLOW_XIM DIS_LAYER_AMD DIS_NETCORE \
|
2829 |
VIRTUAL_DESKTOP BATTLEYE EAC DXVKASYNC RESIZABLE_BAR LATENCYFLEX DXR EXEARGS CHK_UPDATE EXE_LWDB EXE_LWDBFL \
|
2830 |
-
LOADBAR LOADBARGIF CHKSTEAMAPPS LW_STEAMAPPS_DIR CHECK_LW_APPS LOG DEBUG SYS_WINETRICKS CPU_LIMIT CMPRSS_METHOD ZSTD_CMPRSS_LVL \
|
2831 |
DIS_OTH_DISPL RESTORE_RESOL RESTORE_GAMMA DIS_COPMOSITOR RESET_PULSE PULSE_LTCY TERMINAL HOLD_TERMINAL LW_TERM_APP \
|
2832 |
LW_DOWNLOADER NO_TRAY US_LAYOUT VKBASALT VKBASALT_FFX_CAS VKICDFILES GAMEMODE LWMANGOHUD MANGOHUD_USER_CONF FPS_LIMIT \
|
2833 |
VSYNC LWVKCAPTURE NVPRIME DRIPRIME"
|
@@ -2869,16 +2884,8 @@ lu_config() {
|
|
2869 |
&& try_cp "/tmp/wlogsett$LWCFGKEY" "$WINEPFXWCFGOUT/winetricks.log"
|
2870 |
if [[ -n "$WINEPFXWCFGOUT" && "$WINEPFXWCFGOUT" != "$WINEPREFIX" ]]
|
2871 |
then
|
2872 |
-
print_info
|
2873 |
export WINEPREFIX="$WINEPFXWCFGOUT"
|
2874 |
-
if ! is_winepfx "$WINEPREFIX" && [[ -f "$LWRAP_DEFPFX" && "$WINEARCH" == "win64" ]] && \
|
2875 |
-
print_question "Do you want to restore the default prefix backup for the new prefix?"
|
2876 |
-
then
|
2877 |
-
mkdir -p "$WINEPREFIX"
|
2878 |
-
unpack_squash "$LWRAP_DEFPFX" \
|
2879 |
-
"$(dirname "$WINEPREFIX")" \
|
2880 |
-
"$(basename "$WINEPREFIX")"
|
2881 |
-
fi
|
2882 |
fi
|
2883 |
CURDEFWINE="$(cat "$WINEPREFIX/.defwine" 2>/dev/null)"
|
2884 |
if [[ "$WINEWCFGOUT" != "$CURDEFWINE" && "$WINEWCFGOUT" != "Default" ]] || \
|
@@ -2888,7 +2895,9 @@ lu_config() {
|
|
2888 |
export NEW_WINE_VERSION="$WINEWCFGOUT"
|
2889 |
export OLD_WINE_VERSION="$CURDEFWINE"
|
2890 |
export OLD_WINE="$WINE"
|
2891 |
-
|
|
|
|
|
2892 |
fi
|
2893 |
if [ -n "$LU_EXE" ]
|
2894 |
then
|
@@ -2916,7 +2925,7 @@ lu_config() {
|
|
2916 |
}
|
2917 |
lwconfig_menu() {
|
2918 |
yad --plug=$LWCFGKEY --tabnum=1 --form --separator="\n" --quoted-output --bool-fmt=1 --columns=2 "${YADSCROLL[@]}" \
|
2919 |
-
--field="Wine version::
|
2920 |
--field="Windows version::CB" "$(cfg_items "$WIN_VER" "$WINVERLST")" \
|
2921 |
--field="Wine architecture::CB" "$(cfg_items "$WINEARCH" "$WARCHLST")" \
|
2922 |
--field="Wine prefix::DIR" "$WINEPREFIX" \
|
@@ -2979,6 +2988,7 @@ lu_config() {
|
|
2979 |
--field="Check Steam apps:CHK" "$CHKSTEAMAPPS" \
|
2980 |
--field="Steam apps common folder::DIR" "$LW_STEAMAPPS_DIR" \
|
2981 |
--field="Auto remove apps shortcuts:CHK" "$CHECK_LW_APPS" \
|
|
|
2982 |
--field="LOG:CHK" "$LOG" \
|
2983 |
--field="DEBUG:CHK" "$DEBUG" \
|
2984 |
--field="Use system Winetricks:CHK" "$SYS_WINETRICKS" \
|
@@ -3135,7 +3145,7 @@ lu_config() {
|
|
3135 |
0) lwconfig_save init ;;
|
3136 |
3) lwconfig_reset ;;
|
3137 |
4) lwconfig_save
|
3138 |
-
cleanrun "$LW_SOURCE" "$LU_EXE" ;;
|
3139 |
esac
|
3140 |
}
|
3141 |
|
@@ -3228,7 +3238,7 @@ btntls_run() {
|
|
3228 |
cleanrun "$LW_SOURCE" "$1" "$LU_EXE"
|
3229 |
sleep 0.5
|
3230 |
fi
|
3231 |
-
cleanrun "$LW_SOURCE" -config "$LU_EXE"
|
3232 |
else
|
3233 |
if [ -n "$1" ]
|
3234 |
then
|
@@ -3269,8 +3279,8 @@ lu_shell() {
|
|
3269 |
if [ -f "$2" ]
|
3270 |
then
|
3271 |
local file_info="$(file "$2")"
|
3272 |
-
if [[ -n "$(grep "script"<<<"$
|
3273 |
-
-n "$(grep "ELF"<<<"$
|
3274 |
then
|
3275 |
export LU_SHELL_EXE="$(readlink -f "$2")"
|
3276 |
lu_run "$LU_SHELL_EXE"
|
@@ -3402,12 +3412,11 @@ winetricks() {
|
|
3402 |
then
|
3403 |
if [ -x "/usr/bin/winetricks" ]
|
3404 |
then
|
3405 |
-
print_info notify "Using System winetricks!"
|
3406 |
if [[ ! -n "$NEED_INSTALL_DLLS" && ! -n "$WTRX_ARG" && -n "$WTRX_RUN" ]] \
|
3407 |
|| [[ ! -n "$NEED_INSTALL_DLLS" && ! -n "$WTRX_ARG" && -n "$LU_EXE" && -n "$WTRX_RUN" ]] \
|
3408 |
|| [[ ! -n "$NEED_INSTALL_DLLS" && ! -n "$WTRX_ARG" && -n "$LU_EXE" && ! -n "$WTRX_RUN" ]]
|
3409 |
then
|
3410 |
-
$TERM_APP $LWSHELL -c "print_info 'Using System winetricks!' ; \
|
3411 |
DISABLE_MANGOHUD=1 DISABLE_VKBASALT=1 /usr/bin/winetricks"
|
3412 |
elif [[ -n "$NEED_INSTALL_DLLS" && ! -n "$WTRX_ARG" && ! -n "$WTRX_RUN" ]]
|
3413 |
then
|
@@ -3421,7 +3430,7 @@ winetricks() {
|
|
3421 |
check_winetricks
|
3422 |
if [[ ! -n "$WTRX_ARG" && -n "$WTRX_RUN" ]]
|
3423 |
then
|
3424 |
-
$TERM_APP $LWSHELL -c "print_info 'Using Lux Wine winetricks!' ; \
|
3425 |
DISABLE_MANGOHUD=1 DISABLE_VKBASALT=1 '$LW_WTRX_DIR/winetricks'"
|
3426 |
elif [[ ! -n "$WTRX_ARG" && ! -n "$WTRX_RUN" ]]
|
3427 |
then
|
@@ -3431,13 +3440,12 @@ winetricks() {
|
|
3431 |
fi
|
3432 |
fi
|
3433 |
else
|
3434 |
-
print_info notify "Using Lux Wine winetricks!"
|
3435 |
check_winetricks
|
3436 |
if [[ ! -n "$NEED_INSTALL_DLLS" && ! -n "$WTRX_ARG" && -n "$WTRX_RUN" ]] \
|
3437 |
|| [[ ! -n "$NEED_INSTALL_DLLS" && ! -n "$WTRX_ARG" && -n "$LU_EXE" && -n "$WTRX_RUN" ]] \
|
3438 |
|| [[ ! -n "$NEED_INSTALL_DLLS" && ! -n "$WTRX_ARG" && -n "$LU_EXE" && ! -n "$WTRX_RUN" ]]
|
3439 |
then
|
3440 |
-
$TERM_APP $LWSHELL -c "print_info 'Using Lux Wine winetricks!' ; \
|
3441 |
DISABLE_MANGOHUD=1 DISABLE_VKBASALT=1 '$LW_WTRX_DIR/winetricks'"
|
3442 |
elif [[ -n "$NEED_INSTALL_DLLS" && ! -n "$WTRX_ARG" && ! -n "$WTRX_RUN" ]]
|
3443 |
then
|
@@ -3606,6 +3614,7 @@ lu_clearpfx() {
|
|
3606 |
try_rm "$WINEPREFIX/drive_c/Program Files (x86)/Windows Media Player" &>/dev/null
|
3607 |
try_rm "$WINEPREFIX/drive_c/Program Files (x86)/Windows NT" &>/dev/null
|
3608 |
try_rm "$WINEPREFIX/.lwtheme" &>/dev/null
|
|
|
3609 |
try_rm "$LW_DIR/.lwcfgchksum" &>/dev/null
|
3610 |
try_rm /tmp/FORCE_EXIT &>/dev/null
|
3611 |
print_info notify "Prefix [ $WINEPREFIX ] successfully cleared!"
|
@@ -3641,7 +3650,7 @@ is_app_exist() {
|
|
3641 |
unset args
|
3642 |
if [ -n "$2" ]
|
3643 |
then
|
3644 |
-
[ "$
|
3645 |
local args="$(sed 's|"|\"|g;s|\\|\\\\|g'<<<"$2")"||\
|
3646 |
local args="$(sed 's|"|\"|g;s|\\|\\\\\\\\|g'<<<"$2")"
|
3647 |
fi
|
@@ -3704,6 +3713,7 @@ lu_rmapp() {
|
|
3704 |
wait
|
3705 |
fi)
|
3706 |
}
|
|
|
3707 |
LWAPPSHRT="$(grep "Categories=Lux Wine Apps" -lr "$MENU_APPS_DIR" 2>/dev/null)"
|
3708 |
if [[ -n "$(echo "$LWAPPSHRT"|head -1)" ]]
|
3709 |
then
|
@@ -3713,11 +3723,13 @@ lu_rmapp() {
|
|
3713 |
sed 's|"||g'|sed 's|^ ||g')"
|
3714 |
if [ -n "$APP_NAME" ]
|
3715 |
then get_app_exe "$APP_NAME"
|
3716 |
-
else
|
|
|
|
|
3717 |
fi
|
3718 |
else
|
3719 |
if [ "${1,,}" == "all" ]
|
3720 |
-
then rm_allsrtcts ;
|
3721 |
else [ -n "$1" ] && LU_EXE="$1"
|
3722 |
fi
|
3723 |
fi
|
@@ -3726,7 +3738,7 @@ lu_rmapp() {
|
|
3726 |
if [[ -n "$(grep -Eiom1 '\.exe$|\.bat$'<<<"$LU_EXE")" ]]
|
3727 |
then
|
3728 |
(IFS=$'\n'
|
3729 |
-
local
|
3730 |
if [ "$RM_ALL_EXE_APPS" == 1 ]
|
3731 |
then LWAPPSRM=($(grep -F "$LU_EXE" -lr "$MENU_APPS_DIR" 2>/dev/null))
|
3732 |
elif [ -n "$EXEARGS" ]
|
@@ -3735,7 +3747,7 @@ lu_rmapp() {
|
|
3735 |
fi
|
3736 |
if [ -n "$LWAPPSRM" ]
|
3737 |
then rm_srtcts "${LWAPPSRM[@]}"
|
3738 |
-
else print_error yad "Shortcuts Remover" "'$LU_EXE' not found
|
3739 |
fi)
|
3740 |
else
|
3741 |
LW_APP_RM="$(echo -e "\n$(echo "$LWAPPSHRT"|xargs -d "\n" -I {} grep -m1 "^Name=" {}|sed 's|^Name=||g'|sort -u|sed ':a;N;$!ba;s/\n/\n\n/g')"| \
|
@@ -3755,7 +3767,7 @@ lu_rmapp() {
|
|
3755 |
fi
|
3756 |
fi
|
3757 |
else
|
3758 |
-
print_error yad "Shortcuts Remover" "Lux Wine applications not found
|
3759 |
fi
|
3760 |
}
|
3761 |
|
@@ -3812,7 +3824,7 @@ shrt_from_lnk() {
|
|
3812 |
'openuserfolder.bat' 'language.changer.exe'
|
3813 |
'uninst.exe' 'q2rtxded-x86.exe' 'q2rtxded.exe'
|
3814 |
'ErrorReporter.exe' 'EAUpdater.exe' 'explorer.exe'
|
3815 |
-
'UninstWA.exe'
|
3816 |
)
|
3817 |
IGNLNK=(
|
3818 |
'VKPlay.ru.lnk' 'App Recovery.lnk'
|
@@ -4021,39 +4033,39 @@ lu_help() {
|
|
4021 |
$RED┌──[$GREEN$USER$YELLOW@$BLUE`uname -a|awk '{print$2}'`$RED]─[$GREEN$PWD$RED]
|
4022 |
$RED└──╼ \$$GREEN $LW_NAME $BLUE{$LW_NAME arg} ${RED}blabla.exe $YELLOW{exe args}
|
4023 |
|
4024 |
-
${RED}-explorer $GREEN
|
4025 |
-
${RED}-cmd $GREEN
|
4026 |
-
${RED}-shell $GREEN
|
4027 |
-
${RED}-config $GREEN
|
4028 |
-
${RED}-
|
4029 |
-
${RED}-
|
4030 |
-
${RED}-
|
4031 |
-
${RED}-
|
4032 |
-
${RED}-
|
4033 |
-
${RED}-
|
4034 |
-
${RED}-
|
4035 |
-
${RED}-
|
4036 |
-
${RED}-
|
4037 |
-
${RED}-
|
4038 |
-
${RED}-
|
4039 |
-
${RED}-
|
4040 |
-
${RED}-
|
4041 |
-
${RED}-
|
4042 |
-
${RED}-
|
4043 |
-
${RED}-
|
4044 |
-
${RED}-
|
4045 |
-
${RED}-
|
4046 |
-
${RED}-
|
4047 |
-
${RED}-
|
4048 |
-
${RED}-
|
4049 |
-
${RED}-
|
4050 |
-
${RED}-
|
4051 |
-
${RED}-
|
4052 |
-
${RED}-
|
4053 |
-
${RED}-
|
4054 |
-
${RED}-
|
4055 |
-
${RED}-
|
4056 |
-
${RED}-update $BLUE{all} $GREEN
|
4057 |
{dx|dxvk} {vkd|vkd3d} {d3d|d3d_extras|d3d-extras} {eac|eac_runtime}
|
4058 |
{nvml|wine_nvml} {dxnv|dxvk-nvapi|dxvk_nvapi} {wtrx|winetricks}
|
4059 |
{bat|battleye|battleye_runtime} {dg|dgvoodoo2}
|
@@ -4159,11 +4171,9 @@ try_dl_install_wine() {
|
|
4159 |
do
|
4160 |
if [ -d "$WTMP_DIR/$W_DW/$PFILES" ]
|
4161 |
then
|
4162 |
-
|
4163 |
-
|
4164 |
-
|
4165 |
-
try_mv "$WTMP_DIR/$W_DW/$PFILES"/* "$WTMP_DIR/"
|
4166 |
-
try_rm "$WTMP_DIR/$W_DW/$PFILES" "$WTMP_DIR/$W_DW"
|
4167 |
break
|
4168 |
fi
|
4169 |
done
|
@@ -4179,6 +4189,13 @@ try_dl_install_wine() {
|
|
4179 |
if try_mv "$WTMP_DIR" "$LW_WINE_DIR/$W_DW"
|
4180 |
then
|
4181 |
WINE_VERSION="$W_DW" WINEDIR="$LW_WINE_DIR/$W_DW" check_proton_d3dlib
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
4182 |
print_info notify "Installation $W_DW completed!"
|
4183 |
[ -n "$WGUIDW" ] && \
|
4184 |
W_INST=1
|
@@ -4215,7 +4232,7 @@ get_wine_git_lst() {
|
|
4215 |
if [[ ! -n "$PGE_GIT_LIST" || ! -n "$WLU_GIT_LIST" || ! -n "$WK4_GIT_LIST" || ! -n "$WGE_GIT_LIST" ]]
|
4216 |
then
|
4217 |
catlist() { cat /tmp/${1}GITLIST$WGUIDW 2>/dev/null ; }
|
4218 |
-
print_info
|
4219 |
settingbar --text="Сhecking new Wine versions on GitHub..." get_wine_releases
|
4220 |
WLU_GIT_LIST="$(catlist 'WLU')"
|
4221 |
PGE_GIT_LIST="$(catlist 'PGE')"
|
@@ -4225,7 +4242,7 @@ get_wine_git_lst() {
|
|
4225 |
if [[ -n "$WLU_GIT_LIST" || -n "$PGE_GIT_LIST" || -n "$WGE_GIT_LIST" || -n "$WK4_GIT_LIST" ]]
|
4226 |
then
|
4227 |
WINEGITOK=1
|
4228 |
-
print_info
|
4229 |
return 0
|
4230 |
else
|
4231 |
unset WINEGITOK
|
@@ -4237,7 +4254,14 @@ get_wine_git_lst() {
|
|
4237 |
|
4238 |
lu_winemgr() {
|
4239 |
wnamesed() { echo "$1"|awk -F/ '{print $NF}'|sed 's|.tar.[a-z][a-z]||gi;/-x86$/d' ; }
|
4240 |
-
wremovesame()
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
4241 |
wyadtab() {
|
4242 |
echo -e "\n$(echo "$2"|sed ':a;N;$!ba;s/\n/\n\n/g')"|\
|
4243 |
yad --plug=$WGUIDW --tabnum="$1" --list --column="" --checklist \
|
@@ -4346,6 +4370,7 @@ lu_winemgr() {
|
|
4346 |
print_info notify "Removing $WINE_DEL completed!"
|
4347 |
[ "$WINE_VERSION" == "$WINE_DEL" ] && touch "/tmp/WINEINUSEDEL$WGUIDW"
|
4348 |
done
|
|
|
4349 |
)
|
4350 |
settingbar --text="Deletion is in progress. Please wait..." wine_rm
|
4351 |
if [ -f "/tmp/WINEINUSEDEL$WGUIDW" ]
|
@@ -4353,7 +4378,7 @@ lu_winemgr() {
|
|
4353 |
if [[ -n "$(ls -1 -t "$LW_WINE_DIR" 2>/dev/null|grep -v '.*.tar.*'|head -1)" || -n "$SYS_WINE" ]]
|
4354 |
then
|
4355 |
print_info notify "Removed Wine which was selected by default!"
|
4356 |
-
check_def_wine
|
4357 |
else
|
4358 |
print_info notify "Removed Wine which was selected by default! Wine is not installed, you must download Wine!"
|
4359 |
try_rm "/tmp/WINEINUSEDEL$WGUIDW" &>/dev/null
|
@@ -4528,13 +4553,13 @@ check_gamemode() {
|
|
4528 |
then
|
4529 |
if is_exe_exist gamemoderun
|
4530 |
then
|
|
|
4531 |
export RUN_GAMEMODE="gamemoderun"
|
4532 |
else
|
4533 |
print_error yad "GAMEMODE not found in your system!"
|
4534 |
unset RUN_GAMEMODE
|
4535 |
fi
|
4536 |
else
|
4537 |
-
print_info "GAMEMODE is disabled!"
|
4538 |
unset RUN_GAMEMODE
|
4539 |
fi
|
4540 |
}
|
@@ -5073,19 +5098,29 @@ runtime_manager() {
|
|
5073 |
|
5074 |
winepfx_init() {
|
5075 |
print_info notify "Lux Wine prefix initialization..."
|
5076 |
-
|
5077 |
-
|
5078 |
-
|
5079 |
-
|
5080 |
-
|
5081 |
-
|
5082 |
-
|
5083 |
-
|
5084 |
-
|
5085 |
-
|
5086 |
-
|
5087 |
-
|
5088 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
5089 |
fi
|
5090 |
if [ -n "$PFXINITOK" ]
|
5091 |
then
|
@@ -5140,7 +5175,7 @@ check_winepfx() {
|
|
5140 |
[ -n "$2" ] && export WINEARCH="$2"
|
5141 |
WPFX_STEAMUSER_DIR="$WINEPREFIX/drive_c/users/steamuser"
|
5142 |
if ! is_winepfx "$WINEPREFIX" && [ "$WINEARCH" == "win64" ] && \
|
5143 |
-
[[ "$WINEPREFIX"
|
5144 |
then
|
5145 |
DEFPFXRESTORE=1 NO_FLMGR=1 lu_pfxrestore "$LWRAP_DEFPFX"
|
5146 |
export NEEDCHKDLL=1
|
@@ -5467,7 +5502,10 @@ check_hold_terminal() {
|
|
5467 |
}
|
5468 |
|
5469 |
check_terminal() {
|
|
|
5470 |
[ -n "$1" ] && export LW_TERM_APP="$1"
|
|
|
|
|
5471 |
check_hold_terminal
|
5472 |
if [[ -n "$LW_TERM_APP" && -n "$(which_exe "$(basename "$LW_TERM_APP")" 2>/dev/null)" ]]
|
5473 |
then
|
@@ -5668,7 +5706,9 @@ check_cpu_limit() {
|
|
5668 |
[ -n "$1" ] && export CPU_LIMIT="$1"
|
5669 |
if [[ -n "$CPU_LIMIT" && "$CPU_LIMIT" != 0 ]]
|
5670 |
then
|
5671 |
-
|
|
|
|
|
5672 |
print_info notify "The application will be launched with a CPU limitation"
|
5673 |
fi
|
5674 |
}
|
@@ -6027,7 +6067,7 @@ export_all_functions() {
|
|
6027 |
export -f print_var print_error print_info check_tray check_wine_pids check_luwine_pid check_vkd3dconfig try_rm check_themes import_cenv sedspaces \
|
6028 |
check_luwine_sh_pid check_exes check_compositor try_mkdir check_symlink check_netcore try_download check_cpu_limit ld_lib_upd wait_kill_exe \
|
6029 |
unpack_tar_xz unpack_tar_gz unpack_tar shell_is_death exe_is_death exes_is_death wine_is_death try_cp check_us_switcher check_proton_d3dlib \
|
6030 |
-
compositor_sw check_winetricks check_musthave_dll check_other_fixes wdllover_upd reg_edit exe2png gamma_sw vkd3dcfg_upd check_downloader \
|
6031 |
create_shortcut lu_debug clear_log dis_debug_msg dis_cmd_msg import_luwine_wcfg check_def_wine lu_prerun lu_run lu_prestart try_mv path_upd select_lwpfx \
|
6032 |
lu_start lu_cmd lu_shell lu_regedit lu_control lu_winecfg lu_taskmgr lu_uninstaller winetricks lu_openpfx lu_exit lu_killshell check_dxr winepfx_init \
|
6033 |
lu_killtray lu_killwine lu_killexe lu_clearpfx lu_rmapp lu_shortcut lu_explorer lu_help lu_version lu_tray lu_winemgr updcfgchksum lite_init \
|
@@ -6042,7 +6082,7 @@ export_all_functions() {
|
|
6042 |
check_db_script stop_loadbar check_wmonover wmonover_upd check_exe_wcfg_cenv lu_appcfg try_fix_wrtx try_shutdown_wine check_steamapps is_winepfx \
|
6043 |
check_display check_restore_resol resol_sw check_restore_gamma dis_displ_sw restore_resol check_virt_desktop check_vkbasalt_cfg check_exe_args \
|
6044 |
check_wine_nvml check_resizable_bar check_latencyflex get_proton_d3dlib makesquash_zstd makesquash_xz lu_pfxbackup lu_pfxrestore lu_backupmnt lu_backupunmnt \
|
6045 |
-
check_dxvk_async check_vsync get_wine_git_lst try_dl_install_wine exeargs_parse
|
6046 |
}
|
6047 |
|
6048 |
initbar() {
|
@@ -6103,40 +6143,69 @@ stop_loadbar() { is_loadbar && kill "$LOADBARPID" 2>/dev/null ; }
|
|
6103 |
lu_appcfg() {
|
6104 |
if [ ! -n "$(pgrep -fa yad|grep "Applications Settings"|awk '{print$1}')" ]; then :
|
6105 |
else
|
6106 |
-
print_error yad "
|
6107 |
exit 1
|
6108 |
fi
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
6109 |
try_rm_broken_link "$LW_APPCFG_DIR"
|
6110 |
-
|
6111 |
-
if [
|
6112 |
-
then
|
6113 |
-
|
6114 |
-
yad --title "Lux Wine Applications Settings" --list --radiolist \
|
6115 |
-
--separator "\n" --column="" --column="Select app config for open:" \
|
6116 |
-
--text-align=center --center --window-icon="$LW_DEF_ICO" --width=400 \
|
6117 |
-
--height=500 --button="RESET ALL:2" --button="EXIT:1" --button="OK:0" 2>/dev/null)"
|
6118 |
-
if [ "$?" == "2" ]
|
6119 |
then
|
6120 |
-
|
6121 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
6122 |
then
|
6123 |
-
|
6124 |
-
|
6125 |
-
|
6126 |
-
done)
|
6127 |
-
try_rm "$LW_APPCFG_DIR"
|
6128 |
-
print_info notify "Lux Wine applications config files deleted!"
|
6129 |
fi
|
6130 |
-
elif [ -n "$(echo "$LW_APP_SETT"|head -1)" ]
|
6131 |
-
then
|
6132 |
-
LW_APP_SETT="$(echo "$LW_APP_SETT"|sed '/^TRUE$/d'|sed '/^$/d')"
|
6133 |
-
LW_APP_SETT_EXE="$(readlink -f "$LW_APPCFG_DIR/$LW_APP_SETT"|sed 's|.wcfg$|.exe|')"
|
6134 |
-
cleanrun "$LW_SOURCE" -config "$LW_APP_SETT_EXE"
|
6135 |
-
else
|
6136 |
-
return 1
|
6137 |
fi
|
6138 |
else
|
6139 |
-
print_error yad "
|
6140 |
fi
|
6141 |
}
|
6142 |
|
@@ -6519,20 +6588,22 @@ lu_runapp() {
|
|
6519 |
sed 's|"||g'|sed 's|^ ||g')"
|
6520 |
if [ -n "$APP_NAME" ]
|
6521 |
then get_app_exe "$APP_NAME"
|
6522 |
-
else
|
|
|
|
|
6523 |
fi
|
6524 |
else get_app_exe "$1"
|
6525 |
fi
|
6526 |
if [ ! -n "$LU_EXE" ]
|
6527 |
then
|
6528 |
print_error yad "No launch application found!"
|
6529 |
-
|
6530 |
fi
|
6531 |
shift
|
6532 |
cleanrun env LWPPID="$LWPPID" "$LW_SOURCE" "$LU_EXE" "${EXE_ARGS[@]}" "$@"
|
6533 |
else
|
6534 |
print_error yad "Specify App for launch!"
|
6535 |
-
|
6536 |
fi
|
6537 |
}
|
6538 |
|
@@ -6681,14 +6752,14 @@ if [[ "$EUID" == 0 && "$ALLOW_ROOT" != 1 ]]
|
|
6681 |
-killshell) lu_killshell "$@" ;;
|
6682 |
-exit) lu_exit "$@" ;;
|
6683 |
-clearpfx) lu_clearpfx "$@" ;;
|
6684 |
-
-rmapp)
|
6685 |
-shortcut) lu_shortcut ;;
|
6686 |
-help) lu_help ;;
|
6687 |
-version) lu_version ;;
|
6688 |
-tray) lu_tray ;;
|
6689 |
-update) lu_update "$@" ;;
|
6690 |
-config) lu_config ;;
|
6691 |
-
-appcfg) lu_appcfg ;;
|
6692 |
-pfxbackup) lu_pfxbackup "$@" ;;
|
6693 |
-pfxrestore) lu_pfxrestore ;;
|
6694 |
-backupmnt) lu_backupmnt ;;
|
|
|
1 |
#!/usr/bin/env bash
|
2 |
|
3 |
+
export LW_VERSION="0.78.3.3"
|
4 |
export LW_DEVELOPERS="VHSgunzo"
|
5 |
|
6 |
export RED='\033[1;91m'
|
|
|
143 |
[ ! -n "$ZSTD_CMPRSS_LVL" ] && export ZSTD_CMPRSS_LVL="1"
|
144 |
[ ! -n "$SYS_LDLIBPTH" ] && export SYS_LDLIBPTH="$LD_LIBRARY_PATH"
|
145 |
[ ! -n "$SYS_STM_COMPAT_DIR" ] && export SYS_STM_COMPAT_DIR="/usr/share/steam/compatibilitytools.d"
|
146 |
+
[ ! -n "$HOME_STM_COMPAT_DIR" ] && export HOME_STM_COMPAT_DIR="$HOME/.local/share/Steam/compatibilitytools.d"
|
147 |
[ ! -n "$DEF_MANGOHUDCFG" ] && export DEF_MANGOHUDCFG="gpu_text=GPU,cpu_color=2e97cb,cpu_text=CPU,io_color=a491d3,vram_color=ad64c1,ram_color=c26693,\
|
148 |
engine_color=eb5b5b,gpu_color=2e9762,wine_color=eb5b5b,frametime_color=00ff00,background_alpha=0.4,background_color=020202,position=top-right,\
|
149 |
text_color=ffffff,toggle_hud=Shift_R+F12,gpu_load_change,cpu_load_change,core_load_change,arch,cpu_mhz,cpu_temp,engine_version,gamemode,\
|
150 |
gpu_core_clock,gpu_mem_clock,gpu_name,gpu_power,gpu_temp,no_display,ram,resolution,show_fps_limit,time,vkbasalt,vram,vulkan_driver,wine"
|
151 |
+
if [ ! -n "$NOT_TERM" ]
|
152 |
+
then [[ ! -n "$(tty|grep -v 'not a'|grep -Eo 'tty|pts')" ]] && \
|
153 |
+
NOT_TERM=1||NOT_TERM=0
|
154 |
+
fi
|
155 |
|
156 |
export LWPID=$BASHPID
|
157 |
[ ! -n "$LWPPID" ] && \
|
|
|
216 |
[ ! -n "$CHKSTEAMAPPS" ] && export CHKSTEAMAPPS=1
|
217 |
[ ! -n "$RESIZABLE_BAR" ] && export RESIZABLE_BAR=1
|
218 |
[ ! -n "$DEFPFX_VERSION" ] && export DEFPFX_VERSION='v0.0.8'
|
219 |
+
[ ! -n "$GTK_THEME" ] && export GTK_THEME='Adwaita:dark'
|
220 |
export DEFPFX_URL="https://github.com/VHSgunzo/wine-prefix/releases/download/$DEFPFX_VERSION/defprefix.xz.lwpfx"
|
221 |
export DEFPFXDOTNET_URL="https://github.com/VHSgunzo/wine-prefix/releases/download/$DEFPFX_VERSION/defprefix_dotnet.xz.lwpfx"
|
222 |
export DEFPFXDOTNETDESKTOP_URL="https://github.com/VHSgunzo/wine-prefix/releases/download/$DEFPFX_VERSION/defprefix_dotnetdesktop.xz.lwpfx"
|
|
|
1217 |
if [ -n "$NEED_INSTALL_DLLS" ]
|
1218 |
then
|
1219 |
export UPDPFX_LOG="$WINEPREFIX/update_pfx.log"
|
1220 |
+
$TERM_APP $LWSHELL -c "print_info notify 'Try to install DLL in prefix: [ $NEED_INSTALL_DLLS ]'|& tee -a '$UPDPFX_LOG' ; \
|
|
|
1221 |
winetricks -q -f -r $NEED_INSTALL_DLLS|& tee -a '$UPDPFX_LOG'"
|
1222 |
while read WTRXDLL
|
1223 |
do
|
|
|
1572 |
echo "Icon="$SHRT_ICON"" >> "$DESKF"
|
1573 |
echo "Actions=rmapp;config;openpfx;debug;cmd;explorer;control;regedit;winecfg;taskmgr;uninstaller;winetricks;clearpfx;pfxbackup;pfxrestore;killwine;version;init" >> "$DESKF"
|
1574 |
echo -e "\n[Desktop Action rmapp]" >> "$DESKF"
|
1575 |
+
echo "Name=Remove shortcut" >> "$DESKF"
|
1576 |
+
echo "Name[ru_RU]=Удалить ярлык" >> "$DESKF"
|
1577 |
echo "Icon="$SHRT_ICON"" >> "$DESKF"
|
1578 |
echo "Exec='$LW_SOURCE' -rmapp '$SHRT_NAME'" >> "$DESKF"
|
1579 |
echo -e "\n[Desktop Action config]" >> "$DESKF"
|
1580 |
echo "Name=Settings" >> "$DESKF"
|
1581 |
echo "Name[ru_RU]=Настройки" >> "$DESKF"
|
1582 |
echo "Icon="$SHRT_ICON"" >> "$DESKF"
|
1583 |
+
echo "Exec='$LW_SOURCE' -config $SHRTEXEPATH $SHRTEXEARGS" >> "$DESKF"
|
1584 |
echo -e "\n[Desktop Action openpfx]" >> "$DESKF"
|
1585 |
echo "Name=Open drive C:\\\\\\" >> "$DESKF"
|
1586 |
echo "Name[ru_RU]=Открыть диск C:\\\\\\" >> "$DESKF"
|
|
|
1699 |
check_ld_library
|
1700 |
export PRINT_VARS="$(print_var "WINE_VERSION" "WINEDIR" "WINE" "WINEARCH" "WINEPREFIX" "WIN_VER" "WINEDLLOVERRIDES" "CHK_UPDATE" "NVPRIME" \
|
1701 |
"VKBASALT_EFFECTS" "WINE_MONO_OVERRIDES" "EXE_PATH" "LU_EXE" "VKD3D_CONFIG" "LD_LIBRARY_PATH" "PATH" "WINEDEBUG" "CPU_LIMIT" "VSYNC" \
|
1702 |
+
"VKD3D_DEBUG" "WINE_MONO_TRACE" "VKBASALT_LOG_LEVEL" "DXVK_LOG_LEVEL" "PULSE_LATENCY_MSEC" "VIRTUAL_DESKTOP" "FPS_LIMIT" "LW_CENV" \
|
1703 |
"LW_DIR" "LW_CFG" "GSTREAMER" "HIDE_NVIDIA_GPU" "EXE_LWDB" "EXE_LWDBFL" "GST_PLUGIN_SYSTEM_PATH_1_0" "WINE_GST_REGISTRY_DIR" "RUNSRC" "RUNROOTFS_VERSION" \
|
1704 |
"WINE_SANDBOX" "WINEFSYNC" "WINEFSYNC_FUTEX2" "WINE_FULLSCREEN_FSR" "WINE_FULLSCREEN_FSR_STRENGTH" "STAGING_SHARED_MEMORY" "WINEESYNC" "VKBASALT_LOG_FILE" \
|
1705 |
"LOG_FILE" "WINE_LARGE_ADDRESS_AWARE" "TERM_APP" "VKBASALT" "DXVK_NVAPIHACK" "MANGOHUD" "MANGOHUD_USER_CONF" "RUN_GAMEMODE" "VKD3D_LOG_FILE" \
|
1706 |
"VKBASALT_CONFIG_FILE" "VK_ICD_FILENAMES" "__GL_THREADED_OPTIMIZATIONS" "DXVK_STATE_CACHE_PATH" "__GLX_VENDOR_LIBRARY_NAME" "__NV_PRIME_RENDER_OFFLOAD" \
|
1707 |
"WINE_FULLSCREEN_FSR_MODE" "DXVK_STATE_CACHE" "__GL_DXVK_OPTIMIZATIONS" "__GL_SHADER_DISK_CACHE_PATH" "__GL_SHADER_DISK_CACHE" "__GL_SHADER_DISK_CACHE_SIZE" \
|
1708 |
+
"WD3DMODE" "MEDIACONV_AUDIO_DUMP_FILE" "MEDIACONV_AUDIO_TRANSCODED_FILE" "MEDIACONV_VIDEO_DUMP_FILE" "MEDIACONV_VIDEO_TRANSCODED_FILE" "LW_STEAMAPPS_DIR")\
|
1709 |
+
\n[VAR] EXE_ARGS=${EXE_ARGS[@]}\n"
|
1710 |
export LD_LIBRARY_PATH="$SYS_LDLIBPTH"
|
1711 |
echo "---------------------------------------------------------------------------------------" >> "$TMP_DBG"
|
1712 |
echo "[ Date and time of start debug ] : $(date)" >> "$TMP_DBG"
|
|
|
1976 |
}
|
1977 |
|
1978 |
check_def_wine() {
|
1979 |
+
def_wine_not() {
|
1980 |
+
print_error yad "Wine Manager" "Default Wine not selected, you must select default Wine!"
|
1981 |
+
def_wine_selector||exit 1
|
1982 |
+
if [ -n "$SETWINE" ]
|
1983 |
+
then export_wine_changes
|
1984 |
+
else check_def_wine
|
1985 |
+
fi
|
1986 |
+
}
|
1987 |
setpfxdefwine() { echo "$1" > "$WINEPREFIX/.defwine" ; }
|
1988 |
def_wine_selector() {
|
1989 |
+
set -o pipefail
|
1990 |
unset SETWINE
|
1991 |
export SETWINE="$(echo -e "\n$(echo "${LOCWINELST}$([ -n "$SYS_WINE" ] && echo -e '\nSystem')$([[ -n "$LU_EXE" \
|
1992 |
+
&& ! -n "$FIRST_RUN" ]] && echo -e '\nDefault')"|sed ':a;N;$!ba;s/\n/\n\n/g')"|\
|
1993 |
yad --window-icon="$LW_DEF_ICO" --title "Wine Manager" --column="" --column="Select default Wine:" \
|
1994 |
--width=400 --height=500 --list --radiolist --separator "\n" --button="EXIT:1" --button="OK:0" \
|
1995 |
--center --on-top 2>/dev/null|sed '/^TRUE$/d'|sed '/^$/d')"
|
1996 |
+
[ "$SETWINE" ]||return 1
|
1997 |
}
|
1998 |
export_wine_changes() {
|
1999 |
sed -i "s/WINE_VERSION.*/WINE_VERSION=\'$SETWINE\'/g" "$LW_CFG"
|
2000 |
export NEW_WINE_VERSION="$SETWINE"
|
2001 |
export OLD_WINE_VERSION="$WINE_VERSION"
|
2002 |
export OLD_WINE="$WINE"
|
2003 |
+
import_luwine_wcfg
|
2004 |
+
check_proton_d3dlib
|
2005 |
+
print_info notify "Wine $SETWINE selected as default!"
|
2006 |
}
|
2007 |
+
LOCWINELST="$(ls -1 -t "$LW_WINE_DIR" 2>/dev/null)"
|
2008 |
IGNWINE=('Default' 'SETWINE' 'System' 'Proton 7.0' 'Proton 8.0' 'Proton - Experimental')
|
2009 |
+
if [[ -n "$WINE_VERSION" && ! -d "$LW_WINE_DIR/$WINE_VERSION" && "$WINEINUSEDEL" != 1 && \
|
2010 |
! -L "$LW_WINE_DIR/$WINE_VERSION" && ! "${IGNWINE[@]}" =~ "$WINE_VERSION" ]]
|
2011 |
then
|
2012 |
print_info notify "Trying to install Wine: $WINE_VERSION"
|
2013 |
+
if ! try_dl_install_wine "$WINE_VERSION"
|
2014 |
+
then def_wine_selector && \
|
2015 |
+
export_wine_changes||exit 1
|
2016 |
+
fi
|
2017 |
fi
|
2018 |
(IFS=$'\n' ; for BINWINE in $(ls -1 -t "$LW_WINE_DIR" 2>/dev/null)
|
2019 |
do
|
|
|
2040 |
fi
|
2041 |
fi
|
2042 |
done)
|
|
|
2043 |
if [[ ! -f "$WINE" && "$(echo "$LOCWINELST"|sedspaces|wc -l)" == 0 && -n "$SYS_WINE" ]]
|
2044 |
then
|
2045 |
print_info "System Wine found"
|
|
|
2062 |
print_info yad "Wine Manager" "Wine is not installed, you must download Wine!"
|
2063 |
lu_winemgr
|
2064 |
check_def_wine
|
2065 |
+
elif [[ ! -f "$WINE" && "$(echo "$LOCWINELST"|sedspaces|wc -l)" -gt 1 && "$W_INST" == 1 ]]||\
|
2066 |
+
([[ ! -f "$WINE" && "$(echo "$LOCWINELST"|sedspaces|wc -l)" -gt 1 ]] && \
|
2067 |
+
[[ ! -n "$P_DXVK" || ! -n "$P_NVAPI" || ! -n "$P_VKD3D" ]])
|
2068 |
+
then def_wine_not
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2069 |
elif [[ -f "$WINE" && "$(echo "$LOCWINELST"|sedspaces|wc -l)" == 1 && "$WINE_VERSION" != "System" ]] \
|
2070 |
&& [ "$W_INST" == 1 ]; then :
|
2071 |
elif [ ! -f "$WINE" ] && [[ "$(echo "$LOCWINELST"|sedspaces|wc -l)" == 1 \
|
|
|
2074 |
then
|
2075 |
export SETWINE="$(ls -1 -t "$LW_WINE_DIR" 2>/dev/null|grep -v '.*.tar.*'|head -1)"
|
2076 |
export_wine_changes
|
|
|
|
|
|
|
2077 |
elif [ "$W_INST" == 1 ] \
|
2078 |
&& [[ ! -n "$P_DXVK" || ! -n "$P_NVAPI" || ! -n "$P_VKD3D" ]]
|
2079 |
then
|
2080 |
if [ ! -n "$(pgrep -fa yad|grep "Wine Manager"|awk '{print$1}')" ]
|
2081 |
+
then def_wine_selector && \
|
2082 |
+
export_wine_changes||exit 1
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2083 |
else
|
2084 |
print_error yad "Wine Manager" "Wine Manager already runing!"
|
2085 |
fi
|
|
|
2087 |
then
|
2088 |
export SETWINE="$(ls -1 -t "$LW_WINE_DIR" 2>/dev/null|grep -v '.*.tar.*'|head -1)"
|
2089 |
export_wine_changes
|
|
|
|
|
|
|
2090 |
fi
|
2091 |
try_mkdir "$WINEPREFIX"
|
2092 |
PFXDEFWINE="$(cat "$WINEPREFIX/.defwine" 2>/dev/null)"
|
|
|
2236 |
$RUN_VKCAPTURE $RUN_FPSLIMIT $RUN_GAMEMODE $RUN_MANGOHUD $RUN_CPU_LIMIT \
|
2237 |
"$WINE" $RUN_VDESKTOP "${EXE_WRAPPER[@]}" "${LU_EXEC[@]}" "${EXE_ARGS[@]}"
|
2238 |
}
|
2239 |
+
exec_wine_with_dbg_log() { echo_dbg|& tee -a "$LOG_FILE" ; exec_wine|& tee -a "$LOG_FILE" ; }
|
2240 |
+
exec_wine_with_log() { echo_dbg ; exec_wine|& tee -a "$LOG_FILE" ; }
|
2241 |
exec_with_log() {
|
2242 |
[[ "$E_LU_EXEC" =~ ^declare ]] && eval "$E_LU_EXEC"
|
2243 |
echo_dbg|& tee -a "$LOG_FILE" ; "${LU_EXEC[@]}"|& tee -a "$LOG_FILE"
|
2244 |
}
|
2245 |
+
export -f exec_wine exec_wine_with_log exec_wine_with_dbg_log echo_dbg exec_with_log
|
2246 |
pre_launch 2>/dev/null
|
2247 |
shrt_loop &
|
2248 |
dis_displ_sw 2>/dev/null
|
|
|
2271 |
else $TERM_APP $LWSHELL
|
2272 |
fi
|
2273 |
else
|
2274 |
+
$TERM_APP $LWSHELL -c 'exec_wine_with_dbg_log'
|
2275 |
clear_log 2>/dev/null
|
2276 |
$LW_EDITOR "$LOG_FILE" 2>/dev/null &
|
2277 |
fi
|
2278 |
elif [ "$LOG" == 1 ]
|
2279 |
then
|
2280 |
+
exec_wine_with_log
|
|
|
2281 |
clear_log 2>/dev/null
|
2282 |
$LW_EDITOR "$LOG_FILE" 2>/dev/null &
|
2283 |
elif [ "$TERMINAL" == 1 ]
|
|
|
2301 |
else
|
2302 |
if [ "$LU_LNK" == 1 ]
|
2303 |
then
|
2304 |
+
export TMP_OUT='/dev/null'
|
2305 |
+
$TERM_APP $LWSHELL -c 'exec_wine_with_log'
|
2306 |
else
|
2307 |
$TERM_APP $LWSHELL -c 'echo_dbg ; exec_wine'
|
2308 |
fi
|
|
|
2375 |
[ ! -n "$FULLCMDLINE" ] && export FULLCMDLINE=("$0" "$1")
|
2376 |
fi
|
2377 |
[ ! -n "$LU_START" ] && export LU_START="$ipath_pth"
|
2378 |
+
[ ! -n "$START_FLINFO" ] && \
|
2379 |
+
export START_FLINFO="$(file "$LU_START" 2>/dev/null)"
|
2380 |
case "$LU_START" in
|
2381 |
*.[Mm][Ss][Ii]) export LU_MSI=1 ;;
|
2382 |
*.[Bb][Aa][Tt]) export LU_BAT=1 ;;
|
|
|
2582 |
then
|
2583 |
try_mkdir "$LW_WINE_DIR"
|
2584 |
STMBATTLEYE="$LW_STEAMAPPS_DIR/Proton BattlEye Runtime"
|
2585 |
+
(STMEAC="$LW_STEAMAPPS_DIR/Proton EasyAntiCheat Runtime"
|
2586 |
+
IFS=$'\n'
|
2587 |
+
STMPROTONSVER=(
|
2588 |
+
$(ls -1 $LW_STEAMAPPS_DIR 2>/dev/null|grep -P 'Proton \d+.\d+'|sed 's|^Proton ||g')
|
2589 |
+
'- Experimental' 'Hotfix'
|
2590 |
+
)
|
2591 |
+
for ver in "${STMPROTONSVER[@]}"
|
2592 |
do
|
2593 |
+
STMverPRTN="$LW_STEAMAPPS_DIR/Proton ${ver}"
|
2594 |
+
if [ -d "$STMverPRTN/files" ]
|
2595 |
+
then STMverPRTN+='/files'
|
2596 |
+
elif [ -d "$STMverPRTN/dist" ]
|
2597 |
+
then STMverPRTN+='/dist'
|
2598 |
+
fi
|
2599 |
if [[ -f "$STMverPRTN/bin/wine" && ! -d "$LW_WINE_DIR/Proton ${ver}" ]]
|
2600 |
then
|
2601 |
try_ln "$STMverPRTN" "$LW_WINE_DIR/Proton ${ver}"
|
|
|
2603 |
try_ln "$STMverPRTN/../version" "$STMverPRTN/version"
|
2604 |
print_info notify "Found Proton ${ver} in Steam and linked to Lux Wine"
|
2605 |
fi
|
2606 |
+
done)
|
2607 |
else
|
2608 |
unset STMEAC STMBATTLEYE
|
2609 |
fi
|
|
|
2658 |
|
2659 |
lite_init() {
|
2660 |
unset EXE_ARGS
|
2661 |
+
DEPRECATE_INIT=(
|
2662 |
+
'-killwine' '-killtray' '-killexe' '-killshell'
|
2663 |
+
'-exit' '-tray' '-lsapp' '-runapp' '-rmapp' '-help'
|
2664 |
+
)
|
2665 |
export_all_functions
|
2666 |
if ! [[ "${DEPRECATE_INIT[@]}" =~ "$1" ]] || [ ! -n "$1" ]
|
2667 |
then
|
|
|
2687 |
check_nvprime
|
2688 |
check_driprime
|
2689 |
check_videodrv
|
2690 |
+
IGN_CHECK_DEF_WINE=(
|
2691 |
+
'-appcfg' '-config' '-version' '-winemgr' '-shell'
|
2692 |
+
'-backupunmnt' '-backupmnt' '-pfxrestore' '-pfxbackup'
|
2693 |
+
'-update' '-openpfx' '-clearpfx' '-shortcut'
|
2694 |
+
)
|
2695 |
+
[[ "${IGN_CHECK_DEF_WINE[@]}" =~ "$1" || -f "$SHRT_FL" ]]||\
|
2696 |
check_def_wine
|
2697 |
check_proton_d3dlib
|
2698 |
check_path
|
|
|
2809 |
ls_dlls() { ls -I "*.json" -1 -t "$LW_RUNTIME_DIR/$1" 2>/dev/null|grep -v '.*.tar.*' ; }
|
2810 |
is_exe_nofirstrun() { [[ -n "$LU_EXE" && ! -n "$FIRST_RUN" ]] ; }
|
2811 |
export LWCFGKEY=$RANDOM
|
2812 |
+
WINELST="$(ls -1 -t "$LW_WINE_DIR" 2>/dev/null|grep -v '.*.tar.*') $(is_exe_nofirstrun && echo '\n Default') $([ -n "$SYS_WINE" ] && echo '\n System') \n GE-Proton7-55"
|
2813 |
WINETHEMESLST="Disabled \n $(ls -1 "$LW_THEMES_DIR" 2>/dev/null|sed 's|.reg||gi')"
|
2814 |
WDLLOVERLST="steam_api,steam_api64,steamclient,steamclient64=n;lsteamclient,winemenubuilder.exe= \n Disabled"
|
2815 |
WMONOOVERLST="Microsoft.Xna.Framework.*,Gac=n \n Disabled"
|
2816 |
+
WINVERLST="11 \n 10 \n \n 8 \n 7 \n xp"
|
2817 |
WARCHLST="win64 \n win32"
|
2818 |
MHAVEDLLST="corefonts vcrun2022 mfc42 mfc140 \n corefonts lucida tahoma vcrun6 vcrun6sp6 vcrun2005 vcrun2008 vcrun2010 vcrun2012 vcrun2013 vcrun2022 mfc120 mfc140 mfc42 msvcirt vb6run openal 7zip \n dotnet20 xna40 dotnet48 faudio \n dotnetdesktop6 dotnetdesktop7 \n physx \n Disabled"
|
2819 |
TERMAPPLST="$(for whichterm in {konsole,gnome-terminal,kitty,deepin-terminal,xfce4-terminal,xterm} ; do which_exe "$whichterm" ; done)"
|
|
|
2835 |
FSRMODELST="Enabled \n ultra \n quality \n balanced \n performance \n Disabled"
|
2836 |
MANGOHUDLST="Enabled \n DLSYM \n Disabled"
|
2837 |
VKCAPTURELST="Vulkan \n OpenGL \n Disabled"
|
2838 |
+
GTKTHEMELST="Adwaita:dark \n Adwaita \n $(ls -1 "$HOME/.themes" 2>/dev/null)"
|
2839 |
lwconfig_save() {
|
2840 |
LWCFGVAR="WINE_VERSION WIN_VER WINEARCH WINEPREFIX WINE_THEME WDLLOVER WMONOVER WD3DMODE DISABLE_NVAPI WINE_DXGI D3D_EXTRAS DGVOODOO2 \
|
2841 |
DXVK_VERSION VKD3D_VERSION DXVK_NVAPI_VERSION D3D_EXTRAS_VERSION DGVOODOO2_VERSION WINE_NVML_VERSION VKD3DCFG MUST_HAVE_DLL \
|
2842 |
FSR_MODE WINE_SANDBOX ESYNC FSYNC GSTREAMER SHOW_WINEDBG LARGE_ADDRESS OLD_GL_STRING \
|
2843 |
NO_WRITE_WATCH HIDE_NVIDIA_GPU HEAP_DELAY_FREE SHARED_MEMORY ALLOW_XIM DIS_LAYER_AMD DIS_NETCORE \
|
2844 |
VIRTUAL_DESKTOP BATTLEYE EAC DXVKASYNC RESIZABLE_BAR LATENCYFLEX DXR EXEARGS CHK_UPDATE EXE_LWDB EXE_LWDBFL \
|
2845 |
+
LOADBAR LOADBARGIF CHKSTEAMAPPS LW_STEAMAPPS_DIR CHECK_LW_APPS GTK_THEME LOG DEBUG SYS_WINETRICKS CPU_LIMIT CMPRSS_METHOD ZSTD_CMPRSS_LVL \
|
2846 |
DIS_OTH_DISPL RESTORE_RESOL RESTORE_GAMMA DIS_COPMOSITOR RESET_PULSE PULSE_LTCY TERMINAL HOLD_TERMINAL LW_TERM_APP \
|
2847 |
LW_DOWNLOADER NO_TRAY US_LAYOUT VKBASALT VKBASALT_FFX_CAS VKICDFILES GAMEMODE LWMANGOHUD MANGOHUD_USER_CONF FPS_LIMIT \
|
2848 |
VSYNC LWVKCAPTURE NVPRIME DRIPRIME"
|
|
|
2884 |
&& try_cp "/tmp/wlogsett$LWCFGKEY" "$WINEPFXWCFGOUT/winetricks.log"
|
2885 |
if [[ -n "$WINEPFXWCFGOUT" && "$WINEPFXWCFGOUT" != "$WINEPREFIX" ]]
|
2886 |
then
|
2887 |
+
print_info "Wine prefix changed to [ $(basename "$WINEPFXWCFGOUT") ]"
|
2888 |
export WINEPREFIX="$WINEPFXWCFGOUT"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2889 |
fi
|
2890 |
CURDEFWINE="$(cat "$WINEPREFIX/.defwine" 2>/dev/null)"
|
2891 |
if [[ "$WINEWCFGOUT" != "$CURDEFWINE" && "$WINEWCFGOUT" != "Default" ]] || \
|
|
|
2895 |
export NEW_WINE_VERSION="$WINEWCFGOUT"
|
2896 |
export OLD_WINE_VERSION="$CURDEFWINE"
|
2897 |
export OLD_WINE="$WINE"
|
2898 |
+
set_wine_version "$WINEWCFGOUT"
|
2899 |
+
print_info "Wine version changed to $NEW_WINE_VERSION"
|
2900 |
+
check_def_wine
|
2901 |
fi
|
2902 |
if [ -n "$LU_EXE" ]
|
2903 |
then
|
|
|
2925 |
}
|
2926 |
lwconfig_menu() {
|
2927 |
yad --plug=$LWCFGKEY --tabnum=1 --form --separator="\n" --quoted-output --bool-fmt=1 --columns=2 "${YADSCROLL[@]}" \
|
2928 |
+
--field="Wine version::CBE" "$(cfg_items "$WINE_VERSION" "$WINELST")" \
|
2929 |
--field="Windows version::CB" "$(cfg_items "$WIN_VER" "$WINVERLST")" \
|
2930 |
--field="Wine architecture::CB" "$(cfg_items "$WINEARCH" "$WARCHLST")" \
|
2931 |
--field="Wine prefix::DIR" "$WINEPREFIX" \
|
|
|
2988 |
--field="Check Steam apps:CHK" "$CHKSTEAMAPPS" \
|
2989 |
--field="Steam apps common folder::DIR" "$LW_STEAMAPPS_DIR" \
|
2990 |
--field="Auto remove apps shortcuts:CHK" "$CHECK_LW_APPS" \
|
2991 |
+
--field="GTK theme::CB" "$(cfg_items "$GTK_THEME" "$GTKTHEMELST")" \
|
2992 |
--field="LOG:CHK" "$LOG" \
|
2993 |
--field="DEBUG:CHK" "$DEBUG" \
|
2994 |
--field="Use system Winetricks:CHK" "$SYS_WINETRICKS" \
|
|
|
3145 |
0) lwconfig_save init ;;
|
3146 |
3) lwconfig_reset ;;
|
3147 |
4) lwconfig_save
|
3148 |
+
cleanrun "$LW_SOURCE" "$LU_EXE" "${EXE_ARGS[@]}" ;;
|
3149 |
esac
|
3150 |
}
|
3151 |
|
|
|
3238 |
cleanrun "$LW_SOURCE" "$1" "$LU_EXE"
|
3239 |
sleep 0.5
|
3240 |
fi
|
3241 |
+
cleanrun "$LW_SOURCE" -config "$LU_EXE" "${EXE_ARGS[@]}"
|
3242 |
else
|
3243 |
if [ -n "$1" ]
|
3244 |
then
|
|
|
3279 |
if [ -f "$2" ]
|
3280 |
then
|
3281 |
local file_info="$(file "$2")"
|
3282 |
+
if [[ -n "$(grep "script"<<<"$START_FLINFO"|grep -o "executable")" || \
|
3283 |
+
-n "$(grep "ELF"<<<"$START_FLINFO"|grep -o "executable")" ]]
|
3284 |
then
|
3285 |
export LU_SHELL_EXE="$(readlink -f "$2")"
|
3286 |
lu_run "$LU_SHELL_EXE"
|
|
|
3412 |
then
|
3413 |
if [ -x "/usr/bin/winetricks" ]
|
3414 |
then
|
|
|
3415 |
if [[ ! -n "$NEED_INSTALL_DLLS" && ! -n "$WTRX_ARG" && -n "$WTRX_RUN" ]] \
|
3416 |
|| [[ ! -n "$NEED_INSTALL_DLLS" && ! -n "$WTRX_ARG" && -n "$LU_EXE" && -n "$WTRX_RUN" ]] \
|
3417 |
|| [[ ! -n "$NEED_INSTALL_DLLS" && ! -n "$WTRX_ARG" && -n "$LU_EXE" && ! -n "$WTRX_RUN" ]]
|
3418 |
then
|
3419 |
+
$TERM_APP $LWSHELL -c "print_info notify 'Using System winetricks!' ; \
|
3420 |
DISABLE_MANGOHUD=1 DISABLE_VKBASALT=1 /usr/bin/winetricks"
|
3421 |
elif [[ -n "$NEED_INSTALL_DLLS" && ! -n "$WTRX_ARG" && ! -n "$WTRX_RUN" ]]
|
3422 |
then
|
|
|
3430 |
check_winetricks
|
3431 |
if [[ ! -n "$WTRX_ARG" && -n "$WTRX_RUN" ]]
|
3432 |
then
|
3433 |
+
$TERM_APP $LWSHELL -c "print_info notify 'Using Lux Wine winetricks!' ; \
|
3434 |
DISABLE_MANGOHUD=1 DISABLE_VKBASALT=1 '$LW_WTRX_DIR/winetricks'"
|
3435 |
elif [[ ! -n "$WTRX_ARG" && ! -n "$WTRX_RUN" ]]
|
3436 |
then
|
|
|
3440 |
fi
|
3441 |
fi
|
3442 |
else
|
|
|
3443 |
check_winetricks
|
3444 |
if [[ ! -n "$NEED_INSTALL_DLLS" && ! -n "$WTRX_ARG" && -n "$WTRX_RUN" ]] \
|
3445 |
|| [[ ! -n "$NEED_INSTALL_DLLS" && ! -n "$WTRX_ARG" && -n "$LU_EXE" && -n "$WTRX_RUN" ]] \
|
3446 |
|| [[ ! -n "$NEED_INSTALL_DLLS" && ! -n "$WTRX_ARG" && -n "$LU_EXE" && ! -n "$WTRX_RUN" ]]
|
3447 |
then
|
3448 |
+
$TERM_APP $LWSHELL -c "print_info notify 'Using Lux Wine winetricks!' ; \
|
3449 |
DISABLE_MANGOHUD=1 DISABLE_VKBASALT=1 '$LW_WTRX_DIR/winetricks'"
|
3450 |
elif [[ -n "$NEED_INSTALL_DLLS" && ! -n "$WTRX_ARG" && ! -n "$WTRX_RUN" ]]
|
3451 |
then
|
|
|
3614 |
try_rm "$WINEPREFIX/drive_c/Program Files (x86)/Windows Media Player" &>/dev/null
|
3615 |
try_rm "$WINEPREFIX/drive_c/Program Files (x86)/Windows NT" &>/dev/null
|
3616 |
try_rm "$WINEPREFIX/.lwtheme" &>/dev/null
|
3617 |
+
try_rm "$WINEPREFIX/.winver" &>/dev/null
|
3618 |
try_rm "$LW_DIR/.lwcfgchksum" &>/dev/null
|
3619 |
try_rm /tmp/FORCE_EXIT &>/dev/null
|
3620 |
print_info notify "Prefix [ $WINEPREFIX ] successfully cleared!"
|
|
|
3650 |
unset args
|
3651 |
if [ -n "$2" ]
|
3652 |
then
|
3653 |
+
[ "$luapp" == 1 ] && \
|
3654 |
local args="$(sed 's|"|\"|g;s|\\|\\\\|g'<<<"$2")"||\
|
3655 |
local args="$(sed 's|"|\"|g;s|\\|\\\\\\\\|g'<<<"$2")"
|
3656 |
fi
|
|
|
3713 |
wait
|
3714 |
fi)
|
3715 |
}
|
3716 |
+
shift
|
3717 |
LWAPPSHRT="$(grep "Categories=Lux Wine Apps" -lr "$MENU_APPS_DIR" 2>/dev/null)"
|
3718 |
if [[ -n "$(echo "$LWAPPSHRT"|head -1)" ]]
|
3719 |
then
|
|
|
3723 |
sed 's|"||g'|sed 's|^ ||g')"
|
3724 |
if [ -n "$APP_NAME" ]
|
3725 |
then get_app_exe "$APP_NAME"
|
3726 |
+
else
|
3727 |
+
print_error yad "No app found with this number!"
|
3728 |
+
return 1
|
3729 |
fi
|
3730 |
else
|
3731 |
if [ "${1,,}" == "all" ]
|
3732 |
+
then rm_allsrtcts ; return $?
|
3733 |
else [ -n "$1" ] && LU_EXE="$1"
|
3734 |
fi
|
3735 |
fi
|
|
|
3738 |
if [[ -n "$(grep -Eiom1 '\.exe$|\.bat$'<<<"$LU_EXE")" ]]
|
3739 |
then
|
3740 |
(IFS=$'\n'
|
3741 |
+
local luapp=1
|
3742 |
if [ "$RM_ALL_EXE_APPS" == 1 ]
|
3743 |
then LWAPPSRM=($(grep -F "$LU_EXE" -lr "$MENU_APPS_DIR" 2>/dev/null))
|
3744 |
elif [ -n "$EXEARGS" ]
|
|
|
3747 |
fi
|
3748 |
if [ -n "$LWAPPSRM" ]
|
3749 |
then rm_srtcts "${LWAPPSRM[@]}"
|
3750 |
+
else print_error yad "Shortcuts Remover" "'$LU_EXE' not found!"
|
3751 |
fi)
|
3752 |
else
|
3753 |
LW_APP_RM="$(echo -e "\n$(echo "$LWAPPSHRT"|xargs -d "\n" -I {} grep -m1 "^Name=" {}|sed 's|^Name=||g'|sort -u|sed ':a;N;$!ba;s/\n/\n\n/g')"| \
|
|
|
3767 |
fi
|
3768 |
fi
|
3769 |
else
|
3770 |
+
print_error yad "Shortcuts Remover" "Lux Wine applications not found!"
|
3771 |
fi
|
3772 |
}
|
3773 |
|
|
|
3824 |
'openuserfolder.bat' 'language.changer.exe'
|
3825 |
'uninst.exe' 'q2rtxded-x86.exe' 'q2rtxded.exe'
|
3826 |
'ErrorReporter.exe' 'EAUpdater.exe' 'explorer.exe'
|
3827 |
+
'UninstWA.exe' 'msiexec.exe'
|
3828 |
)
|
3829 |
IGNLNK=(
|
3830 |
'VKPlay.ru.lnk' 'App Recovery.lnk'
|
|
|
4033 |
$RED┌──[$GREEN$USER$YELLOW@$BLUE`uname -a|awk '{print$2}'`$RED]─[$GREEN$PWD$RED]
|
4034 |
$RED└──╼ \$$GREEN $LW_NAME $BLUE{$LW_NAME arg} ${RED}blabla.exe $YELLOW{exe args}
|
4035 |
|
4036 |
+
${RED}-explorer $GREEN Wine explorer
|
4037 |
+
${RED}-cmd $GREEN Open CMD or open file in CMD
|
4038 |
+
${RED}-shell $GREEN Open SHELL or open file in SHELL
|
4039 |
+
${RED}-config $GREEN Settings
|
4040 |
+
${RED}-regedit $GREEN Registry editor
|
4041 |
+
${RED}-control $GREEN Control panel
|
4042 |
+
${RED}-winecfg $GREEN Wine settings
|
4043 |
+
${RED}-winemgr $BLUE{delonly}$GREEN Wine manager
|
4044 |
+
${RED}-taskmgr $GREEN Task manager
|
4045 |
+
${RED}-uninstaller $GREEN Wine uninstaller
|
4046 |
+
${RED}-winetricks $BLUE{arguments}$GREEN Winetricks
|
4047 |
+
${RED}-openpfx $GREEN Open drive C:\\\\
|
4048 |
+
${RED}-killwine $GREEN Kill Wine processes
|
4049 |
+
${RED}-killtray $GREEN Kill tray
|
4050 |
+
${RED}-killexe $GREEN Kill running EXE
|
4051 |
+
${RED}-killshell $GREEN Kill SHELL
|
4052 |
+
${RED}-exit $GREEN Force exit
|
4053 |
+
${RED}-clearpfx $GREEN Clear prefix
|
4054 |
+
${RED}-shortcut $GREEN Create shortcut
|
4055 |
+
${RED}-debug $GREEN DEBUG
|
4056 |
+
${RED}-help $GREEN Show this usage info
|
4057 |
+
${RED}-version $GREEN Show version info
|
4058 |
+
${RED}-tray $BLUE{noclose}$GREEN Tray
|
4059 |
+
${RED}-init $GREEN Forced initialization
|
4060 |
+
${RED}-pfxbackup $BLUE{xz}$GREEN Create prefix backup
|
4061 |
+
${RED}-pfxrestore $GREEN Restore prefix from backup
|
4062 |
+
${RED}-backupmnt $GREEN Mount prefix backup
|
4063 |
+
${RED}-backupunmnt $GREEN Unmount prefix backup
|
4064 |
+
${RED}-lsapp $GREEN Show a list of applications
|
4065 |
+
${RED}-runapp $BLUE{num|name}$GREEN Launch the application
|
4066 |
+
${RED}-rmapp $BLUE{num|name|all}$GREEN Remove application shortcut
|
4067 |
+
${RED}-appcfg $BLUE{num|name|resetall}$GREEN Applications settings
|
4068 |
+
${RED}-update $BLUE{all} $GREEN Runtime updater$BLUE
|
4069 |
{dx|dxvk} {vkd|vkd3d} {d3d|d3d_extras|d3d-extras} {eac|eac_runtime}
|
4070 |
{nvml|wine_nvml} {dxnv|dxvk-nvapi|dxvk_nvapi} {wtrx|winetricks}
|
4071 |
{bat|battleye|battleye_runtime} {dg|dgvoodoo2}
|
|
|
4171 |
do
|
4172 |
if [ -d "$WTMP_DIR/$W_DW/$PFILES" ]
|
4173 |
then
|
4174 |
+
try_mv "$WTMP_DIR/$W_DW"/* "$WTMP_DIR/"
|
4175 |
+
try_rm "$WTMP_DIR/$W_DW"
|
4176 |
+
try_ln "$WTMP_DIR/$PFILES"/* "$WTMP_DIR/"
|
|
|
|
|
4177 |
break
|
4178 |
fi
|
4179 |
done
|
|
|
4189 |
if try_mv "$WTMP_DIR" "$LW_WINE_DIR/$W_DW"
|
4190 |
then
|
4191 |
WINE_VERSION="$W_DW" WINEDIR="$LW_WINE_DIR/$W_DW" check_proton_d3dlib
|
4192 |
+
if [ -f "$LW_WINE_DIR/$W_DW/proton" ]
|
4193 |
+
then
|
4194 |
+
local prtncmptooldir="$HOME_STM_COMPAT_DIR/$W_DW"
|
4195 |
+
try_rm_broken_link "$HOME_STM_COMPAT_DIR"
|
4196 |
+
[[ ! -d "$prtncmptooldir" ]] && \
|
4197 |
+
ln -sf "$LW_WINE_DIR/$W_DW" "$prtncmptooldir"
|
4198 |
+
fi
|
4199 |
print_info notify "Installation $W_DW completed!"
|
4200 |
[ -n "$WGUIDW" ] && \
|
4201 |
W_INST=1
|
|
|
4232 |
if [[ ! -n "$PGE_GIT_LIST" || ! -n "$WLU_GIT_LIST" || ! -n "$WK4_GIT_LIST" || ! -n "$WGE_GIT_LIST" ]]
|
4233 |
then
|
4234 |
catlist() { cat /tmp/${1}GITLIST$WGUIDW 2>/dev/null ; }
|
4235 |
+
print_info "Сhecking new Wine versions on GitHub..."
|
4236 |
settingbar --text="Сhecking new Wine versions on GitHub..." get_wine_releases
|
4237 |
WLU_GIT_LIST="$(catlist 'WLU')"
|
4238 |
PGE_GIT_LIST="$(catlist 'PGE')"
|
|
|
4242 |
if [[ -n "$WLU_GIT_LIST" || -n "$PGE_GIT_LIST" || -n "$WGE_GIT_LIST" || -n "$WK4_GIT_LIST" ]]
|
4243 |
then
|
4244 |
WINEGITOK=1
|
4245 |
+
print_info "Сhecking new Wine versions on GitHub completed!"
|
4246 |
return 0
|
4247 |
else
|
4248 |
unset WINEGITOK
|
|
|
4254 |
|
4255 |
lu_winemgr() {
|
4256 |
wnamesed() { echo "$1"|awk -F/ '{print $NF}'|sed 's|.tar.[a-z][a-z]||gi;/-x86$/d' ; }
|
4257 |
+
wremovesame() (
|
4258 |
+
IFS=$'\n'
|
4259 |
+
local wines="$(echo -e "$(wnamesed "$1")\n$ILW_LIST"|awk '!seen[$0]++')"
|
4260 |
+
for w in $ILW_LIST
|
4261 |
+
do wines="$(grep -v "^${w}$"<<<"$wines")"
|
4262 |
+
done
|
4263 |
+
echo "$wines"
|
4264 |
+
)
|
4265 |
wyadtab() {
|
4266 |
echo -e "\n$(echo "$2"|sed ':a;N;$!ba;s/\n/\n\n/g')"|\
|
4267 |
yad --plug=$WGUIDW --tabnum="$1" --list --column="" --checklist \
|
|
|
4370 |
print_info notify "Removing $WINE_DEL completed!"
|
4371 |
[ "$WINE_VERSION" == "$WINE_DEL" ] && touch "/tmp/WINEINUSEDEL$WGUIDW"
|
4372 |
done
|
4373 |
+
try_rm_broken_link "$HOME_STM_COMPAT_DIR"
|
4374 |
)
|
4375 |
settingbar --text="Deletion is in progress. Please wait..." wine_rm
|
4376 |
if [ -f "/tmp/WINEINUSEDEL$WGUIDW" ]
|
|
|
4378 |
if [[ -n "$(ls -1 -t "$LW_WINE_DIR" 2>/dev/null|grep -v '.*.tar.*'|head -1)" || -n "$SYS_WINE" ]]
|
4379 |
then
|
4380 |
print_info notify "Removed Wine which was selected by default!"
|
4381 |
+
WINEINUSEDEL=1 check_def_wine
|
4382 |
else
|
4383 |
print_info notify "Removed Wine which was selected by default! Wine is not installed, you must download Wine!"
|
4384 |
try_rm "/tmp/WINEINUSEDEL$WGUIDW" &>/dev/null
|
|
|
4553 |
then
|
4554 |
if is_exe_exist gamemoderun
|
4555 |
then
|
4556 |
+
print_info "GAMEMODE is enabled!"
|
4557 |
export RUN_GAMEMODE="gamemoderun"
|
4558 |
else
|
4559 |
print_error yad "GAMEMODE not found in your system!"
|
4560 |
unset RUN_GAMEMODE
|
4561 |
fi
|
4562 |
else
|
|
|
4563 |
unset RUN_GAMEMODE
|
4564 |
fi
|
4565 |
}
|
|
|
5098 |
|
5099 |
winepfx_init() {
|
5100 |
print_info notify "Lux Wine prefix initialization..."
|
5101 |
+
if [[ -f "$LWRAP_DEFPFX" && "$WINEARCH" == "win64" ]] && \
|
5102 |
+
print_question "Do you want to restore the default prefix backup for the new prefix?"
|
5103 |
+
then
|
5104 |
+
mkdir -p "$WINEPREFIX"
|
5105 |
+
unpack_squash "$LWRAP_DEFPFX" \
|
5106 |
+
"$(dirname "$WINEPREFIX")" \
|
5107 |
+
"$(basename "$WINEPREFIX")"
|
5108 |
+
[ "$?" == 0 ] && PFXINITOK=1
|
5109 |
+
else
|
5110 |
+
check_wine_pids
|
5111 |
+
[[ ! -n "$WINE_PIDS" && -n "$OLD_WINE" ]] && unset OLD_WINE
|
5112 |
+
check_ld_library
|
5113 |
+
if [[ -n "$OLD_WINE" && -f "$OLD_WINE" ]]
|
5114 |
+
then
|
5115 |
+
DISABLE_MANGOHUD=1 DISABLE_VKBASALT=1 "$OLD_WINE" wineboot -i &>/dev/null
|
5116 |
+
[ "$?" == 0 ] && PFXINITOK=1
|
5117 |
+
export LD_LIBRARY_PATH="$SYS_LDLIBPTH"
|
5118 |
+
elif [ -f "$WINE" ]
|
5119 |
+
then
|
5120 |
+
DISABLE_MANGOHUD=1 DISABLE_VKBASALT=1 "$WINE" wineboot -i &>/dev/null
|
5121 |
+
[ "$?" == 0 ] && PFXINITOK=1
|
5122 |
+
export LD_LIBRARY_PATH="$SYS_LDLIBPTH"
|
5123 |
+
fi
|
5124 |
fi
|
5125 |
if [ -n "$PFXINITOK" ]
|
5126 |
then
|
|
|
5175 |
[ -n "$2" ] && export WINEARCH="$2"
|
5176 |
WPFX_STEAMUSER_DIR="$WINEPREFIX/drive_c/users/steamuser"
|
5177 |
if ! is_winepfx "$WINEPREFIX" && [ "$WINEARCH" == "win64" ] && \
|
5178 |
+
[[ "$(basename "$WINEPREFIX")" == 'defprefix' && -f "$LWRAP_DEFPFX" ]]
|
5179 |
then
|
5180 |
DEFPFXRESTORE=1 NO_FLMGR=1 lu_pfxrestore "$LWRAP_DEFPFX"
|
5181 |
export NEEDCHKDLL=1
|
|
|
5502 |
}
|
5503 |
|
5504 |
check_terminal() {
|
5505 |
+
[ "$NOT_TERM" != 1 ] && return
|
5506 |
[ -n "$1" ] && export LW_TERM_APP="$1"
|
5507 |
+
grep -qo 'console'<<<"$START_FLINFO" && \
|
5508 |
+
export TERMINAL=1
|
5509 |
check_hold_terminal
|
5510 |
if [[ -n "$LW_TERM_APP" && -n "$(which_exe "$(basename "$LW_TERM_APP")" 2>/dev/null)" ]]
|
5511 |
then
|
|
|
5706 |
[ -n "$1" ] && export CPU_LIMIT="$1"
|
5707 |
if [[ -n "$CPU_LIMIT" && "$CPU_LIMIT" != 0 ]]
|
5708 |
then
|
5709 |
+
local cores="$(( $CPU_LIMIT - 1 ))"
|
5710 |
+
export RUN_CPU_LIMIT="taskset -c 0-$cores"
|
5711 |
+
export WINE_CPU_TOPOLOGY="$CPU_LIMIT:$(seq -s',' 0 $cores)"
|
5712 |
print_info notify "The application will be launched with a CPU limitation"
|
5713 |
fi
|
5714 |
}
|
|
|
6067 |
export -f print_var print_error print_info check_tray check_wine_pids check_luwine_pid check_vkd3dconfig try_rm check_themes import_cenv sedspaces \
|
6068 |
check_luwine_sh_pid check_exes check_compositor try_mkdir check_symlink check_netcore try_download check_cpu_limit ld_lib_upd wait_kill_exe \
|
6069 |
unpack_tar_xz unpack_tar_gz unpack_tar shell_is_death exe_is_death exes_is_death wine_is_death try_cp check_us_switcher check_proton_d3dlib \
|
6070 |
+
compositor_sw check_winetricks check_musthave_dll check_other_fixes wdllover_upd reg_edit exe2png gamma_sw vkd3dcfg_upd check_downloader ipath \
|
6071 |
create_shortcut lu_debug clear_log dis_debug_msg dis_cmd_msg import_luwine_wcfg check_def_wine lu_prerun lu_run lu_prestart try_mv path_upd select_lwpfx \
|
6072 |
lu_start lu_cmd lu_shell lu_regedit lu_control lu_winecfg lu_taskmgr lu_uninstaller winetricks lu_openpfx lu_exit lu_killshell check_dxr winepfx_init \
|
6073 |
lu_killtray lu_killwine lu_killexe lu_clearpfx lu_rmapp lu_shortcut lu_explorer lu_help lu_version lu_tray lu_winemgr updcfgchksum lite_init \
|
|
|
6082 |
check_db_script stop_loadbar check_wmonover wmonover_upd check_exe_wcfg_cenv lu_appcfg try_fix_wrtx try_shutdown_wine check_steamapps is_winepfx \
|
6083 |
check_display check_restore_resol resol_sw check_restore_gamma dis_displ_sw restore_resol check_virt_desktop check_vkbasalt_cfg check_exe_args \
|
6084 |
check_wine_nvml check_resizable_bar check_latencyflex get_proton_d3dlib makesquash_zstd makesquash_xz lu_pfxbackup lu_pfxrestore lu_backupmnt lu_backupunmnt \
|
6085 |
+
check_dxvk_async check_vsync get_wine_git_lst try_dl_install_wine exeargs_parse try_add_reg_cdrom shrt_loop shrt_from_url shrt_from_lnk check_shrt
|
6086 |
}
|
6087 |
|
6088 |
initbar() {
|
|
|
6143 |
lu_appcfg() {
|
6144 |
if [ ! -n "$(pgrep -fa yad|grep "Applications Settings"|awk '{print$1}')" ]; then :
|
6145 |
else
|
6146 |
+
print_error yad "Applications Settings" "Lux Wine Applications Settings already runing!"
|
6147 |
exit 1
|
6148 |
fi
|
6149 |
+
openconfig() {
|
6150 |
+
shift ; [ "$1" ] && exe_args_add "$@"
|
6151 |
+
cleanrun "$LW_SOURCE" -config "$LU_EXE" "${EXE_ARGS[@]}"
|
6152 |
+
}
|
6153 |
+
rm_allappscfg() {
|
6154 |
+
if print_question "Applications Settings" \
|
6155 |
+
"Are you sure you want to reset all Lux Wine applications config files?"
|
6156 |
+
then
|
6157 |
+
(IFS=$'\n' ; for RMLWAPPCFG in $(ls -1 -t "$LW_APPCFG_DIR"/*.wcfg 2>/dev/null)
|
6158 |
+
do
|
6159 |
+
rm -f "$(readlink -f "$RMLWAPPCFG")"
|
6160 |
+
rm -f "$RMLWAPPCFG"
|
6161 |
+
done)
|
6162 |
+
print_info notify "Lux Wine applications config files deleted!"
|
6163 |
+
fi
|
6164 |
+
}
|
6165 |
+
shift
|
6166 |
try_rm_broken_link "$LW_APPCFG_DIR"
|
6167 |
+
LWAPPSHRT="$(grep "Categories=Lux Wine Apps" -lr "$MENU_APPS_DIR" 2>/dev/null)"
|
6168 |
+
if [ -n "$(echo "$LWAPPSHRT"|head -1)" ]
|
6169 |
+
then
|
6170 |
+
if [[ "$1" =~ ^[0-9]+$ ]]
|
|
|
|
|
|
|
|
|
|
|
6171 |
then
|
6172 |
+
APP_NAME="$(lsapps|awk '($1 == "'$1'")'|awk '{$1=""}1'|\
|
6173 |
+
sed 's|"||g'|sed 's|^ ||g')"
|
6174 |
+
if [ -n "$APP_NAME" ]
|
6175 |
+
then get_app_exe "$APP_NAME"
|
6176 |
+
else
|
6177 |
+
print_error yad "No app found with this number!"
|
6178 |
+
return 1
|
6179 |
+
fi
|
6180 |
+
else
|
6181 |
+
if [ "${1,,}" == "resetall" ]
|
6182 |
+
then rm_allappscfg ; return $?
|
6183 |
+
else [ -n "$1" ] && APP_NAME="$1"
|
6184 |
+
fi
|
6185 |
+
fi
|
6186 |
+
grep -qiom1 "^Name=$APP_NAME$" -lr "$MENU_APPS_DIR" 2>/dev/null && \
|
6187 |
+
get_app_exe "$APP_NAME"
|
6188 |
+
if [[ -n "$(grep -Eiom1 '\.exe$|\.bat$'<<<"$LU_EXE")" ]]
|
6189 |
+
then openconfig "$@"
|
6190 |
+
else
|
6191 |
+
LW_APP_SETT="$(echo -e "\n$(echo "$LWAPPSHRT"|xargs -d "\n" -I {} grep -m1 "^Name=" {}|\
|
6192 |
+
sed 's|^Name=||g'|sort -u|sed ':a;N;$!ba;s/\n/\n\n/g')"|\
|
6193 |
+
yad --title "Applications Settings" --list --radiolist --separator "\n" \
|
6194 |
+
--column="" --column="Select app for open settings:" \
|
6195 |
+
--text-align=center --center --window-icon="$LW_DEF_ICO" \
|
6196 |
+
--width=400 --height=500 \
|
6197 |
+
--button="RESET ALL:2" --button="EXIT:1" --button="OK:0" 2>/dev/null)"
|
6198 |
+
if [ "$?" == "2" ]
|
6199 |
+
then rm_allappscfg
|
6200 |
+
elif [ -n "$(head -1<<<"$LW_APP_SETT")" ]
|
6201 |
then
|
6202 |
+
get_app_exe "$(sed '/^TRUE$/d;/^$/d'<<<"$LW_APP_SETT")"
|
6203 |
+
openconfig "$@"
|
6204 |
+
else return 1
|
|
|
|
|
|
|
6205 |
fi
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
6206 |
fi
|
6207 |
else
|
6208 |
+
print_error yad "Applications Settings" "Lux Wine applications not found!"
|
6209 |
fi
|
6210 |
}
|
6211 |
|
|
|
6588 |
sed 's|"||g'|sed 's|^ ||g')"
|
6589 |
if [ -n "$APP_NAME" ]
|
6590 |
then get_app_exe "$APP_NAME"
|
6591 |
+
else
|
6592 |
+
print_error yad "No app found with this number!"
|
6593 |
+
return 1
|
6594 |
fi
|
6595 |
else get_app_exe "$1"
|
6596 |
fi
|
6597 |
if [ ! -n "$LU_EXE" ]
|
6598 |
then
|
6599 |
print_error yad "No launch application found!"
|
6600 |
+
return 1
|
6601 |
fi
|
6602 |
shift
|
6603 |
cleanrun env LWPPID="$LWPPID" "$LW_SOURCE" "$LU_EXE" "${EXE_ARGS[@]}" "$@"
|
6604 |
else
|
6605 |
print_error yad "Specify App for launch!"
|
6606 |
+
return 1
|
6607 |
fi
|
6608 |
}
|
6609 |
|
|
|
6752 |
-killshell) lu_killshell "$@" ;;
|
6753 |
-exit) lu_exit "$@" ;;
|
6754 |
-clearpfx) lu_clearpfx "$@" ;;
|
6755 |
+
-rmapp) lu_rmapp "$@" ;;
|
6756 |
-shortcut) lu_shortcut ;;
|
6757 |
-help) lu_help ;;
|
6758 |
-version) lu_version ;;
|
6759 |
-tray) lu_tray ;;
|
6760 |
-update) lu_update "$@" ;;
|
6761 |
-config) lu_config ;;
|
6762 |
+
-appcfg) lu_appcfg "$@" ;;
|
6763 |
-pfxbackup) lu_pfxbackup "$@" ;;
|
6764 |
-pfxrestore) lu_pfxrestore ;;
|
6765 |
-backupmnt) lu_backupmnt ;;
|
lwrap/PKGBUILD
CHANGED
@@ -2,13 +2,13 @@
|
|
2 |
|
3 |
pkgname='lwrap'
|
4 |
pkgver='0.78.3'
|
5 |
-
pkgrel='
|
6 |
pkgdesc='Lux Wine wrapper for RunImage container'
|
7 |
arch=('x86_64')
|
8 |
url='https://github.com/VHSgunzo/lux-wine'
|
9 |
license=('MIT')
|
10 |
depends=(
|
11 |
-
'aria2' 'qt5-tools' 'xterm' 'xorg-fonts-100dpi' 'xorg-fonts-75dpi' '
|
12 |
'xorg-fonts-cyrillic' 'xorg-fonts-type1' 'xorg-fonts-misc' 'cabextract' 'exo' 'xapp' 'pulseaudio'
|
13 |
'perl' 'unzip' 'xorg-xmessage' 'yad' 'xkb-switch' 'imagemagick' 'qt5ct' 'syslog-ng'
|
14 |
'icoextract' 'lib32-vkbasalt' 'mangohud' 'lib32-mangohud' 'latencyflex-wine-git' 'steam' 'gamescope'
|
@@ -33,7 +33,7 @@ depends=(
|
|
33 |
'dos2unix' 'lw-runtime' 'wine-gecko' 'wine-mono' 'libdvdread' 'a52dec' 'wavpack' 'lib32-wavpack'
|
34 |
'libmpeg2' 'twolame' 'lib32-twolame' 'gst-plugin-msdk' 'lib32-libdv' 'libdv' 'GE-Proton'
|
35 |
'xxd-standalone' 'obs-vkcapture-lw' 'lib32-obs-vkcapture-lw' 'egl-wayland' 'gstreamer-vaapi'
|
36 |
-
'moninfo' 'perl-image-exiftool' 'xorg-xlsfonts'
|
37 |
)
|
38 |
optdepends=(
|
39 |
'xf86-video-amdgpu' 'xf86-video-intel' 'llvm'
|
|
|
2 |
|
3 |
pkgname='lwrap'
|
4 |
pkgver='0.78.3'
|
5 |
+
pkgrel='3'
|
6 |
pkgdesc='Lux Wine wrapper for RunImage container'
|
7 |
arch=('x86_64')
|
8 |
url='https://github.com/VHSgunzo/lux-wine'
|
9 |
license=('MIT')
|
10 |
depends=(
|
11 |
+
'aria2' 'qt5-tools' 'xterm' 'xorg-fonts-100dpi' 'xorg-fonts-75dpi' 'intel-media-driver'
|
12 |
'xorg-fonts-cyrillic' 'xorg-fonts-type1' 'xorg-fonts-misc' 'cabextract' 'exo' 'xapp' 'pulseaudio'
|
13 |
'perl' 'unzip' 'xorg-xmessage' 'yad' 'xkb-switch' 'imagemagick' 'qt5ct' 'syslog-ng'
|
14 |
'icoextract' 'lib32-vkbasalt' 'mangohud' 'lib32-mangohud' 'latencyflex-wine-git' 'steam' 'gamescope'
|
|
|
33 |
'dos2unix' 'lw-runtime' 'wine-gecko' 'wine-mono' 'libdvdread' 'a52dec' 'wavpack' 'lib32-wavpack'
|
34 |
'libmpeg2' 'twolame' 'lib32-twolame' 'gst-plugin-msdk' 'lib32-libdv' 'libdv' 'GE-Proton'
|
35 |
'xxd-standalone' 'obs-vkcapture-lw' 'lib32-obs-vkcapture-lw' 'egl-wayland' 'gstreamer-vaapi'
|
36 |
+
'moninfo' 'perl-image-exiftool' 'xorg-xlsfonts' 'chromium'
|
37 |
)
|
38 |
optdepends=(
|
39 |
'xf86-video-amdgpu' 'xf86-video-intel' 'llvm'
|
lwrap/lwrap.install
CHANGED
@@ -48,6 +48,9 @@ post_upgrade() {
|
|
48 |
pac -Q vulkan-virtio &>/dev/null && \
|
49 |
pkg_tool 'yes|pac -Rdd vulkan-virtio lib32-vulkan-virtio'
|
50 |
|
|
|
|
|
|
|
51 |
return 0
|
52 |
}
|
53 |
|
|
|
48 |
pac -Q vulkan-virtio &>/dev/null && \
|
49 |
pkg_tool 'yes|pac -Rdd vulkan-virtio lib32-vulkan-virtio'
|
50 |
|
51 |
+
pac -Q firefox &>/dev/null && \
|
52 |
+
pkg_tool 'yes|pac -Rdd firefox'
|
53 |
+
|
54 |
return 0
|
55 |
}
|
56 |
|
main.zip
CHANGED
@@ -1,3 +1,3 @@
|
|
1 |
version https://git-lfs.github.com/spec/v1
|
2 |
-
oid sha256:
|
3 |
-
size
|
|
|
1 |
version https://git-lfs.github.com/spec/v1
|
2 |
+
oid sha256:a7ee39af5b46df9dab0b3a8d0686f903d19454fefde7385fdf1db11b7a7e65df
|
3 |
+
size 586536
|