1
0
世界 3 жил өмнө
parent
commit
9ccfec3077

+ 2 - 3
app/src/main/java/io/nekohasekai/sagernet/ui/AssetsActivity.kt

@@ -278,12 +278,11 @@ class AssetsActivity : ThemedActivity() {
         var fileName = file.name
         if (DataStore.rulesProvider == 0) {
             if (file.name == internalFiles[0]) {
-                repo = "SagerNet/geoip"
+                repo = "v2fly/geoip"
             } else {
                 repo = "v2fly/domain-list-community"
-                fileName = "dlc.dat"
+                fileName = "dlc.dat.xz"
             }
-            fileName = "$fileName.xz"
         } else {
             repo = "Loyalsoldier/v2ray-rules-dat"
         }

+ 12 - 8
buildSrc/src/main/kotlin/V2RayAssets.kt

@@ -14,20 +14,18 @@ fun Project.downloadAssets() {
     val downloader = OkHttpClient.Builder().followRedirects(true).followSslRedirects(true).build()
 
     val github = GitHubBuilder().build()
-    val geoip = github.getRepository("SagerNet/geoip").latestRelease
+    val geoip = github.getRepository("v2fly/geoip").latestRelease
     val geoipFile = File(assets, "v2ray/geoip.dat.xz")
     val geoipVersion = File(assets, "v2ray/geoip.version.txt")
     if (!geoipVersion.isFile || geoipVersion.readText() != geoip.tagName) {
         geoipVersion.deleteRecursively()
         geoipFile.parentFile.mkdirs()
 
-        val geoipDat = (geoip.listAssets().toSet().find { it.name == geoipFile.name }
-            ?: error("${geoipFile.name} not found in ${geoip.assetsUrl}")).browserDownloadUrl
+        val geoipDat = (geoip.listAssets().toSet().find { it.name == "geoip.dat" }
+            ?: error("geoip.dat not found in ${geoip.assetsUrl}")).browserDownloadUrl
 
-        val sha256sum = (geoip.listAssets()
-            .toSet()
-            .find { it.name == "${geoipFile.name}.sha256sum" }
-            ?: error("${geoipFile.name}.sha256sum not found in ${geoip.assetsUrl}")).browserDownloadUrl
+        val sha256sum = (geoip.listAssets().toSet().find { it.name == "geoip.dat.sha256sum" }
+            ?: error("geoip.dat.sha256sum not found in ${geoip.assetsUrl}")).browserDownloadUrl
 
         println("Downloading $sha256sum ...")
 
@@ -71,8 +69,14 @@ fun Project.downloadAssets() {
                 continue
             }
 
-            geoipVersion.writeText(geoip.tagName)
+            val geoipBytes = geoipFile.readBytes()
+            geoipFile.outputStream().use { out ->
+                XZOutputStream(out, LZMA2Options(9)).use {
+                    it.write(geoipBytes)
+                }
+            }
 
+            geoipVersion.writeText(geoip.tagName)
             break
         }
     }