diff --git a/_service b/_service index 790aa6e..67103d8 100644 --- a/_service +++ b/_service @@ -3,7 +3,7 @@ @PARENT_TAG@ v(.*) https://github.com/wine-staging/wine-staging.git - refs/tags/v3.19 + refs/tags/v3.20 v*.* git diff --git a/wine-3.19.tar.xz b/wine-3.19.tar.xz deleted file mode 100644 index 50b6e1b..0000000 --- a/wine-3.19.tar.xz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:ef21c626aef09715de9640a79d42e8b5e305761d5f21491fe84d74cafa7a9c6a -size 21503304 diff --git a/wine-3.19.tar.xz.sign b/wine-3.19.tar.xz.sign deleted file mode 100644 index f3864db..0000000 --- a/wine-3.19.tar.xz.sign +++ /dev/null @@ -1,16 +0,0 @@ ------BEGIN PGP SIGNATURE----- - -iQIzBAABCgAdFiEE2iNXmnTUrZr50/lFzvrI6q8XUZ0FAlvTaaIACgkQzvrI6q8X -UZ2UNw//cYZGamAMNf5kD0ALDBRcAeMO+YWz5Iv70jkRwktLAYjfIuSzjfBRT/SB -+y2jmlHrbyLze28156jdvbuBzq7cdDVvI8Od+jl9PmWF5ikCJEWniIyLJzp20M/w -pTjos5Dey9GXwjsZ7bBRtL7g5apKPX8Sfpp7ct2wfrdCyeCVPPLKzGaQumC4KkmA -hOpwBVx0C1/Wa4TCfM78fypRF0dIvznLMIXKr8eog2eionOVSrBfto3/henr2x07 -Zd+Xg0Qr+1EuEI3q1wl6BUhmm4dB2NizJC40X7n9a6sElUhGUzbTD89j4KrzlN0T -MDtgIz5kDPShpA36laNfsd96JQD7rmrkHq8jdnQ1PlD3/v+Hik1SIsa4nNmppdqG -pr6T7Gwo0ufQ06R2Lvtzd9/Lz5PScfJdlMfQlW/IRNQUUbqAor7RWwqohbkqAkEF -1+3K9YQP6pENzK1p+85i/relLIYk13utt0xj+7w95NdQMsV1yWsCAg1RQO/qdC6b -5QI0tL9YgtB6qgleQqA8ef3ppVrIyhTQ615QhJ0N6bQqyAugHQpwsVvu159K2vZY -byBTQcL4Q3Nxv6FCJUWm6uax9a0sfl9Vby6UxoCkApPrYYdoTXs9w2q1tHpe29Ls -dCibVeFTVQBbOWBvaqgSbY8kIbNQbHCGTSte44ci0ZCrcEvLH08= -=DRHM ------END PGP SIGNATURE----- diff --git a/wine-3.20.tar.xz b/wine-3.20.tar.xz new file mode 100644 index 0000000..1107342 --- /dev/null +++ b/wine-3.20.tar.xz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:33d61122085056e091042df7d2cbe908ffb9c06e602278611dca2eea6a566f18 +size 21541928 diff --git a/wine-3.20.tar.xz.sign b/wine-3.20.tar.xz.sign new file mode 100644 index 0000000..a1678bf --- /dev/null +++ b/wine-3.20.tar.xz.sign @@ -0,0 +1,16 @@ +-----BEGIN PGP SIGNATURE----- + +iQIzBAABCgAdFiEE2iNXmnTUrZr50/lFzvrI6q8XUZ0FAlvl6eUACgkQzvrI6q8X +UZ2PNQ//Q6bw2O/mrlW46KmBodcT7yhCLD5odO/Ur//Y8dhCeUrWVedc3zlTsUsq +T8yTU5vKrPmeEzy8b0sslSyhaVHfxII4hEJiemnVzRRazMfjR9N4p+bmpl45TVhd +58YMywf6pjvyPOvRBveIHKpB9s9+BJA3n77/P9q7GEf0QCanlCN6Jg2s9z3cYrky +sJ0Wz1mYOxryoL6wvdUaKJ5zawaA26S/JucIv5AEohNwCMc20fvQEVPr+iTXi5vN +tLaZJniNvsL0nt6xrpe2nw4FmB+jeo9N6mvTwLGYKFbJk9LUBahFUnwncZ6IDezi +XtaFiWsqx+r7y5ohs8s9PCTLiwHFIVOwOWrMFiHeB8yBDhH/H2/i1DeZYcl0tcMX +dbd4chV9lZP4JIE4YdbojcMP/vYzg4PWQEyglliuE3bRHJ5K9eK5lHaR0f8LN4iL +lXytJI5oJaFTcM5NgkeO+1Q+7V8GYmWcg/Bc5SFlZ3LU4gJWEBa94U/UTIZ9fAw4 +pWJW7pUb/HqW8AwsPs9cR9RxqdE3LhYJdz6QEzp1XkKzbjveCYlUOxZX7oAfkKpY +Sy7tQb2/XSFUhbUGUYp7Hej6lFlRQkSZMZOPNLN60qOt4YbmC2cu50H5MCmOR9gR +QVpkgVLpUa5tiA/fqmVWPnNrDyd6HvpW4yyQv3hJJuNRXmAhE1g= +=DcXN +-----END PGP SIGNATURE----- diff --git a/wine-staging-3.19.tar.xz b/wine-staging-3.19.tar.xz deleted file mode 100644 index d06bb66..0000000 --- a/wine-staging-3.19.tar.xz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:c2e3e590d4063f6c17968cbb20ee597756de64bf8eaeda95731e56e8f18f264c -size 7530088 diff --git a/wine-staging-3.20.tar.xz b/wine-staging-3.20.tar.xz new file mode 100644 index 0000000..218bf93 --- /dev/null +++ b/wine-staging-3.20.tar.xz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cc0f5df4d3510bbf117c78be6696779af7114d8723bd04b4fa85ca2c30ca1435 +size 7474356 diff --git a/wine.changes b/wine.changes index 8c0ded6..adb944f 100644 --- a/wine.changes +++ b/wine.changes @@ -1,3 +1,16 @@ +------------------------------------------------------------------- +Fri Nov 9 20:29:46 UTC 2018 - meissner@suse.com + +- Update to 3.20 development release + - Async interfaces and ACF files in the IDL compiler. + - Support for substorage transforms in MSI. + - RPC/COM marshalling fixes. + - Support for Unicode requests in WinHTTP. + - Shell Autocomplete optimizations. + - Various bug fixes. +- updated staging to 3.20 +- updated winetricks + ------------------------------------------------------------------- Sat Oct 27 07:57:19 UTC 2018 - meissner@suse.com diff --git a/wine.spec b/wine.spec index 204f2e9..3268dbc 100644 --- a/wine.spec +++ b/wine.spec @@ -107,8 +107,8 @@ BuildRequires: pkgconfig(xrandr) BuildRequires: pkgconfig(xrender) BuildRequires: pkgconfig(xxf86vm) BuildRequires: pkgconfig(zlib) -%define realver 3.19 -Version: 3.19 +%define realver 3.20 +Version: 3.20 Release: 0 Summary: An MS Windows Emulator License: LGPL-2.1-or-later @@ -146,7 +146,7 @@ BuildRoot: %{_tmppath}/%{name}-%{version}-build ExclusiveArch: %{ix86} x86_64 ppc %arm aarch64 %if %{staging} # upstream patch target version -%define staging_version 3.19 +%define staging_version 3.20 Source100: wine-staging-%{staging_version}.tar.xz BuildRequires: gtk3-devel BuildRequires: libOSMesa-devel diff --git a/winetricks b/winetricks index a1b4341..9c4fc3b 100644 --- a/winetricks +++ b/winetricks @@ -3328,6 +3328,7 @@ winetricks_prefixmenu() _W_msg_games='Установить игру' _W_msg_benchmarks='Установить приложение для оценки производительности' _W_msg_default="Выберите путь для wine по умолчанию" + _W_msg_mkprefix="Создать новый путь wine" _W_msg_unattended0="Отключить автоматическую установку" _W_msg_unattended1="Включить автоматическую установку" _W_msg_showbroken0="Спрятать нерабочие программы (например, использующие DRM)" @@ -3340,6 +3341,7 @@ winetricks_prefixmenu() _W_msg_games='Встановити гру' _W_msg_benchmarks='Встановити benchmark' _W_msg_default="Вибрати wineprefix за замовчуванням" + _W_msg_mkprefix="створити новий wineprefix" _W_msg_unattended0="Вимкнути автоматичне встановлення" _W_msg_unattended1="Увімкнути автоматичне встановлення" _W_msg_showbroken0="Сховати нестабільні додатки (наприклад з проблемами з DRM)" @@ -3352,6 +3354,7 @@ winetricks_prefixmenu() _W_msg_games='安装一个游戏' _W_msg_benchmarks='安装一个基准测试软件' _W_msg_default="选择默认的 wine 容器" + _W_msg_mkprefix="创建新的 wine 容器" _W_msg_unattended0="禁用静默安装" _W_msg_unattended1="启用静默安装" _W_msg_showbroken0="隐藏有问题的程序 (例如那些有数字版权问题)" @@ -3364,6 +3367,7 @@ winetricks_prefixmenu() _W_msg_games='安裝一個遊戲' _W_msg_benchmarks='安裝一個基准測試軟體' _W_msg_default="選取預設的 wine 容器" + _W_msg_mkprefix="创建新的 wine 容器" _W_msg_unattended0="禁用靜默安裝" _W_msg_unattended1="啟用靜默安裝" _W_msg_showbroken0="隱藏有問題的程式 (例如那些有數字版權問題)" @@ -3376,6 +3380,7 @@ winetricks_prefixmenu() _W_msg_games='Ein Spiel installieren' _W_msg_benchmarks='Einen Benchmark-Test installieren' _W_msg_default="Standard wineprefix auswählen" + _W_msg_mkprefix="Neuen wineprefix erstellen" _W_msg_unattended0="Automatische Installation deaktivieren" _W_msg_unattended1="Automatische Installation aktivieren" _W_msg_showbroken0="Defekte Programme nicht anzeigen (z.B. solche mit DRM Problemen)" @@ -3388,6 +3393,7 @@ winetricks_prefixmenu() _W_msg_games='Zainstalować grę' _W_msg_benchmarks='Zainstalować program sprawdzający wydajność komputera' _W_msg_default="Wybrać domyślny prefiks Wine" + _W_msg_mkprefix="Stwórz nowy prefiks Wine" _W_msg_unattended0="Wyłącz cichą instalację" _W_msg_unattended1="Włącz cichą instalację" _W_msg_showbroken0="Ukrywaj uszkodzone aplikacje (np. z problemami z DRM)" @@ -3400,6 +3406,7 @@ winetricks_prefixmenu() _W_msg_games='Install a game' _W_msg_benchmarks='Install a benchmark' _W_msg_default="Select the default wineprefix" + _W_msg_mkprefix="Create new wineprefix" _W_msg_unattended0="Disable silent install" _W_msg_unattended1="Enable silent install" _W_msg_showbroken0="Hide broken apps (e.g. those with DRM problems)" @@ -3434,6 +3441,7 @@ winetricks_prefixmenu() FALSE benchmarks '$_W_msg_benchmarks' \ FALSE games '$_W_msg_games' \ TRUE main '$_W_msg_default' \ + FALSE mkprefix '$_W_msg_mkprefix' \ " \ > "$WINETRICKS_WORKDIR"/zenity.sh @@ -3473,7 +3481,9 @@ winetricks_prefixmenu() games '$_W_msg_games' off \ benchmarks '$_W_msg_benchmarks' off \ apps '$_W_msg_apps' off \ - main '$_W_msg_default' on " + main '$_W_msg_default' on \ + mkprefix '$_W_msg_mkprefix' off \ + " if ls -d "$W_PREFIXES_ROOT"/*/dosdevices > /dev/null 2>&1; then for prefix in "$W_PREFIXES_ROOT"/*/dosdevices do @@ -3487,6 +3497,8 @@ winetricks_prefixmenu() printf %s "prefix='$p' 'Select $_W_msg_name' off " done fi + printf %s " $_W_cmd_unattended '$_W_msg_unattended' off" + printf %s " $_W_cmd_showbroken '$_W_msg_showbroken' off" ) > "$WINETRICKS_WORKDIR"/kdialog.sh sh "$WINETRICKS_WORKDIR"/kdialog.sh ;; @@ -3494,11 +3506,46 @@ winetricks_prefixmenu() unset _W_msg_help _W_msg_body _W_msg_title _W_msg_new _W_msg_default _W_msg_name } +# Graphically create new custom wineprefix. +# This returns two verbs: arch and prefix, e.g. "arch=32 prefix=test". +winetricks_mkprefixmenu() +{ + case $LANG in + # TODO: translate to other languages + de) _W_msg_title="Winetricks - Neues Wineprefix erstellen" + _W_msg_name="Name" + _W_msg_arch="Architektur" + ;; + *) _W_msg_title="Winetricks - create new wineprefix" + _W_msg_name="Name" + _W_msg_arch="Architecture" + ;; + esac + + case $WINETRICKS_GUI in + zenity) + zenity --forms --text="" --title "$_W_msg_title" \ + --add-combo="$_W_msg_arch" --combo-values=32\|64 \ + --add-entry="$_W_msg_name" \ + | sed -e 's/^\s*|/64|/' -e 's/^/arch=/' -e 's/|/ prefix=/' + ;; + kdialog) + kdialog --title="$_W_msg_title" \ + --radiolist="$_W_msg_arch" 32 32bit off 64 64bit on \ + | sed -e 's/^$/64/' -e 's/^/arch=/' + kdialog --title="$_W_msg_title" --inputbox="$_W_msg_name" \ + | sed -e 's/^/prefix=/' + ;; + esac + + unset _W_msg_title _W_msg_name _W_msg_arch +} + # Display main menu, get which submenu the user wants winetricks_mainmenu() { case $LANG in - da*) _W_msg_title='Vælg en pakke-kategori' + da*) _W_msg_title="Vælg en pakke-kategori - Nuværende præfiks er \"$WINEPREFIX\"" _W_msg_body='Hvad ønsker du at gøre?' _W_msg_dlls="Install a Windows DLL" _W_msg_fonts='Install a font' @@ -3506,12 +3553,13 @@ winetricks_mainmenu() _W_msg_winecfg='Run winecfg' _W_msg_regedit='Run regedit' _W_msg_taskmgr='Run taskmgr' + _W_msg_explorer='Run explorer' _W_msg_uninstaller='Run uninstaller' _W_msg_shell='Run a commandline shell (for debugging)' _W_msg_folder='Browse files' _W_msg_annihilate="Delete ALL DATA AND APPLICATIONS INSIDE THIS WINEPREFIX" ;; - de*) _W_msg_title='Pakettyp auswählen' + de*) _W_msg_title="Pakettyp auswählen - Aktueller Präfix ist \"$WINEPREFIX\"" _W_msg_body='Was möchten Sie tun?' _W_msg_dlls="Windows-DLL installieren" _W_msg_fonts='Schriftart installieren' @@ -3519,6 +3567,7 @@ winetricks_mainmenu() _W_msg_winecfg='winecfg starten' _W_msg_regedit='regedit starten' _W_msg_taskmgr='taskmgr starten' + _W_msg_explorer='explorer starten' _W_msg_uninstaller='uninstaller starten' _W_msg_shell='Eine Kommandozeile zum debuggen starten' _W_msg_folder='Ordner durchsuchen' @@ -3532,6 +3581,7 @@ winetricks_mainmenu() _W_msg_winecfg='Uruchomić winecfg' _W_msg_regedit='Uruchomić edytor rejestru' _W_msg_taskmgr='Uruchomić menedżer zadań' + _W_msg_explorer='Uruchomić explorer' _W_msg_uninstaller='Uruchomić program odinstalowujący' _W_msg_shell='Uruchomić powłokę wiersza poleceń (dla debugowania)' _W_msg_folder='Przeglądać pliki' @@ -3545,6 +3595,7 @@ winetricks_mainmenu() _W_msg_winecfg='Запустить winecfg (редактор настроек wine)' _W_msg_regedit='Запустить regedit (редактор реестра)' _W_msg_taskmgr='Запустить taskmgr (менеджер задач)' + _W_msg_explorer='Запустить explorer' _W_msg_uninstaller='Запустить uninstaller (деинсталлятор)' _W_msg_shell='Запустить графический терминал (для отладки)' _W_msg_folder='Проводник файлов' @@ -3558,6 +3609,7 @@ winetricks_mainmenu() _W_msg_winecfg='Запустити winecfg' _W_msg_regedit='Запустити regedit' _W_msg_taskmgr='Запустити taskmgr' + _W_msg_explorer='Запустити explorer' _W_msg_uninstaller='Встановлення/видалення програм' _W_msg_shell='Запуск командної оболонки (для налагодження)' _W_msg_folder='Перегляд файлів' @@ -3571,6 +3623,7 @@ winetricks_mainmenu() _W_msg_winecfg='运行 winecfg' _W_msg_regedit='运行注册表' _W_msg_taskmgr='运行任务管理器' + _W_msg_explorer='运行资源管理器' _W_msg_uninstaller='运行卸载程序' _W_msg_shell='运行命令提示窗口 (作为调试)' _W_msg_folder='浏览容器中的文件' @@ -3584,6 +3637,7 @@ winetricks_mainmenu() _W_msg_winecfg='執行 winecfg' _W_msg_regedit='執行註冊表' _W_msg_taskmgr='執行工作管理者' + _W_msg_explorer='執行資源經理' _W_msg_uninstaller='執行反安裝程式' _W_msg_shell='執行指令輔助說明視窗 (作為除錯)' _W_msg_folder='瀏覽容器中的檔案' @@ -3597,6 +3651,7 @@ winetricks_mainmenu() _W_msg_winecfg='Run winecfg' _W_msg_regedit='Run regedit' _W_msg_taskmgr='Run taskmgr' + _W_msg_explorer='Run explorer' _W_msg_uninstaller='Run uninstaller' _W_msg_shell='Run a commandline shell (for debugging)' _W_msg_folder='Browse files' @@ -3624,6 +3679,7 @@ winetricks_mainmenu() FALSE winecfg '$_W_msg_winecfg' \ FALSE regedit '$_W_msg_regedit' \ FALSE taskmgr '$_W_msg_taskmgr' \ + FALSE explorer '$_W_msg_explorer' \ FALSE uninstaller '$_W_msg_uninstaller' \ FALSE shell '$_W_msg_shell' \ FALSE folder '$_W_msg_folder' \ @@ -3646,6 +3702,7 @@ winetricks_mainmenu() winecfg "$_W_msg_winecfg" off \ regedit "$_W_msg_regedit" off \ taskmgr "$_W_msg_taskmgr" off \ + explorer "$_W_msg_explorer" off \ uninstaller "$_W_msg_uninstaller" off \ shell "$_W_msg_shell" off \ folder "$_W_msg_folder" off \ @@ -3661,10 +3718,10 @@ winetricks_settings_menu() { # FIXME: these translations should really be centralized/reused: case $LANG in - da*) _W_msg_title='Vælg en pakke' + da*) _W_msg_title="Vælg en pakke - Nuværende præfiks er \"$WINEPREFIX\"" _W_msg_body='Which settings would you like to change?' ;; - de*) _W_msg_title="Winetricks - Aktueller Prefix ist \"$WINEPREFIX\"" + de*) _W_msg_title="Winetricks - Aktueller Präfix ist \"$WINEPREFIX\"" _W_msg_body='Welche Einstellungen möchten Sie ändern?' ;; pl*) _W_msg_title="Winetricks - obecny prefiks to \"$WINEPREFIX\"" @@ -4235,7 +4292,7 @@ winetricks_list_all() { # Note: doh123 relies on 'winetricks list' to list main menu categories case $WINETRICKS_CURMENU in - prefix|main) echo "$WINETRICKS_CATEGORIES" | tr ' ' '\012' ; return;; + prefix|main|mkprefix) echo "$WINETRICKS_CATEGORIES" | sed 's/ mkprefix//' | tr ' ' '\012' ; return;; esac case $LANG in @@ -4859,6 +4916,20 @@ winetricks_print_wineprefix_info() done } +# Force creation of 32 or 64bit wineprefix on 64 bit systems. +# On 32bit systems, trying to create a 64bit wineprefix will fail. +# This must be called prior to winetricks_set_wineprefix() +winetricks_set_winearch() +{ + if [ "$1" = "32" ] || [ "$1" = "win32" ]; then + export WINEARCH=win32 + elif [ "$1" = "64" ] || [ "$1" = "win64" ]; then + export WINEARCH=win64 + else + w_die "arch: Invalid architecture: $1" + fi +} + # Usage: winetricks_set_wineprefix [bottlename] # Bottlename must not contain spaces, slashes, or other special characters # If bottlename is omitted, the default bottle (~/.wine) is used. @@ -5011,6 +5082,11 @@ winetricks_set_wineprefix() WINE_ARCH="${WINE}" WINE_MULTI="${WINE}" fi + + # Unset WINEARCH which might be set from winetricks_set_winearch(). + # It is no longer necessary after the new wineprefix was created + # and even may cause trouble when using 64bit wineprefixes afterwards. + unset WINEARCH } winetricks_annihilate_wineprefix() @@ -5069,7 +5145,7 @@ winetricks_init() WINETRICKS_METADATA="$WINETRICKS_WORKDIR/metadata" # The list of categories is also hardcoded in winetricks_mainmenu() :-( - WINETRICKS_CATEGORIES="apps benchmarks dlls fonts games settings" + WINETRICKS_CATEGORIES="apps benchmarks dlls fonts games settings mkprefix" for _W_cat in $WINETRICKS_CATEGORIES do mkdir -p "$WINETRICKS_METADATA/$_W_cat" @@ -5306,6 +5382,9 @@ list-cached Verben für bereits gecachte Installers auflisten list-download Verben für automatisch herunterladbare Anwendungen auflisten list-manual-download Verben für vom Benutzer herunterladbare Anwendungen auflisten list-installed Bereits installierte Verben auflisten +arch=32|64 Neues wineprefix mit 32 oder 64 bit erstellen, diese Option + muss vor prefix=foobar angegeben werden und funktioniert + nicht im Falle des Standard Wineprefix. prefix=foobar WINEPREFIX=$W_PREFIXES_ROOT/foobar auswählen annihilate ALLE DATEIEN UND PROGRAMME IN DIESEM WINEPREFIX Löschen _EOF_ @@ -5345,6 +5424,9 @@ list-cached list cached-and-ready-to-install verbs list-download list verbs which download automatically list-manual-download list verbs which download with some help from the user list-installed list already-installed verbs +arch=32|64 create wineprefix with 32 or 64 bit, this option must be + given before prefix=foobar and will not work in case of + the default wineprefix. prefix=foobar select WINEPREFIX=$W_PREFIXES_ROOT/foobar annihilate Delete ALL DATA AND APPLICATIONS INSIDE THIS WINEPREFIX _EOF_ @@ -5863,6 +5945,33 @@ load_d3dcompiler_43() #---------------------------------------------------------------- +w_metadata d3dcompiler_47 dlls \ + title="MS d3dcompiler_47.dll" \ + publisher="Microsoft" \ + year="FIXME" \ + media="download" \ + file1="FirefoxSetup62.0.3-win32.exe" \ + installed_file1="$W_SYSTEM32_DLLS_WIN/d3dcompiler_47.dll" + +load_d3dcompiler_47() +{ + # FIXME: would be awesome to find a small download that has both 32/64bit dlls, but this works for now: + + w_download https://download-installer.cdn.mozilla.net/pub/firefox/releases/62.0.3/win32/ach/Firefox%20Setup%2062.0.3.exe "d6edb4ff0a713f417ebd19baedfe07527c6e45e84a6c73ed8c66a33377cc0aca" "FirefoxSetup62.0.3-win32.exe" + w_try_7z "$W_TMP/win32" "$W_CACHE/d3dcompiler_47/FirefoxSetup62.0.3-win32.exe" "core/d3dcompiler_47.dll" + w_try cp "$W_TMP/win32/core/d3dcompiler_47.dll" "$W_SYSTEM32_DLLS/d3dcompiler_47.dll" + + if [ "$W_ARCH" = "win64" ]; then + w_download https://download-installer.cdn.mozilla.net/pub/firefox/releases/62.0.3/win64/ach/Firefox%20Setup%2062.0.3.exe "721977f36c008af2b637aedd3f1b529f3cfed6feb10f68ebe17469acb1934986" "FirefoxSetup62.0.3-win64.exe" + w_try_7z "$W_TMP/win64" "$W_CACHE/d3dcompiler_47/FirefoxSetup62.0.3-win64.exe" "core/d3dcompiler_47.dll" + w_try cp "$W_TMP/win64/core/d3dcompiler_47.dll" "$W_SYSTEM64_DLLS/d3dcompiler_47.dll" + fi + + w_override_dlls native d3dcompiler_47 +} + +#---------------------------------------------------------------- + w_metadata d3drm dlls \ title="MS d3drm.dll" \ publisher="Microsoft" \ @@ -6540,12 +6649,20 @@ load_directx9() # How many of these do we really need? # We should probably remove most of these...? + w_call devenum + w_call quartz + + w_try_cabextract -d "$W_TMP" -L -F dxnt.cab "$W_CACHE"/directx9/$DIRECTX_NAME + w_try_cabextract -d "$W_SYSTEM32_DLLS" -L -F "msdmo.dll" "$W_TMP/dxnt.cab" + w_try_cabextract -d "$W_SYSTEM32_DLLS" -L -F "qcap.dll" "$W_TMP/dxnt.cab" + w_try_regsvr qcap.dll + w_override_dlls native d3dim d3drm d3dx8 d3dx9_24 d3dx9_25 d3dx9_26 d3dx9_27 d3dx9_28 d3dx9_29 w_override_dlls native d3dx9_30 d3dx9_31 d3dx9_32 d3dx9_33 d3dx9_34 d3dx9_35 d3dx9_36 d3dx9_37 w_override_dlls native d3dx9_38 d3dx9_39 d3dx9_40 d3dx9_41 d3dx9_42 d3dx9_43 d3dxof - w_override_dlls native dciman32 ddrawex devenum dmband dmcompos dmime dmloader dmscript dmstyle + w_override_dlls native dciman32 ddrawex dmband dmcompos dmime dmloader dmscript dmstyle w_override_dlls native dmsynth dmusic dmusic32 dplay dplayx dpnaddr dpnet dpnhpast dpnlobby - w_override_dlls native dswave dxdiagn msdmo qcap quartz streamci + w_override_dlls native dswave dxdiagn msdmo qcap streamci w_override_dlls native dxdiag.exe w_override_dlls builtin d3d8 d3d9 dinput dinput8 dsound @@ -6929,6 +7046,25 @@ load_dxvk90() helper_dxvk "$file1" "d3d10_enabled" "3.19" "1.1.88" } +w_metadata dxvk91 dlls \ + title="Vulkan-based D3D10/D3D11 implementation for Linux / Wine (0.91)" \ + publisher="Philip Rebohle" \ + year="2018" \ + media="download" \ + file1="dxvk-0.91.tar.gz" \ + installed_file1="$W_SYSTEM32_DLLS_WIN/d3d10.dll" \ + installed_file2="$W_SYSTEM32_DLLS_WIN/d3d10_1.dll" \ + installed_file3="$W_SYSTEM32_DLLS_WIN/d3d10core.dll" \ + installed_file4="$W_SYSTEM32_DLLS_WIN/d3d11.dll" \ + installed_file5="$W_SYSTEM32_DLLS_WIN/dxgi.dll" + +load_dxvk91() +{ + # https://github.com/doitsujin/dxvk + w_download "https://github.com/doitsujin/dxvk/releases/download/v0.91/dxvk-0.91.tar.gz" 5296106ac3a8c631d7f26fa46dbff4be1332cda14fa493fd89ccf97e050c4855 + helper_dxvk "$file1" "d3d10_enabled" "3.19" "1.1.88" +} + #---------------------------------------------------------------- @@ -9476,6 +9612,28 @@ load_python26() #---------------------------------------------------------------- +w_metadata qasf dlls \ + title="qasf.dll (from Directx 9 user redistributable)" \ + publisher="Microsoft" \ + year="2010" \ + media="download" \ + file1="../directx9/directx_feb2010_redist.exe" \ + installed_file1="$W_SYSTEM32_DLLS_WIN/qasf.dll" + +load_qasf() +{ + helper_directx_dl + + w_try_cabextract -d "$W_TMP" -L -F dxnt.cab "$W_CACHE"/directx9/$DIRECTX_NAME + w_try_cabextract -d "$W_SYSTEM32_DLLS" -L -F qasf.dll "$W_TMP/dxnt.cab" + + w_try_regsvr qasf.dll + + w_override_dlls native qasf +} + +#---------------------------------------------------------------- + w_metadata qdvd dlls \ title="qdvd.dll" \ publisher="Microsoft" \ @@ -9719,6 +9877,8 @@ w_metadata secur32 dlls \ load_secur32() { + w_warn "Installing native secur32 may lead to stack overflow crashes, see https://bugs.winehq.org/show_bug.cgi?id=45344" + helper_win7sp1 x86_microsoft-windows-lsa_31bf3856ad364e35_6.1.7601.17514_none_a851f4adbb0d5141/secur32.dll w_try cp "$W_TMP/x86_microsoft-windows-lsa_31bf3856ad364e35_6.1.7601.17514_none_a851f4adbb0d5141/secur32.dll" "$W_SYSTEM32_DLLS/secur32.dll" @@ -11679,7 +11839,7 @@ w_metadata lucida fonts \ load_lucida() { - w_download "ftp://ftp.fu-berlin.de/pc/security/ms-patches/winnt/usa/NT40TSE/hotfixes-postSP3/Euro-fix/eurofixi.exe" 41f272a33521f6e15f2cce9ff1e049f2badd5ff0dc327fc81b60825766d5b6c7 + w_download "https://ftpmirror.your.org/pub/misc/ftp.microsoft.com/bussys/winnt/winnt-public/fixes/usa/NT40TSE/hotfixes-postSP3/Euro-fix/eurofixi.exe" 41f272a33521f6e15f2cce9ff1e049f2badd5ff0dc327fc81b60825766d5b6c7 w_try_cabextract -d "$W_TMP" -F "lucon.ttf" "$W_CACHE"/lucida/eurofixi.exe w_try_cp_font_files "$W_TMP" "$W_FONTSDIR_UNIX" w_register_font lucon.ttf "Lucida Console" @@ -20541,12 +20701,14 @@ execute_command() attended) winetricks_set_unattended 0 ;; showbroken) W_OPT_SHOWBROKEN=1 ;; hidebroken) W_OPT_SHOWBROKEN=0 ;; + arch=*) winetricks_set_winearch "$arg" ;; prefix=*) winetricks_set_wineprefix "$arg" ;; annihilate) winetricks_annihilate_wineprefix ;; folder) w_open_folder "$WINEPREFIX" ;; winecfg) "$WINE" winecfg ;; regedit) "$WINE" regedit ;; taskmgr) "$WINE" taskmgr & ;; + explorer) "$WINE" explorer & ;; uninstaller) "$WINE" uninstaller ;; shell) winetricks_shell ;; @@ -20658,6 +20820,7 @@ then unattended) winetricks_set_unattended 1 ; continue;; esac ;; + mkprefix) verbs=$(winetricks_mkprefixmenu) ;; settings) verbs=$(winetricks_settings_menu) ;; *) verbs="$(winetricks_showmenu)" ;; esac @@ -20675,10 +20838,16 @@ then winetricks_stats_init # Otherwise user picked one or more real verbs. case "$verbs" in - prefix=*) + prefix=*|arch=*) # prefix menu is special, it only returns one verb, and the - # verb can contain spaces - execute_command "$verbs" + # verb can contain spaces. If a 32bit wineprefix is created via + # the GUI, this may have an "arch=* " prefix + _W_arch=$(echo "$verbs" | grep -o 'arch=.*' | cut -d' ' -f1) + _W_prefix=$(echo "$verbs" | grep -o 'prefix=.*') + if [ -n "$_W_arch" ]; then + execute_command "$_W_arch" + fi + execute_command "$_W_prefix" # after picking a prefix, want to land in main. WINETRICKS_CURMENU=main ;; *)