From: Sebastian Krzyszkowiak Date: Thu, 10 Nov 2022 21:15:27 +0000 (+0100) Subject: Remove RW image overlay when upgrading images X-Git-Tag: 1.4.0~47 X-Git-Url: https://glassweightruler.freedombox.rocks/gitweb/waydroid.git/commitdiff_plain/5718ba8b068a83ad07ebdfdfd02d5c3a2bc35aca Remove RW image overlay when upgrading images --- diff --git a/tools/actions/initializer.py b/tools/actions/initializer.py index 31b4fc9..fdc4a40 100644 --- a/tools/actions/initializer.py +++ b/tools/actions/initializer.py @@ -117,6 +117,8 @@ def init(args): helpers.images.umount_rootfs(args) if args.images_path not in tools.config.defaults["preinstalled_images_paths"]: helpers.images.get(args) + else: + helpers.images.remove_overlay(args) if not os.path.isdir(tools.config.defaults["rootfs"]): os.mkdir(tools.config.defaults["rootfs"]) if not os.path.isdir(tools.config.defaults["overlay"]): diff --git a/tools/helpers/images.py b/tools/helpers/images.py index e00e9b1..c5d5fad 100644 --- a/tools/helpers/images.py +++ b/tools/helpers/images.py @@ -4,6 +4,7 @@ import logging import zipfile import json import hashlib +import shutil import os import tools.config from tools import helpers @@ -78,6 +79,7 @@ def get(args): tools.config.save(args, cfg) os.remove(images_zip) break + remove_overlay(args) def replace(args, system_zip, system_time, vendor_zip, vendor_time): cfg = tools.config.load(args) @@ -92,6 +94,13 @@ def replace(args, system_zip, system_time, vendor_zip, vendor_time): zip_ref.extractall(args.images_path) cfg["waydroid"]["vendor_datetime"] = str(vendor_time) tools.config.save(args, cfg) + remove_overlay(args) + +def remove_overlay(args): + if os.path.isdir(tools.config.defaults["overlay_rw"]): + shutil.rmtree(tools.config.defaults["overlay_rw"]) + if os.path.isdir(tools.config.defaults["overlay_work"]): + shutil.rmtree(tools.config.defaults["overlay_work"]) def make_prop(args, cfg, full_props_path): if not os.path.isfile(args.work + "/waydroid_base.prop"):