Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit d68cb26e authored by Dennis Shen's avatar Dennis Shen Committed by Automerger Merge Worker
Browse files

Merge "Update deapexer call to explictly use blkid" am: da42e6fe

parents fe150e2f da42e6fe
Loading
Loading
Loading
Loading
+10 −16
Original line number Diff line number Diff line
@@ -65,6 +65,8 @@ class ApexApkSigner(object):
        OPTIONS.search_path, "bin", "debugfs_static")
    self.fsckerofs_path = os.path.join(
        OPTIONS.search_path, "bin", "fsck.erofs")
    self.blkid_path = os.path.join(
        OPTIONS.search_path, "bin", "blkid")
    self.avbtool = avbtool if avbtool else "avbtool"
    self.sign_tool = sign_tool

@@ -82,13 +84,8 @@ class ApexApkSigner(object):
          "Couldn't find location of debugfs_static: " +
          "Path {} does not exist. ".format(self.debugfs_path) +
          "Make sure bin/debugfs_static can be found in -p <path>")
    if not os.path.exists(self.fsckerofs_path):
      raise ApexSigningError(
          "Couldn't find location of fsck.erofs: " +
          "Path {} does not exist. ".format(self.fsckerofs_path) +
          "Make sure bin/fsck.erofs can be found in -p <path>")
    list_cmd = ['deapexer', '--debugfs_path', self.debugfs_path,
                '--fsckerofs_path', self.fsckerofs_path, 'list', self.apex_path]
                'list', self.apex_path]
    entries_names = common.RunAndCheckOutput(list_cmd).split()
    apk_entries = [name for name in entries_names if name.endswith('.apk')]
    sepolicy_entries = []
@@ -132,9 +129,15 @@ class ApexApkSigner(object):
          "Couldn't find location of fsck.erofs: " +
          "Path {} does not exist. ".format(self.fsckerofs_path) +
          "Make sure bin/fsck.erofs can be found in -p <path>")
    if not os.path.exists(self.blkid_path):
      raise ApexSigningError(
          "Couldn't find location of blkid: " +
          "Path {} does not exist. ".format(self.blkid_path) +
          "Make sure bin/blkid can be found in -p <path>")
    payload_dir = common.MakeTempDir()
    extract_cmd = ['deapexer', '--debugfs_path', self.debugfs_path,
                   '--fsckerofs_path', self.fsckerofs_path, 'extract',
                   '--fsckerofs_path', self.fsckerofs_path,
                   '--blkid_path', self.blkid_path, 'extract',
                   self.apex_path, payload_dir]
    common.RunAndCheckOutput(extract_cmd)
    assert os.path.exists(self.apex_path)
@@ -470,7 +473,6 @@ def SignCompressedApex(avbtool, apex_file, payload_key, container_key,
    The path to the signed APEX file.
  """
  debugfs_path = os.path.join(OPTIONS.search_path, 'bin', 'debugfs_static')
  fsckerofs_path = os.path.join(OPTIONS.search_path, 'bin', 'fsck.erofs')

  # 1. Decompress original_apex inside compressed apex.
  original_apex_file = common.MakeTempFile(prefix='original-apex-',
@@ -478,7 +480,6 @@ def SignCompressedApex(avbtool, apex_file, payload_key, container_key,
  # Decompression target path should not exist
  os.remove(original_apex_file)
  common.RunAndCheckOutput(['deapexer', '--debugfs_path', debugfs_path,
                            '--fsckerofs_path', fsckerofs_path,
                            'decompress', '--input', apex_file,
                            '--output', original_apex_file])

@@ -544,9 +545,7 @@ def SignApex(avbtool, apex_data, payload_key, container_key, container_pw,
    output_fp.write(apex_data)

  debugfs_path = os.path.join(OPTIONS.search_path, 'bin', 'debugfs_static')
  fsckerofs_path = os.path.join(OPTIONS.search_path, 'bin', 'fsck.erofs')
  cmd = ['deapexer', '--debugfs_path', debugfs_path,
         '--fsckerofs_path', fsckerofs_path,
         'info', '--print-type', apex_file]

  try:
@@ -621,10 +620,6 @@ def GetApexInfoFromTargetFiles(input_file, partition, compressed_only=True):
  if OPTIONS.search_path:
    debugfs_path = os.path.join(OPTIONS.search_path, "bin", "debugfs_static")

  fsckerofs_path = "fsck.erofs"
  if OPTIONS.search_path:
    fsckerofs_path = os.path.join(OPTIONS.search_path, "bin", "fsck.erofs")

  deapexer = 'deapexer'
  if OPTIONS.search_path:
    deapexer_path = os.path.join(OPTIONS.search_path, "bin", "deapexer")
@@ -645,7 +640,6 @@ def GetApexInfoFromTargetFiles(input_file, partition, compressed_only=True):
    # Check if the file is compressed or not
    apex_type = RunAndCheckOutput([
        deapexer, "--debugfs_path", debugfs_path,
        "--fsckerofs_path", fsckerofs_path,
        'info', '--print-type', apex_filepath]).rstrip()
    if apex_type == 'COMPRESSED':
      apex_info.is_compressed = True
+4 −0
Original line number Diff line number Diff line
@@ -164,6 +164,10 @@ def MergeDexopt(temp_dir, output_target_files_dir):
          'deapexer',
          '--debugfs_path',
          'debugfs_static',
          '--blkid_path',
          'blkid',
          '--fsckerofs_path',
          'fsck.erofs',
          'extract',
          apex,
          apex_extract_dir,