Bundle original Debian apt 2.6.1 test package with readable description

This commit is contained in:
admin committed 2026-11-12 13:46:04 +08:00
1 parent dc51a3a3c7
commit 718bf032c8
4 files changed
+22 -5

No files matched your search

+19 -4
View File
@@ -248,14 +248,28 @@ static NSDictionary *WQParseControl(NSString *control)
NSString *WQDebInfoText(NSString *path)
{
NSData *archive = [NSData dataWithContentsOfFile:path];
if (!archive.length) return nil;
if (!archive.length) {
NSLog(@"[WQDeb] cannot read %@", path);
return nil;
}
NSData *controlArchive = WQArMember(archive, @"control.tar");
if (!controlArchive.length) return nil;
if (!controlArchive.length) {
NSLog(@"[WQDeb] no control archive in %@", path);
return nil;
}
NSData *controlData = WQArchiveEntryNamed(controlArchive, @"control");
if (!controlData.length) return nil;
if (!controlData.length) {
NSLog(@"[WQDeb] no control file in %@", path);
return nil;
}
NSString *control = [[NSString alloc] initWithData:controlData
encoding:NSUTF8StringEncoding];
if (!control.length) return nil;
if (!control.length) {
NSLog(@"[WQDeb] control is not UTF-8 in %@", path);
return nil;
}
NSLog(@"[WQDeb] info %@ control=%lu bytes", path,
(unsigned long)controlData.length);
NSMutableString *text = [NSMutableString stringWithFormat:
@" new Debian package, version 2.0.\n"
@" size %lu bytes: control archive %lu bytes.\n",
@@ -335,6 +349,7 @@ static BOOL WQInstallDeb(NSString *path, FILE *out, FILE *err,
![architecture isEqualToString:@"iphoneos-arm64"] &&
![architecture isEqualToString:@"iphoneos-arm"] &&
![architecture isEqualToString:@"darwin-arm64"] &&
![architecture isEqualToString:@"arm64"] &&
![architecture isEqualToString:@"all"]) {
fprintf(err, "dpkg: package architecture %s is not native "
"(use --force-architecture)\n", architecture.UTF8String);