diff --git a/winehelper b/winehelper index e709853..f9051a1 100755 --- a/winehelper +++ b/winehelper @@ -364,9 +364,9 @@ try_copy_other_dll_to_pfx_32() { try_copy_wine_dll_to_pfx_64 () { if [[ "$WINEARCH" == "win64" ]] ; then - if [[ -d "${WINEDIR}/lib64/wine/x86_64-windows" ]] - then WINE_BUILD_DLL_64="${WINEDIR}/lib64/wine/x86_64-windows" - else WINE_BUILD_DLL_64="${WINEDIR}/lib64/wine" + if [[ -d "$WINEDIR/lib64/wine/x86_64-windows" ]] + then WINE_BUILD_DLL_64="$WINEDIR/lib64/wine/x86_64-windows" + else WINE_BUILD_DLL_64="$WINEDIR/lib64/wine" fi cmp -s "$WINE_BUILD_DLL_64/$1" "${WINEPREFIX}/drive_c/windows/system32/$(basename $1)" && return 0 try_copy_file "$WINE_BUILD_DLL_64/$1" "${WINEPREFIX}/drive_c/windows/system32/" && return 0 || return 1 @@ -374,9 +374,9 @@ try_copy_wine_dll_to_pfx_64 () { } try_copy_wine_dll_to_pfx_32() { - if [[ -d "${WINEDIR}/lib/wine/i386-windows" ]] - then WINE_BUILD_DLL_32="${WINEDIR}/lib/wine/i386-windows" - else WINE_BUILD_DLL_32="${WINEDIR}/lib/wine" + if [[ -d "$WINEDIR/lib/wine/i386-windows" ]] + then WINE_BUILD_DLL_32="$WINEDIR/lib/wine/i386-windows" + else WINE_BUILD_DLL_32="$WINEDIR/lib/wine" fi if [[ "$WINEARCH" == "win64" ]] ; then cmp -s "$WINE_BUILD_DLL_32/$1" "${WINEPREFIX}/drive_c/windows/syswow64/$1" && return 0 @@ -702,53 +702,49 @@ init_wine_ver () { export WINEDIR="$WH_DIST_DIR/$WH_WINE_USE" if [[ ! -d "$WINEDIR" ]] ; then - WINE_URL="$CLOUD_URL/$WH_WINE_USE.tar.xz" - local WINE_PACKAGE="$WH_TMP_DIR/${WH_WINE_USE}.tar.xz" - if try_download "$WINE_URL" "$WINE_PACKAGE" check256sum \ - && unpack "$WINE_PACKAGE" "$WH_DIST_DIR/" - then - echo "$WH_WINE_USE" > "$WH_DIST_DIR/$WH_WINE_USE/version" - try_remove_file "$WINE_PACKAGE" - fi + local wine_package="$WH_TMP_DIR/$WH_WINE_USE.tar.xz" + try_download "$CLOUD_URL/$WH_WINE_USE.tar.xz" "$wine_package" check256sum + unpack "$wine_package" "$WH_DIST_DIR/" + try_remove_file "$wine_package" fi - export WINE="${WINEDIR}/bin/wine" - export WINELOADER="${WINEDIR}/bin/wine" - export WINESERVER="${WINEDIR}/bin/wineserver" + [[ ! -f "$WINEDIR/version" ]] && echo "$WH_WINE_USE" > "$WINEDIR/version" + + export WINE="$WINEDIR/bin/wine" + export WINELOADER="$WINEDIR/bin/wine" + export WINESERVER="$WINEDIR/bin/wineserver" if [[ -n "${PATH}" ]] - then export PATH="${WINEDIR}/bin:${PATH}" - else export PATH="${WINEDIR}/bin" + then export PATH="$WINEDIR/bin:${PATH}" + else export PATH="$WINEDIR/bin" fi - if [[ -n "${LD_LIBRARY_PATH}" ]] - then export LD_LIBRARY_PATH="${WINEDIR}/lib:${LD_LIBRARY_PATH}" - else export LD_LIBRARY_PATH="${WINEDIR}/lib" + var_ld_library_path_update "$WINEDIR/lib" + export WINEDLLPATH="$WINEDIR/lib/wine" + + if [[ ! -d "$WINEDIR/lib64/wine" ]] \ + && [[ -d "$WINEDIR/lib/wine/x86_64-unix" ]] + then + create_new_dir "$WINEDIR/lib64/" + try_force_link_dir "$WINEDIR/lib/wine/" "$WINEDIR/lib64/" fi - export WINEDLLPATH="${WINEDIR}/lib/wine" - - if [[ -d "${WINEDIR}/lib/gstreamer-1.0" ]] ; then - export GST_PLUGIN_SYSTEM_PATH_1_0="${WINEDIR}/lib/gstreamer-1.0" + if [[ -d "$WINEDIR/lib64" ]] \ + && [[ ! -L "$WINEDIR/lib64/wine" ]] + then + var_ld_library_path_update "$WINEDIR/lib64" + export WINEDLLPATH+=":$WINEDIR/lib64/wine" fi - [[ ! -f "${WINEDIR}/version" ]] && echo "${WH_WINE_USE}" > "${WINEDIR}/version" - - if [[ ! -d "${WINEDIR}/lib64/wine" ]] && [[ -d "${WINEDIR}/lib/wine/x86_64-unix" ]] ; then - create_new_dir "${WINEDIR}/lib64/" - try_force_link_dir "${WINEDIR}/lib/wine/" "${WINEDIR}/lib64/" - fi - - if [[ -d "${WINEDIR}/lib64" ]] ; then - export LD_LIBRARY_PATH+=":${WINEDIR}/lib64" - export WINEDLLPATH+=":${WINEDIR}/lib64/wine" - if [[ -d "${WINEDIR}/lib64/gstreamer-1.0" ]] ; then - export GST_PLUGIN_SYSTEM_PATH_1_0+=":${WINEDIR}/lib64/gstreamer-1.0" + if [[ -d "$WINEDIR/lib/gstreamer-1.0" ]] ; then + export GST_PLUGIN_SYSTEM_PATH_1_0="$WINEDIR/lib/gstreamer-1.0" + if [[ -d "$WINEDIR/lib64/gstreamer-1.0" ]] ; then + export GST_PLUGIN_SYSTEM_PATH_1_0+=":$WINEDIR/lib64/gstreamer-1.0" fi fi if [[ $WH_USE_CPCSP_PROXY == "1" ]] \ - && ! grep -q "$CPCSP_PROXY_VER" "${WINEDIR}/cpcsp_proxy.ver" + && ! grep -q "$CPCSP_PROXY_VER" "$WINEDIR/cpcsp_proxy.ver" then CPCSP_PROXY_NAME="wine-cpcsp_proxy-$CPCSP_PROXY_VER" CPCSP_PROXY_URL="$CLOUD_URL/$CPCSP_PROXY_NAME.tar.xz" @@ -756,16 +752,16 @@ init_wine_ver () { try_download "$CPCSP_PROXY_URL" "$WH_TMP_DIR/$CPCSP_PROXY_NAME.tar.xz" check256sum unpack "$WH_TMP_DIR/$CPCSP_PROXY_NAME.tar.xz" "$WH_TMP_DIR" - cp -fr "$WH_TMP_DIR/$CPCSP_PROXY_NAME/"i386-* "${WINEDIR}/lib/wine/" - if [[ -d "${WINEDIR}/lib64" ]] ; then - cp -fr "$WH_TMP_DIR/$CPCSP_PROXY_NAME/"x86_64-* "${WINEDIR}/lib64/wine/" + cp -fr "$WH_TMP_DIR/$CPCSP_PROXY_NAME/"i386-* "$WINEDIR/lib/wine/" + if [[ -d "$WINEDIR/lib64" ]] ; then + cp -fr "$WH_TMP_DIR/$CPCSP_PROXY_NAME/"x86_64-* "$WINEDIR/lib64/wine/" fi try_remove_dir "$WH_TMP_DIR/$CPCSP_PROXY_NAME" - echo "$CPCSP_PROXY_VER" > "${WINEDIR}/cpcsp_proxy.ver" + echo "$CPCSP_PROXY_VER" > "$WINEDIR/cpcsp_proxy.ver" fi else # use system WINE - if ! rpm -q "wine" 1>/dev/null ; then + if [[ ! -f "/usr/bin/wine" ]] ; then fatal "system WINE - not found." fi export WINEDIR="/usr"