From f130c342254fa2ccb2ad206e80e3738d6b3803d0 Mon Sep 17 00:00:00 2001 From: Mikhail Tergoev Date: Sun, 14 Apr 2024 20:00:13 +0300 Subject: [PATCH] Scripts version 2275 --- .vscode/launch.json | 14 ++ data_from_portwine/changelog_eng | 11 + data_from_portwine/changelog_rus | 12 +- data_from_portwine/img/gui/close.png | Bin 1659 -> 783 bytes data_from_portwine/img/gui/history.png | Bin 1239 -> 949 bytes .../img/gui/portproton_tray_dark.png | Bin 1255 -> 0 bytes .../img/gui/portproton_tray_dark.svg | 84 +++++++ .../img/gui/portproton_tray_flatpak.svg | 85 +++++++ .../img/gui/portproton_tray_light.png | Bin 5883 -> 0 bytes .../img/gui/portproton_tray_light.svg | 85 +++++++ data_from_portwine/img/gui/wine_file.png | Bin 1336 -> 880 bytes data_from_portwine/img/gui/wine_system.png | Bin 1378 -> 1124 bytes data_from_portwine/scripts/functions_helper | 236 +++++++----------- data_from_portwine/scripts/lang | 8 +- .../scripts/portwine_db/AliceMadnessReturns | 13 + data_from_portwine/scripts/start.sh | 16 +- data_from_portwine/scripts/var | 5 +- 17 files changed, 411 insertions(+), 158 deletions(-) create mode 100644 .vscode/launch.json delete mode 100644 data_from_portwine/img/gui/portproton_tray_dark.png create mode 100644 data_from_portwine/img/gui/portproton_tray_dark.svg create mode 100644 data_from_portwine/img/gui/portproton_tray_flatpak.svg delete mode 100644 data_from_portwine/img/gui/portproton_tray_light.png create mode 100644 data_from_portwine/img/gui/portproton_tray_light.svg create mode 100644 data_from_portwine/scripts/portwine_db/AliceMadnessReturns diff --git a/.vscode/launch.json b/.vscode/launch.json new file mode 100644 index 0000000..cf8d204 --- /dev/null +++ b/.vscode/launch.json @@ -0,0 +1,14 @@ +{ + // Используйте IntelliSense, чтобы узнать о возможных атрибутах. + // Наведите указатель мыши, чтобы просмотреть описания существующих атрибутов. + // Для получения дополнительной информации посетите: https://go.microsoft.com/fwlink/?linkid=830387 + "version": "0.2.0", + "configurations": [ + { + "type": "bashdb", + "request": "launch", + "name": "Bash-Debug (simplest configuration)", + "program": "/home/fidel/PortProton/data/scripts/start.sh" + } + ] +} \ No newline at end of file diff --git a/data_from_portwine/changelog_eng b/data_from_portwine/changelog_eng index 1df44ae..b8a8002 100755 --- a/data_from_portwine/changelog_eng +++ b/data_from_portwine/changelog_eng @@ -2,6 +2,17 @@ You can help us in the development of the project on the website: https://linux- ---------------------------------------- Changelog: +###Scripts version 2275### Date: 14.04.2024 / Download update size: 175 megabytes +* all archives of wine libraries and versions have been moved to CDN (download speed correction) +* the libs_v48 library package has been updated +* added Russian language support in Steam Deck game mode +* fixed the operation of Sony Playstation gamepads (thanks Ardash for identifying the problem) +* fixed the work of the latest versions of SVN on NVIDIA 550+ drivers (problems are still possible with MANGOHUD) +* updated icons in the AUTO-INSTALLATION tab (thanks Dervart) +* added color detection of the system theme to change the tray icon (thanks to Boria138 and Dervart) +* added support for disabling deepin compositing (thanks Boria138) +* fixed GALLIUM_NINE in flatpak (thanks Boria138) + ###Scripts version 2274### Date: 07.04.2024 / Download update size: 15 megabytes * added the previous theme for PortProton, enabled by adding "export GUI_THEME=classic" to "data/user.conf" diff --git a/data_from_portwine/changelog_rus b/data_from_portwine/changelog_rus index 14316b6..c7887d2 100755 --- a/data_from_portwine/changelog_rus +++ b/data_from_portwine/changelog_rus @@ -2,8 +2,16 @@ ----------------------------------------- История изменений: +###Scripts version 2275### Дата: 14.04.2024 / Размер скачиваемого обновления: 175 мегабайт +* все архивы библиотек и версий wine перенесены на CDN (исправление скорости скачивания) +* обновлен пакет библиотек libs_v48 * добавлена поддержка русского языка в игровом режиме Steam Deck -* обновлены иконки во вкладке АВТОУСТАНОВКА +* исправлена работа геймпадов от Sony Playstation (спасибо Ardash за выявление проблемы) +* исправлена работа новейших версий DXVK на драйверах NVIDIA 550+ (c MANGOHUD всё еще возможны проблемы) +* обновлены иконки во вкладке АВТОУСТАНОВКА (спасибо Dervart) +* добавлено определение цвета системной темы для изменения иконки в трее (спасибо Boria138 и Dervart) +* добавлена поддержка отключения композитинга deepin (спасибо Boria138) +* исправлена работа GALLIUM_NINE во flatpak (спасибо Hty за выявление проблемы, спасибо Boria138 за PR) ###Scripts version 2274### Дата: 07.04.2024 / Размер скачиваемого обновления: 15 мегабайт * добавлена предыдущая тема для PortProton, включается добавлением "export GUI_THEME=classic" в "data/user.conf" @@ -113,7 +121,7 @@ * добавлена функция отключения композитинга (спасибо Boria138) * для префиксов созданных вручную, добавлен выбор его наполнения (чистый, или с рекомендованными библиотеками) * улучшена функция обновления префикса при смене версии WINE-PROTON -* улучшение переводов +* улучшение переводов * множество небольших улучшений скриптов ###Scripts version 2256### Дата: 13.02.2024 / Размер скачиваемого обновления: 15 мегабайт diff --git a/data_from_portwine/img/gui/close.png b/data_from_portwine/img/gui/close.png index de254cac7a8fe92f86d58e5e9367ed5e45784ed6..04542779d1c1db8c37f7fb9aa81e53b2ec9f1920 100644 GIT binary patch delta 702 zcmV;v0zv)z437qoU4H_cNkl~U?u^&pkzuio7wvcV=|*H0^zvmy`{I@LSZo{X`1`$>;;Mf$iRfhfuKr?V`BG0RdS@AZU-dJm~8B=W`=si;PM+Yua`Nm71NmjKv-JT zRhi}52tZRN^M5{Y4$m}3Rn>%JZv}uCIQDV8*A%MMPb({eHJ}claX7bLs^+I17#gC7 zWJsYCIQGfjRoxqCkVif%0)XiI4izwfAwNLNkpssr#EkR+PvxGbY_X;^)VqWO*LyGSgUGUH6~CTs(-d=E?(<1G){xofXVx1W!z9X z8-Zz%EQFf{j@r@dl}%y}9NR%uBne)%ssI4OdVH1!sj(D#CDrpEVwI`*|sn$dPC)d8Y56^D9l6@NF7e4Z zz;9DNynnE?Xq!Z*If@Qn56Ol_b{;tPJ0l_WdSzif>Kj0r#2bhr%=G3(vP#AtO0oYy z>P*Vjaafwa!r$6*+a6O@Hi~95u@R9;l#4Jw@pd9*TkrmSS#m?n4t|p7)wcS}%5a+) z_(|0ypRAs~TxH4KuEYz*v1Xa~*oQerzCS k247`ncptX+AIiS=AHX90R``t@fB*mh07*qoM6N<$f~4C-{{R30 delta 1585 zcmV-12G0492Kx+O>9)x6~}+)zBe;|o(cF%U_%0ljrlOafPwKx z0b{UhDN>|vsz&Onj?}b@svpcFyK;+J(8i0=v?%~AfEu<(CZ9kaO zZZGR(btLXJr9I&Z^!v@XCDa(d$N&I)U2m<)x;naj6TcrBqr&e4AcrE?bQNpS14bk9+FKx++m+&)Jwt zs3)c^u2&G@RLd^b2OWNNVTjvviQLoy<66>^l*b3)x4X9T_e1;Wx-dj%ca$n8z?qI_ zN;8rI+<&lSu|}uoeD!AR@k+0-wtNiOlD^;8X zL|fyjC9(2}#r*@##?zBN)p`$ENZIBuj}GqpS%Jz~qSJG}x>W4(I#;psj2;OLS?0z} zTjRDIVo^`L<5l$Y@@LdIWQk55ZZZG{;N=WSmVY5w8P#{WDlhcLuLGE1-@wGiOr)cA zHGJ9@&LOp}DdQjQO-tXqJ>3dm)_Pu5cJajMIO7jz`J{C(0_-bY#j%}R_4soERCSyePoLT%v%Kso8Jl z@_!U5_xt#3%Px*xyozI6e7J9W0dWDjYW`y$GfRCor(5@O{PGPhPtWkixk1(ki+OMN z)+HMS(jGrF33xM|;l8nP9Uor%ihus^{*vK$`!BLFRJ`;(W(<#xgrlOWg!%`PElJle z%WY%^b0Q4-O?Bd6__hIN(6ZOA+1PJjFdL6=h-JdaSO zo^M3BW6a%|ws6&xjtaWtNjQ;smxcZ&q*7U`$|_Zg06Q~*T!jUJIfQ!#9*CJtp}%^v z{qj)|u&Do1hu?EQd&yJZI!`gn5SPQ^AcS#a(sLHC&9^poKQ*A!bH3U({_C4P&wpR> z9FymHkN`$4NzZ9|OXA4>Taf8uClc=piElidc5{OLc+&3{JMS%TS{Kw zesY2LhrdLDWA&RU4fy$TdWPe}H~A)+TGmGb7`ElAgnDCI?<%1cPHPsg1RdVpxrOyX z2Y`vW1jn!3EV##>21WV8vM?%|Og*D>0ji1u9DTKx^+AWJ`6N^GN!A4&j(_f`WnEF= znS2j}tGZx&o}By|ep&(ug;kdOef)AqEj!9q^Kc=>yMv=#y!QZry=AL;XGbl6JJ7($ zy$8HEGFGsESxgy789AAKY)sU+T2+-N>o2xdbNI!zBwd$3kB-xGcj_rAL3?F6KdGxB zU|ID3caq;-zm@aAGL;~&+_$u`_06m9;FuJ00000NkvXXu0mjf-KQPm diff --git a/data_from_portwine/img/gui/history.png b/data_from_portwine/img/gui/history.png index c6b424d2612328e5b4100a273d3cfde57a6b3a14..440738c9c2eb2c79b5a12b9201b7b7c75dce274f 100644 GIT binary patch delta 869 zcmV-r1DgET3AG21U4H{YNkl9;6H#Hu5#4px zU0ksd30B6&1kp-CkW{jje;}nHirA#G5G^cLHolkLV)wlTi!4}K*jNaXtVnj=5O>~Z zF>hwx%)I$~;LV$R?)kp&oO|!N4@r1IBrk~mk%R+~*+t;g$$y)B>khzD{zdjCKp8+T zJ)~`AD#7lu7etZ-UJwb%ydY}-4B<+0B|5tPFMH2q;kUgYN+e;D@WWUJH!>AulpN_7 zU8E%P&qBDn-a)pYT}h)}wGM;J-c6a-0Bob{>;93YZWX{=id%jdtD8DdGSjnUNeNc- zleZ-Mxs95&)ef3hWT@8uhA|ce;U~BQv%D zlAUTP^PO(gtDbG({4h>>DNk1HGiT|mcVDV)mJ8+%3w!_uJkS{w0Z&h*JWbFf;GJmz zM~T~o{Ne=h0mj*3W?R2oU;MdH(F^yMi$DM^asFhu|9?s$uw;19KF2bx$+U*)2Y_T{ z@lp|ZXmL!oWwI?~0`SA=jUw>ycE~=@7#_>0zW2izGf3eg?fvWr`e7`LsjOeo2u-w# z0tGJsm13ZHS}^L&R`P>^8uc!6#XzSI5w#IO`wkl+IN>j-F>#1hx_z$LR=A1Ph z_Ignl4O(A`_saKb$o0g;6`cMa$hT~=4}de7>rS#$eW>!{{#Sk&|2Ro_+>LY8SgC$w z*vrU1>pacv=RO5?a&h(Y@M$lUb_g@1p8(i)>m*Yjm69cgZJY2w0DW~b9z*K@x=%*p?R9~gh zHcs$*qh5V`9#TJuuVcJ5tKbDcj4#Y1IPPv8CwO3HSIIZ(RAOe5-UFVRRq#nkA2aK& zNnQp#GHQC#mw%okqH(y<6^h@?*_U%J>HEOBiGnSWbobjhE9u%yVgLjAwM3F1_bq8s vuWd_i88`sanZOKenS6vuz(&a~4zBUTE;&;$t8YTGnI6=tj& z=(JQ9zBgjR!caE4l0@RlB`a6N_#h_W3LhIaMiNtGrbE=u3=oT{ty+r$k*bAS9=$Wu z$2~4)=FXiv5Bf`HbM86c|NG8&&iMvaMO86l$uU*MPaXvb#(z_41mmeOfKR(006Z!>X%+9fIe9Co5S5T2+xzxjtA&+6}4}WgsD}_uI*&GP)@ZF&@o8<5K zyEZWzrU9<)+DXu7;N|gif=nNiiZ-0fH4;uUO4oEtRkm6JfjszhqDWE(u4-5ohqRWRSijg#)Y_N)nUs;8^! z1b>43W4dpAs;ud%39G%-kr{a6B7gyf)EN!a-b*~RrIn!1;N2^K(>Xfk{NA}T1Hi({ z3d3{roDV<53$BLs&>%*`v>8tg0T{tVy4PK&)wrC^@m|MPCVRK@K}Q>xvx@-S<@0g4 zZ8IPK^$%Ok05|)>JhQ%{ivSQf7EGjj#ea+?$AE3soKAGN^WugUW^#-CYGob!gTW>? z2C7%I_g(UE!Cyc^V-wW?EXJdmDU<3E<-iv zN98C|`5LNNMJrbafgiWAgl#_Eq8G=BiB zXrxtO!t1eU*PcSPs1_qIVMQaY;GKyh$vvVnocAeF_B7YQt{jtU+dP#WC{3HHv(!A3 z-fAq{Csm|#RZ1QNCTx4@+2V95`&Msw7YUwD_aeF%Lw2KfXQ`?+2l5Nb2tN7D+8rLf c(^~%nAU+Ri6=SJB00000NkvXXt^-0~f(he77XSbN diff --git a/data_from_portwine/img/gui/portproton_tray_dark.png b/data_from_portwine/img/gui/portproton_tray_dark.png deleted file mode 100644 index 5caa1c2fd6c911567325d483420b9fa7ab010054..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1255 zcmV`8yO8KZ6jWfCQDk6+*-L^1VMUZ;P>E4lKKNjg z3H1>8(nW=$AfXp4DVIp0^fV8hunYpwtPzh}>y zJ$p`wF*=iN!2eC4TN~70i9-k%U_8!~4Ak$~huyIcFMH^#Tp@%Bn1fq!6-KpjJ%Fuv z59?x#KXwHiW9+Ko8oYy(h&9_OY{K+3*F-GFYuJcaFdsc_@w*^C4sSLf-L7rL@iymv z#r!@KfFbz2BC!)V)JGzh)fRxk>1Yql9Uq2OIe=q$8w)TE!!rIuaYZ^MHsEkW5wklA zkW`I(usI#UR`AzYis2dGr|>79!?+q(aYVrYRB1b;#ivjJ#^R$6N%r9COw6c;Q}OYJ zSK<0X0qDWDib)RP$}TI|#)bkOY30a2iJ!q#)vO1vh7h`Wnh$LlH?sBPAMg;uNIY0G z(NxT8NP^^{*2MO=eq=}QW=VOhYqvEd0UtMv`?U2VD`0ZNWEVG#gY}XMR>!u)7`L=K zSplITiGdB{#2EKrMU9Y?SeQMK6|k!zkJ7jh!dW4NvZ=WoZ&biJg$H7cr%$^~NgJ>I zTBNMaZBrs|!e=RP#1`D%#y4P*}u{_z9O~4zG+c zK3e3Tv!5&Y?5W@bXXpBd^A2U}n1i`~Pessoairw@3A|M?*M+(M{=7q(fStMilq!fZ z#=R)JQp;kD+pFZl<+*5NjO?8PhZIXpv7JEmLU#FLm^|}6x5W=+`V!E~v z!W79A%-Xs_=MJMV5`Q>-B(^D7KJ?+p55NaG%p;gk=wBh>GQH>G%6=5^SOMOew*D0o z4wqDre9{FKV#lTfuuW3`590@{!KDTMbM;;X{({ks1*C~*_;*>{YNxQMB<4=N%V2&{ zw>0B_uj1u=Y2~YPX_vGi@;c7X`QG954Y9JeLbARpI`@1>UNz_E%WZ)6;gZy69Db`v zzN~Ff@*dDsK)}-lU`M4};CQwV$gjoVN}TEl$Ou^=*-dBxzMnbwRTspM-HXKb6+f1eeQpVfsL{HNx*>gN^~N>86&#F z>JI@KA-CX@0^&RIP&XsrZ&j$sLI`6dTQp~3SBx>gVbDDHe<7eh?Tr7o%HKfX!$ja< RKBE8t002ovPDHLkV1h{)R9651 diff --git a/data_from_portwine/img/gui/portproton_tray_dark.svg b/data_from_portwine/img/gui/portproton_tray_dark.svg new file mode 100644 index 0000000..a943863 --- /dev/null +++ b/data_from_portwine/img/gui/portproton_tray_dark.svg @@ -0,0 +1,84 @@ + + + + + + + + + + + + + + + + + + diff --git a/data_from_portwine/img/gui/portproton_tray_flatpak.svg b/data_from_portwine/img/gui/portproton_tray_flatpak.svg new file mode 100644 index 0000000..de3205d --- /dev/null +++ b/data_from_portwine/img/gui/portproton_tray_flatpak.svg @@ -0,0 +1,85 @@ + + + + + + + + + + + + + + + + + + diff --git a/data_from_portwine/img/gui/portproton_tray_light.png b/data_from_portwine/img/gui/portproton_tray_light.png deleted file mode 100644 index 0f94e6078e798d219d3641e83be44ee2844ab031..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 5883 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 + + + + + + + + + + + + + + + + + diff --git a/data_from_portwine/img/gui/wine_file.png b/data_from_portwine/img/gui/wine_file.png index 350d466e3dfd3f767d199f249338f68c1d664dad..3aac46989b656a6b1e8f269f73d9fcd6fdd6aea0 100644 GIT binary patch delta 800 zcmV+*1K<3(3h)MyU4H`oNkl6)agXeU1~e??$^c4 z#F_WzSEktS?!I%r=hr>w+$Y=gB1!9wh&hIM4Q9DW0kZGX~w<64)ZUK>eT`{e{; z1^iTkd~`fo@%$teR$xIgZ81b{z&;YXdL7 zgI|rl4frL)-v3x!G2ER17qQOt5E{q<_(piC5RQ3Bcz>}llQHs)O8pg+^<$o12=(Uq z<*JX<*C=VdQOKjb7YOCKt-jr;+ye>V{d&Z=D7{L+!nC}~xZaxOGs&4C_9 zUZk_tZv#$%Clz=BdqAG;HobA~@lt*v6f}EY<9|^|n50n_&gial`yVwVWTCjeZL@Ic zLg(2Y>u@Z}vvbeJ77rp`0p=lJdQO(_nLhyIM{Kgk#(YK46Q$(VD&lS6JEI>!Zw7^Z zm<8|`lb9O$H#U@HuLD>*zDueD(AurT+dxZcb>lTlpH84$6N5X|?W=iuoB_kDcYK#l e{TYWcE&c_f&M2v{Eg#kZ0000h{F@S<1v5A^=r>WBJG{#^|s9*`DU)a)5 z+RpZC_xPjTb+@|y>`VawE%VTTThu>XsDt7sUyfuh_4QEv=YC{b537MG0Fr>a2dwsQff zPMt41U90AsB*#SL+Rg(4M}ZAMmx8Y*Ec4B@O9faIY`#lVIqf%DV#u}3jmb4OIF`}~ zW>Md?Yk!&kxw1r*ZadNEON-c+za(SEj0i7WXh#$+ZmqdV>A}!NU}fUD0~m`$*w@}k zp2w5KAM5PJwM?b-U`PP=loc~8bNjs1=jDyc<*7xEj#2m91(e9!ak&pxR>UV5w!`6$ z9smwhE@y8=835Y+J{F~(PCjMxc1Sj}+wbVb?W&92}v3 z?W&Zxz^`c?H|H(pcAqb85`cz!RYS3BVc^X5A-blfIM&&l#GmXN1Yq0>{62q>Tl+zl zrIlZRs6?tJ>o#5109-3j1oYo3NutzE)@`~B3pTl7J3E0>3lo&kHc@A;PUa+~tIh>L z>3?=;7pOzP%52I2E~3~Ut~E~!q!msvG#Z@;5l#a|S(;?RporQXt_vg`y11d<)LN+` zIN83G|6&|f(VEHHjqPzmqcQXpqD}z3w4#J}s>-ucniXL@5=k3doRh=8%bk4G^>>VV z(zVRfp4`UP^)WMm9YqBh4Z5eMInzHx=YP}`udFDc)bC5_4vDy1Pr5!%_VVu49z05Mc1<+}-pubY5dz0G*D~J%F2=}-NHk+Y z-}DSkBR6m(5!^_WrjZ-;P0wVUpQxpTwyjIH@gZu+HjGt7w4 zI6TVd*RIFf&AG5;ZV`~APNUl`TVxg5Pk`@#Ii+G+qUz!Bw!qIZB5g0#n_4SXRK7&m zm=eqm=S0b~;o6#xg@KICI}y1}E%!64o)D$B0Hr|eYVQVmMX9D7)OX{x8_wTK>mO+; VLtf8XQcC~;002ovPDHLkV1j|4XAJ-V diff --git a/data_from_portwine/img/gui/wine_system.png b/data_from_portwine/img/gui/wine_system.png index daca8c204eb91df5ac61b2454e2e3f298a2b9096..61d934740dd3ad6e6388dda47ce6565764cd5514 100644 GIT binary patch delta 1046 zcmV+x1nK+Y3gifoU4H}dNklFixk>|MFc6D+-amqZqi`2Rf-EK*7pNU zliX{}%y(SOBX=e_crj$n{Ocy|cF)iWf!YU>#7N7j!xbwxZvOidT)_u^VT%^_`DZ z6bgro(q)YE=}czJg($dlWNfn*ol`+Jbwkq}J3W6;;mL@~53=drCCN8xM5BSI|7sXr z&;JCtqkP-|d|&b|(?Kq^xu$T-wWI9NSJVx&y?3n$=zr$@ohV0ZndIrYTWezw_uQe0K8)@Svgt=EN>lQZIu1PZ zj}uHb41d|^>2NOgSdFUkV=dbgnwXKPsg9_D>-j&b=%7B-9n_>B?PGGtztI{l0r6^@ zqS-Lhn_m(|qdAOwV;OgN>~O1DZP~|G(l&7M1^9ew9ZsRL=?NeS{86%EZ;(l!Xb5aq z68Z7R1z7_;igItn^CZZJg3irldJi`wObm~%H-F-+SqYI5XTG4t*99J^A+a)wum#w< zXf2~bHnkP%cEgDCa-*$mBt={JTExs&M&F3pG@I!;R}Fq-;#MhY>ES_>lFuhKlbLP1 ziHI`@dQUX~wFf1ij|0fmREHFKEn>aVCB75tO4{t*X(7KDc-z9O%?uQIG0di__w~=s zPk#U+yaN2HXcDVlIBzcM{pl;soF?;QUs^TKq53VNU5NP$=oaM7Ad@;7wXMl;RsP&{ z^E&?<$g~s|?v_}`T19VG$D9wg^;}*q-Nf+3`y#qqM4yUIW>Z3d&d<)=q_Nmnz$#!z zcx~)s?e1P^MdarFTTo5|8&r8B%%zVsvwv;6hY4@;KEWO@6JHjU55S&5_OU zAJ2%2C+Of@ws-f{5LKl8J#16{cfy7xb%*^U2)o+w7lv`WTKoFKW(NNO66Im>(htnV QJOBUy07*qoM6N<$f>6^0RR910 delta 1302 zcmV+x1?l?a2;vHmU4I1cNklY=7-((K>#RL#^wj$=)4O;kEHQ@!-mG)>k+Wz%HkG&PeGdl3`%q82y~e^iA01Bxsn z!Y%@PPY4BgnA}B~la`*lz-GSDKd>7H6Z-YLeuqK|~M{j6m>xJrEo;s_Tnlwv^1U-&9Hu1Y;dB;s^_l zHSp-&3pg6;Z-3Qdk*~LPu;5q&AFW=&(NI4?zBlGvpK0*<+B{xuxfo9!XYM`MiG6D@ zp;EOoRY9S!-^^AblXkO8^iGjVNW9&TB#>s&}LZf37 zwow+PdwJ{prFfhu^_-SSyfHG$XZd;KJ8J@i(SIlhI<68;{@+WIhyeNZja=GX#K-ro zptXDh?U6h5O{m8e;Z%G?ka>|A)$}hwPjhf)Ii28nNvYhlZ_AFbR zQcMH(EzjlO;X71ayv*{9c~q@jibp95gMUp)_YinG>^Bc9!?KG-+T)`eFKb$Lw{R1 zg5xrOcF8)vyVlF6m%CG?0vObQu9+e>HZ-w)K^9*6YCB+&?E4 z;~Vo}S5L~<-3_s=;}sC)H`nTxU4I9ZxdreN8n?|?lw=1-xK>D0ZpBW?KsD~pvN{`13uDevPZCI%s`8M|A{tuiGB`-!Q z$~vbyQZDaA_-gAnGNzssrM3dOz|slV6`)I$s`a3b3|5ph&X(&x=^0V&a}N+RJ^%m! M07*qoM6N<$f^rpfAOHXW diff --git a/data_from_portwine/scripts/functions_helper b/data_from_portwine/scripts/functions_helper index 08430c1..9f8bfd3 100755 --- a/data_from_portwine/scripts/functions_helper +++ b/data_from_portwine/scripts/functions_helper @@ -116,97 +116,60 @@ check_process () { } export -f check_process -try_download_no_mirror () { - [[ -f "${PW_AUTOINSTALL_EXE}" ]] && try_remove_file "${PW_AUTOINSTALL_EXE}" - PW_DOWNLOAD_FILE_NAME="$(basename $2)" - if check_gamescope_session ; then - $PW_TERM curl -f -A "Mozilla/5.0 (compatible; Konqueror/2.1.1; X11)" \ - -H 'Cache-Control: no-cache, no-store' -H 'Pragma: no-cache' -L "$1" -o "$2" - [ "$?" != 0 ] && return 1 || return 0 - fi - set -o pipefail - curl -f -# -A "Mozilla/5.0 (compatible; Konqueror/2.1.1; X11)" -H 'Cache-Control: no-cache, no-store' -H 'Pragma: no-cache' -L "$1" -o "$2" 2>&1 | \ - tr '\r' '\n' | sed -ur 's|[# ]+||g;s|.*=.*||g;s|.*|#Downloading at &\n&|g' | \ - "${pw_yad_v13_0}" --progress --percentage=0 --text="${loc_downloading} ${PW_DOWNLOAD_FILE_NAME}" --auto-close --no-escape \ - --auto-kill --center --text-align="center" --fixed --no-buttons --title "PortProton" --width=500 --height=90 \ - --window-icon="$PW_GUI_ICON_PATH/portproton.svg" --borders=15 - if [ "${PIPESTATUS[0]}" != 0 ] ; then - print_error "Failed to download $PW_DOWNLOAD_FILE_NAME" - return 1 - else - print_ok "File downloaded successfully: $PW_DOWNLOAD_FILE_NAME from $1" - return 0 - fi -} try_download () { - PW_DOWNLOAD_FILE_NAME="$(basename $1)" - if check_gamescope_session ; then - $PW_TERM curl -f -A "Mozilla/5.0 (compatible; Konqueror/2.1.1; X11)" \ - -H 'Cache-Control: no-cache, no-store' -H 'Pragma: no-cache' -L "$1" -o "$2" - # $PW_TERM curl -f -A "Mozilla/5.0 (compatible; Konqueror/2.1.1; X11)" \ - # -H 'Cache-Control: no-cache, no-store' -H 'Pragma: no-cache' -L "ftp://171.22.215.18/archives/${PW_DOWNLOAD_FILE_NAME}" -o "$2" - return 0 - fi - [[ ! -f "${pw_yad_v13_0}" ]] && local pw_yad_v13_0="yad" - set -o pipefail - curl -f -# -A "Mozilla/5.0 (compatible; Konqueror/2.1.1; X11)" -H 'Cache-Control: no-cache, no-store' -H 'Pragma: no-cache' -L "$1" -o "$2" 2>&1 | \ - tr '\r' '\n' | sed -ur 's|[# ]+||g;s|.*=.*||g;s|.*|#Downloading at &\n&|g' | \ - "${pw_yad_v13_0}" --progress --percentage=0 --text="${loc_downloading} ${PW_DOWNLOAD_FILE_NAME}" --auto-close --no-escape \ - --auto-kill --center --text-align="center" --fixed --no-buttons --title "PortProton" --width=500 --height=90 \ - --window-icon="$PW_GUI_ICON_PATH/portproton.svg" --borders=15 - if [ "${PIPESTATUS[0]}" != 0 ] ; then - print_error "Failed to download ${PW_DOWNLOAD_FILE_NAME} from GitHub." - print_info "Try download ${PW_DOWNLOAD_FILE_NAME} from FTP" - curl -f -# -A "Mozilla/5.0 (compatible; Konqueror/2.1.1; X11)" -L "ftp://171.22.215.18/archives/${PW_DOWNLOAD_FILE_NAME}" -o "$2" 2>&1 | \ - tr '\r' '\n' | sed -ur 's|[# ]+||g;s|.*=.*||g;s|.*|#Downloading at &\n&|g' | \ - "${pw_yad_v13_0}" --progress --percentage=0 --text="${loc_downloading} ${PW_DOWNLOAD_FILE_NAME}" --auto-close --no-escape \ - --auto-kill --center --text-align="center" --fixed --no-buttons --title "PortProton" --width=500 --height=90 \ - --window-icon="$PW_GUI_ICON_PATH/portproton.svg" --borders=15 - if [ "${PIPESTATUS[0]}" != 0 ] ; then - print_error "Failed to download ${PW_DOWNLOAD_FILE_NAME} from FTP." - return 1 - fi - fi - try_remove_file "${PORT_WINE_TMP_PATH}/download_log" - print_ok "File downloaded successfully: $PW_DOWNLOAD_FILE_NAME from $1" - return 0 -} + local filename="$(basename "$1")" + local url="$url_cdn/$filename" + local dest="$2" + local silent="false" + local no_mirror="false" + case "$3" in + silent) + silent=true ;; + no_mirror) + no_mirror=true + url="$1" ;; + esac -try_download_to_path () { - PW_DOWNLOAD_FILE_NAME="$(basename $1)" + [[ ! -f "${pw_yad_v13_0}" ]] && local pw_yad_v13_0="yad" + + # If gamescope session is active, use PW_TERM for downloading if check_gamescope_session ; then - $PW_TERM curl -f -A "Mozilla/5.0 (compatible; Konqueror/2.1.1; X11)" \ - -H 'Cache-Control: no-cache, no-store' -H 'Pragma: no-cache' -L "$1" -o "$2/$PW_DOWNLOAD_FILE_NAME" + $PW_TERM curl -f -# -A 'Mozilla/5.0 (compatible; Konqueror/2.1.1; X11)' -H 'Cache-Control: no-cache, no-store' \ + -H 'Pragma: no-cache' -L "$url" -o "$dest" [ "$?" != 0 ] && return 1 || return 0 fi - set -o pipefail - curl -f -# -A "Mozilla/5.0 (compatible; Konqueror/2.1.1; X11)" -H 'Cache-Control: no-cache, no-store' \ - -H 'Pragma: no-cache' -L "$1" -o "$2/$PW_DOWNLOAD_FILE_NAME" 2>&1 | \ - tr '\r' '\n' | sed -ur 's|[# ]+||g;s|.*=.*||g;s|.*|#Downloading at &\n&|g' | \ - "${pw_yad_v13_0}" --progress --percentage=0 --text="${loc_downloading} ${PW_DOWNLOAD_FILE_NAME}" --auto-close --no-escape \ - --auto-kill --center --text-align="center" --fixed --no-buttons --title "PortProton" --width=500 --height=90 \ - --window-icon="$PW_GUI_ICON_PATH/portproton.svg" --borders=15 - if [ "${PIPESTATUS[0]}" != 0 ] ; then - print_error "Failed to download $PW_DOWNLOAD_FILE_NAME" - return 1 - else - print_ok "File downloaded successfully: $PW_DOWNLOAD_FILE_NAME from $1" - return 0 - fi -} -try_download_silent () { - PW_DOWNLOAD_FILE_NAME="$(basename $1)" - curl -f -sS -A "Mozilla/5.0 (compatible; Konqueror/2.1.1; X11)" -H 'Cache-Control: no-cache, no-store' -H 'Pragma: no-cache' -L "$1" -o "$2" - if [ "$?" != 0 ] ; then - print_error "Failed to download $PW_DOWNLOAD_FILE_NAME. Skipping." - try_remove_file "$2" - return 1 + # Normal download + set -o pipefail + if [ "$silent" == "true" ] ; then + curl -f -# -A 'Mozilla/5.0 (compatible; Konqueror/2.1.1; X11)' -H 'Cache-Control: no-cache, no-store' \ + -H 'Pragma: no-cache' -L "$url" -o "$dest" 2>&1 else - print_ok "File downloaded successfully: $PW_DOWNLOAD_FILE_NAME from $1" - return 0 + curl -f -# -A 'Mozilla/5.0 (compatible; Konqueror/2.1.1; X11)' -H 'Cache-Control: no-cache, no-store' \ + -H 'Pragma: no-cache' -L "$url" -o "$dest" 2>&1 | \ + tr '\r' '\n' | sed -ur 's|[# ]+||g;s|.*=.*||g;s|.*|#Downloading at &\n&|g' | \ + "$pw_yad_v13_0" --progress --percentage=0 --text="${loc_downloading} $filename" --auto-close --no-escape \ + --auto-kill --center --text-align="center" --fixed --no-buttons --title "PortProton" --width=500 --height=90 \ + --window-icon="$PW_GUI_ICON_PATH/portproton.svg" --borders=15 fi + + if [ "${PIPESTATUS[0]}" != 0 ] ; then + if [[ "$no_mirror" != "true" ]] ; then + print_error "Failed to download $filename from $url, trying GITHUB mirror..." + url="$1" + curl -f -# -A 'Mozilla/5.0 (compatible; Konqueror/2.1.1; X11)' -H 'Cache-Control: no-cache, no-store' \ + -H 'Pragma: no-cache' -L "$url" -o "$dest" 2>&1 | \ + tr '\r' '\n' | sed -ur 's|[# ]+||g;s|.*=.*||g;s|.*|#Downloading at &\n&|g' | \ + "$pw_yad_v13_0" --progress --percentage=0 --text="${loc_downloading} $filename" --auto-close --no-escape \ + --auto-kill --center --text-align="center" --fixed --no-buttons --title "PortProton" --width=500 --height=90 \ + --window-icon="$PW_GUI_ICON_PATH/portproton.svg" --borders=15 + fi + [[ "${PIPESTATUS[0]}" != 0 ]] && print_error "Failed to download $filename from GITHUB. Skipping." && return 1 + fi + + print_ok "File downloaded successfully: $filename from $url" + return 0 } create_new_dir () { @@ -308,7 +271,7 @@ unpack_tar_zst () { unset PW_ZSTD_PORT pw_start_progress_bar_cover_block "${COVERS_PATH}/unpacking_${update_loc}.gif" if command -v zstd &>/dev/null ; then - tar -I zstd -xhvf "$1" -C "$2" + tar -I zstd -xhf "$1" -C "$2" pw_stop_progress_bar_cover_block [ "${PIPESTATUS[0]}" != 0 ] && print_error "File $1 unpacking error." && return 1 || return 0 else @@ -320,11 +283,11 @@ unpack_tar_zst () { unpack_tar_xz () { if [[ "$3" == "silent" ]] ; then - tar -Jxhvf "$1" -C "$2" && return 0 || return 1 + tar -Jxhf "$1" -C "$2" && return 0 || return 1 else set -o pipefail pw_start_progress_bar_cover_block "${COVERS_PATH}/unpacking_${update_loc}.gif" - tar -Jxhvf "$1" -C "$2" + tar -Jxhf "$1" -C "$2" pw_stop_progress_bar_cover_block [ "${PIPESTATUS[0]}" != 0 ] && print_error "File $1 unpacking error." && return 1 || return 0 fi @@ -333,7 +296,7 @@ unpack_tar_xz () { unpack_tar_gz () { set -o pipefail pw_start_progress_bar_cover_block "${COVERS_PATH}/unpacking_${update_loc}.gif" - tar -xhzvf "$1" -C "$2" + tar -xhzf "$1" -C "$2" pw_stop_progress_bar_cover_block [ "${PIPESTATUS[0]}" != 0 ] && print_error "File $1 unpacking error." && return 1 || return 0 } @@ -341,7 +304,7 @@ unpack_tar_gz () { unpack_tar () { set -o pipefail pw_start_progress_bar_cover_block "${COVERS_PATH}/unpacking_${update_loc}.gif" - tar -xhvf "$1" -C "$2" + tar -xhf "$1" -C "$2" pw_stop_progress_bar_cover_block [ "${PIPESTATUS[0]}" != 0 ] && print_error "File $1 unpacking error." && return 1 || return 0 } @@ -450,14 +413,14 @@ init_wine_ver () { orig_IFS="$IFS" IFS=$'\n' for dist_dir in $(ls -1 "${PORT_WINE_PATH}/data/dist/") ; do - dist_dir_new=`echo "${dist_dir}" | awk '$1=$1' | sed -e s/[[:blank:]]/_/g` + dist_dir_new=$(echo "${dist_dir}" | awk '$1=$1' | sed -e s/[[:blank:]]/_/g) if [[ ! -d "${PORT_WINE_PATH}/data/dist/${dist_dir_new^^}" ]] ; then mv -- "${PORT_WINE_PATH}/data/dist/$dist_dir" "${PORT_WINE_PATH}/data/dist/${dist_dir_new^^}" fi done IFS="$orig_IFS" fi - if [[ -z `ls "${PORT_WINE_PATH}/data/dist/" | grep "${PW_WINE_USE}"` ]] ; then + if ls "${PORT_WINE_PATH}/data/dist/" | grep "${PW_WINE_USE}" ; then if [[ "$PW_WINE_USE" =~ PROTON_LG* ]] then export PW_WINE_USE=PROTON_LG else export PW_WINE_USE=WINE_LG @@ -474,20 +437,20 @@ init_wine_ver () { export WINELOADER="${WINEDIR}/bin/wine" export WINESERVER="${WINEDIR}/bin/wineserver" if [[ -d "${WINEDIR}/files" && ! -d "${WINEDIR}/dist" ]] ; then - for clear_dist_files in `ls "${WINEDIR}" | sed -e "s/^files$//g" | sed -e "s/^version$//g"` ; do + for clear_dist_files in $(ls "${WINEDIR}" | sed -e "s/^files$//g" | sed -e "s/^version$//g") ; do rm -fr "${WINEDIR}/$clear_dist_files" done mv -f "${WINEDIR}/files"/* "${WINEDIR}/" rm -fr "${WINEDIR}/files" elif [[ ! -d "${WINEDIR}/files" && -d "${WINEDIR}/dist" ]] ; then - for clear_dist_files in `ls "${WINEDIR}" | sed -e "s/^dist$//g" | sed -e "s/^version$//g"` ; do + for clear_dist_files in $(ls "${WINEDIR}" | sed -e "s/^dist$//g" | sed -e "s/^version$//g") ; do rm -fr "${WINEDIR}/$clear_dist_files" done mv -f "${WINEDIR}/dist"/* "${WINEDIR}/" rm -fr "${WINEDIR}/dist" elif [ -f "${WINEDIR}/proton_dist.tar" ] ; then unpack_tar "${WINEDIR}/proton_dist.tar" "${WINEDIR}/" - for clear_dist_files in `ls "${WINEDIR}" | sed -e "s/^bin$//g" | sed -e "s/^lib$//g" | sed -e "s/^lib64$//g" | sed -e "s/^share$//g" | sed -e "s/^version$//g"` ; do + for clear_dist_files in $(ls "${WINEDIR}" | sed -e "s/^bin$//g" | sed -e "s/^lib$//g" | sed -e "s/^lib64$//g" | sed -e "s/^share$//g" | sed -e "s/^version$//g") ; do rm -fr "${WINEDIR}/$clear_dist_files" done fi @@ -638,8 +601,6 @@ ${PW_PV_OVERRIDES}/i386-linux-gnu/aliases:\ fi done - # drop portable: libssl 32-bit - try_remove_file "${PW_PLUGINS_PATH}/portable/lib/lib32/libssl.so.1.1" print_info "RUNTIME is enabled" } @@ -904,8 +865,8 @@ pw_check_and_download_dxvk_and_vkd3d () { yad_error_download && pw_check_and_download_dxvk_and_vkd3d || exit 1 fi - elif try_download_no_mirror "https://github.com/doitsujin/dxvk/releases/download/v${DXVK_VAR_VER}/dxvk-${DXVK_VAR_VER}.tar.gz" \ - "${PW_VULKAN_DIR}/dxvk-${DXVK_VAR_VER}.tar.gz" ; then + elif try_download "https://github.com/doitsujin/dxvk/releases/download/v${DXVK_VAR_VER}/dxvk-${DXVK_VAR_VER}.tar.gz" \ + "${PW_VULKAN_DIR}/dxvk-${DXVK_VAR_VER}.tar.gz" no_mirror ; then if unpack_tar_gz "${PW_VULKAN_DIR}/dxvk-${DXVK_VAR_VER}.tar.gz" "${PW_VULKAN_DIR}" ; then try_remove_file "${PW_VULKAN_DIR}/dxvk-${DXVK_VAR_VER}.tar.gz" else @@ -934,8 +895,8 @@ pw_check_and_download_dxvk_and_vkd3d () { yad_error_download && pw_check_and_download_dxvk_and_vkd3d || exit 1 fi - elif try_download_no_mirror "https://github.com/HansKristian-Work/vkd3d-proton/releases/download/v${VKD3D_VAR_VER}/vkd3d-proton-${VKD3D_VAR_VER}.tar.zst" \ - "${PW_VULKAN_DIR}/vkd3d-proton-${VKD3D_VAR_VER}.tar.zst" ; then + elif try_download "https://github.com/HansKristian-Work/vkd3d-proton/releases/download/v${VKD3D_VAR_VER}/vkd3d-proton-${VKD3D_VAR_VER}.tar.zst" \ + "${PW_VULKAN_DIR}/vkd3d-proton-${VKD3D_VAR_VER}.tar.zst" no_mirror ; then if unpack_tar_zst "${PW_VULKAN_DIR}/vkd3d-proton-${VKD3D_VAR_VER}.tar.zst" "${PW_VULKAN_DIR}" ; then try_remove_file "${PW_VULKAN_DIR}/vkd3d-proton-${VKD3D_VAR_VER}.tar.zst" else @@ -1007,7 +968,7 @@ pw_check_and_download_plugins () { else PW_NOTIFY_TEXT="Please wait for update PortProton" pw_notify_send -u normal - if try_download_silent "github.com/Castro-Fidel/wine_builds/releases/download/plugins${PW_PLUGINS_VER}/plugins${PW_PLUGINS_VER}.tar.xz" \ + if try_download "github.com/Castro-Fidel/wine_builds/releases/download/plugins${PW_PLUGINS_VER}/plugins${PW_PLUGINS_VER}.tar.xz" silent \ "${PORT_WINE_TMP_PATH}/plugins${PW_PLUGINS_VER}.tar.xz" ; then if unpack_tar_xz "${PORT_WINE_TMP_PATH}/plugins${PW_PLUGINS_VER}.tar.xz" "${PORT_WINE_TMP_PATH}" ; then try_remove_file "${PORT_WINE_TMP_PATH}/plugins${PW_PLUGINS_VER}.tar.xz" @@ -1197,18 +1158,18 @@ pw_port_update () { if [ ! -f "${PORT_WINE_TMP_PATH}/scripts_ver" ] ; then echo "2022" > "${PORT_WINE_TMP_PATH}/scripts_ver" fi - export scripts_install_ver=`cat "${PORT_WINE_TMP_PATH}/scripts_ver" | head -n 1` + export scripts_install_ver=$(cat "${PORT_WINE_TMP_PATH}/scripts_ver" | head -n 1) print_info "Check update..." - if curl -f -s --list-only --connect-timeout 3 "https://raw.githubusercontent.com/Castro-Fidel/PortWINE/master/data_from_portwine/scripts/var" > "${PORT_WINE_TMP_PATH}/curent_var_ver" + if curl -f -s --list-only --connect-timeout 3 "https://gitlab.eterfund.ru/Castro-Fidel/PortWINE/raw/master/data_from_portwine/scripts/var" > "${PORT_WINE_TMP_PATH}/curent_var_ver" then - URL_FOR_CHANGELOG="https://raw.githubusercontent.com/Castro-Fidel/PortWINE/master/data_from_portwine" - URL_TO_PW_MASTER="https://github.com/Castro-Fidel/PortWINE/archive/refs/heads/master.tar.gz" + URL_FOR_CHANGELOG="https://gitlab.eterfund.ru/Castro-Fidel/PortWINE/raw/master/data_from_portwine" + URL_TO_PW_MASTER="https://gitlab.eterfund.ru/Castro-Fidel/PortWINE/-/archive/master/PortWINE-master.tar.gz" print_info "OK." else - if curl -f -s --list-only --connect-timeout 3 "https://gitlab.eterfund.ru/Castro-Fidel/PortWINE/raw/master/data_from_portwine/scripts/var" > "${PORT_WINE_TMP_PATH}/curent_var_ver" + if curl -f -s --list-only --connect-timeout 3 "https://raw.githubusercontent.com/Castro-Fidel/PortWINE/master/data_from_portwine/scripts/var" > "${PORT_WINE_TMP_PATH}/curent_var_ver" then - URL_FOR_CHANGELOG="https://gitlab.eterfund.ru/Castro-Fidel/PortWINE/raw/master/data_from_portwine" - URL_TO_PW_MASTER="https://gitlab.eterfund.ru/Castro-Fidel/PortWINE/-/archive/master/PortWINE-master.tar.gz" + URL_FOR_CHANGELOG="https://raw.githubusercontent.com/Castro-Fidel/PortWINE/master/data_from_portwine" + URL_TO_PW_MASTER="https://github.com/Castro-Fidel/PortWINE/archive/refs/heads/master.tar.gz" print_info "OK." else print_error "Unable to determine the version on the server. Skip it..." @@ -1246,7 +1207,7 @@ pw_port_update () { echo "######################################################" print_info "Update scripts..." try_remove_file "${PORT_WINE_TMP_PATH}/PortWINE-master.tar.gz" - if try_download_no_mirror "${URL_TO_PW_MASTER}" "${PORT_WINE_TMP_PATH}/PortWINE-master.tar.gz" ; then + if try_download "${URL_TO_PW_MASTER}" "${PORT_WINE_TMP_PATH}/PortWINE-master.tar.gz" no_mirror ; then if unpack_tar_gz "${PORT_WINE_TMP_PATH}/PortWINE-master.tar.gz" "${PORT_WINE_TMP_PATH}" then create_new_dir "${PORT_WINE_TMP_PATH}/scripts_backup" @@ -1287,7 +1248,7 @@ update_winetricks () { || [[ "$W_TRX_INT_VER" != "$W_TRX_EXT_VER" && ! -z "$W_TRX_EXT_VER" ]] then try_remove_file "${PORT_WINE_TMP_PATH}/winetricks" - if try_download_no_mirror "${W_TRX_URL}" "${PORT_WINE_TMP_PATH}/winetricks" ; then + if try_download "${W_TRX_URL}" "${PORT_WINE_TMP_PATH}/winetricks" no_mirror ; then W_TRX_INT_VER="$(cat "${PORT_WINE_TMP_PATH}/winetricks" | grep -i 'WINETRICKS_VERSION=' | sed 's/WINETRICKS_VERSION=//')" && print_info "Winetricks version in port has been updated (${W_TRX_INT_VER})" chmod u+x "${PORT_WINE_TMP_PATH}/winetricks" fi @@ -2231,8 +2192,6 @@ pw_run () { ${PW_MANGOHUD_SLR} \ "${WINELOADER}" "$@" ${LAUNCH_PARAMETERS[@]} wait_wineserver - - # ${PW_RUN_GAMESCOPE} \ !!! fi fi } @@ -2499,29 +2458,21 @@ pw_tray_icon () { } export -f tray_icon_click_exit - if [[ "$PW_DESKTOP_THEME" == "dark" ]] ; then - # --window-icon="$PW_GUI_ICON_PATH/portproton_tray.png" \ - "${pw_yad_v13_0}" --notification --no-middle \ - --image="$PW_GUI_ICON_PATH/portproton_tray_light.png" \ - --command="bash -c tray_icon_click" \ - --tooltip="PortProton" \ - --icon-size=32 --menu="| \ - ${loc_tray_winefile}!bash -c pw_tray_winefile!"$PW_GUI_ICON_PATH/wine_file.png"|| \ - ${loc_tray_tascmng}!bash -c pw_tray_taskmgr!"$PW_GUI_ICON_PATH/wine_system.png"|| \ - ${loc_tray_cangelog}!bash -c open_changelog!"$PW_GUI_ICON_PATH/history.png"|| \ - ${loc_tray_force_exit} !bash -c tray_icon_click_exit!"$PW_GUI_ICON_PATH/close.png"||" 2>/dev/null & - else - # --window-icon="$PW_GUI_ICON_PATH/portproton_tray.png" \ - "${pw_yad_v13_0}" --notification --no-middle \ - --image="$PW_GUI_ICON_PATH/portproton_tray_dark.png" \ - --command="bash -c tray_icon_click" \ - --tooltip="PortProton" \ - --icon-size=32 --menu="| \ - ${loc_tray_winefile}!bash -c pw_tray_winefile!"$PW_GUI_ICON_PATH/wine_file.png"|| \ - ${loc_tray_tascmng}!bash -c pw_tray_taskmgr!"$PW_GUI_ICON_PATH/wine_system.png"|| \ - ${loc_tray_cangelog}!bash -c open_changelog!"$PW_GUI_ICON_PATH/history.png"|| \ - ${loc_tray_force_exit} !bash -c tray_icon_click_exit!"$PW_GUI_ICON_PATH/close.png"||" 2>/dev/null & + if check_flatpak + then TRAY_ICON="$PW_GUI_ICON_PATH/portproton_tray_flatpak.svg" + elif [[ "$PW_DESKTOP_THEME" == "dark" ]] + then TRAY_ICON="$PW_GUI_ICON_PATH/portproton_tray_dark.svg" + else TRAY_ICON="$PW_GUI_ICON_PATH/portproton_tray_light.svg" fi + "${pw_yad_v13_0}" --notification --no-middle \ + --image="$TRAY_ICON" \ + --command="bash -c tray_icon_click" \ + --tooltip="PortProton" \ + --icon-size=32 --menu="| \ + ${loc_tray_winefile}!bash -c pw_tray_winefile!"$PW_GUI_ICON_PATH/wine_file.png"|| \ + ${loc_tray_tascmng}!bash -c pw_tray_taskmgr!"$PW_GUI_ICON_PATH/wine_system.png"|| \ + ${loc_tray_cangelog}!bash -c open_changelog!"$PW_GUI_ICON_PATH/history.png"|| \ + ${loc_tray_force_exit} !bash -c tray_icon_click_exit!"$PW_GUI_ICON_PATH/close.png"||" 2>/dev/null & return 0 } @@ -2626,13 +2577,13 @@ pw_gui_for_edit_db () { done } edit_db_field_read $@ - PW_WINDOWS_VER="`cat "${PORT_WINE_TMP_PATH}/tmp_output_yad_fps_limit" | awk -F"%" '{print $1}'`" - PW_DLL_INSTALL=`cat "${PORT_WINE_TMP_PATH}/tmp_output_yad_fps_limit" | awk -F"%" '{print $2}'` - WINEDLLOVERRIDES=`cat "${PORT_WINE_TMP_PATH}/tmp_output_yad_fps_limit" | awk -F"%" '{print $3}'` - LAUNCH_PARAMETERS=`cat "${PORT_WINE_TMP_PATH}/tmp_output_yad_fps_limit" | awk -F"%" '{print $5}'` - CPU_LIMIT="`cat "${PORT_WINE_TMP_PATH}/tmp_output_yad_fps_limit" | awk -F"%" '{print $7}'`" - PW_GPU_USE="`cat "${PORT_WINE_TMP_PATH}/tmp_output_yad_fps_limit" | awk -F"%" '{print $8}'`" - GAMESCOPE_ARGS="`cat "${PORT_WINE_TMP_PATH}/tmp_output_yad_fps_limit" | awk -F"%" '{print $9}'`" + PW_WINDOWS_VER="$(cat "${PORT_WINE_TMP_PATH}/tmp_output_yad_fps_limit" | awk -F"%" '{print $1}')" + PW_DLL_INSTALL="$(cat "${PORT_WINE_TMP_PATH}/tmp_output_yad_fps_limit" | awk -F"%" '{print $2}')" + WINEDLLOVERRIDES="$(cat "${PORT_WINE_TMP_PATH}/tmp_output_yad_fps_limit" | awk -F"%" '{print $3}')" + LAUNCH_PARAMETERS="$(cat "${PORT_WINE_TMP_PATH}/tmp_output_yad_fps_limit" | awk -F"%" '{print $5}')" + CPU_LIMIT="$(cat "${PORT_WINE_TMP_PATH}/tmp_output_yad_fps_limit" | awk -F"%" '{print $7}')" + PW_GPU_USE="$(cat "${PORT_WINE_TMP_PATH}/tmp_output_yad_fps_limit" | awk -F"%" '{print $8}')" + GAMESCOPE_ARGS="$(cat "${PORT_WINE_TMP_PATH}/tmp_output_yad_fps_limit" | awk -F"%" '{print $9}')" # PW_AMD_VULKAN_USE="`cat "${PORT_WINE_TMP_PATH}/tmp_output_yad_fps_limit" | awk -F"%" '{print $10}'`" if [[ "${CPU_LIMIT}" != "disabled" ]] ; then @@ -2712,7 +2663,7 @@ gui_proton_downloader () { fi # PROTON_LG - export PROTON_PW_GIT=($(curl -s "https://api.github.com/repos/Castro-Fidel/wine_builds/releases" | grep "browser_download_url.*\.tar\.xz" | cut -d \" -f 4)) + export PROTON_PW_GIT=($(curl -s "$url_cdn/metainfo")) try_remove_file "${PORT_WINE_TMP_PATH}/tmp_proton_pw_git" if [[ ! -z "${PROTON_PW_GIT}" ]] ; then for PPWGIT in ${PROTON_PW_GIT[@]} ; do @@ -2728,7 +2679,7 @@ gui_proton_downloader () { /usr/bin/env bash -c ${pw_full_command_line[*]} & exit 0 fi - for INSTALLING_VERSION_IN_DIST in `ls "${PORT_WINE_PATH}/data/dist/"` ; do + for INSTALLING_VERSION_IN_DIST in $(ls "${PORT_WINE_PATH}/data/dist/") ; do sed -i "/${INSTALLING_VERSION_IN_DIST}$/Id" "${PORT_WINE_TMP_PATH}/tmp_proton_ge_git" sed -i "/${INSTALLING_VERSION_IN_DIST}$/Id" "${PORT_WINE_TMP_PATH}/tmp_proton_pw_git" sed -i "/${INSTALLING_VERSION_IN_DIST}$/Id" "${PORT_WINE_TMP_PATH}/tmp_wine_kron4ek_git" @@ -2816,7 +2767,8 @@ gui_proton_downloader () { print_info "Download and install ${VERSION_WINE_GIT}..." PW_WINE_ARCHIVE="$(echo ${URL_VERSION_PROTON_GIT} | awk -F'/' '{print $NF}' | awk -F'.tar' '{print $1}')" - if try_download_to_path "${URL_VERSION_PROTON_GIT}" "${PORT_WINE_PATH}/data/tmp/" ; then + FILENAME="$(basename "${URL_VERSION_PROTON_GIT}")" + if try_download "${URL_VERSION_PROTON_GIT}" "${PORT_WINE_PATH}/data/tmp/$FILENAME" ; then for archive_type in "gz" "xz" ; do if [ -f "${PORT_WINE_PATH}/data/tmp/${PW_WINE_ARCHIVE}.tar.${archive_type}" ] ; then if unpack_tar_${archive_type} "${PORT_WINE_PATH}/data/tmp/${PW_WINE_ARCHIVE}.tar.${archive_type}" "${PORT_WINE_PATH}/data/dist/" ; then diff --git a/data_from_portwine/scripts/lang b/data_from_portwine/scripts/lang index 412f182..dc9a6b3 100755 --- a/data_from_portwine/scripts/lang +++ b/data_from_portwine/scripts/lang @@ -369,8 +369,8 @@ if [[ "${update_loc}" == "RUS" ]] ; then export loc_gui_gpu_select="Выбрать видеокарту для запуска игры (в user.conf)" export loc_gui_gpu_select_help="Выбор какая видеокарта будет использоваться для запуска игры (используется для всех запускаемых игр и программ в ${portname}.)" - export loc_gui_check_new_wine="Проверяем новые версии WINE на GitHub" - export loc_gui_check_new_wine_error="Не удается установить соединение с GitHub\nдля проверки новых версии WINE." + export loc_gui_check_new_wine="Проверяем новые версии WINE" + export loc_gui_check_new_wine_error="Не удается проверить новые версии WINE." export loc_gui_set_new_wine="Выберите версию WINE для загрузки:" export loc_gui_del_wine="Выберите версию WINE для удаления:" export loc_gui_installed_wine="УСТАНОВЛЕННЫЕ" @@ -783,8 +783,8 @@ A brief instruction: export loc_gui_gpu_select="Choose a graphics card to run the game (in user.conf)" export loc_gui_gpu_select_help="Select which video card will be used to run the game (used for all running games and programs in ${portname})" - export loc_gui_check_new_wine="Check new version WINE from GitHub" - export loc_gui_check_new_wine_error="Error: check wine from github." + export loc_gui_check_new_wine="Check new version WINE" + export loc_gui_check_new_wine_error="Error: check wine." export loc_gui_set_new_wine="Select WINE for download:" export loc_gui_del_wine="Select installed WINE for delete:" export loc_gui_installed_wine="INSTALLED" diff --git a/data_from_portwine/scripts/portwine_db/AliceMadnessReturns b/data_from_portwine/scripts/portwine_db/AliceMadnessReturns new file mode 100644 index 0000000..6f61637 --- /dev/null +++ b/data_from_portwine/scripts/portwine_db/AliceMadnessReturns @@ -0,0 +1,13 @@ +#!/usr/bin/env bash +#Author: vano +#AliceMadnessReturns.exe +#Rating=5 +#####################examples########################### +export PW_WINDOWS_VER="10" +export PW_NO_FSYNC="1" +export PW_NO_ESYNC="1" +export PW_USE_GSTREAMER="1" +export PW_WINE_USE="PROTON_LG_8-25-2" +export PW_FORCE_LARGE_ADDRESS_AWARE="1" + +gui_proton_downloader silent "$PW_WINE_USE" diff --git a/data_from_portwine/scripts/start.sh b/data_from_portwine/scripts/start.sh index f9cd672..6791432 100755 --- a/data_from_portwine/scripts/start.sh +++ b/data_from_portwine/scripts/start.sh @@ -21,6 +21,7 @@ fi export PW_START_PID="$$" export NO_AT_BRIDGE=1 +export GDK_BACKEND="x11" export pw_full_command_line=("$0" $*) MISSING_DESKTOP_FILE=0 @@ -80,7 +81,7 @@ if [[ -d "${PORT_WINE_PATH}/data/dist" ]] ; then orig_IFS="$IFS" IFS=$'\n' for dist_dir in $(ls -1 "${PORT_WINE_PATH}/data/dist/") ; do - dist_dir_new=`echo "${dist_dir}" | awk '$1=$1' | sed -e s/[[:blank:]]/_/g` + dist_dir_new=$(echo "${dist_dir}" | awk '$1=$1' | sed -e s/[[:blank:]]/_/g) if [[ ! -d "${PORT_WINE_PATH}/data/dist/${dist_dir_new^^}" ]] ; then mv -- "${PORT_WINE_PATH}/data/dist/$dist_dir" "${PORT_WINE_PATH}/data/dist/${dist_dir_new^^}" fi @@ -97,7 +98,7 @@ try_force_link_dir "${PORT_WINE_PATH}/data/prefixes" "${PORT_WINE_PATH}" orig_IFS="$IFS" IFS=$'\n' for pfx_dir in $(ls -1 "${PORT_WINE_PATH}/data/prefixes/") ; do - pfx_dir_new=`echo "${pfx_dir}" | awk '$1=$1' | sed -e s/[[:blank:]]/_/g` + pfx_dir_new=$(echo "${pfx_dir}" | awk '$1=$1' | sed -e s/[[:blank:]]/_/g) if [[ ! -d "${PORT_WINE_PATH}/data/prefixes/${pfx_dir_new^^}" ]] ; then mv -- "${PORT_WINE_PATH}/data/prefixes/$pfx_dir" "${PORT_WINE_PATH}/data/prefixes/${pfx_dir_new^^}" fi @@ -135,16 +136,13 @@ export PW_PLUGINS_PATH="${PORT_WINE_TMP_PATH}/plugins${PW_PLUGINS_VER}" export PW_GUI_ICON_PATH="${PORT_WINE_PATH}/data/img/gui" export PW_GUI_THEMES_PATH="${PORT_WINE_PATH}/data/themes" -if [[ $(gsettings get org.gnome.desktop.interface color-scheme) == "'prefer-dark'" ]] -then export PW_DESKTOP_THEME="dark" -fi - . "${PORT_SCRIPTS_PATH}"/lang export urlg="https://linux-gaming.ru/portproton/" +export url_cdn="https://cdn.linux-gaming.ru" export PW_WINELIB="${PORT_WINE_TMP_PATH}/libs${PW_LIBS_VER}" try_remove_dir "${PW_WINELIB}/var" -export install_ver=`cat "${PORT_WINE_TMP_PATH}/${portname}_ver" | head -n 1` +export install_ver=$(cat "${PORT_WINE_TMP_PATH}/${portname}_ver" | head -n 1) export WINETRICKS_DOWNLOADER="curl" export USER_CONF="${PORT_WINE_PATH}/data/user.conf" check_user_conf @@ -174,6 +172,10 @@ else echo 'export GUI_THEME="default"' >> "$USER_CONF" fi +if [[ $(gsettings get org.gnome.desktop.interface color-scheme) == "'prefer-dark'" ]] +then export PW_DESKTOP_THEME="dark" +fi + if [[ "${SKIP_CHECK_UPDATES}" != 1 ]] \ && [[ ! -f "/tmp/portproton.lock" ]] then diff --git a/data_from_portwine/scripts/var b/data_from_portwine/scripts/var index 304b58c..f2622f2 100755 --- a/data_from_portwine/scripts/var +++ b/data_from_portwine/scripts/var @@ -1,6 +1,6 @@ #!/usr/bin/env bash #Author: Castro-Fidel (linux-gaming.ru) -#SCRIPTS_NEXT_VERSION=2274 +#SCRIPTS_NEXT_VERSION=2275 ######################################################################## export PW_MANGOHUD="0" export DEFAULT_MANGOHUD_CONFIG="arch,cpu_mhz,cpu_temp,engine_version,gamemode,gpu_core_clock,gpu_mem_clock,gpu_name,gpu_temp,ram,resolution,vkbasalt,vram,vulkan_driver,wine" @@ -18,8 +18,7 @@ export PW_FORCE_USE_VSYNC="2" export PW_USE_TERMINAL="0" export PW_WINDOWS_VER="10" export WINEARCH="win64" -export PW_LIBS_VER="_v47" -export GDK_BACKEND="x11" +export PW_LIBS_VER="_v48" export PW_USE_GSTREAMER="1" export PW_USE_D3D_EXTRAS="1" export PW_PREFIX_NAME="DEFAULT"