]> git.saurik.com Git - cydia.git/blobdiff - Sources.mm
Trial move some key global variables into CyteKit.
[cydia.git] / Sources.mm
index 3290b2fce0100bf73f7ed17e72ff5d3a8a53c28f..a156ee2f404e1e73aa09cfeafff15d91f8e6d908 100644 (file)
 **/
 /* }}} */
 
+#include "CyteKit/UCPlatform.h"
+
 #include <Foundation/Foundation.h>
-#include <CydiaSubstrate/CydiaSubstrate.h>
-#include <CyteKit/UCPlatform.h>
+#include <Menes/ObjectHandle.h>
 
 #include <cstdio>
 
+#include "Sources.h"
+
 extern _H<NSMutableDictionary> Sources_;
-extern bool Changed_;
 
 void CydiaWriteSources() {
-    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]);
@@ -53,7 +59,6 @@ void CydiaWriteSources() {
 
 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) {