NikGapps 3.29__py3-none-any.whl → 3.31__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- NikGapps/build/Build.py +8 -8
- NikGapps/build/NikGappsManager.py +2 -2
- NikGapps/build/Release.py +6 -6
- NikGapps/build_config.py +11 -11
- NikGapps/cache.py +12 -12
- NikGapps/config/NikGappsConfig.py +15 -15
- NikGapps/copy_repos.py +2 -2
- NikGapps/helper/Assets.py +8 -8
- NikGapps/helper/Package.py +2 -6
- NikGapps/helper/compression/CompOps.py +6 -6
- NikGapps/helper/compression/Export.py +10 -10
- NikGapps/helper/git/TestGit.py +1 -1
- NikGapps/helper/overlay/ApkMetaInfo.py +1 -1
- NikGapps/helper/overlay/Manifest.py +1 -1
- NikGapps/helper/overlay/Overlay.py +1 -1
- NikGapps/helper/upload/CmdUpload.py +7 -7
- NikGapps/helper/upload/GoFileUpload.py +7 -7
- NikGapps/main.py +9 -9
- NikGapps/overlay_control.py +11 -10
- NikGapps/test.py +1 -20
- {NikGapps-3.29.dist-info → NikGapps-3.31.dist-info}/METADATA +4 -3
- NikGapps-3.31.dist-info/RECORD +65 -0
- NikGapps/build/NikGappsPackages.py +0 -916
- NikGapps/helper/B64.py +0 -34
- NikGapps/helper/C.py +0 -16
- NikGapps/helper/Cmd.py +0 -296
- NikGapps/helper/FileOp.py +0 -235
- NikGapps/helper/Json.py +0 -34
- NikGapps/helper/P.py +0 -23
- NikGapps/helper/Statics.py +0 -166
- NikGapps/helper/SystemStat.py +0 -103
- NikGapps/helper/T.py +0 -82
- NikGapps/helper/XmlOp.py +0 -40
- NikGapps/helper/compression/Modes.py +0 -4
- NikGapps/helper/compression/Tar.py +0 -25
- NikGapps/helper/compression/Zip.py +0 -97
- NikGapps/helper/compression/Zsh.py +0 -17
- NikGapps/helper/git/Git.py +0 -228
- NikGapps/helper/git/GitOperations.py +0 -118
- NikGapps/helper/git/GitStatics.py +0 -14
- NikGapps/helper/git/GithubManager.py +0 -21
- NikGapps/helper/git/GitlabManager.py +0 -265
- NikGapps/helper/upload/Upload.py +0 -125
- NikGapps/helper/web/Requests.py +0 -139
- NikGapps/helper/web/TelegramApi.py +0 -126
- NikGapps/helper/web/__init__.py +0 -0
- NikGapps-3.29.dist-info/RECORD +0 -89
- {NikGapps-3.29.dist-info → NikGapps-3.31.dist-info}/LICENSE +0 -0
- {NikGapps-3.29.dist-info → NikGapps-3.31.dist-info}/WHEEL +0 -0
- {NikGapps-3.29.dist-info → NikGapps-3.31.dist-info}/entry_points.txt +0 -0
- {NikGapps-3.29.dist-info → NikGapps-3.31.dist-info}/top_level.txt +0 -0
NikGapps/helper/upload/Upload.py
DELETED
|
@@ -1,125 +0,0 @@
|
|
|
1
|
-
import os
|
|
2
|
-
import platform
|
|
3
|
-
from pathlib import Path
|
|
4
|
-
import pysftp
|
|
5
|
-
from NikGapps.helper.FileOp import FileOp
|
|
6
|
-
from NikGapps.helper.P import P
|
|
7
|
-
from NikGapps.helper.Statics import Statics
|
|
8
|
-
from NikGapps.helper.T import T
|
|
9
|
-
from NikGapps.helper.web.TelegramApi import TelegramApi
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
class Upload:
|
|
13
|
-
def __init__(self, android_version, release_type, upload_files, password=None):
|
|
14
|
-
self.android_version = android_version
|
|
15
|
-
self.android_version_code = Statics.get_android_code(android_version)
|
|
16
|
-
self.upload_files = upload_files
|
|
17
|
-
self.host = "frs.sourceforge.net"
|
|
18
|
-
self.username = "nikhilmenghani"
|
|
19
|
-
self.password = os.environ.get('SF_PWD') if password is None else password
|
|
20
|
-
self.release_dir = Statics.get_sourceforge_release_directory(release_type)
|
|
21
|
-
self.release_date = T.get_london_date_time("%d-%b-%Y")
|
|
22
|
-
self.cmd_method = False # can be removed later
|
|
23
|
-
self.upload_obj = None # can be removed later
|
|
24
|
-
if self.password is None or self.password.__eq__(""):
|
|
25
|
-
self.password = ""
|
|
26
|
-
self.sftp = None
|
|
27
|
-
return
|
|
28
|
-
try:
|
|
29
|
-
self.sftp = pysftp.Connection(host=self.host, username=self.username, password=self.password)
|
|
30
|
-
except Exception as e:
|
|
31
|
-
P.red("Exception while connecting to SFTP: " + str(e))
|
|
32
|
-
self.sftp = None
|
|
33
|
-
|
|
34
|
-
def set_release_dir(self, release_dir):
|
|
35
|
-
self.release_dir = release_dir
|
|
36
|
-
|
|
37
|
-
def get_cd(self, file_type):
|
|
38
|
-
folder_name = f"{self.release_dir}/Test/{self.release_date}"
|
|
39
|
-
match file_type:
|
|
40
|
-
case "gapps" | "config":
|
|
41
|
-
folder_name = f"{self.release_dir}/Android-{self.android_version}/{self.release_date}"
|
|
42
|
-
case "addons":
|
|
43
|
-
folder_name = f"{self.release_dir}/Android-{self.android_version}/{self.release_date}/Addons"
|
|
44
|
-
case "debloater":
|
|
45
|
-
tools_dir = Statics.get_sourceforge_release_directory("NikGappsTools/Debloater")
|
|
46
|
-
folder_name = f"{tools_dir}/{self.release_date}"
|
|
47
|
-
case "removeotascripts":
|
|
48
|
-
tools_dir = Statics.get_sourceforge_release_directory("NikGappsTools/RemoveOtaScripts")
|
|
49
|
-
folder_name = f"{tools_dir}/{self.release_date}"
|
|
50
|
-
case "nikgappsconfig":
|
|
51
|
-
folder_name = f"{self.release_dir}/Android-{self.android_version}"
|
|
52
|
-
case _:
|
|
53
|
-
print(file_type)
|
|
54
|
-
print("Upload Dir: " + folder_name)
|
|
55
|
-
return folder_name
|
|
56
|
-
|
|
57
|
-
def upload(self, file_name, telegram: TelegramApi = None, remote_directory=None):
|
|
58
|
-
if self.sftp is not None:
|
|
59
|
-
system_name = platform.system()
|
|
60
|
-
execution_status = False
|
|
61
|
-
download_link = None
|
|
62
|
-
file_size_kb = round(FileOp.get_file_size(file_name, "KB"), 2)
|
|
63
|
-
file_size_mb = round(FileOp.get_file_size(file_name), 2)
|
|
64
|
-
if telegram is not None:
|
|
65
|
-
telegram.message(f"- The zip {file_size_mb} MB is uploading...")
|
|
66
|
-
if self.sftp is not None and system_name != "Windows" and self.upload_files:
|
|
67
|
-
t = T()
|
|
68
|
-
file_type = "gapps"
|
|
69
|
-
if os.path.basename(file_name).__contains__("-Addon-"):
|
|
70
|
-
file_type = "addons"
|
|
71
|
-
elif os.path.basename(file_name).__contains__("Debloater"):
|
|
72
|
-
file_type = "debloater"
|
|
73
|
-
elif os.path.basename(file_name).lower().__contains__("removeotascripts"):
|
|
74
|
-
file_type = "removeotascripts"
|
|
75
|
-
|
|
76
|
-
if remote_directory is None:
|
|
77
|
-
remote_directory = self.get_cd(file_type)
|
|
78
|
-
|
|
79
|
-
remote_filename = Path(file_name).name
|
|
80
|
-
try:
|
|
81
|
-
self.sftp.chdir(remote_directory)
|
|
82
|
-
except IOError:
|
|
83
|
-
P.magenta(f"The remote directory: {remote_directory} doesn't exist, creating..")
|
|
84
|
-
try:
|
|
85
|
-
self.sftp.makedirs(remote_directory)
|
|
86
|
-
self.sftp.chdir(remote_directory)
|
|
87
|
-
except Exception as e:
|
|
88
|
-
P.red("Exception while creating directory: " + str(e))
|
|
89
|
-
self.close_connection()
|
|
90
|
-
self.sftp = pysftp.Connection(host=self.host, username=self.username, password=self.password)
|
|
91
|
-
return execution_status
|
|
92
|
-
putinfo = self.sftp.put(file_name, remote_filename)
|
|
93
|
-
print(putinfo)
|
|
94
|
-
P.green(f'File uploaded successfully to {remote_directory}/{remote_filename}')
|
|
95
|
-
download_link = Statics.get_download_link(file_name, remote_directory)
|
|
96
|
-
P.magenta("Download Link: " + download_link)
|
|
97
|
-
print("uploading file finished...")
|
|
98
|
-
execution_status = True
|
|
99
|
-
time_taken = t.taken(f"Total time taken to upload file with size {file_size_mb} MB ("
|
|
100
|
-
f"{file_size_kb} Kb)")
|
|
101
|
-
if execution_status:
|
|
102
|
-
if telegram is not None:
|
|
103
|
-
telegram.message(
|
|
104
|
-
f"- The zip {file_size_mb} MB uploaded in {T.format_time(round(time_taken))}\n",
|
|
105
|
-
replace_last_message=True)
|
|
106
|
-
if download_link is not None:
|
|
107
|
-
telegram.message(f"*Note:* Download link should start working in 10 minutes",
|
|
108
|
-
escape_text=False,
|
|
109
|
-
ur_link={f"Download": f"{download_link}"})
|
|
110
|
-
else:
|
|
111
|
-
P.red("System incompatible or upload disabled or connection failed!")
|
|
112
|
-
P.red("system_name: " + system_name)
|
|
113
|
-
P.red("self.sftp: " + str(self.sftp))
|
|
114
|
-
P.red("self.upload_files: " + str(self.upload_files))
|
|
115
|
-
return execution_status, download_link, file_size_mb
|
|
116
|
-
else:
|
|
117
|
-
P.red("Connection failed!")
|
|
118
|
-
return False, None, None
|
|
119
|
-
|
|
120
|
-
def close_connection(self):
|
|
121
|
-
if self.cmd_method:
|
|
122
|
-
self.upload_obj.close_connection()
|
|
123
|
-
elif self.sftp is not None:
|
|
124
|
-
self.sftp.close()
|
|
125
|
-
print("Connection closed")
|
NikGapps/helper/web/Requests.py
DELETED
|
@@ -1,139 +0,0 @@
|
|
|
1
|
-
import json
|
|
2
|
-
import time
|
|
3
|
-
|
|
4
|
-
import requests
|
|
5
|
-
from NikGapps.helper.Statics import Statics
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
class Requests:
|
|
9
|
-
|
|
10
|
-
@staticmethod
|
|
11
|
-
def get(url, headers=None, params=None):
|
|
12
|
-
if params is None:
|
|
13
|
-
params = {"": ""}
|
|
14
|
-
if headers is None:
|
|
15
|
-
headers = {'User-Agent': 'Mozilla/5.0 (X11; Linux x86_64; rv:105.0) Gecko/20100101 Firefox/105.0'}
|
|
16
|
-
result = requests.get(url, data=json.dumps(params), headers=headers)
|
|
17
|
-
if result.status_code == 429:
|
|
18
|
-
return Requests.handle_429_response(url, params, headers, result)
|
|
19
|
-
return result
|
|
20
|
-
|
|
21
|
-
@staticmethod
|
|
22
|
-
def put(url, headers=None, params=None):
|
|
23
|
-
if params is None:
|
|
24
|
-
params = {"": ""}
|
|
25
|
-
if headers is None:
|
|
26
|
-
headers = {'User-Agent': 'Mozilla/5.0 (X11; Linux x86_64; rv:105.0) Gecko/20100101 Firefox/105.0'}
|
|
27
|
-
result = requests.put(url, data=json.dumps(params), headers=headers)
|
|
28
|
-
if result.status_code == 429:
|
|
29
|
-
return Requests.handle_429_response(url, params, headers, result)
|
|
30
|
-
return result
|
|
31
|
-
|
|
32
|
-
@staticmethod
|
|
33
|
-
def patch(url, headers=None, params=None):
|
|
34
|
-
if params is None:
|
|
35
|
-
params = {"": ""}
|
|
36
|
-
if headers is None:
|
|
37
|
-
headers = {'User-Agent': 'Mozilla/5.0 (X11; Linux x86_64; rv:105.0) Gecko/20100101 Firefox/105.0'}
|
|
38
|
-
result = requests.patch(url, data=json.dumps(params), headers=headers)
|
|
39
|
-
if result.status_code == 429:
|
|
40
|
-
return Requests.handle_429_response(url, params, headers, result)
|
|
41
|
-
return result
|
|
42
|
-
|
|
43
|
-
@staticmethod
|
|
44
|
-
def post(url, headers=None, params=None):
|
|
45
|
-
if params is None:
|
|
46
|
-
params = {"": ""}
|
|
47
|
-
if headers is None:
|
|
48
|
-
headers = {'User-Agent': 'Mozilla/5.0 (X11; Linux x86_64; rv:105.0) Gecko/20100101 Firefox/105.0'}
|
|
49
|
-
result = requests.post(url, data=json.dumps(params), headers=headers)
|
|
50
|
-
if result.status_code == 429:
|
|
51
|
-
return Requests.handle_429_response(url, params, headers, result)
|
|
52
|
-
return result
|
|
53
|
-
|
|
54
|
-
@staticmethod
|
|
55
|
-
def get_text(url):
|
|
56
|
-
return requests.get(url).text
|
|
57
|
-
|
|
58
|
-
@staticmethod
|
|
59
|
-
def get_release_date(android_version, release_type):
|
|
60
|
-
decoded_hand = Requests.get(Statics.release_tracker_url)
|
|
61
|
-
if decoded_hand.status_code == 200:
|
|
62
|
-
data = decoded_hand.json()
|
|
63
|
-
if android_version in data[release_type]:
|
|
64
|
-
return data[release_type][android_version]
|
|
65
|
-
else:
|
|
66
|
-
print(f"{decoded_hand.status_code} while getting release date")
|
|
67
|
-
return Statics.time
|
|
68
|
-
|
|
69
|
-
@staticmethod
|
|
70
|
-
def get_folder_access(folder_name=None):
|
|
71
|
-
decoded_hand = Requests.get(Statics.folder_access_url)
|
|
72
|
-
if decoded_hand.status_code == 200:
|
|
73
|
-
data = decoded_hand.json()
|
|
74
|
-
return data if folder_name is None else (data[folder_name] if folder_name in data else None)
|
|
75
|
-
else:
|
|
76
|
-
print(f"{decoded_hand.status_code} while getting folder access")
|
|
77
|
-
return None
|
|
78
|
-
|
|
79
|
-
@staticmethod
|
|
80
|
-
def get_admin_access():
|
|
81
|
-
decoded_hand = Requests.get(Statics.admin_access_url)
|
|
82
|
-
admin_list = []
|
|
83
|
-
if decoded_hand.status_code == 200:
|
|
84
|
-
for admin in decoded_hand.text.split("\n"):
|
|
85
|
-
if admin != "":
|
|
86
|
-
admin_list.append(admin)
|
|
87
|
-
return admin_list
|
|
88
|
-
else:
|
|
89
|
-
print(f"{decoded_hand.status_code} while getting admin access")
|
|
90
|
-
return ["nikhilmenghani", "nikgapps"]
|
|
91
|
-
|
|
92
|
-
@staticmethod
|
|
93
|
-
def get_package_details(android_version):
|
|
94
|
-
package_details_url = f"https://raw.githubusercontent.com/nikgapps/tracker/main/{android_version}/GooglePackages.json"
|
|
95
|
-
decoded_hand = Requests.get(package_details_url)
|
|
96
|
-
package_details = {}
|
|
97
|
-
if decoded_hand.status_code == 200:
|
|
98
|
-
return decoded_hand.json()
|
|
99
|
-
else:
|
|
100
|
-
print(f"{decoded_hand.status_code} while getting package details")
|
|
101
|
-
return package_details
|
|
102
|
-
|
|
103
|
-
@staticmethod
|
|
104
|
-
def get_appset_details(android_version):
|
|
105
|
-
appset_details_url = f"https://raw.githubusercontent.com/nikgapps/tracker/main/{android_version}/AppSets.json"
|
|
106
|
-
decoded_hand = Requests.get(appset_details_url)
|
|
107
|
-
appset_details = {}
|
|
108
|
-
if decoded_hand.status_code == 200:
|
|
109
|
-
return decoded_hand.json()
|
|
110
|
-
else:
|
|
111
|
-
print(f"{decoded_hand.status_code} while getting appset details")
|
|
112
|
-
return appset_details
|
|
113
|
-
|
|
114
|
-
@staticmethod
|
|
115
|
-
def handle_429_response(url, params, headers, result):
|
|
116
|
-
if 'Retry-After' in result.headers:
|
|
117
|
-
wait_time = float(result.headers['Retry-After'])
|
|
118
|
-
print(f"Sleeping for {wait_time} seconds...")
|
|
119
|
-
time.sleep(wait_time)
|
|
120
|
-
return requests.get(url, data=json.dumps(params), headers=headers)
|
|
121
|
-
else:
|
|
122
|
-
for delay in [0, 1, 2, 4, 8, 16, 32, 64]:
|
|
123
|
-
print(f"Rate limit exceeded. Waiting for {delay} seconds before retrying...")
|
|
124
|
-
time.sleep(delay)
|
|
125
|
-
result = requests.get(url, data=json.dumps(params), headers=headers)
|
|
126
|
-
if result.status_code != 429:
|
|
127
|
-
return result
|
|
128
|
-
return result
|
|
129
|
-
|
|
130
|
-
@staticmethod
|
|
131
|
-
def get_data_in_json(url):
|
|
132
|
-
url = f"{url}"
|
|
133
|
-
decoded_hand = Requests.get(url)
|
|
134
|
-
details = {}
|
|
135
|
-
if decoded_hand.status_code == 200:
|
|
136
|
-
return decoded_hand.json()
|
|
137
|
-
else:
|
|
138
|
-
print(f"{decoded_hand.status_code} while getting package details")
|
|
139
|
-
return details
|
|
@@ -1,126 +0,0 @@
|
|
|
1
|
-
import time
|
|
2
|
-
|
|
3
|
-
import requests
|
|
4
|
-
import yaml
|
|
5
|
-
|
|
6
|
-
from .Requests import Requests
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
class TelegramApi:
|
|
10
|
-
|
|
11
|
-
def __init__(self, token, chat_id, message_thread_id=None):
|
|
12
|
-
self.token = token
|
|
13
|
-
self.base = "https://api.telegram.org"
|
|
14
|
-
self.chat_id = chat_id
|
|
15
|
-
self.message_thread_id = message_thread_id
|
|
16
|
-
self.message_id = None
|
|
17
|
-
self.msg = None
|
|
18
|
-
self.last_msg = None
|
|
19
|
-
self.urls = {}
|
|
20
|
-
self.changelog = None
|
|
21
|
-
|
|
22
|
-
def message(self, text, chat_id=None, replace_last_message=False, escape_text=True, parse_mode="markdown",
|
|
23
|
-
ur_link=None, send_as_new_message=False):
|
|
24
|
-
if self.token is None:
|
|
25
|
-
return None
|
|
26
|
-
if chat_id is None:
|
|
27
|
-
chat_id = self.chat_id
|
|
28
|
-
if text is None or str(text).__eq__(""):
|
|
29
|
-
print("No text to send")
|
|
30
|
-
return None
|
|
31
|
-
if send_as_new_message:
|
|
32
|
-
self.reset_message()
|
|
33
|
-
if escape_text:
|
|
34
|
-
for i in '_*[]~`>+=|{}':
|
|
35
|
-
text = text.replace(i, "\\" + i)
|
|
36
|
-
sending_text = text
|
|
37
|
-
if self.message_id is not None:
|
|
38
|
-
sending_text = self.msg.replace(self.last_msg, text) if replace_last_message else (self.msg + "\n" + text)
|
|
39
|
-
data = {
|
|
40
|
-
"chat_id": chat_id,
|
|
41
|
-
"text": f"{sending_text}",
|
|
42
|
-
"parse_mode": f"{parse_mode}",
|
|
43
|
-
"disable_web_page_preview": True
|
|
44
|
-
}
|
|
45
|
-
if self.message_thread_id is not None:
|
|
46
|
-
data["message_thread_id"] = self.message_thread_id
|
|
47
|
-
url = f"{self.base}/bot{self.token}/sendMessage"
|
|
48
|
-
if self.message_id is not None:
|
|
49
|
-
data["message_id"] = self.message_id
|
|
50
|
-
url = f"{self.base}/bot{self.token}/editMessageText"
|
|
51
|
-
if ur_link is not None:
|
|
52
|
-
ur_link: dict
|
|
53
|
-
for key in ur_link:
|
|
54
|
-
self.urls[key] = ur_link[key]
|
|
55
|
-
if len(self.urls) > 0:
|
|
56
|
-
row_list = []
|
|
57
|
-
inline_list = []
|
|
58
|
-
max_col = 1 if len(self.urls) > 1 else len(self.urls)
|
|
59
|
-
for count, key in enumerate(self.urls):
|
|
60
|
-
inline_list.append({"text": key, "url": self.urls[key]})
|
|
61
|
-
if count == max_col:
|
|
62
|
-
row_list.append(inline_list)
|
|
63
|
-
inline_list = []
|
|
64
|
-
if len(inline_list) > 0:
|
|
65
|
-
row_list.append(inline_list)
|
|
66
|
-
data["reply_markup"] = {
|
|
67
|
-
"inline_keyboard": [
|
|
68
|
-
row for row in row_list
|
|
69
|
-
]
|
|
70
|
-
}
|
|
71
|
-
r = requests.post(url, json=data)
|
|
72
|
-
response = r.json()
|
|
73
|
-
if r.status_code != 200:
|
|
74
|
-
print(f"Error sending message: {response}")
|
|
75
|
-
if r.status_code == 429:
|
|
76
|
-
print(f"Sleeping for {response['parameters']['retry_after']} seconds")
|
|
77
|
-
time.sleep(response['parameters']['retry_after'])
|
|
78
|
-
else:
|
|
79
|
-
return None
|
|
80
|
-
if response["ok"]:
|
|
81
|
-
self.last_msg = text
|
|
82
|
-
self.msg = sending_text
|
|
83
|
-
self.message_id = response["result"]["message_id"]
|
|
84
|
-
return response
|
|
85
|
-
|
|
86
|
-
def delete_message(self, message_id=None, chat_id=None):
|
|
87
|
-
if self.token is None:
|
|
88
|
-
return None
|
|
89
|
-
if chat_id is None:
|
|
90
|
-
chat_id = self.chat_id
|
|
91
|
-
if message_id is None:
|
|
92
|
-
message_id = self.message_id
|
|
93
|
-
if message_id is None:
|
|
94
|
-
return None
|
|
95
|
-
url = f"{self.base}/bot{self.token}/deleteMessage" \
|
|
96
|
-
f"?chat_id={chat_id}" \
|
|
97
|
-
f"&message_id={str(message_id)}"
|
|
98
|
-
r = Requests.get(url)
|
|
99
|
-
response = r.json()
|
|
100
|
-
return response
|
|
101
|
-
|
|
102
|
-
def get_latest_changelog_message(self, changelog=None):
|
|
103
|
-
if changelog is not None:
|
|
104
|
-
self.changelog = changelog
|
|
105
|
-
with open(self.changelog, 'r') as stream:
|
|
106
|
-
try:
|
|
107
|
-
msg = ""
|
|
108
|
-
for date in yaml.safe_load(stream):
|
|
109
|
-
msg += f"*New Release is up - {date['date']}*\n\n"
|
|
110
|
-
msg += f"Changelog:\n"
|
|
111
|
-
for item in date['changes']:
|
|
112
|
-
msg += f"- {item['item']}\n"
|
|
113
|
-
msg += f"\n"
|
|
114
|
-
msg += f"*Note: *\n"
|
|
115
|
-
msg += "- You can always take a backup and dirty flash the gapps, if you run into issues, you should try clean flashing the gapps.\n"
|
|
116
|
-
msg += "if you have any problem feel free to reach us @NikGappsGroup\nHappy Flashing!"
|
|
117
|
-
break
|
|
118
|
-
return msg
|
|
119
|
-
except yaml.YAMLError as exc:
|
|
120
|
-
print(exc)
|
|
121
|
-
return None
|
|
122
|
-
|
|
123
|
-
def reset_message(self):
|
|
124
|
-
self.message_id = None
|
|
125
|
-
self.msg = None
|
|
126
|
-
self.urls = {}
|
NikGapps/helper/web/__init__.py
DELETED
|
File without changes
|
NikGapps-3.29.dist-info/RECORD
DELETED
|
@@ -1,89 +0,0 @@
|
|
|
1
|
-
NikGapps/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
2
|
-
NikGapps/build_config.py,sha256=5eZU8NAmcgIsQCi0zRYywK4eS-yKG-GL9ZbXMtyCEKs,3245
|
|
3
|
-
NikGapps/cache.py,sha256=VBp5T4_DKGxdBtWrLfaBVXFTi4LeI24L-31CszLhVYs,4124
|
|
4
|
-
NikGapps/config_upload.py,sha256=0HE7txm73XXxat_cR0JDXWtQUmg1IYK_SktwJS6N34s,652
|
|
5
|
-
NikGapps/copy_repos.py,sha256=5YygTyuFW-DRnLPLGVcndQO6JqBW4JsN7O6cVWDQ4pE,1379
|
|
6
|
-
NikGapps/main.py,sha256=o10A9vjGN-C6kFf0BynssIybpuC8bRPon_49DWBUPYg,2652
|
|
7
|
-
NikGapps/overlay_control.py,sha256=0Yzkf2AIuIXpUsr-wqjB3rHkWICRRQVnBNRz8FnaSD0,3128
|
|
8
|
-
NikGapps/test.py,sha256=eXEeyM5xOpSKyUjb7OTP8BL37bqTE0eTKwnD1zT33rY,687
|
|
9
|
-
NikGapps/build/Build.py,sha256=WiEPKWs0tTYjece24IM8yVS3o-Mq0fD0fM1oyonoIwo,7643
|
|
10
|
-
NikGapps/build/NikGappsManager.py,sha256=aemhC-KadZgEn-dm6fSHWpmtwtkDb8rzyJTXTVI9JxY,20010
|
|
11
|
-
NikGapps/build/NikGappsOverlays.py,sha256=bbAIuIeE7HICdXRNeZJrvuW58_tUuDH9Du_1k6QPkxg,569
|
|
12
|
-
NikGapps/build/NikGappsPackages.py,sha256=samBrWZxNWVi5U28vgvfRNENLSdbK37oYo1oe2EI-HA,56928
|
|
13
|
-
NikGapps/build/PackageConstants.py,sha256=-vmkiAWXoD5Ba1lmqd71ueEkivY7ne0zXSU3dzCfYLc,15847
|
|
14
|
-
NikGapps/build/Release.py,sha256=FChsFVmrFndEuvNk5nc288KCkFONUJ7SwsphgejVER4,4846
|
|
15
|
-
NikGapps/build/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
16
|
-
NikGapps/config/NikGappsConfig.py,sha256=TSfwPWqxR4SE80lz-Jrn41yuTfSQcwi-jFh7iGmZFQQ,20411
|
|
17
|
-
NikGapps/config/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
18
|
-
NikGapps/helper/AppSet.py,sha256=vEIwk7NX1LQt71UJ3naEdsekmB_Ea0v8j0CQJkrSTEU,352
|
|
19
|
-
NikGapps/helper/Args.py,sha256=r1KIKs1x9DbIPwqBPmfIb3BBD5PvclvUDIv3D-fvy2A,4338
|
|
20
|
-
NikGapps/helper/Assets.py,sha256=tZ1EThupy-5TKCBHO3L_MOV-HV0F1gYMnYUf_lSBxbA,2967
|
|
21
|
-
NikGapps/helper/B64.py,sha256=WFtnOa1lNWvCQH_tjslRONZY8uAR6CwDm2-JZVn3vkM,939
|
|
22
|
-
NikGapps/helper/C.py,sha256=MvRvtXLu-gjsJIXcMH73CSdbf_R-_LrmqS-ZKOtLrCU,354
|
|
23
|
-
NikGapps/helper/Cmd.py,sha256=Fc4mywiDrJk9MI_Pw1Ow26gdpFL23D8EF2XbB1WmyBo,13540
|
|
24
|
-
NikGapps/helper/Config.py,sha256=iCTMt5Zd3g3Rq0Y14u4i5e2-hCv9SKcSl4xMJ1KhYJE,2606
|
|
25
|
-
NikGapps/helper/ConfigObj.py,sha256=ep9--o1SPgGXkElrjkf7hjF96KGSrmcQ9oGCpicN7D4,462
|
|
26
|
-
NikGapps/helper/FileOp.py,sha256=vPgXFBUdzDCo36OyHLCn8Jt62Fhf29_OPPwvh6kv7Sc,7842
|
|
27
|
-
NikGapps/helper/Json.py,sha256=pgkXXHMBGs0Pl6YjTXjDSqPdIXryWzl5c0YyR-2YPYQ,973
|
|
28
|
-
NikGapps/helper/P.py,sha256=S3dTkLQcOhS1SEE9WZVIVQUAVtSIGhO8TDH72SxWLb8,516
|
|
29
|
-
NikGapps/helper/Package.py,sha256=yYOm5kUf_a6HOo1UA78_qkm2b0pqn5RCPqLt4yR3B10,9236
|
|
30
|
-
NikGapps/helper/Statics.py,sha256=f3dKMazDrooV53FBApK-fUEPZe9Ehqwn3c4qdUKkazA,6789
|
|
31
|
-
NikGapps/helper/SystemStat.py,sha256=f5H5L8FOZVLe-7SKYdCtjnjVXsgaJ2Eo9c3akiYjJLM,4074
|
|
32
|
-
NikGapps/helper/T.py,sha256=tp2VAVfy_lbIJKIbYsGFtDck65BUo8JiHqOokpkpaKE,2898
|
|
33
|
-
NikGapps/helper/XmlOp.py,sha256=ZcaO6JSriNDiOvom6gs6XwucnFInjIXaigUiehgVpQY,1632
|
|
34
|
-
NikGapps/helper/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
35
|
-
NikGapps/helper/assets/addon.sh,sha256=qXwZ7GQVnOrkSNRcJTKycKRKkUa8kRA_iDwsKVDMHwY,9424
|
|
36
|
-
NikGapps/helper/assets/appsets.json,sha256=uHnfwG8wc_T-LoX-ZLQlLGUvUvE940vxQYuhPjRVGV4,6987
|
|
37
|
-
NikGapps/helper/assets/changelogs.yaml,sha256=J6TKXUre04OTOLdX3ks7AUkDUPz8wBcpQEweGGIX8HM,47787
|
|
38
|
-
NikGapps/helper/assets/config_versions.json,sha256=T7fJFW5uYUbiZphw7VP89T4F1WKK6EzG7q_33M8zrJA,102
|
|
39
|
-
NikGapps/helper/assets/customize.sh,sha256=bfYUgf1vd7GGUix4CPIhzn2eFN-DJh67IVIY6eMIrGo,10242
|
|
40
|
-
NikGapps/helper/assets/debloater.config,sha256=7Wx-WH93JSJHTYJCT5-y8TtPFFIzQgMKJcKJaf583bU,878
|
|
41
|
-
NikGapps/helper/assets/functions.sh,sha256=9jOHEM0cmkP0cMIj7KaNwXDOAG0WxOuIZganxu1YoFU,3859
|
|
42
|
-
NikGapps/helper/assets/gofile.sh,sha256=nfJdg6Acup2CCU-aqSR_no8TwE_sl2Vj9uUsUKR1HUM,312
|
|
43
|
-
NikGapps/helper/assets/header.sh,sha256=mAPz8aFdedVwkt35KoGQjv3vntH6trnfVbZwnDTA5Tc,481
|
|
44
|
-
NikGapps/helper/assets/installer.sh,sha256=-0Y_CYWqf-db9GWQOvAlcOi-HCMSzXJKjfW1M5zS-o4,257
|
|
45
|
-
NikGapps/helper/assets/magisk-update-binary.sh,sha256=gUrrCqs1Mc-K9PAftiyHWvpod3Z6wP7GgyA9rd60Ikk,2082
|
|
46
|
-
NikGapps/helper/assets/module.prop,sha256=218gUx_RERtgAPXKID5dCgdGgYvxZuA11_MV4jG5YrQ,235
|
|
47
|
-
NikGapps/helper/assets/mount.sh,sha256=G_rAktQyrUQJpQlCpihbCwWrDCJ71zNEZJ3ZCARA7MQ,6018
|
|
48
|
-
NikGapps/helper/assets/mtg_mount.sh,sha256=M6oYs7aLmMRBJbIq8ANmHxGrTIf7Jxe0GLsPq3SdmJ0,2697
|
|
49
|
-
NikGapps/helper/assets/nikgapps.config,sha256=807lgmt0MhX2hx18ZgM7idj5ZwCgyHkKJ4VtSKOD3ew,1575
|
|
50
|
-
NikGapps/helper/assets/nikgapps_functions.sh,sha256=SXzJEPTwYdhqPqgSAUx9Fa4UNPWSbNHVuUI31TGFAh8,57645
|
|
51
|
-
NikGapps/helper/assets/packages.json,sha256=e0lvJ9xd6VF1kLB5TkJ6SBl2eOcB_vCW3aXMo5FLYmA,17063
|
|
52
|
-
NikGapps/helper/assets/uninstaller.sh,sha256=Lob89FNVfpHFkdzUJFDwVQwlnc7WB_U-U28Y4fZgycE,870
|
|
53
|
-
NikGapps/helper/assets/unmount.sh,sha256=L8Lq7ZVfwazXaZp5Jkuce2pCGJCLZh57uj_BzFSDb-c,1107
|
|
54
|
-
NikGapps/helper/compression/CompOps.py,sha256=ZcmtU957E0BOU1yKQKXvwHNK3Xtp6BIyXBjjvz0Rq6E,1768
|
|
55
|
-
NikGapps/helper/compression/Export.py,sha256=9T9ul5euwLHXJEYfnniAydjBwGiUPrKWZbT-yVUxqWg,9237
|
|
56
|
-
NikGapps/helper/compression/Modes.py,sha256=ifHezKw2uiBgmY33_7es_ox-WBHENYxdRB11jwVLOvU,71
|
|
57
|
-
NikGapps/helper/compression/Tar.py,sha256=ooXkLJ1Ow0Ap9rhT_yMoOs7KalYA9CTC6-UVh9RpVsA,794
|
|
58
|
-
NikGapps/helper/compression/Zip.py,sha256=4dDQIFyyewdeBTnO6ZnLkJrY7AvAeMqwYWWAcIiuSuQ,3766
|
|
59
|
-
NikGapps/helper/compression/Zsh.py,sha256=BSyY63HSFpLFdMt3tKYS9oN8n8H-5Ulb1ZNO8jREJyo,481
|
|
60
|
-
NikGapps/helper/compression/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
61
|
-
NikGapps/helper/git/Git.py,sha256=rHK81xZMfLjH9uNBAnQWVW2a5StmHrmnNc6Lvh_mjiU,10272
|
|
62
|
-
NikGapps/helper/git/GitOperations.py,sha256=RingN1Ts_-FGihkFBFZr--ilWu2UGojKCdkXVdOozv0,6104
|
|
63
|
-
NikGapps/helper/git/GitStatics.py,sha256=Y63VP_oV4q97y3s3kJq4Z74HRNLBEf7Dli6ZWVn0jJQ,683
|
|
64
|
-
NikGapps/helper/git/GithubManager.py,sha256=MuD8wAh362SjiHVUJwU4Q450AUT9HF-dPqlywOa4AcQ,499
|
|
65
|
-
NikGapps/helper/git/GitlabManager.py,sha256=fpQaJ1peWjv2roJViT54jUHXF8JVvZndu9ntMZCFIgw,12862
|
|
66
|
-
NikGapps/helper/git/TestGit.py,sha256=_XCN2cRy_yWNtk0AZDTmsw_fSebR2Twy8uOYMG06q-A,2126
|
|
67
|
-
NikGapps/helper/git/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
68
|
-
NikGapps/helper/overlay/ApkMetaInfo.py,sha256=WyEMGl_7fM2KdudB4pIGUuYbjSstieKMpjflfUosi5U,1565
|
|
69
|
-
NikGapps/helper/overlay/Bool.py,sha256=1VfI30ytFvT5eTWHwRCePE2hVRb_X-lFYPhAxS6xVCM,372
|
|
70
|
-
NikGapps/helper/overlay/Library.py,sha256=o645SWDwrKY3pSW-e6deU4nK_csuUFeLmZiddozTGB8,41758
|
|
71
|
-
NikGapps/helper/overlay/Manifest.py,sha256=VE2JpiU2tnaLfdLVy_zJEJ0kQKlkFfbLCZwGDXsm-Lw,2448
|
|
72
|
-
NikGapps/helper/overlay/Overlay.py,sha256=kcLjHGqNd_qTA6_KfsFY9PJwC9TmxDlL-JHsCrojnYU,908
|
|
73
|
-
NikGapps/helper/overlay/Resources.py,sha256=bKWJEF2avl3j2ud390HQq9fRMMA8GKh9-KABdvim-Wg,1458
|
|
74
|
-
NikGapps/helper/overlay/String.py,sha256=nyCAD_dNfwHlOgj4zuKGGz71n20CLEKyZCgrVAmiX2I,469
|
|
75
|
-
NikGapps/helper/overlay/StringArray.py,sha256=DYPEAIdpicaJ3C08IYW6Q2tnTH6gUFXmu3KhQlHGY5g,563
|
|
76
|
-
NikGapps/helper/overlay/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
77
|
-
NikGapps/helper/upload/CmdUpload.py,sha256=UeEuNKJL1ORoSP35-NZYnCXS33QgNrPfXuPyC3oQozk,7589
|
|
78
|
-
NikGapps/helper/upload/GoFileUpload.py,sha256=Diy09Ql7Y-tQ5PKtWsMIc-F_IP5Cv09IgtocbwQAt8Y,2320
|
|
79
|
-
NikGapps/helper/upload/Upload.py,sha256=RZBUR6gPfuzn4h0x4pl5_Xu36fLPMm1Y0kiE-ZPGXE8,6195
|
|
80
|
-
NikGapps/helper/upload/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
81
|
-
NikGapps/helper/web/Requests.py,sha256=HaZUHe_xi_7LjPLOYBUwK3uwOYOcVaW2E1zazjw2wow,5502
|
|
82
|
-
NikGapps/helper/web/TelegramApi.py,sha256=XREdngh0vPvPMUOJsCJ3wSqXMFqS8q3qJUhmFMY6SH8,4743
|
|
83
|
-
NikGapps/helper/web/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
84
|
-
NikGapps-3.29.dist-info/LICENSE,sha256=OXLcl0T2SZ8Pmy2_dmlvKuetivmyPd5m1q-Gyd-zaYY,35149
|
|
85
|
-
NikGapps-3.29.dist-info/METADATA,sha256=yERkwRe5saktvUtJIv_7B9cZcMLxHY2CLP2EjcmjuOg,4134
|
|
86
|
-
NikGapps-3.29.dist-info/WHEEL,sha256=GV9aMThwP_4oNCtvEC2ec3qUYutgWeAzklro_0m4WJQ,91
|
|
87
|
-
NikGapps-3.29.dist-info/entry_points.txt,sha256=iKbeOiuELwTDu5kmQHrU9XBVASWRR6_TuRIRva2UnAY,286
|
|
88
|
-
NikGapps-3.29.dist-info/top_level.txt,sha256=CD7RpCb7bzjyvpQLt8hh2gU6X1wj3Z0NIErVkg-nJI4,9
|
|
89
|
-
NikGapps-3.29.dist-info/RECORD,,
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|