-static void AddSource(NSDictionary *source) {
- [Sources_ setObject:source forKey:[NSString stringWithFormat:@"%@:%@:%@", [source objectForKey:@"Type"], [source objectForKey:@"URI"], [source objectForKey:@"Distribution"]]];
- Changed_ = true;
-}
-
-static void AddSource(NSString *href, NSString *distribution, NSArray *sections = nil) {
- AddSource([NSMutableDictionary dictionaryWithObjectsAndKeys:
- @"deb", @"Type",
- href, @"URI",
- distribution, @"Distribution",
- sections ?: [NSMutableArray array], @"Sections",
- nil]);
-}
-
-static void WriteSources() {
- FILE *file(fopen("/etc/apt/sources.list.d/cydia.list", "w"));
- _assert(file != NULL);
-
- fprintf(file, "deb http://%s/ tangelo main\n",
- [CydiaSource_ UTF8String]
- );
-
- for (NSString *key in [Sources_ allKeys]) {
- NSDictionary *source([Sources_ objectForKey:key]);
-
- NSArray *sections([source objectForKey:@"Sections"] ?: [NSArray array]);
-
- fprintf(file, "%s %s %s%s%s\n",
- [[source objectForKey:@"Type"] UTF8String],
- [[source objectForKey:@"URI"] UTF8String],
- [[source objectForKey:@"Distribution"] UTF8String],
- [sections count] == 0 ? "" : " ",
- [[sections componentsJoinedByString:@" "] UTF8String]
- );
- }
-
- fclose(file);
-}
-