Allow 7z for rar decompression on Windows

This commit is contained in:
Timmy Welch 2024-02-18 21:57:51 -08:00
parent 27e70b966f
commit 54b0630891

View File

@ -289,13 +289,17 @@ class RarArchiver(Archiver):
orig = rarfile.UNRAR_TOOL
rarfile.UNRAR_TOOL = cls.exe
try:
return rarfile.is_rarfile(str(path)) and rarfile.tool_setup(sevenzip=False, sevenzip2=False, force=True)
return rarfile.is_rarfile(str(path)) and rarfile.tool_setup(
sevenzip=platform.system() == "Windows", sevenzip2=platform.system() == "Windows", force=True
)
except rarfile.RarCannotExec:
rarfile.UNRAR_TOOL = orig
# Fallback to standard
try:
return rarfile.is_rarfile(str(path)) and rarfile.tool_setup(sevenzip=False, sevenzip2=False, force=True)
return rarfile.is_rarfile(str(path)) and rarfile.tool_setup(
sevenzip=platform.system() == "Windows", sevenzip2=platform.system() == "Windows", force=True
)
except rarfile.RarCannotExec as e:
logger.info(e)
return False