diff --git a/README.md b/README.md index ce70f0e..7b4b393 100644 --- a/README.md +++ b/README.md @@ -1,4 +1,5 @@ -# Anixarty patcher +![logo](./logo.png) +# Anixarts patcher ### Описание: Автоматический патчер для приложения anixart. @@ -8,11 +9,15 @@ ### Структура проекта: - `main.py` Главный файл +- `config.json` Глобальный конфиг +- `configs` Конфигурации патчей - `patches` Модули патчей +- `resources` Ресурсы, используемые патчами - `utils` Вспомогательные модули - `tools` Инструменты для модификации -- `resources` Ресурсы, используемые патчами -- `todo_drafts` Заметки для новых патчей(можно в любом формате) +- `original` Оригинальные apk файлы +- `decompiled` Декомпилированные файлы выбраного apk +- `modified` Модифицированные apk файлы и отчёт сборки ### Схема @@ -26,7 +31,7 @@ flowchart TD B f2@==> p[Декомпиляция] - subgraph p["Применение патчей по возрастанию приоритета"] + subgraph p["Применение патчей по убыванию приоритета"] C[Патч 1] --> D D[Патч 2] --...--> E[Патч n] end @@ -49,7 +54,7 @@ flowchart TD 1. Клонируйте репозиторий: ```sh - git clone https://git.wowlikon.tech/anixart-mod/patcher.git + git clone https://git.0x174.su/anixart-mod/patcher.git ``` Требования: - Python 3.8+ @@ -66,8 +71,8 @@ flowchart TD ``` Пароль от keystore нужно сохранить в `keystore.pass` для полностью автоматической сборки. -3. Измените настройки мода в файле `patches/config.json`. Если вы развернули свой [сервер](https://git.wowlikon.tech/anixart-mod/server), то измените `"server": "https://new.url"` -4. Поместите оригинальный apk файла anixart в папку `original` +3. Измените конфигурацию в файле `configs/change_server.json`. Если вы развернули свой [сервер](https://git.0x174.su/anixart-mod/server), то измените `"server": "https://new.url/patch"` на своё значение +4. Поместите оригинальный apk файл anixart в папку `original` 5. Запустите `main.py build` и выберите файл apk 6. Установите приложение на ваше устройство. @@ -76,6 +81,6 @@ flowchart TD Этот проект лицензирован под лицензией MIT. См. [LICENSE](./LICENSE) для получения подробной информации. ### Вклад в проект: -- [Kentai Radiquum](https://git.0x174.su/Radiquum) - Значительный вклад в развитие патчера, разработка [anix](https://github.com/AniX-org/AniX) и помощь с API [[GitHub](https://github.com/adiquum) | [Telegram](https://t.me/radiquum)] +- [wowlikon](https://git.0x174.su/wowlikon) - Создание и поддержка проекта [[GitHub](https://github.com/wowlikon) | [Telegram](https://t.me/wowlikon)] +- [Kentai Radiquum](https://git.0x174.su/Radiquum) - Значительный вклад в развитие патчера, разработка [anix](https://github.com/AniX-org/AniX) и помощь с API [[GitHub](https://github.com/radiquum) | [Telegram](https://t.me/radiquum)] - [Seele](https://git.0x174.su/seele_archive) - Оригинальные патчи в начале разработки основаны на модификации от Seele -- [ReCode Liner](https://git.0x174.su/ReCodeLiner) - Помощь в изучении моддинга приложения [[Telegram](https://t.me/recodius)] diff --git a/configs/change_server.json b/configs/change_server.json index 2fb8b89..88cbb60 100644 --- a/configs/change_server.json +++ b/configs/change_server.json @@ -1,4 +1,4 @@ { "enabled": false, - "server": "https://anixarty.0x174.su/patch" -} \ No newline at end of file + "server": "https://anixarts.0x174.su/patch" +} diff --git a/configs/settings_urls.json b/configs/settings_urls.json index 8573714..fa4e7df 100644 --- a/configs/settings_urls.json +++ b/configs/settings_urls.json @@ -29,10 +29,10 @@ { "title": "Помочь проекту", "description": "Вы можете помочь нам с идеями, написанием кода или тестированием.", - "url": "https://git.wowlikon.tech/anixart-mod", + "url": "https://git.0x174.su/anixart-mod", "icon": "@drawable/ic_custom_crown", "icon_space_reserved": "false" } ] } -} \ No newline at end of file +} diff --git a/configs/welcome.json b/configs/welcome.json index 0dde126..5079a32 100644 --- a/configs/welcome.json +++ b/configs/welcome.json @@ -1,6 +1,6 @@ { "enabled": true, - "title": "Anixarty", + "title": "Anixarts", "title_color": "#FF252525", "title_bg_color": "#FFCFF04D", "body_bg_color": "#FF252525", @@ -11,4 +11,4 @@ "link_text": "МЫ В TELEGRAM", "link_color": "#FFCFF04D", "link_url": "https://t.me/http_teapod" -} \ No newline at end of file +} diff --git a/logo.png b/logo.png new file mode 100644 index 0000000..33a3438 Binary files /dev/null and b/logo.png differ diff --git a/main.py b/main.py index 01c5ae7..197c1fd 100644 --- a/main.py +++ b/main.py @@ -21,7 +21,7 @@ from utils.tools import (CONFIGS, DECOMPILED, MODIFIED, ORIGINAL, PATCHES, console = Console() app = typer.Typer( - name="anixarty-patcher", + name="anixarts-patcher", help="Инструмент для модификации Anixarty APK", add_completion=False, ) @@ -62,7 +62,7 @@ def generate_report( return info lines = [] - lines.append(f"Anixarty {meta.version_name} (build {meta.version_code})") + lines.append(f"Anixarts {meta.version_name} (build {meta.version_code})") lines.append("") lines.append("## 📦 Информация о сборке") @@ -114,7 +114,7 @@ def generate_report( lines.append("---") lines.append("") lines.append( - "*Собрано с помощью [anixarty-patcher](https://git.0x174.su/anixart-mod/patcher)*" + "*Собрано с помощью [anixarts-patcher](https://git.0x174.su/anixart-mod/patcher)*" ) report_path.write_text("\n".join(lines), encoding="utf-8") @@ -467,7 +467,7 @@ def config(): @handle_errors def version(): """Показать версию инструмента""" - console.print(f"[cyan]anixarty-patcher[/cyan] v{__version__}") + console.print(f"[cyan]anixarts-patcher[/cyan] v{__version__}") if __name__ == "__main__": diff --git a/patches/change_server.py b/patches/change_server.py index 7cf1fdb..2cfcd30 100644 --- a/patches/change_server.py +++ b/patches/change_server.py @@ -2,7 +2,7 @@ "change_server": { "enabled": true, - "server": "https://anixarty.0x174.su/patch" + "server": "https://anixarts.0x174.su/patch" } """ @@ -20,7 +20,7 @@ from utils.config import PatchTemplate class Patch(PatchTemplate): priority: int = Field(frozen=True, exclude=True, default=0) - server: str = Field("https://anixarty.0x174.su/patch", description="URL сервера") + server: str = Field("https://anixarts.0x174.su/patch", description="URL сервера") def apply(self, base: Dict[str, Any]) -> bool: response = requests.get(self.server) # Получаем данные для патча diff --git a/patches/welcome.py b/patches/welcome.py index 42d4204..d570bcd 100644 --- a/patches/welcome.py +++ b/patches/welcome.py @@ -2,7 +2,7 @@ "welcome": { "enabled": true, - "title": "Anixarty", + "title": "Anixarts", "description": "Описание", "link_text": "МЫ В TELEGRAM", "link_url": "https://t.me/http_teapod", @@ -27,7 +27,7 @@ from utils.smali_parser import (find_and_replace_smali_line, get_smali_lines, class Patch(PatchTemplate): priority: int = Field(frozen=True, exclude=True, default=0) - title: str = Field("Anixarty", description="Заголовок") + title: str = Field("Anixarts", description="Заголовок") title_color: str = Field("#FF252525", description="Цвет заголовка") title_bg_color: str = Field("#FFCFF04D", description="Цвет фона заголовка") diff --git a/todo_drafts/todo1.txt b/todo_drafts/todo1.txt deleted file mode 100644 index 4f5b712..0000000 --- a/todo_drafts/todo1.txt +++ /dev/null @@ -1,27 +0,0 @@ -/res/layout/release_info.xml - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/utils/apk.py b/utils/apk.py index 60025a4..93f55f2 100644 --- a/utils/apk.py +++ b/utils/apk.py @@ -27,19 +27,19 @@ class APKMeta(BaseModel): @property def output_name(self) -> str: """Имя выходного файла""" - return f"Anixarty-v{self.safe_version}.apk" + return f"Anixarts-v{self.safe_version}.apk" @computed_field @property def aligned_name(self) -> str: """Имя выровненного файла""" - return f"Anixarty-v{self.safe_version}-aligned.apk" + return f"Anixarts-v{self.safe_version}-aligned.apk" @computed_field @property def signed_name(self) -> str: """Имя подписанного файла""" - return f"Anixarty-v{self.safe_version}-mod.apk" + return f"Anixarts-v{self.safe_version}-mod.apk" class SigningConfig(BaseModel):