Release Vulpes OS 2.7-preview.24

This commit is contained in:
OverSu 2026-11-04 12:52:20 +01:00
commit 97ef99f827
135 changed files with 7717 additions and 2524 deletions

View file

@ -9,6 +9,18 @@ def mount_table(layout):
raise ValueError('Expected Sargo userdata, not another partition')
if not re.fullmatch(r'[0-9a-f]{64}', layout.get('firstMiBSha256', '')):
raise ValueError('Missing userdata identity checksum')
if layout.get('schema') == 2 and layout.get('table') == 'direct':
if (layout.get('partitionLabel') != 'userdata' or
layout.get('filesystem') != 'ext4' or
layout.get('storage') != 'raw-userdata-ext4' or
not re.fullmatch(r'[0-9]+:[0-9]+', layout.get('backingDevice', '')) or
not re.fullmatch(r'[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}',
layout.get('filesystemUuid', ''))):
raise ValueError('Direct mapping requires inventoried raw ext4 userdata')
size = int(layout.get('size', 0))
if size <= 0 or size % 512:
raise ValueError('Invalid direct userdata geometry')
return None
match = re.fullmatch(r'0 ([0-9]+) linear ([0-9]+:[0-9]+) ([0-9]+)',
layout.get('table', ''))
if not match: