From 2f8b4c444af2d2523c47584aa37a33a407bfd3d8 Mon Sep 17 00:00:00 2001 From: Emiliano Vavassori Date: Thu, 31 Mar 2022 09:38:00 +0200 Subject: [PATCH] Sistemazione logica per costruzione buildopts. --- loaih/__init__.py | 17 ++++++++++++----- 1 file changed, 12 insertions(+), 5 deletions(-) diff --git a/loaih/__init__.py b/loaih/__init__.py index ea0728a..a754aff 100644 --- a/loaih/__init__.py +++ b/loaih/__init__.py @@ -48,6 +48,7 @@ class Build(object): self.relative_path = [] self.full_path = '' + def calculate(self): """Calculate exclusions and other variables.""" # Incompatibilities - if portable and updatable are asked together, @@ -118,6 +119,7 @@ class Build(object): if self.built[arch]: print("The requested AppImage already exists on storage for {arch}. I'll skip downloading, building and moving the results.".format(arch=arch)) + def __calculate_full_path__(self): """Calculate relative path of the build, based on internal other variables.""" if len(self.relative_path) == 0: @@ -136,6 +138,7 @@ class Build(object): fullpath_arr.extend(self.relative_path) self.full_path = re.sub(r"/+", '/', str.join('/', fullpath_arr)) + def download(self): """Downloads the contents of the URL as it was a folder.""" for arch in self.arch: @@ -171,6 +174,7 @@ class Build(object): print("Got %s." % archive) + def build(self): """Building all the versions.""" # We have 4 builds to do: @@ -201,6 +205,7 @@ class Build(object): self.__unpackbuild__(arch, True) self.__unpackbuild__(arch) + def __unpackbuild__(self, arch, generalize = False): if generalize and self.portable: # Doesn't particularly make sense to build a generic portable @@ -270,6 +275,11 @@ class Build(object): dest = os.path.join(self.appimagedir, 'AppRun') urllib.request.urlretrieve(apprunurl, dest) os.chmod(dest, 0o755) + + # Dealing with extra options + buildopts = [] + if self.sign: + buildopts.append('--sign') # Building app if self.updatable: @@ -278,11 +288,6 @@ class Build(object): # updatable version. # zsync name was generated already - # Dealing with extra options - buildopts = [] - if self.sign: - buildopts.append('--sign') - # If asked to do a generalized build: if generalize: subprocess.run("VERSION={version} ./appimagetool {buildopts} -u 'zsync|{zsync}' -v ./{appname}.AppDir/".format(version = self.genappversion, buildopts = str.join(' ', buildopts), zsync = self.genappimagefilename[arch] + '.zsync', appname = self.appname), shell=True) @@ -307,6 +312,7 @@ class Build(object): os.remove(deb) subprocess.run("find . -mindepth 1 -maxdepth 1 -type d -exec rm -rf {} \+", shell=True) + def checksums(self): """Create checksums of the built versions.""" if all(self.built.values()): @@ -338,6 +344,7 @@ class Build(object): os.makedirs(self.full_path, exist_ok = True) subprocess.run("find . -iname '*.AppImage*' -exec cp -f {} %s \;" % self.full_path, shell=True) + def __del__(self): """Destructor""" # Cleaning up build directory