Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Wsa #815

Closed
wants to merge 7 commits into from
Closed

Wsa #815

Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions .github/workflows/main.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@

35 changes: 35 additions & 0 deletions arm64/gapps/product/etc/sysconfig/component-overrides.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,35 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- This file is part of MagiskOnWSALocal.

MagiskOnWSALocal is free software: you can redistribute it and/or modify
it under the terms of the GNU Affero General Public License as
published by the Free Software Foundation, either version 3 of the
License, or (at your option) any later version.

MagiskOnWSALocal is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU Affero General Public License for more details.

You should have received a copy of the GNU Affero General Public License
along with MagiskOnWSALocal. If not, see <https://www.gnu.org/licenses/>.

Copyright (C) 2023 LSPosed Contributors
-->
<config>
<component-override package="com.android.vending">
<!-- Conflicts with WSA's built-in package verifier, disable to prevent boot loops. -->
<component class="com.google.android.finsky.verifier.impl.PackageVerificationReceiver" enabled="false" />
<!-- Disable stock OTA components if installed -->
<component class="com.google.android.finsky.systemupdate.SystemUpdateSettingsContentProvider" enabled="false" />
<component class="com.google.android.finsky.systemupdateactivity.SettingsSecurityEntryPoint" enabled="false" />
<component class="com.google.android.finsky.systemupdateactivity.SystemUpdateActivity" enabled="false" />
</component-override>
<component-override package="com.google.android.gms">
<component class="com.google.android.gms.update.phone.PopupDialog" enabled="false" />
<component class="com.google.android.gms.update.OtaSuggestionSummaryProvider" enabled="false" />
<component class="com.google.android.gms.update.SystemUpdateActivity" enabled="false" />
<component class="com.google.android.gms.update.SystemUpdateGcmTaskService" enabled="false" />
<component class="com.google.android.gms.update.SystemUpdateService" enabled="false" />
</component-override>
</config>
Binary file not shown.
Binary file added arm64/system/priv-app/VpnDialogs/VpnDialogs.apk
Binary file not shown.
Binary file added bin/aarch64/fuse.erofs
Binary file not shown.
Binary file added bin/aarch64/mkfs.erofs
Binary file not shown.
Binary file added bin/x86_64/fuse.erofs
Binary file not shown.
Binary file added bin/x86_64/mkfs.erofs
Binary file not shown.
Binary file added linker/aarch64/libc.so
Binary file not shown.
Binary file added linker/aarch64/libdl.so
Binary file not shown.
Binary file added linker/aarch64/libm.so
Binary file not shown.
Binary file added linker/aarch64/linker64
Binary file not shown.
Binary file added linker/x86_64/libc.so
Binary file not shown.
Binary file added linker/x86_64/libdl.so
Binary file not shown.
Binary file added linker/x86_64/libm.so
Binary file not shown.
Binary file added linker/x86_64/linker64
Binary file not shown.
142 changes: 139 additions & 3 deletions scripts/build.sh
Original file line number Diff line number Diff line change
Expand Up @@ -231,6 +231,25 @@ while [[ $# -gt 0 ]]; do
ROOT_SOL="$2"
shift 2
;;
<<<<<<< HEAD
=======
--compress-format)
COMPRESS_FORMAT="$2"
shift 2
;;
--compress)
COMPRESS_OUTPUT="yes"
shift
;;
--offline)
OFFLINE="on"
shift
;;
--magisk-custom)
CUSTOM_MAGISK="debug"
shift
;;
>>>>>>> parent of cef9ef4 ([WIP] Gapps integrate)
--magisk-ver)
MAGISK_VER="$2"
shift 2
Expand Down Expand Up @@ -270,6 +289,12 @@ while [[ $# -gt 0 ]]; do
esac
done

if [ "$CUSTOM_MAGISK" ]; then
if [ -z "$MAGISK_VER" ]; then
MAGISK_VER=$CUSTOM_MAGISK
fi
fi

check_list() {
local input=$1
if [ -n "$input" ]; then
Expand Down Expand Up @@ -300,6 +325,7 @@ if [ "$DEBUG" ]; then
set -x
fi

<<<<<<< HEAD
if [ "$HAS_GAPPS" ]; then
case "$ROOT_SOL" in
"none")
Expand All @@ -314,6 +340,15 @@ if [ "$HAS_GAPPS" ]; then
esac
fi

=======
require_su() {
if test "$(id -u)" != "0"; then
if [ "$(sudo id -u)" != "0" ]; then
abort "sudo is required to run this script"
fi
fi
}
>>>>>>> parent of cef9ef4 ([WIP] Gapps integrate)
# shellcheck disable=SC1091
[ -f "$PYTHON_VENV_DIR/bin/activate" ] && {
source "$PYTHON_VENV_DIR/bin/activate" || abort "Failed to activate virtual environment, please re-run install_deps.sh"
Expand Down Expand Up @@ -342,11 +377,17 @@ if [ "$CUSTOM_MAGISK" ]; then
fi
fi
ANDROID_API=33
<<<<<<< HEAD
update_gapps_files_name() {
GAPPS_IMAGE_NAME=gapps-${ANDROID_API_MAP[$ANDROID_API]}-${ARCH_NAME_MAP[$ARCH]}.img
GAPPS_RC_NAME=gapps-${ANDROID_API_MAP[$ANDROID_API]}.rc
GAPPS_IMAGE_PATH=$DOWNLOAD_DIR/$GAPPS_IMAGE_NAME
GAPPS_RC_PATH=$DOWNLOAD_DIR/$GAPPS_RC_NAME
=======
update_gapps_file_name() {
GAPPS_FILE_NAME=GApps-$ARCH-${ANDROID_API_MAP[$ANDROID_API]}.apex
GAPPS_PATH=$DOWNLOAD_DIR/$GAPPS_FILE_NAME
>>>>>>> parent of cef9ef4 ([WIP] Gapps integrate)
}
WSA_MAJOR_VER=0
getKernelVersion() {
Expand Down Expand Up @@ -380,22 +421,33 @@ update_ksu_zip_name() {

if [ -z ${OFFLINE+x} ]; then
echo "Generating WSA Download Links"
<<<<<<< HEAD
if [ -z ${SKIP_DOWN_WSA+x} ]; then
=======
require_su
if [ "$DOWN_WSA" != "no" ]; then
>>>>>>> parent of cef9ef4 ([WIP] Gapps integrate)
python3 generateWSALinks.py "$ARCH" "$RELEASE_TYPE" "$DOWNLOAD_DIR" "$DOWNLOAD_CONF_NAME" || abort
echo "Downloading WSA"
else
python3 generateWSALinks.py "$ARCH" "$RELEASE_TYPE" "$DOWNLOAD_DIR" "$DOWNLOAD_CONF_NAME" "$SKIP_DOWN_WSA" || abort
echo "Skip download WSA, downloading WSA depends"
fi
<<<<<<< HEAD
if ! aria2c --no-conf --log-level=info --log="$DOWNLOAD_DIR/aria2_download.log" -x16 -s16 -j5 -c -R -m0 \
--async-dns=false --check-integrity=true --continue=true --allow-overwrite=true --conditional-get=true \
-d"$DOWNLOAD_DIR" -i"$DOWNLOAD_DIR/$DOWNLOAD_CONF_NAME"; then
abort "We have encountered an error while downloading files."
=======
if ! aria2c --no-conf --log-level=info --log="$DOWNLOAD_DIR/aria2_download.log" -x16 -s16 -j5 -c -R -m0 --async-dns=false --check-integrity=true --continue=true --allow-overwrite=true --conditional-get=true -d"$DOWNLOAD_DIR" -i"$DOWNLOAD_DIR/$DOWNLOAD_CONF_NAME"; then
echo "We have encountered an error while downloading files."
exit 1
>>>>>>> parent of cef9ef4 ([WIP] Gapps integrate)
fi
rm -f "${DOWNLOAD_DIR:?}/$DOWNLOAD_CONF_NAME"
fi

echo "Extracting WSA"
echo "Extract WSA"
if [ -f "$WSA_ZIP_PATH" ]; then
if ! python3 extractWSA.py "$ARCH" "$WSA_ZIP_PATH" "$WORK_DIR" "$WSA_WORK_ENV"; then
CLEAN_DOWNLOAD_WSA=1
Expand Down Expand Up @@ -429,15 +481,48 @@ if [ -z ${OFFLINE+x} ]; then
update_gapps_files_name
python3 generateGappsLink.py "$ARCH" "$DOWNLOAD_DIR" "$DOWNLOAD_CONF_NAME" "$ANDROID_API" "$GAPPS_IMAGE_NAME" || abort
fi
<<<<<<< HEAD
if [ -f "$DOWNLOAD_DIR/$DOWNLOAD_CONF_NAME" ]; then
echo "Downloading Artifacts"
if ! aria2c --no-conf --log-level=info --log="$DOWNLOAD_DIR/aria2_download.log" -x16 -s16 -j5 -c -R -m0 \
--async-dns=false --check-integrity=true --continue=true --allow-overwrite=true --conditional-get=true \
-d"$DOWNLOAD_DIR" -i"$DOWNLOAD_DIR/$DOWNLOAD_CONF_NAME"; then
abort "We have encountered an error while downloading files."
fi
=======

echo "Downloading Artifacts"
if ! aria2c --no-conf --log-level=info --log="$DOWNLOAD_DIR/aria2_download.log" -x16 -s16 -j5 -c -R -m0 --async-dns=false --check-integrity=true --continue=true --allow-overwrite=true --conditional-get=true -d"$DOWNLOAD_DIR" -i"$DOWNLOAD_DIR/$DOWNLOAD_CONF_NAME"; then
echo "We have encountered an error while downloading files."
exit 1
fi
else # Offline mode
declare -A FILES_CHECK_LIST=([xaml_PATH]="$xaml_PATH" [vclibs_PATH]="$vclibs_PATH" [UWPVCLibs_PATH]="$UWPVCLibs_PATH")
if [ "$HAS_GAPPS" ] || [ "$ROOT_SOL" = "magisk" ]; then
FILES_CHECK_LIST+=(["MAGISK_PATH"]="$MAGISK_PATH")
fi
if [ "$ROOT_SOL" = "kernelsu" ]; then
update_ksu_zip_name
FILES_CHECK_LIST+=(["KERNELSU_PATH"]="$KERNELSU_PATH")
fi
if [ "$HAS_GAPPS" ]; then
update_gapps_file_name
FILES_CHECK_LIST+=(["GAPPS_PATH"]="$GAPPS_PATH")
fi
for i in "${FILES_CHECK_LIST[@]}"; do
if [ ! -f "$i" ]; then
echo "Offline mode: missing [$i]."
OFFLINE_ERR="1"
fi
done
if [ "$OFFLINE_ERR" ]; then
echo "Offline mode: Some files are missing, please disable offline mode."
exit 1
>>>>>>> parent of cef9ef4 ([WIP] Gapps integrate)
fi
require_su
fi
<<<<<<< HEAD
declare -A FILES_CHECK_LIST=([xaml_PATH]="$xaml_PATH" [vclibs_PATH]="$vclibs_PATH" [UWPVCLibs_PATH]="$UWPVCLibs_PATH")
if [ "$ROOT_SOL" = "magisk" ]; then
FILES_CHECK_LIST+=(["MAGISK_PATH"]="$MAGISK_PATH" ["CUST_PATH"]="$CUST_PATH")
Expand All @@ -461,6 +546,11 @@ if [ "$FILE_MISSING" ]; then
fi
if [ "$ROOT_SOL" = "magisk" ]; then
echo "Extracting Magisk"
=======

if [ "$HAS_GAPPS" ] || [ "$ROOT_SOL" = "magisk" ]; then
echo "Extract Magisk"
>>>>>>> parent of cef9ef4 ([WIP] Gapps integrate)
if [ -f "$MAGISK_PATH" ]; then
MAGISK_VERSION_NAME=""
MAGISK_VERSION_CODE=0
Expand All @@ -483,6 +573,7 @@ if [ "$ROOT_SOL" = "magisk" ]; then
fi

if [ "$ROOT_SOL" = "magisk" ]; then
<<<<<<< HEAD
echo "Integrating Magisk"
SKIP="#"
SINGLEABI="#"
Expand Down Expand Up @@ -517,8 +608,18 @@ if [ "$ROOT_SOL" = "magisk" ]; then
"add 000 overlay.d/sbin/post-fs-data.sh post-fs-data.sh" \
"add 000 overlay.d/sbin/lsp_cust.img $CUST_PATH" \
|| abort "Unable to patch initrd"
=======
echo "Integrate Magisk"
"$WORK_DIR/magisk/magiskboot" compress=xz "$WORK_DIR/magisk/magisk64" "$WORK_DIR/magisk/magisk64.xz"
"$WORK_DIR/magisk/magiskboot" compress=xz "$WORK_DIR/magisk/magisk32" "$WORK_DIR/magisk/magisk32.xz"
"$WORK_DIR/magisk/magiskboot" compress=xz "$MAGISK_PATH" "$WORK_DIR/magisk/stub.xz"
echo "KEEPFORCEENCRYPT=true" >>"$WORK_DIR/magisk/config"
echo "PREINITDEVICE=sde" >>"$WORK_DIR/magisk/config"
"$WORK_DIR/magisk/magiskboot" cpio "$WORK_DIR/wsa/$ARCH/Tools/initrd.img" "mv /init /wsainit" "add 0750 /lspinit ../bin/$ARCH/lspinit" "ln /lspinit /init" "add 0750 /magiskinit $WORK_DIR/magisk/magiskinit" "mkdir 0750 overlay.d" "mkdir 0750 overlay.d/sbin" "add 0644 overlay.d/sbin/magisk64.xz $WORK_DIR/magisk/magisk64.xz" "add 0644 overlay.d/sbin/magisk32.xz $WORK_DIR/magisk/magisk32.xz" "add 0644 overlay.d/sbin/stub.xz $WORK_DIR/magisk/stub.xz" "mkdir 000 .backup" "add 000 .backup/.magisk $WORK_DIR/magisk/config" || abort "Unable to patch initrd"
echo -e "Integrate Magisk done\n"
>>>>>>> parent of cef9ef4 ([WIP] Gapps integrate)
elif [ "$ROOT_SOL" = "kernelsu" ]; then
echo "Extracting KernelSU"
echo "Extract KernelSU"
# shellcheck disable=SC1090
source "${KERNELSU_INFO:?}" || abort
echo "WSA Kernel Version: $KERNEL_VER"
Expand All @@ -536,6 +637,7 @@ elif [ "$ROOT_SOL" = "kernelsu" ]; then
mv "$WORK_DIR/wsa/$ARCH/Tools/kernel" "$WORK_DIR/wsa/$ARCH/Tools/kernel_origin"
cp "$WORK_DIR/kernelsu/kernel" "$WORK_DIR/wsa/$ARCH/Tools/kernel"
fi
<<<<<<< HEAD
echo -e "done\n"
if [ "$HAS_GAPPS" ]; then
update_gapps_files_name
Expand All @@ -545,18 +647,39 @@ if [ "$HAS_GAPPS" ]; then
"add 000 overlay.d/gapps.rc $GAPPS_RC_PATH" \
"add 000 overlay.d/sbin/lsp_gapps.img $GAPPS_IMAGE_PATH" \
|| abort "Unable to patch initrd"
=======

if [ "$HAS_GAPPS" ] && [ "$ROOT_SOL" != "magisk" ]; then
"$WORK_DIR/magisk/magiskboot" cpio "$WORK_DIR/wsa/$ARCH/Tools/initrd.img" "mv /init /wsainit" "add 0750 /lspinit ../bin/$ARCH/lspinit" "ln /lspinit /init" || abort "Unable to patch initrd"
fi

if [ "$HAS_GAPPS" ]; then
update_gapps_file_name
if [ -f "$GAPPS_PATH" ]; then
if ! unzip -t "$GAPPS_PATH"; then
CLEAN_DOWNLOAD_GAPPS=1
abort "Unzip GApps failed, package is corrupted?"
fi
echo "Integrate GApps"
cp "$GAPPS_PATH" "$WORK_DIR/wsa/$ARCH/apex/" || abort
>>>>>>> parent of cef9ef4 ([WIP] Gapps integrate)
echo -e "done\n"
else
abort "The GApps package does not exist."
fi
fi

<<<<<<< HEAD
if [ "$REMOVE_AMAZON" ]; then
rm -f "$WORK_DIR/wsa/$ARCH/apex/"mado*.apex || abort
fi

echo "Removing signature and add scripts"
rm -rf "${WORK_DIR:?}"/wsa/"$ARCH"/\[Content_Types\].xml "$WORK_DIR/wsa/$ARCH/AppxBlockMap.xml" "$WORK_DIR/wsa/$ARCH/AppxSignature.p7x" "$WORK_DIR/wsa/$ARCH/AppxMetadata" || abort
=======
echo "Remove signature and add scripts"
sudo rm -rf "${WORK_DIR:?}"/wsa/"$ARCH"/\[Content_Types\].xml "$WORK_DIR/wsa/$ARCH/AppxBlockMap.xml" "$WORK_DIR/wsa/$ARCH/AppxSignature.p7x" "$WORK_DIR/wsa/$ARCH/AppxMetadata" || abort
>>>>>>> parent of cef9ef4 ([WIP] Gapps integrate)
cp "$vclibs_PATH" "$xaml_PATH" "$WORK_DIR/wsa/$ARCH" || abort
cp "$UWPVCLibs_PATH" "$xaml_PATH" "$WORK_DIR/wsa/$ARCH" || abort
cp "../bin/$ARCH/makepri.exe" "$WORK_DIR/wsa/$ARCH" || abort
Expand All @@ -567,6 +690,11 @@ cp ../installer/Run.bat "$WORK_DIR/wsa/$ARCH" || abort
find "$WORK_DIR/wsa/$ARCH" -maxdepth 1 -mindepth 1 -printf "%P\n" >"$WORK_DIR/wsa/$ARCH/filelist.txt" || abort
echo -e "done\n"

<<<<<<< HEAD
=======
echo "Generate info"

>>>>>>> parent of cef9ef4 ([WIP] Gapps integrate)
if [[ "$ROOT_SOL" = "none" ]]; then
name1=""
elif [ "$ROOT_SOL" = "magisk" ]; then
Expand All @@ -583,7 +711,7 @@ artifact_name=WSA_${WSA_VER}_${ARCH}_${WSA_REL}${name1}${name2}
[ "$REMOVE_AMAZON" ] && artifact_name+=-NoAmazon

if [ -f "$OUTPUT_DIR" ]; then
rm -rf ${OUTPUT_DIR:?}
sudo rm -rf ${OUTPUT_DIR:?}
fi
if [ ! -d "$OUTPUT_DIR" ]; then
mkdir -p "$OUTPUT_DIR"
Expand All @@ -608,3 +736,11 @@ else
echo "Copying to $OUTPUT_PATH"
cp -r "$WORK_DIR/wsa/$ARCH" "$OUTPUT_PATH" || abort
fi
<<<<<<< HEAD
=======
echo -e "done\n"

echo "Cleanup Work Directory"
sudo rm -rf "${WORK_DIR:?}"
echo "done"
>>>>>>> parent of cef9ef4 ([WIP] Gapps integrate)
2 changes: 1 addition & 1 deletion scripts/extractWSA.py
Original file line number Diff line number Diff line change
Expand Up @@ -108,5 +108,5 @@ def __repr__(self):
elif g.filename == 'AppxManifest.xml':
g.filename = f'resources.{name}.xml'
l.extract(g, xmldir)
elif re.search(u'Images/.+\.png', g.filename):
elif re.search(r'Images/.+\.png', g.filename):
l.extract(g, archdir)
4 changes: 2 additions & 2 deletions scripts/generateGappsLink.py
Original file line number Diff line number Diff line change
Expand Up @@ -59,9 +59,9 @@ def __call__(self, r):
download_files = {}
assets = json_data["assets"]
for asset in assets:
if re.match(f'gapps.*{release}.*\.rc$', asset["name"]):
if re.match(rf'gapps.*{release}.*\.rc$', asset["name"]):
download_files[asset["name"]] = asset["browser_download_url"]
elif re.match(f'gapps.*{release}.*{abi_map[arch]}.*\.img$', asset["name"]):
elif re.match(rf'gapps.*{release}.*{abi_map[arch]}.*\.img$', asset["name"]):
download_files[asset["name"]] = asset["browser_download_url"]
with open(download_dir/tempScript, 'a') as f:
for key, value in download_files.items():
Expand Down
4 changes: 2 additions & 2 deletions scripts/generateKernelSULink.py
Original file line number Diff line number Diff line change
Expand Up @@ -67,7 +67,7 @@ def __repr__(self):
assets = json_data["assets"]
for asset in assets:
asset_name = asset["name"]
if re.match(f'kernel-WSA-{abi_map[arch]}-{kernelVersion}.*\.zip$', asset_name) and asset["content_type"] == "application/zip":
if re.match(rf'kernel-WSA-{abi_map[arch]}-{kernelVersion}.*\.zip$', asset_name) and asset["content_type"] == "application/zip":
tmp_kernel_ver = re.search(
u'\d{1}.\d{1,}.\d{1,}.\d{1,}', asset_name.split("-")[3]).group()
if (kernel_ver == 0):
Expand All @@ -76,7 +76,7 @@ def __repr__(self):
kernel_ver = tmp_kernel_ver
print(f"Kernel version: {kernel_ver}", flush=True)
for asset in assets:
if re.match(f'kernel-WSA-{abi_map[arch]}-{kernel_ver}.*\.zip$', asset["name"]) and asset["content_type"] == "application/zip":
if re.match(rf'kernel-WSA-{abi_map[arch]}-{kernel_ver}.*\.zip$', asset["name"]) and asset["content_type"] == "application/zip":
link = asset["browser_download_url"]
break
if link == "":
Expand Down
14 changes: 7 additions & 7 deletions scripts/generateWSALinks.py
Original file line number Diff line number Diff line change
Expand Up @@ -145,26 +145,26 @@ def send_req(i, v, out_file_name):
threads = []
wsa_build_ver = 0
for filename, values in identities.items():
if re.match(f"MicrosoftCorporationII\.WindowsSubsystemForAndroid_.*\.msixbundle", filename):
if re.match(rf"MicrosoftCorporationII\.WindowsSubsystemForAndroid_.*\.msixbundle", filename):
tmp_wsa_build_ver = re.search(
u'\d{4}.\d{5}.\d{1,}.\d{1,}', filename).group()
r'\d{4}.\d{5}.\d{1,}.\d{1,}', filename).group()
if (wsa_build_ver == 0):
wsa_build_ver = tmp_wsa_build_ver
elif version.parse(wsa_build_ver) < version.parse(tmp_wsa_build_ver):
wsa_build_ver = tmp_wsa_build_ver
for filename, values in identities.items():
if re.match(f"Microsoft\.UI\.Xaml\..*_{arch}_.*\.appx", filename):
if re.match(rf"Microsoft\.UI\.Xaml\..*_{arch}_.*\.appx", filename):
out_file_name = f"{values[1]}_{arch}.appx"
out_file = download_dir / out_file_name
elif re.match(f"Microsoft\.VCLibs\..+\.UWPDesktop_.*_{arch}_.*\.appx", filename):
elif re.match(rf"Microsoft\.VCLibs\..+\.UWPDesktop_.*_{arch}_.*\.appx", filename):
out_file_name = f"{values[1]}_{arch}.appx"
out_file = download_dir / out_file_name
elif re.match(f"Microsoft\.VCLibs\..+_.*_{arch}_.*\.appx", filename):
elif re.match(rf"Microsoft\.VCLibs\..+_.*_{arch}_.*\.appx", filename):
out_file_name = f"{values[1]}_{arch}.appx"
out_file = download_dir / out_file_name
elif not skip_wsa_download and re.match(f"MicrosoftCorporationII\.WindowsSubsystemForAndroid_.*\.msixbundle", filename):
elif not skip_wsa_download and re.match(rf"MicrosoftCorporationII\.WindowsSubsystemForAndroid_.*\.msixbundle", filename):
tmp_wsa_build_ver = re.search(
u'\d{4}.\d{5}.\d{1,}.\d{1,}', filename).group()
r'\d{4}.\d{5}.\d{1,}.\d{1,}', filename).group()
if (wsa_build_ver != tmp_wsa_build_ver):
continue
version_splitted = wsa_build_ver.split(".")
Expand Down
Loading