forked from webtaculars/Universal-Bypass
-
Notifications
You must be signed in to change notification settings - Fork 0
/
.chromium_build.php
56 lines (54 loc) · 1.22 KB
/
.chromium_build.php
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
<?php
if(is_file("Universal Bypass for Chromium-based browsers.zip"))
{
unlink("Universal Bypass for Chromium-based browsers.zip");
}
echo "Indexing...\n";
$index = [];
function recursivelyIndex($dir)
{
global $index;
foreach(scandir($dir) as $f)
{
if(substr($f, 0, 1) != ".")
{
$fn = $dir."/".$f;
if(is_dir($fn))
{
recursivelyIndex($fn);
}
else
{
array_push($index, substr($fn, 2));
}
}
}
}
recursivelyIndex(".");
echo "Building...\n";
function createZip($file)
{
$zip = new ZipArchive();
$zip->open($file, ZipArchive::CREATE + ZipArchive::EXCL + ZipArchive::CHECKCONS) or die("Failed to create {$file}.\n");
return $zip;
}
$build = createZip("Universal Bypass for Chromium-based browsers.zip");
foreach($index as $fn)
{
if($fn == "README.md" || $fn == "injection_script.js" || $fn == "rules.json" || $fn == "Universal Bypass for Firefox.zip")
{
continue;
}
if($fn == "manifest.json")
{
$json = json_decode(file_get_contents($fn), true);
unset($json["browser_specific_settings"]);
$json["incognito"] = "split";
$build->addFromString($fn, str_replace(" ", "\t", json_encode($json, JSON_PRETTY_PRINT | JSON_UNESCAPED_SLASHES)));
}
else
{
$build->addFile($fn, $fn);
}
}
$build->close();