custominstall: exit early if save3ds_fuse can't be found

This commit is contained in:
Ian Burgwin
2020-07-19 22:29:33 -07:00
parent 4522c009c3
commit 56747d36eb

View File

@@ -6,7 +6,7 @@
from argparse import ArgumentParser from argparse import ArgumentParser
from os import makedirs, scandir from os import makedirs, scandir
from os.path import dirname, join from os.path import dirname, join, isfile
from random import randint from random import randint
from hashlib import sha256 from hashlib import sha256
from locale import getpreferredencoding from locale import getpreferredencoding
@@ -162,6 +162,13 @@ class CustomInstall:
self.event.update_percentage((total_read / size) * 100, total_read / 1048576, size / 1048576) self.event.update_percentage((total_read / size) * 100, total_read / 1048576, size / 1048576)
def start(self, continue_on_fail=True): def start(self, continue_on_fail=True):
save3ds_fuse_path = join(script_dir, 'bin', platform, 'save3ds_fuse')
if platform == 'win32':
save3ds_fuse_path += '.exe'
if not isfile(save3ds_fuse_path):
self.log("Couldn't find " + save3ds_fuse_path, 2)
return
crypto = self.crypto crypto = self.crypto
# TODO: Move a lot of these into their own methods # TODO: Move a lot of these into their own methods
self.log("Finding path to install to...") self.log("Finding path to install to...")
@@ -393,7 +400,7 @@ class CustomInstall:
with TemporaryDirectory(suffix='-custom-install') as tempdir: with TemporaryDirectory(suffix='-custom-install') as tempdir:
# set up the common arguments for the two times we call save3ds_fuse # set up the common arguments for the two times we call save3ds_fuse
save3ds_fuse_common_args = [ save3ds_fuse_common_args = [
join(script_dir, 'bin', platform, 'save3ds_fuse'), save3ds_fuse_path,
'-b', crypto.b9_path, '-b', crypto.b9_path,
'-m', self.movable, '-m', self.movable,
'--sd', self.sd, '--sd', self.sd,