/* }}} */
#include <Foundation/Foundation.h>
-#include <CydiaSubstrate/CydiaSubstrate.h>
+#include <Menes/ObjectHandle.h>
#include <CyteKit/UCPlatform.h>
#include <cstdio>
+#include "Sources.h"
+
extern _H<NSMutableDictionary> Sources_;
-extern bool Changed_;
void CydiaWriteSources() {
- seteuid(0);
-
- FILE *file(fopen("/etc/apt/sources.list.d/cydia.list", "w"));
+ unlink(SOURCES_LIST);
+ FILE *file(fopen(SOURCES_LIST, "w"));
_assert(file != NULL);
fprintf(file, "deb http://apt.saurik.com/ ios/%.2f main\n", kCFCoreFoundationVersionNumber);
for (NSString *key in [Sources_ allKeys]) {
+ if ([key hasPrefix:@"deb:http:"] && [Sources_ objectForKey:[NSString stringWithFormat:@"deb:https:%s", [key UTF8String] + 9]])
+ continue;
+
NSDictionary *source([Sources_ objectForKey:key]);
NSArray *sections([source objectForKey:@"Sections"] ?: [NSArray array]);
}
fclose(file);
-
- seteuid(501);
}
void CydiaAddSource(NSDictionary *source) {
[Sources_ setObject:source forKey:[NSString stringWithFormat:@"%@:%@:%@", [source objectForKey:@"Type"], [source objectForKey:@"URI"], [source objectForKey:@"Distribution"]]];
- Changed_ = true;
}
void CydiaAddSource(NSString *href, NSString *distribution, NSArray *sections) {