From fe0ad7cf7063cef1c14ccc8819babb88a74d70a0 Mon Sep 17 00:00:00 2001 From: Kirill Zhumarin Date: Tue, 18 Aug 2026 00:52:00 +0300 Subject: [PATCH] Restructure software catalog --- AGENTS.md | 51 +++-- README.md | 176 ++++-------------- .../armdebugger/files/ArmDebugger-079.rar | 0 .../debugging}/armdebugger/index.yaml | 3 + .../development/debugging}/index.yaml | 2 +- catalog/development/firmware/index.yaml | 4 + .../firmware}/wsff/files/WSFF4.rar | 0 .../development/firmware}/wsff/index.yaml | 3 + .../development}/index.yaml | 3 +- .../patching}/ffpatch/files/ffpatch.rar | 0 .../development/patching}/ffpatch/index.yaml | 3 + .../patching}/filescomparer/files/fc_v1.2.rar | 0 .../patching}/filescomparer/index.yaml | 3 + .../patching}/hex2vkp/files/hex2vkp.zip | 0 .../development/patching}/hex2vkp/index.yaml | 3 + catalog/development/patching/index.yaml | 4 + .../patching}/slfc/files/slfc-chaos.exe | Bin .../patching}/slfc/files/slfc-vi-soft.exe | Bin .../development/patching}/slfc/index.yaml | 4 + {service => catalog}/drivers/index.yaml | 1 + .../drivers/pl-2303/files/PL-2303_patched.rar | 0 .../drivers/pl-2303/index.yaml | 9 +- {service => catalog}/flashers/index.yaml | 1 + .../flashers/v-klay/files/v_klay_setup.zip | 0 .../v-klay/files/v_klay_setup_v2152.rar | 0 .../v-klay/files/v_klay_setup_v25.zip | 0 .../v-klay/files/v_klay_setup_v272.zip | 0 .../v-klay/files/v_klay_update_v2112.rar | 0 .../flashers/v-klay/index.yaml | 12 ++ .../flashers/x65flasher/files/bsReader.zip | 0 .../flashers/x65flasher/files/px75v1.rar | 0 .../x65flasher/files/x65flasher-2103.rar | 0 .../flashers/x65flasher/index.yaml | 5 + index.yaml => catalog/index.yaml | 0 catalog/service/index.yaml | 5 + .../service}/joker/files/JokerSorceV0341.rar | 0 .../service}/joker/files/JokerV0295.rar | 0 .../service}/joker/index.yaml | 17 +- .../files/SiemensEEPROMtool315plus.rar | 0 .../service}/siemens-eeprom-tool/index.yaml | 3 + .../service}/winswup/files/WSMPlus2.rar | 0 .../winswup/files/winswup-0.91-pre1.7z | 0 .../winswup/files/winswup-0.91-pre2.7z | 0 .../service}/winswup/files/winswup-0.91.7z | 0 .../winswup/files/winswup-0.95-amd32.7z | 0 .../service}/winswup/files/winswup-0.95.7z | 0 .../service}/winswup/files/winswup-0.97.7z | 0 .../winswup/files/winswup-0.98-pre.7z | 0 .../service}/winswup/files/winswup-0.98.7z | 0 .../service}/winswup/files/winswup-1.04.7z | 0 .../service}/winswup/files/winswup-1.23.7z | 0 .../service}/winswup/files/winswup-1.27.7z | 0 .../service}/winswup/files/winswup-1.28.7z | 0 .../service}/winswup/files/winswup-1.30.7z | 0 .../service}/winswup/files/winswup-1.34.7z | 0 .../service}/winswup/files/winswup-1.35.7z | 0 .../service}/winswup/files/winswup-1.40.7z | 0 .../service}/winswup/files/winswup-1.44.7z | 0 .../service}/winswup/files/winswup-3.002.7z | 0 .../service}/winswup/files/winswup-3.05.7z | 0 .../service}/winswup/files/winswup-3.17.7z | 0 .../service}/winswup/files/winswup-3.19.7z | 0 .../service}/winswup/files/winswup-3.20.rar | 0 .../service}/winswup/files/winswup-4.07.7z | 0 .../service}/winswup/files/winswup-4.14p3.7z | 0 .../service}/winswup/files/winswup-4.20.7z | 0 .../service}/winswup/index.yaml | 37 +++- .../x65-papua-utils/files/AllBugSGold.rar | 0 .../service}/x65-papua-utils/files/SWP2.rar | 0 .../service}/x65-papua-utils/files/SWP3.rar | 0 .../service}/x65-papua-utils/files/SWPEXE.rar | 0 .../files/x65PapuaUtilsV036.rar | 0 .../files/x65PapuaUtilsV038.rar | 0 .../files/x65PapuaUtilsV041.rar | 0 .../files/x65PapuaUtilsV043.rar | 0 .../files/x65PapuaUtilsV044.rar | 0 .../files/x65PapuaUtilsV045.rar | 0 .../files/x65PapuaUtilsV046.rar | 0 .../files/x65PapuaUtilsV047.rar | 0 .../files/x65PapuaUtilsV048.rar | 0 .../files/x65PapuaUtilsV050.rar | 0 .../files/x65PapuaUtilsV051.rar | 0 .../files/x65PapuaUtilsV054.rar | 0 .../files/x65PapuaUtilsV055.rar | 0 .../files/x65PapuaUtilsV056.rar | 0 .../files/x65PapuaUtilsV060.rar | 0 .../files/x65PapuaUtilsV062.rar | 0 .../files/x65PapuaUtilsV064.rar | 0 .../files/x65PapuaUtilsV065.rar | 0 .../files/x65PapuaUtilsV066.rar | 0 .../files/x65PapuaUtilsV067c.rar | 0 .../files/x65PapuaUtilsV068.rar | 0 .../files/x65PapuaUtilsV069.rar | 0 .../files/x65PapuaUtilsV070.rar | 0 .../files/x65PapuaUtilsV074.rar | 0 .../files/x65PapuaUtilsV075.rar | 0 .../files/x65PapuaUtilsV076b.rar | 0 .../files/x65PapuaUtilsV077.rar | 0 .../files/x65PapuaUtilsV078.rar | 0 .../files/x65PapuaUtilsV079d.rar | 0 .../files/x65PapuaUtilsV111b.rar | 0 .../files/x65PapuaUtilsV111c_rus.rar | 0 .../service}/x65-papua-utils/index.yaml | 76 +++++++- catalog/utilities/index.yaml | 5 + .../utilities}/midletsigner/files/JRE131L.rar | 0 .../midletsigner/files/MidletSigner5.rar | 0 .../utilities}/midletsigner/index.yaml | 4 + .../utilities}/vmo2wav/files/vmo2wav.zip | 0 .../utilities}/vmo2wav/index.yaml | 3 + development/java-tools/index.yaml | 4 - development/patch-tools/index.yaml | 4 - multimedia/audio-tools/index.yaml | 4 - multimedia/index.yaml | 4 - package.json | 4 +- schema/index.schema.json | 21 ++- scripts/{fillSha256.ts => fillMetadata.ts} | 108 ++++++++--- scripts/printTree.ts | 46 +++-- service/firmware-tools/index.yaml | 6 - service/index.yaml | 4 - service/repair-tools/index.yaml | 6 - 120 files changed, 393 insertions(+), 255 deletions(-) rename {development/debuggers => catalog/development/debugging}/armdebugger/files/ArmDebugger-079.rar (100%) rename {development/debuggers => catalog/development/debugging}/armdebugger/index.yaml (91%) rename {development/debuggers => catalog/development/debugging}/index.yaml (86%) create mode 100644 catalog/development/firmware/index.yaml rename {service/firmware-tools => catalog/development/firmware}/wsff/files/WSFF4.rar (100%) rename {service/firmware-tools => catalog/development/firmware}/wsff/index.yaml (76%) rename {development => catalog/development}/index.yaml (80%) rename {development/patch-tools => catalog/development/patching}/ffpatch/files/ffpatch.rar (100%) rename {development/patch-tools => catalog/development/patching}/ffpatch/index.yaml (87%) rename {development/patch-tools => catalog/development/patching}/filescomparer/files/fc_v1.2.rar (100%) rename {development/patch-tools => catalog/development/patching}/filescomparer/index.yaml (85%) rename {development/patch-tools => catalog/development/patching}/hex2vkp/files/hex2vkp.zip (100%) rename {development/patch-tools => catalog/development/patching}/hex2vkp/index.yaml (89%) create mode 100644 catalog/development/patching/index.yaml rename {development/patch-tools => catalog/development/patching}/slfc/files/slfc-chaos.exe (100%) rename {development/patch-tools => catalog/development/patching}/slfc/files/slfc-vi-soft.exe (100%) rename {development/patch-tools => catalog/development/patching}/slfc/index.yaml (85%) rename {service => catalog}/drivers/index.yaml (94%) rename {service => catalog}/drivers/pl-2303/files/PL-2303_patched.rar (100%) rename {service => catalog}/drivers/pl-2303/index.yaml (54%) rename {service => catalog}/flashers/index.yaml (94%) rename {service => catalog}/flashers/v-klay/files/v_klay_setup.zip (100%) rename {service => catalog}/flashers/v-klay/files/v_klay_setup_v2152.rar (100%) rename {service => catalog}/flashers/v-klay/files/v_klay_setup_v25.zip (100%) rename {service => catalog}/flashers/v-klay/files/v_klay_setup_v272.zip (100%) rename {service => catalog}/flashers/v-klay/files/v_klay_update_v2112.rar (100%) rename {service => catalog}/flashers/v-klay/index.yaml (86%) rename {service => catalog}/flashers/x65flasher/files/bsReader.zip (100%) rename {service => catalog}/flashers/x65flasher/files/px75v1.rar (100%) rename {service => catalog}/flashers/x65flasher/files/x65flasher-2103.rar (100%) rename {service => catalog}/flashers/x65flasher/index.yaml (88%) rename index.yaml => catalog/index.yaml (100%) create mode 100644 catalog/service/index.yaml rename {service/repair-tools => catalog/service}/joker/files/JokerSorceV0341.rar (100%) rename {service/repair-tools => catalog/service}/joker/files/JokerV0295.rar (100%) rename {service/repair-tools => catalog/service}/joker/index.yaml (81%) rename {service/repair-tools => catalog/service}/siemens-eeprom-tool/files/SiemensEEPROMtool315plus.rar (100%) rename {service/repair-tools => catalog/service}/siemens-eeprom-tool/index.yaml (86%) rename {service/firmware-tools => catalog/service}/winswup/files/WSMPlus2.rar (100%) rename {service/firmware-tools => catalog/service}/winswup/files/winswup-0.91-pre1.7z (100%) rename {service/firmware-tools => catalog/service}/winswup/files/winswup-0.91-pre2.7z (100%) rename {service/firmware-tools => catalog/service}/winswup/files/winswup-0.91.7z (100%) rename {service/firmware-tools => catalog/service}/winswup/files/winswup-0.95-amd32.7z (100%) rename {service/firmware-tools => catalog/service}/winswup/files/winswup-0.95.7z (100%) rename {service/firmware-tools => catalog/service}/winswup/files/winswup-0.97.7z (100%) rename {service/firmware-tools => catalog/service}/winswup/files/winswup-0.98-pre.7z (100%) rename {service/firmware-tools => catalog/service}/winswup/files/winswup-0.98.7z (100%) rename {service/firmware-tools => catalog/service}/winswup/files/winswup-1.04.7z (100%) rename {service/firmware-tools => catalog/service}/winswup/files/winswup-1.23.7z (100%) rename {service/firmware-tools => catalog/service}/winswup/files/winswup-1.27.7z (100%) rename {service/firmware-tools => catalog/service}/winswup/files/winswup-1.28.7z (100%) rename {service/firmware-tools => catalog/service}/winswup/files/winswup-1.30.7z (100%) rename {service/firmware-tools => catalog/service}/winswup/files/winswup-1.34.7z (100%) rename {service/firmware-tools => catalog/service}/winswup/files/winswup-1.35.7z (100%) rename {service/firmware-tools => catalog/service}/winswup/files/winswup-1.40.7z (100%) rename {service/firmware-tools => catalog/service}/winswup/files/winswup-1.44.7z (100%) rename {service/firmware-tools => catalog/service}/winswup/files/winswup-3.002.7z (100%) rename {service/firmware-tools => catalog/service}/winswup/files/winswup-3.05.7z (100%) rename {service/firmware-tools => catalog/service}/winswup/files/winswup-3.17.7z (100%) rename {service/firmware-tools => catalog/service}/winswup/files/winswup-3.19.7z (100%) rename {service/firmware-tools => catalog/service}/winswup/files/winswup-3.20.rar (100%) rename {service/firmware-tools => catalog/service}/winswup/files/winswup-4.07.7z (100%) rename {service/firmware-tools => catalog/service}/winswup/files/winswup-4.14p3.7z (100%) rename {service/firmware-tools => catalog/service}/winswup/files/winswup-4.20.7z (100%) rename {service/firmware-tools => catalog/service}/winswup/index.yaml (89%) rename {service/repair-tools => catalog/service}/x65-papua-utils/files/AllBugSGold.rar (100%) rename {service/repair-tools => catalog/service}/x65-papua-utils/files/SWP2.rar (100%) rename {service/repair-tools => catalog/service}/x65-papua-utils/files/SWP3.rar (100%) rename {service/repair-tools => catalog/service}/x65-papua-utils/files/SWPEXE.rar (100%) rename {service/repair-tools => catalog/service}/x65-papua-utils/files/x65PapuaUtilsV036.rar (100%) rename {service/repair-tools => catalog/service}/x65-papua-utils/files/x65PapuaUtilsV038.rar (100%) rename {service/repair-tools => catalog/service}/x65-papua-utils/files/x65PapuaUtilsV041.rar (100%) rename {service/repair-tools => catalog/service}/x65-papua-utils/files/x65PapuaUtilsV043.rar (100%) rename {service/repair-tools => catalog/service}/x65-papua-utils/files/x65PapuaUtilsV044.rar (100%) rename {service/repair-tools => catalog/service}/x65-papua-utils/files/x65PapuaUtilsV045.rar (100%) rename {service/repair-tools => catalog/service}/x65-papua-utils/files/x65PapuaUtilsV046.rar (100%) rename {service/repair-tools => catalog/service}/x65-papua-utils/files/x65PapuaUtilsV047.rar (100%) rename {service/repair-tools => catalog/service}/x65-papua-utils/files/x65PapuaUtilsV048.rar (100%) rename {service/repair-tools => catalog/service}/x65-papua-utils/files/x65PapuaUtilsV050.rar (100%) rename {service/repair-tools => catalog/service}/x65-papua-utils/files/x65PapuaUtilsV051.rar (100%) rename {service/repair-tools => catalog/service}/x65-papua-utils/files/x65PapuaUtilsV054.rar (100%) rename {service/repair-tools => catalog/service}/x65-papua-utils/files/x65PapuaUtilsV055.rar (100%) rename {service/repair-tools => catalog/service}/x65-papua-utils/files/x65PapuaUtilsV056.rar (100%) rename {service/repair-tools => catalog/service}/x65-papua-utils/files/x65PapuaUtilsV060.rar (100%) rename {service/repair-tools => catalog/service}/x65-papua-utils/files/x65PapuaUtilsV062.rar (100%) rename {service/repair-tools => catalog/service}/x65-papua-utils/files/x65PapuaUtilsV064.rar (100%) rename {service/repair-tools => catalog/service}/x65-papua-utils/files/x65PapuaUtilsV065.rar (100%) rename {service/repair-tools => catalog/service}/x65-papua-utils/files/x65PapuaUtilsV066.rar (100%) rename {service/repair-tools => catalog/service}/x65-papua-utils/files/x65PapuaUtilsV067c.rar (100%) rename {service/repair-tools => catalog/service}/x65-papua-utils/files/x65PapuaUtilsV068.rar (100%) rename {service/repair-tools => catalog/service}/x65-papua-utils/files/x65PapuaUtilsV069.rar (100%) rename {service/repair-tools => catalog/service}/x65-papua-utils/files/x65PapuaUtilsV070.rar (100%) rename {service/repair-tools => catalog/service}/x65-papua-utils/files/x65PapuaUtilsV074.rar (100%) rename {service/repair-tools => catalog/service}/x65-papua-utils/files/x65PapuaUtilsV075.rar (100%) rename {service/repair-tools => catalog/service}/x65-papua-utils/files/x65PapuaUtilsV076b.rar (100%) rename {service/repair-tools => catalog/service}/x65-papua-utils/files/x65PapuaUtilsV077.rar (100%) rename {service/repair-tools => catalog/service}/x65-papua-utils/files/x65PapuaUtilsV078.rar (100%) rename {service/repair-tools => catalog/service}/x65-papua-utils/files/x65PapuaUtilsV079d.rar (100%) rename {service/repair-tools => catalog/service}/x65-papua-utils/files/x65PapuaUtilsV111b.rar (100%) rename {service/repair-tools => catalog/service}/x65-papua-utils/files/x65PapuaUtilsV111c_rus.rar (100%) rename {service/repair-tools => catalog/service}/x65-papua-utils/index.yaml (85%) create mode 100644 catalog/utilities/index.yaml rename {development/java-tools => catalog/utilities}/midletsigner/files/JRE131L.rar (100%) rename {development/java-tools => catalog/utilities}/midletsigner/files/MidletSigner5.rar (100%) rename {development/java-tools => catalog/utilities}/midletsigner/index.yaml (89%) rename {multimedia/audio-tools => catalog/utilities}/vmo2wav/files/vmo2wav.zip (100%) rename {multimedia/audio-tools => catalog/utilities}/vmo2wav/index.yaml (85%) delete mode 100644 development/java-tools/index.yaml delete mode 100644 development/patch-tools/index.yaml delete mode 100644 multimedia/audio-tools/index.yaml delete mode 100644 multimedia/index.yaml rename scripts/{fillSha256.ts => fillMetadata.ts} (66%) delete mode 100644 service/firmware-tools/index.yaml delete mode 100644 service/index.yaml delete mode 100644 service/repair-tools/index.yaml diff --git a/AGENTS.md b/AGENTS.md index 946361d..2e46390 100644 --- a/AGENTS.md +++ b/AGENTS.md @@ -5,10 +5,10 @@ ## Структура -- Корень репозитория является корнем каталога; папку `catalog` создавать не - нужно. -- Каждая категория и каждая программа находятся в собственной папке и содержат - ровно один файл `index.yaml`. +- Все категории и программы находятся внутри корневой папки `catalog`. + `catalog/index.yaml` описывает корневую категорию. +- Каждая категория и каждая программа внутри `catalog` находятся в собственной + папке и содержат ровно один файл `index.yaml`. - Вложенность категорий не ограничена. Дочерние категории и программы определяются по файловой структуре и не перечисляются в индексе категории. - Имя папки — стабильный идентификатор. Используй строчные латинские буквы, @@ -28,9 +28,14 @@ format: 1 type: category name: Русское название категории +order: -10 description: Описание категории на русском языке. ``` +`order` — необязательное целое число для сортировки соседних категорий. Меньшее +значение выводится раньше, отсутствие поля равнозначно `order: 0`. При равных +значениях категории сортируются по названию. Располагай `order` после `name`. + ## YAML программы Поля программы располагай в следующем порядке: @@ -38,14 +43,16 @@ description: Описание категории на русском языке. 1. `format: 1` — обязательное поле. 2. `type: program` — обязательное поле. 3. `name` — обязательное официальное название программы. -4. `description` — обязательное подробное описание на русском языке в формате +4. `summary` — обязательное короткое описание программы на русском языке. +5. `description` — обязательное подробное описание на русском языке в формате Markdown. -5. `homepage` — необязательный URL домашней страницы. -6. `source` — необязательный URL исходного кода. -7. `screenshots` — обязательный массив путей; используй `[]`, если изображений +6. `homepage` — необязательный URL домашней страницы. +7. `source` — необязательный URL исходного кода. +8. `author` — необязательное имя автора или название организации-разработчика. +9. `screenshots` — обязательный массив путей; используй `[]`, если изображений нет. -8. `versions` — обязательный непустой массив версий. -9. `additional_files` — необязательный массив файлов, не привязанных к версии. +10. `versions` — обязательный непустой массив версий. +11. `additional_files` — необязательный массив файлов, не привязанных к версии. Новые версии добавляй в начало `versions`, от новых к старым. Каждая версия имеет такой вид: @@ -58,6 +65,7 @@ description: Описание категории на русском языке. - path: files/program-1.2.0.zip description: Назначение файла на русском языке platform: win32 + size: 123456 sha256: 0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef ``` @@ -75,6 +83,19 @@ description: Описание категории на русском языке. `win64`, `dos`, `java` или `j2me`. Для Windows разрядность входит в название платформы; отдельное поле `architecture` не используется. +Поля файла располагай в порядке `path`, `description`, `platform`, `size`, +`sha256`. `size` содержит размер файла в байтах. Поля `size` и `sha256` +заполняются командой `pnpm fill-metadata` и вручную не редактируются. + +### Короткое описание + +`summary` выводится рядом с названием программы в списке категории. Напиши +естественное краткое описание, по которому понятно, что это за программа, для +чего она нужна и с какими телефонами или форматами работает. Опирайся на полное +описание и технический смысл программы, а не на единый шаблон. Не используй +оценочные усилители вроде «комплексная», «универсальная», «мощная» или +«полноценная». + Файлы, которые подходят ко всем версиям или существуют отдельно от релиза, помещай в `additional_files`, а не внутрь случайной версии: @@ -110,7 +131,8 @@ additional_files: - Абсолютные пути, `..` и обратная косая черта запрещены. - Каждый путь из YAML должен указывать на существующий файл. - Один файл нельзя одновременно указывать в `versions` и `additional_files`. -- Для каждого добавленного файла вычисляй и указывай SHA-256 в нижнем регистре. +- Для каждого добавленного файла указывай размер в байтах и SHA-256 в нижнем + регистре. - Архивы должны проходить через Git LFS согласно `.gitattributes`. Остальные файлы хранятся в обычном Git. @@ -130,9 +152,10 @@ additional_files: 1. Проверь синтаксис всех затронутых `index.yaml` безопасным YAML-парсером. 2. Проверь их по `schema/index.schema.json` валидатором JSON Schema Draft 2020-12, если он доступен. -3. Убедись, что все пути существуют и их SHA-256 совпадает с метаданными. - Для заполнения и обновления сумм используй `pnpm sha256 [путь]`, для проверки - без изменения файлов — `pnpm sha256:check [путь]`. +3. Убедись, что все пути существуют, а их размеры и SHA-256 совпадают с + метаданными. Для заполнения и обновления используй + `pnpm fill-metadata [путь]`, для проверки без изменения файлов — + `pnpm fill-metadata:check [путь]`. 4. Для каждого нового архива выполни `git check-attr filter -- <путь>` и убедись, что значение равно `lfs`. 5. Выполни `git diff --check`. diff --git a/README.md b/README.md index b6054a3..8ca4be5 100644 --- a/README.md +++ b/README.md @@ -1,182 +1,84 @@ -# Каталог программ +# Каталог программ Siemens -Репозиторий хранит дистрибутивы программ и их метаданные. Все пользовательские -названия и описания пишутся на русском языке. Официальные названия программ, -версии, имена платформ и другие технические значения переводить не нужно. +Дистрибутивы хранятся в `catalog`, формат метаданных описан в +`schema/index.schema.json`. Названия и описания — на русском языке. ## Структура -Корень репозитория одновременно является корнем каталога программ. Вложенность -категорий не ограничена. Имя папки служит стабильным машиночитаемым -идентификатором: используйте строчные латинские буквы, цифры, дефис и -подчёркивание. - ```text -./ +catalog/ ├── index.yaml -├── schema/ -│ └── index.schema.json -└── system/ +└── category/ ├── index.yaml - └── file-managers/ + └── program/ ├── index.yaml - └── example-program/ - ├── index.yaml - ├── img/ - │ └── screenshot.png - └── files/ - ├── example-program-1.0.0.zip - ├── example-program-1.1.0.zip - └── manual.pdf + ├── files/ + └── img/ ``` -Каждая категория и каждая программа содержит ровно один `index.yaml`: - -- `type: category` означает категорию; рядом могут находиться подкатегории и - программы; -- `type: program` означает программу; все её версии описываются в этом же - файле; -- `img` и `files` — зарезервированные папки внутри программы. - -Папки без `index.yaml`, например корневая `schema`, не входят в дерево -категорий. - -Список дочерних элементов категории не дублируется в YAML: он определяется по -вложенным папкам. Благодаря этому перемещение программы не требует правки -родительских индексов. +Каждая категория и программа имеет один `index.yaml`. Дочерние элементы +определяются по папкам и не перечисляются в YAML. Все версии программы находятся +в одном индексном файле. ## Категория ```yaml format: 1 type: category -name: Системные программы -description: Утилиты для настройки и обслуживания устройства. +name: Название категории +order: -10 +description: Описание категории. ``` +`order` необязателен; меньшее значение выводится раньше. + ## Программа ```yaml format: 1 type: program -name: Пример программы +name: Название программы +summary: Короткое назначение программы для списка категории. description: |- - Краткое описание назначения и возможностей программы. - - Возможности: - - первая возможность; - - вторая возможность. -homepage: https://example.org/program -source: https://github.com/example/program + Полное описание в Markdown. +homepage: https://example.org +source: https://github.com/example/project +author: Автор screenshots: - img/screenshot.png versions: - - version: "1.1.0" + - version: "1.2.0" status: current released: "2007-08-14" files: - - path: files/example-program-1.1.0.zip - description: Дистрибутив программы + - path: files/program-1.2.0.zip + description: Дистрибутив platform: win32 + size: 123456 sha256: 0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef - - version: "1.0.0" - files: - - path: files/example-program-1.0.0.zip additional_files: - path: files/manual.pdf description: Руководство пользователя ``` -Обязательные поля программы: `format`, `type`, `name`, `description`, -`screenshots`, `versions`. Поля `homepage`, `source` и `additional_files` -необязательны. +Обязательные поля программы: `format`, `type`, `name`, `summary`, `description`, +`screenshots`, `versions`. Значения `platform`: `win32`, `win64`, `dos`, `java`, +`j2me`. Значения `status`: `current`, `archived`. -Поле `description` содержит Markdown. Для содержательного описания используйте -абзацы и списки внутри литерального YAML-блока `|-`. +Файлы версий указываются в `versions[].files`, общие файлы — в +`additional_files`. Пути файлов начинаются с `files/`, скриншотов — с `img/`. +`size` содержит размер в байтах. Архивы хранятся через Git LFS. -Все файлы программы хранятся в её папке `files`. Версионные файлы перечислены -в `versions[].files`, а не зависящие от версии — в `additional_files`. Один и -тот же файл не следует указывать в обоих местах. Новые версии добавляются в -начало массива `versions`, от новых к старым. - -Необязательное поле файла `platform` использует короткие машиночитаемые -значения: `win32`, `win64`, `dos`, `java` или `j2me`. Отдельного поля -архитектуры нет: разрядность Windows уже включена в `win32` или `win64`. - -Необязательное поле `status` принимает значение `current` для актуальной версии -или `archived` для версии, оставленной в каталоге как архивная. Если программа -использует статусы, они указываются у всех её версий. - -`description` версии используется только для существенных исключений, которые -нельзя выразить номером версии или описанием файла. Обычный список изменений в -индекс не переносится. - -Скриншоты хранятся в `img`; пути всегда начинаются с `img/`. Если скриншотов -нет, указывается пустой массив: `screenshots: []`. - -## Правила формата - -- Кодировка всех YAML-файлов — UTF-8, окончания строк — LF. -- `format` — версия формата метаданных. Текущее значение: `1`. -- Неизвестные поля запрещены: расширение формата требует изменения схемы. -- Все пути задаются относительно папки программы. Абсолютные пути, `..` и - обратная косая черта запрещены. -- Даты записываются строкой `YYYY-MM-DD` и берутся в кавычки. -- URL используют только `http` или `https`. -- `sha256`, если указан, содержит 64 шестнадцатеричных символа в нижнем - регистре. -- Массивы не должны содержать дубликаты. -- Описания программы, версии и файла пишутся на русском языке. - -Архивы хранятся через Git LFS, остальные файлы — как обычные объекты Git. - -## Заполнение SHA-256 - -Для установки зависимостей используется pnpm: +## Команды ```shell pnpm install -``` - -Команда вычисляет контрольные суммы всех файлов из `versions` и -`additional_files`, после чего добавляет или обновляет поля `sha256`: - -```shell -pnpm sha256 -``` - -Можно ограничить обход одной программой, категорией или конкретным индексом: - -```shell -pnpm sha256 service/repair-tools/joker -pnpm sha256 service/repair-tools/joker/index.yaml -``` - -Для проверки без изменения YAML используется отдельная команда: - -```shell -pnpm sha256:check -``` - -## Дерево каталога - -Дерево категорий и программ строится по файловой структуре и названиям из -`index.yaml`: - -```shell +pnpm fill-metadata +pnpm fill-metadata:check pnpm tree +pnpm typecheck ``` -Можно вывести только выбранную ветку, добавить пути каталогов или версии -программ: - -```shell -pnpm tree service/repair-tools -pnpm tree --paths -pnpm tree --versions -``` - -Формальная JSON Schema находится в -[`schema/index.schema.json`](schema/index.schema.json). Она проверяет структуру -и значения `index.yaml`; соответствие русского текста проверяется при ревью, -поскольку название продукта может состоять из латинских символов. +`fill-metadata` заполняет `size` и `sha256`. Команда принимает путь к программе, +категории или `index.yaml`. `tree` принимает путь и флаги `--paths`, +`--versions`. diff --git a/development/debuggers/armdebugger/files/ArmDebugger-079.rar b/catalog/development/debugging/armdebugger/files/ArmDebugger-079.rar similarity index 100% rename from development/debuggers/armdebugger/files/ArmDebugger-079.rar rename to catalog/development/debugging/armdebugger/files/ArmDebugger-079.rar diff --git a/development/debuggers/armdebugger/index.yaml b/catalog/development/debugging/armdebugger/index.yaml similarity index 91% rename from development/debuggers/armdebugger/index.yaml rename to catalog/development/debugging/armdebugger/index.yaml index ee05b45..51a9154 100644 --- a/development/debuggers/armdebugger/index.yaml +++ b/catalog/development/debugging/armdebugger/index.yaml @@ -1,6 +1,7 @@ format: 1 type: program name: ArmDebugger +summary: Отладчик ARM/Thumb-кода для телефонов Siemens 65/70/75-й серии. description: |- Отладчик для телефонов Siemens 65/70/75-й серии. @@ -18,6 +19,7 @@ description: |- - дамп памяти в файл, вызов функций flash с параметрами и hex/bin/dec калькулятор. homepage: https://web.archive.org/web/20130813164842/http://chaos.allsiemens.com/software.html +author: Chaos screenshots: [] versions: - version: "0.7.9" @@ -26,4 +28,5 @@ versions: - path: files/ArmDebugger-079.rar description: Отладчик, краткое руководство и примеры для Keil ARM Tools platform: win32 + size: 439518 sha256: 94e089e35a4733c97890c34c14d065007332057f5b11693a7f94cca7245251ad diff --git a/development/debuggers/index.yaml b/catalog/development/debugging/index.yaml similarity index 86% rename from development/debuggers/index.yaml rename to catalog/development/debugging/index.yaml index b333795..18a44c1 100644 --- a/development/debuggers/index.yaml +++ b/catalog/development/debugging/index.yaml @@ -1,4 +1,4 @@ format: 1 type: category -name: Отладчики +name: Отладка description: Программы для анализа памяти, машинного кода и выполнения программ. diff --git a/catalog/development/firmware/index.yaml b/catalog/development/firmware/index.yaml new file mode 100644 index 0000000..151a7d7 --- /dev/null +++ b/catalog/development/firmware/index.yaml @@ -0,0 +1,4 @@ +format: 1 +type: category +name: Анализ прошивок +description: Анализ структуры и распаковка файлов прошивок и сервисных обновлений. diff --git a/service/firmware-tools/wsff/files/WSFF4.rar b/catalog/development/firmware/wsff/files/WSFF4.rar similarity index 100% rename from service/firmware-tools/wsff/files/WSFF4.rar rename to catalog/development/firmware/wsff/files/WSFF4.rar diff --git a/service/firmware-tools/wsff/index.yaml b/catalog/development/firmware/wsff/index.yaml similarity index 76% rename from service/firmware-tools/wsff/index.yaml rename to catalog/development/firmware/wsff/index.yaml index 0ded6a3..69ab6b6 100644 --- a/service/firmware-tools/wsff/index.yaml +++ b/catalog/development/firmware/wsff/index.yaml @@ -1,10 +1,12 @@ format: 1 type: program name: WSFF +summary: Программа для анализа и распаковки сервисных прошивок Siemens WinSwup. description: |- Утилита для анализа структуры и распаковки баз сервисных прошивок Siemens WinSwup. homepage: https://web.archive.org/web/20130825050857/http://papuas.allsiemens.com/ +author: Papuas screenshots: [] versions: - version: "4" @@ -13,4 +15,5 @@ versions: - path: files/WSFF4.rar description: Программа WSFF4 platform: win32 + size: 162002 sha256: e63fe5b665dad8322dbfab081b7c41bc0e40520d922d9a7d8166c5b53fe1b2c1 diff --git a/development/index.yaml b/catalog/development/index.yaml similarity index 80% rename from development/index.yaml rename to catalog/development/index.yaml index f6aadd2..f69662a 100644 --- a/development/index.yaml +++ b/catalog/development/index.yaml @@ -1,4 +1,5 @@ format: 1 type: category -name: Средства разработки +name: Разработка +order: -10 description: Инструменты для исследования и разработки программного обеспечения телефонов. diff --git a/development/patch-tools/ffpatch/files/ffpatch.rar b/catalog/development/patching/ffpatch/files/ffpatch.rar similarity index 100% rename from development/patch-tools/ffpatch/files/ffpatch.rar rename to catalog/development/patching/ffpatch/files/ffpatch.rar diff --git a/development/patch-tools/ffpatch/index.yaml b/catalog/development/patching/ffpatch/index.yaml similarity index 87% rename from development/patch-tools/ffpatch/index.yaml rename to catalog/development/patching/ffpatch/index.yaml index fd9ff32..10af844 100644 --- a/development/patch-tools/ffpatch/index.yaml +++ b/catalog/development/patching/ffpatch/index.yaml @@ -1,6 +1,7 @@ format: 1 type: program name: FFPatch +summary: Программа для сравнения образов FullFlash и работы с патчами VKP. description: |- Программа для сравнения двух файлов fullflash, сохранения найденных отличий в виде патча VKP и поиска уже установленных патчей в образе flash-памяти. @@ -13,6 +14,7 @@ description: |- - исключение заданных диапазонов адресов из поиска и сравнения; - сохранение настроек фильтрации адресов. homepage: https://web.archive.org/web/20130813164842/http://vi-soft.com.ua/ +author: Александр Яблочкин screenshots: [] versions: - version: "0.4.2" @@ -20,4 +22,5 @@ versions: - path: files/ffpatch.rar description: Программа FFPatch и руководство пользователя platform: win32 + size: 79635 sha256: 6fef324ef0e22d97dc550e6bb20acd1a5edb4c6d773784f1edb2ad3ad854aac6 diff --git a/development/patch-tools/filescomparer/files/fc_v1.2.rar b/catalog/development/patching/filescomparer/files/fc_v1.2.rar similarity index 100% rename from development/patch-tools/filescomparer/files/fc_v1.2.rar rename to catalog/development/patching/filescomparer/files/fc_v1.2.rar diff --git a/development/patch-tools/filescomparer/index.yaml b/catalog/development/patching/filescomparer/index.yaml similarity index 85% rename from development/patch-tools/filescomparer/index.yaml rename to catalog/development/patching/filescomparer/index.yaml index 2ddbab4..bdb29b8 100644 --- a/development/patch-tools/filescomparer/index.yaml +++ b/catalog/development/patching/filescomparer/index.yaml @@ -1,6 +1,7 @@ format: 1 type: program name: FilesComparer +summary: Программа для побайтового сравнения файлов и образов FullFlash. description: |- Программа для сравнения файлов и образов flash-памяти. @@ -11,6 +12,7 @@ description: |- - выравнивание результатов по байтам; - работа под DOS и Windows. homepage: https://web.archive.org/web/20130813164842/http://vi-soft.com.ua/ +author: SaiNT screenshots: [] versions: - version: "1.2" @@ -18,4 +20,5 @@ versions: - path: files/fc_v1.2.rar description: Программа FilesComparer 1.2 platform: win32 + size: 7415 sha256: 1e2416941803cf80c9a56a859b0cc2e714388e5f907d89403c0d3f05c7520cc4 diff --git a/development/patch-tools/hex2vkp/files/hex2vkp.zip b/catalog/development/patching/hex2vkp/files/hex2vkp.zip similarity index 100% rename from development/patch-tools/hex2vkp/files/hex2vkp.zip rename to catalog/development/patching/hex2vkp/files/hex2vkp.zip diff --git a/development/patch-tools/hex2vkp/index.yaml b/catalog/development/patching/hex2vkp/index.yaml similarity index 89% rename from development/patch-tools/hex2vkp/index.yaml rename to catalog/development/patching/hex2vkp/index.yaml index d1d8883..44dbb2c 100644 --- a/development/patch-tools/hex2vkp/index.yaml +++ b/catalog/development/patching/hex2vkp/index.yaml @@ -1,6 +1,7 @@ format: 1 type: program name: Hex2VKP +summary: Конвертер Intel HEX в формат патчей VKP для V_KLay. description: |- Консольный конвертер из формата Intel HEX в формат патчей VKP программы V_KLay. @@ -10,6 +11,7 @@ description: |- результат компиляции в патч VKP для последующей записи через V_KLay. Ключ `-F` создаёт секцию отмены патча `UNDO PATCH`. homepage: https://web.archive.org/web/20130813164842/http://vi-soft.com.ua/ +author: Redkin screenshots: [] versions: - version: "0.1a" @@ -17,4 +19,5 @@ versions: - path: files/hex2vkp.zip description: Программа Hex2VKP, исходный код, настройки и руководство platform: win32 + size: 50300 sha256: 10149c6770337551f18f5ff948acf9e3fbd025fca3e97a1f0f1cab9702301786 diff --git a/catalog/development/patching/index.yaml b/catalog/development/patching/index.yaml new file mode 100644 index 0000000..3836672 --- /dev/null +++ b/catalog/development/patching/index.yaml @@ -0,0 +1,4 @@ +format: 1 +type: category +name: Патчинг +description: Сравнение прошивок, поиск изменений и создание патчей VKP. diff --git a/development/patch-tools/slfc/files/slfc-chaos.exe b/catalog/development/patching/slfc/files/slfc-chaos.exe similarity index 100% rename from development/patch-tools/slfc/files/slfc-chaos.exe rename to catalog/development/patching/slfc/files/slfc-chaos.exe diff --git a/development/patch-tools/slfc/files/slfc-vi-soft.exe b/catalog/development/patching/slfc/files/slfc-vi-soft.exe similarity index 100% rename from development/patch-tools/slfc/files/slfc-vi-soft.exe rename to catalog/development/patching/slfc/files/slfc-vi-soft.exe diff --git a/development/patch-tools/slfc/index.yaml b/catalog/development/patching/slfc/index.yaml similarity index 85% rename from development/patch-tools/slfc/index.yaml rename to catalog/development/patching/slfc/index.yaml index 9abd3a2..f1c6fd6 100644 --- a/development/patch-tools/slfc/index.yaml +++ b/catalog/development/patching/slfc/index.yaml @@ -1,6 +1,7 @@ format: 1 type: program name: SLFC +summary: Консольная программа для сравнения образов FullFlash и создания VKP-патчей. description: |- Консольная программа для сравнения двух файлов fullflash и создания патча в формате VKP. @@ -9,6 +10,7 @@ description: |- включаются в патч; более длинная совпадающая последовательность считается окончанием блока изменений. homepage: https://web.archive.org/web/20130813164842/http://chaos.allsiemens.com/software.html +author: Chaos screenshots: [] versions: - version: "1.0" @@ -16,8 +18,10 @@ versions: - path: files/slfc-chaos.exe description: Сборка SLFC со страницы автора Chaos platform: win32 + size: 58880 sha256: 6b77b967ab44dccb4d3038df9d95cebbcdf9f3162183990d9516c32cd2d450e6 - path: files/slfc-vi-soft.exe description: Сборка SLFC со страницы vi-soft.com.ua platform: win32 + size: 58880 sha256: 3ec3143bc70f6ad7d0efaa41e0c666a9213c5e8c4163b11c05dfa999335600e4 diff --git a/service/drivers/index.yaml b/catalog/drivers/index.yaml similarity index 94% rename from service/drivers/index.yaml rename to catalog/drivers/index.yaml index c81937e..409a7cf 100644 --- a/service/drivers/index.yaml +++ b/catalog/drivers/index.yaml @@ -1,4 +1,5 @@ format: 1 type: category name: Драйверы +order: 10 description: Драйверы устройств и кабелей для работы с мобильными телефонами. diff --git a/service/drivers/pl-2303/files/PL-2303_patched.rar b/catalog/drivers/pl-2303/files/PL-2303_patched.rar similarity index 100% rename from service/drivers/pl-2303/files/PL-2303_patched.rar rename to catalog/drivers/pl-2303/files/PL-2303_patched.rar diff --git a/service/drivers/pl-2303/index.yaml b/catalog/drivers/pl-2303/index.yaml similarity index 54% rename from service/drivers/pl-2303/index.yaml rename to catalog/drivers/pl-2303/index.yaml index da09f65..18a3e65 100644 --- a/service/drivers/pl-2303/index.yaml +++ b/catalog/drivers/pl-2303/index.yaml @@ -1,11 +1,13 @@ format: 1 type: program -name: PL-2303 Driver +name: PL-2303 Driver (Patched) +summary: Модифицированный драйвер дата-кабелей PL-2303 с поддержкой скорости до 1625000 бит/с. description: >- - Модифицированный Chaos драйвер для дата-кабелей на чипсете Prolific PL-2303. - В отличие от штатного драйвера он позволяет флешерам обмениваться данными с + Модифицированный Chaos драйвер для дата-кабелей на чипсете Prolific PL-2303. В + отличие от штатного драйвера он позволяет флешерам обмениваться данными с телефоном на скорости до 1625000 бит/с. homepage: https://web.archive.org/web/20130813164842/http://chaos.allsiemens.com/software.html +author: Prolific Technology Inc.; модификация — Chaos screenshots: [] versions: - version: "2.0.5.26" @@ -13,4 +15,5 @@ versions: - path: files/PL-2303_patched.rar description: Драйвер PL-2303 с поддержкой скорости до 1625000 бит/с platform: win32 + size: 231854 sha256: ce4c19231e2e051a80267487c37062df0161569edc0f43013df7f6d1fa0565e6 diff --git a/service/flashers/index.yaml b/catalog/flashers/index.yaml similarity index 94% rename from service/flashers/index.yaml rename to catalog/flashers/index.yaml index 474c4be..d8d8a7e 100644 --- a/service/flashers/index.yaml +++ b/catalog/flashers/index.yaml @@ -1,4 +1,5 @@ format: 1 type: category name: Флешеры +order: -20 description: Программы для чтения, записи и восстановления флеш-памяти телефонов. diff --git a/service/flashers/v-klay/files/v_klay_setup.zip b/catalog/flashers/v-klay/files/v_klay_setup.zip similarity index 100% rename from service/flashers/v-klay/files/v_klay_setup.zip rename to catalog/flashers/v-klay/files/v_klay_setup.zip diff --git a/service/flashers/v-klay/files/v_klay_setup_v2152.rar b/catalog/flashers/v-klay/files/v_klay_setup_v2152.rar similarity index 100% rename from service/flashers/v-klay/files/v_klay_setup_v2152.rar rename to catalog/flashers/v-klay/files/v_klay_setup_v2152.rar diff --git a/service/flashers/v-klay/files/v_klay_setup_v25.zip b/catalog/flashers/v-klay/files/v_klay_setup_v25.zip similarity index 100% rename from service/flashers/v-klay/files/v_klay_setup_v25.zip rename to catalog/flashers/v-klay/files/v_klay_setup_v25.zip diff --git a/service/flashers/v-klay/files/v_klay_setup_v272.zip b/catalog/flashers/v-klay/files/v_klay_setup_v272.zip similarity index 100% rename from service/flashers/v-klay/files/v_klay_setup_v272.zip rename to catalog/flashers/v-klay/files/v_klay_setup_v272.zip diff --git a/service/flashers/v-klay/files/v_klay_update_v2112.rar b/catalog/flashers/v-klay/files/v_klay_update_v2112.rar similarity index 100% rename from service/flashers/v-klay/files/v_klay_update_v2112.rar rename to catalog/flashers/v-klay/files/v_klay_update_v2112.rar diff --git a/service/flashers/v-klay/index.yaml b/catalog/flashers/v-klay/index.yaml similarity index 86% rename from service/flashers/v-klay/index.yaml rename to catalog/flashers/v-klay/index.yaml index 0ae9542..fcacb6d 100644 --- a/service/flashers/v-klay/index.yaml +++ b/catalog/flashers/v-klay/index.yaml @@ -1,6 +1,7 @@ format: 1 type: program name: V_KLay +summary: Флешер и VKP-патчер для телефонов Siemens с редактором раскладки клавиатуры. description: |- Патчер, флешер и редактор раскладки клавиатуры для мобильных телефонов Siemens. @@ -20,35 +21,46 @@ description: |- CF62, CX65, M35, M50, M55, M65, MC60, ME45, MT50, S35, S40, S45, S55, S65, SL42, SL45, SL55, SL65 и SX1. homepage: https://web.archive.org/web/20130813164842/http://vi-soft.com.ua/ +author: ValeraVi (Валерий Вишняк) screenshots: [] versions: - version: "3.3" + status: current files: - path: files/v_klay_setup.zip description: Установочный пакет V_KLay 3.3 platform: win32 + size: 1691594 sha256: 9ef29148ea0a6f9c0ef2cb9a09da992bd1063920d891878709b066b22707b80f - version: "2.7.2" + status: archived files: - path: files/v_klay_setup_v272.zip description: Установочный пакет V_KLay 2.7.2 platform: win32 + size: 2622662 sha256: f4e31a5fd9cdfb6b5f3b2612116ad0ca575d281dc5e4c0c4f85bba6226985cde - version: "2.5" + status: archived files: - path: files/v_klay_setup_v25.zip description: Установочный пакет V_KLay 2.5 platform: win32 + size: 2362704 sha256: d78f69d0750a8e0d93349049d4dac3361202ad8fedb9f5479ca9f95505d250db - version: "2.1.12" + status: archived files: - path: files/v_klay_update_v2112.rar description: Обновление до V_KLay 2.1.12 platform: win32 + size: 840128 sha256: 5b6e4fe30ea81ef3a07892b297772aba811d04b15e2a93c482eb3da7d74e3b72 - version: "2.1.5.2" + status: archived files: - path: files/v_klay_setup_v2152.rar description: Англоязычный установочный пакет V_KLay 2.1.5.2 platform: win32 + size: 2329332 sha256: bc7c32ed37b9e75aa5316cef46661eb78240dd2911b89ba26ab30d88fff6d9a9 diff --git a/service/flashers/x65flasher/files/bsReader.zip b/catalog/flashers/x65flasher/files/bsReader.zip similarity index 100% rename from service/flashers/x65flasher/files/bsReader.zip rename to catalog/flashers/x65flasher/files/bsReader.zip diff --git a/service/flashers/x65flasher/files/px75v1.rar b/catalog/flashers/x65flasher/files/px75v1.rar similarity index 100% rename from service/flashers/x65flasher/files/px75v1.rar rename to catalog/flashers/x65flasher/files/px75v1.rar diff --git a/service/flashers/x65flasher/files/x65flasher-2103.rar b/catalog/flashers/x65flasher/files/x65flasher-2103.rar similarity index 100% rename from service/flashers/x65flasher/files/x65flasher-2103.rar rename to catalog/flashers/x65flasher/files/x65flasher-2103.rar diff --git a/service/flashers/x65flasher/index.yaml b/catalog/flashers/x65flasher/index.yaml similarity index 88% rename from service/flashers/x65flasher/index.yaml rename to catalog/flashers/x65flasher/index.yaml index ef0896e..e99eee9 100644 --- a/service/flashers/x65flasher/index.yaml +++ b/catalog/flashers/x65flasher/index.yaml @@ -1,6 +1,7 @@ format: 1 type: program name: x65flasher +summary: Программа для чтения и записи flash-памяти телефонов Siemens 65–75-й серии. description: |- Флешер для телефонов Siemens 65–75-й серии и мидлеты для поиска boot-ключей. @@ -12,6 +13,7 @@ description: |- - работа на скорости от 57600 до 1600000 бит/с; - генерация загрузчиков для V_Klay. homepage: https://web.archive.org/web/20130813164842/http://chaos.allsiemens.com/software.html +author: Chaos screenshots: [] versions: - version: "2.103" @@ -20,13 +22,16 @@ versions: - path: files/x65flasher-2103.rar description: Флешер, документация и вспомогательные мидлеты platform: win32 + size: 423000 sha256: ad5ba3574b1f5a774948a8d62dc7fb51ef05b762d27e3000c0e5ba38360d4f41 additional_files: - path: files/px75v1.rar description: Мидлет для получения HASH и ESN на младших моделях телефонов platform: j2me + size: 39784 sha256: 64fd3cca1fcb253a43f1c2101256a0050731598c6c35a0805d6a874c5893ce5c - path: files/bsReader.zip description: Мидлет для получения HASH и ESN на S75, SL75 и BenQ-Siemens platform: j2me + size: 61749 sha256: e7c38947a9e042b0a9107760d79b3f5f6daa95a71b33c26d219453c80d943f55 diff --git a/index.yaml b/catalog/index.yaml similarity index 100% rename from index.yaml rename to catalog/index.yaml diff --git a/catalog/service/index.yaml b/catalog/service/index.yaml new file mode 100644 index 0000000..6904f48 --- /dev/null +++ b/catalog/service/index.yaml @@ -0,0 +1,5 @@ +format: 1 +type: category +name: Сервис +order: -30 +description: Диагностика, прошивка, ремонт и восстановление телефонов. diff --git a/service/repair-tools/joker/files/JokerSorceV0341.rar b/catalog/service/joker/files/JokerSorceV0341.rar similarity index 100% rename from service/repair-tools/joker/files/JokerSorceV0341.rar rename to catalog/service/joker/files/JokerSorceV0341.rar diff --git a/service/repair-tools/joker/files/JokerV0295.rar b/catalog/service/joker/files/JokerV0295.rar similarity index 100% rename from service/repair-tools/joker/files/JokerV0295.rar rename to catalog/service/joker/files/JokerV0295.rar diff --git a/service/repair-tools/joker/index.yaml b/catalog/service/joker/index.yaml similarity index 81% rename from service/repair-tools/joker/index.yaml rename to catalog/service/joker/index.yaml index c059fa8..cd33fc3 100644 --- a/service/repair-tools/joker/index.yaml +++ b/catalog/service/joker/index.yaml @@ -1,6 +1,7 @@ format: 1 type: program name: Joker +summary: Сервисная программа для диагностики и восстановления телефонов Siemens на платформе EGOLD. description: |- Сервисная программа для восстановления программных неисправностей телефонов Siemens на платформе EGOLD с помощью обычного кабеля с минимальными @@ -20,19 +21,21 @@ description: |- FullFlash рабочего телефона. Программа создавалась как экспериментальный ремонтный инструмент; часть операций требует TestPoint. homepage: https://web.archive.org/web/20130825050857/http://papuas.allsiemens.com/Joker.htm +author: Papuas screenshots: [] versions: - - version: "0.3.4.1" - released: "2006-01-25" - files: - - path: files/JokerSorceV0341.rar - description: Исходный код Joker 0.3.4.1 для Borland Delphi - platform: win32 - sha256: b6e539597dbe6d8af1e6a813a305ea30322e561ec5a9786aadba520d9c1963c5 - version: "0.2.9.5" + status: archived released: "2005-11-25" files: - path: files/JokerV0295.rar description: Исполняемая программа Joker 0.2.9.5 platform: win32 + size: 206353 sha256: 37a8805c5731ce74aa99b11c5f90580bce39b96c95b36cbd8adb72008df25e30 +additional_files: + - path: files/JokerSorceV0341.rar + description: Исходный код Joker 0.3.4.1 для Borland Delphi + platform: win32 + size: 129019 + sha256: b6e539597dbe6d8af1e6a813a305ea30322e561ec5a9786aadba520d9c1963c5 diff --git a/service/repair-tools/siemens-eeprom-tool/files/SiemensEEPROMtool315plus.rar b/catalog/service/siemens-eeprom-tool/files/SiemensEEPROMtool315plus.rar similarity index 100% rename from service/repair-tools/siemens-eeprom-tool/files/SiemensEEPROMtool315plus.rar rename to catalog/service/siemens-eeprom-tool/files/SiemensEEPROMtool315plus.rar diff --git a/service/repair-tools/siemens-eeprom-tool/index.yaml b/catalog/service/siemens-eeprom-tool/index.yaml similarity index 86% rename from service/repair-tools/siemens-eeprom-tool/index.yaml rename to catalog/service/siemens-eeprom-tool/index.yaml index 3df31f1..df86640 100644 --- a/service/repair-tools/siemens-eeprom-tool/index.yaml +++ b/catalog/service/siemens-eeprom-tool/index.yaml @@ -1,6 +1,7 @@ format: 1 type: program name: Siemens EEPROM Tool +summary: Редактор EEPROM для диагностики и восстановления телефонов Siemens. description: |- Редактор файлов EEPROM телефонов Siemens. Используется совместно с x65PapuaUtils и Joker для восстановления программно неисправных аппаратов, @@ -9,6 +10,7 @@ description: |- Номер `3.01.0005` получен из ресурса версии исполняемого файла; имя исходного архива — `SiemensEEPROMtool315plus.rar`. homepage: https://web.archive.org/web/20130825050857/http://papuas.allsiemens.com/ +author: Skylord screenshots: [] versions: - version: "3.01.0005" @@ -17,4 +19,5 @@ versions: - path: files/SiemensEEPROMtool315plus.rar description: Программа Siemens EEPROM Tool platform: win32 + size: 76448 sha256: 75249994aceab0836cfe26820f110dcaf61f411986b7d600d51ca57496d83e16 diff --git a/service/firmware-tools/winswup/files/WSMPlus2.rar b/catalog/service/winswup/files/WSMPlus2.rar similarity index 100% rename from service/firmware-tools/winswup/files/WSMPlus2.rar rename to catalog/service/winswup/files/WSMPlus2.rar diff --git a/service/firmware-tools/winswup/files/winswup-0.91-pre1.7z b/catalog/service/winswup/files/winswup-0.91-pre1.7z similarity index 100% rename from service/firmware-tools/winswup/files/winswup-0.91-pre1.7z rename to catalog/service/winswup/files/winswup-0.91-pre1.7z diff --git a/service/firmware-tools/winswup/files/winswup-0.91-pre2.7z b/catalog/service/winswup/files/winswup-0.91-pre2.7z similarity index 100% rename from service/firmware-tools/winswup/files/winswup-0.91-pre2.7z rename to catalog/service/winswup/files/winswup-0.91-pre2.7z diff --git a/service/firmware-tools/winswup/files/winswup-0.91.7z b/catalog/service/winswup/files/winswup-0.91.7z similarity index 100% rename from service/firmware-tools/winswup/files/winswup-0.91.7z rename to catalog/service/winswup/files/winswup-0.91.7z diff --git a/service/firmware-tools/winswup/files/winswup-0.95-amd32.7z b/catalog/service/winswup/files/winswup-0.95-amd32.7z similarity index 100% rename from service/firmware-tools/winswup/files/winswup-0.95-amd32.7z rename to catalog/service/winswup/files/winswup-0.95-amd32.7z diff --git a/service/firmware-tools/winswup/files/winswup-0.95.7z b/catalog/service/winswup/files/winswup-0.95.7z similarity index 100% rename from service/firmware-tools/winswup/files/winswup-0.95.7z rename to catalog/service/winswup/files/winswup-0.95.7z diff --git a/service/firmware-tools/winswup/files/winswup-0.97.7z b/catalog/service/winswup/files/winswup-0.97.7z similarity index 100% rename from service/firmware-tools/winswup/files/winswup-0.97.7z rename to catalog/service/winswup/files/winswup-0.97.7z diff --git a/service/firmware-tools/winswup/files/winswup-0.98-pre.7z b/catalog/service/winswup/files/winswup-0.98-pre.7z similarity index 100% rename from service/firmware-tools/winswup/files/winswup-0.98-pre.7z rename to catalog/service/winswup/files/winswup-0.98-pre.7z diff --git a/service/firmware-tools/winswup/files/winswup-0.98.7z b/catalog/service/winswup/files/winswup-0.98.7z similarity index 100% rename from service/firmware-tools/winswup/files/winswup-0.98.7z rename to catalog/service/winswup/files/winswup-0.98.7z diff --git a/service/firmware-tools/winswup/files/winswup-1.04.7z b/catalog/service/winswup/files/winswup-1.04.7z similarity index 100% rename from service/firmware-tools/winswup/files/winswup-1.04.7z rename to catalog/service/winswup/files/winswup-1.04.7z diff --git a/service/firmware-tools/winswup/files/winswup-1.23.7z b/catalog/service/winswup/files/winswup-1.23.7z similarity index 100% rename from service/firmware-tools/winswup/files/winswup-1.23.7z rename to catalog/service/winswup/files/winswup-1.23.7z diff --git a/service/firmware-tools/winswup/files/winswup-1.27.7z b/catalog/service/winswup/files/winswup-1.27.7z similarity index 100% rename from service/firmware-tools/winswup/files/winswup-1.27.7z rename to catalog/service/winswup/files/winswup-1.27.7z diff --git a/service/firmware-tools/winswup/files/winswup-1.28.7z b/catalog/service/winswup/files/winswup-1.28.7z similarity index 100% rename from service/firmware-tools/winswup/files/winswup-1.28.7z rename to catalog/service/winswup/files/winswup-1.28.7z diff --git a/service/firmware-tools/winswup/files/winswup-1.30.7z b/catalog/service/winswup/files/winswup-1.30.7z similarity index 100% rename from service/firmware-tools/winswup/files/winswup-1.30.7z rename to catalog/service/winswup/files/winswup-1.30.7z diff --git a/service/firmware-tools/winswup/files/winswup-1.34.7z b/catalog/service/winswup/files/winswup-1.34.7z similarity index 100% rename from service/firmware-tools/winswup/files/winswup-1.34.7z rename to catalog/service/winswup/files/winswup-1.34.7z diff --git a/service/firmware-tools/winswup/files/winswup-1.35.7z b/catalog/service/winswup/files/winswup-1.35.7z similarity index 100% rename from service/firmware-tools/winswup/files/winswup-1.35.7z rename to catalog/service/winswup/files/winswup-1.35.7z diff --git a/service/firmware-tools/winswup/files/winswup-1.40.7z b/catalog/service/winswup/files/winswup-1.40.7z similarity index 100% rename from service/firmware-tools/winswup/files/winswup-1.40.7z rename to catalog/service/winswup/files/winswup-1.40.7z diff --git a/service/firmware-tools/winswup/files/winswup-1.44.7z b/catalog/service/winswup/files/winswup-1.44.7z similarity index 100% rename from service/firmware-tools/winswup/files/winswup-1.44.7z rename to catalog/service/winswup/files/winswup-1.44.7z diff --git a/service/firmware-tools/winswup/files/winswup-3.002.7z b/catalog/service/winswup/files/winswup-3.002.7z similarity index 100% rename from service/firmware-tools/winswup/files/winswup-3.002.7z rename to catalog/service/winswup/files/winswup-3.002.7z diff --git a/service/firmware-tools/winswup/files/winswup-3.05.7z b/catalog/service/winswup/files/winswup-3.05.7z similarity index 100% rename from service/firmware-tools/winswup/files/winswup-3.05.7z rename to catalog/service/winswup/files/winswup-3.05.7z diff --git a/service/firmware-tools/winswup/files/winswup-3.17.7z b/catalog/service/winswup/files/winswup-3.17.7z similarity index 100% rename from service/firmware-tools/winswup/files/winswup-3.17.7z rename to catalog/service/winswup/files/winswup-3.17.7z diff --git a/service/firmware-tools/winswup/files/winswup-3.19.7z b/catalog/service/winswup/files/winswup-3.19.7z similarity index 100% rename from service/firmware-tools/winswup/files/winswup-3.19.7z rename to catalog/service/winswup/files/winswup-3.19.7z diff --git a/service/firmware-tools/winswup/files/winswup-3.20.rar b/catalog/service/winswup/files/winswup-3.20.rar similarity index 100% rename from service/firmware-tools/winswup/files/winswup-3.20.rar rename to catalog/service/winswup/files/winswup-3.20.rar diff --git a/service/firmware-tools/winswup/files/winswup-4.07.7z b/catalog/service/winswup/files/winswup-4.07.7z similarity index 100% rename from service/firmware-tools/winswup/files/winswup-4.07.7z rename to catalog/service/winswup/files/winswup-4.07.7z diff --git a/service/firmware-tools/winswup/files/winswup-4.14p3.7z b/catalog/service/winswup/files/winswup-4.14p3.7z similarity index 100% rename from service/firmware-tools/winswup/files/winswup-4.14p3.7z rename to catalog/service/winswup/files/winswup-4.14p3.7z diff --git a/service/firmware-tools/winswup/files/winswup-4.20.7z b/catalog/service/winswup/files/winswup-4.20.7z similarity index 100% rename from service/firmware-tools/winswup/files/winswup-4.20.7z rename to catalog/service/winswup/files/winswup-4.20.7z diff --git a/service/firmware-tools/winswup/index.yaml b/catalog/service/winswup/index.yaml similarity index 89% rename from service/firmware-tools/winswup/index.yaml rename to catalog/service/winswup/index.yaml index 41d3b51..a5b3bd2 100644 --- a/service/firmware-tools/winswup/index.yaml +++ b/catalog/service/winswup/index.yaml @@ -1,21 +1,23 @@ format: 1 type: program name: WinSwup +summary: Официальная программа для прошивки телефонов Siemens с использованием файлов XBZ/XBI. description: |- Сервисная программа Siemens для обновления программного обеспечения телефонов. В каталоге представлены исполняемые комплекты и developer-пакеты с Update DLL, загрузчиками, библиотеками, заголовочными файлами, примерами и документацией. +author: Siemens AG screenshots: [] versions: - - version: "4.20-pre1" + - version: "4.20" status: current released: "2006-05-08" files: - path: files/winswup-4.20.7z - description: Полный developer-пакет WinSwup 4.20 prerelease 1 с SDK, - документацией и утилитами + description: Полный developer-пакет WinSwup 4.20 с SDK, документацией и утилитами platform: win32 + size: 1228159 sha256: d317695a4ab32856167370d3f7cd527bf09c9f34db13530e23de34700d6c3efe - version: "4.14p3" status: archived @@ -23,6 +25,7 @@ versions: - path: files/winswup-4.14p3.7z description: Developer-пакет WinSwup 4.14p3 для SL75 Escada platform: win32 + size: 599244 sha256: 99a33142bb9b008a051bd6fe3212ffa3ccd9e38be3472059d5125dcd9783c21e - version: "4.07" status: archived @@ -31,14 +34,16 @@ versions: - path: files/winswup-4.07.7z description: Полный developer-пакет WinSwup 4.07 с SDK и документацией platform: win32 + size: 1008836 sha256: e27536eb975c6127ca7d61ac39d9edceb142fb3e4eaf91348992ea214f30d8f5 - version: "3.20" status: current files: - path: files/winswup-3.20.rar - description: Прошивальщик для телефонов Siemens EGold и EGoldLite с - поддержкой XBI, XBZ и XFS + description: Прошивальщик для телефонов Siemens EGold и EGoldLite с поддержкой + XBI, XBZ и XFS platform: win32 + size: 5612252 sha256: d497519b7f6c4bd95aacd93828f12d977110da86f612d7f55c3bcc2dc40e3677 - version: "3.19" status: archived @@ -46,6 +51,7 @@ versions: - path: files/winswup-3.19.7z description: Полный developer-пакет WinSwup 3.19 для AL21 platform: win32 + size: 3146606 sha256: a797f2097ae96c678cc987b08fafd0b11b0c929e550751f8190b793f564dbc55 - version: "3.17" status: archived @@ -53,6 +59,7 @@ versions: - path: files/winswup-3.17.7z description: Полный developer-пакет WinSwup 3.17 с SDK и документацией platform: win32 + size: 3151337 sha256: 4a1e770a3f0f8c77108f6841b7d1fc605c41052f21cd734c3d5684bbdbdd1877 - version: "3.05" status: archived @@ -60,6 +67,7 @@ versions: - path: files/winswup-3.05.7z description: Полный предварительный пакет WinSwup 3.05 с SDK и документацией platform: win32 + size: 2089945 sha256: 613b329574723539cc5ec38630977dc5ca0db14718330f4d1e09f73c8e8016e3 - version: "3.002" status: archived @@ -67,6 +75,7 @@ versions: - path: files/winswup-3.002.7z description: Компактный исполняемый комплект WinSwup 3.002 platform: win32 + size: 184530 sha256: 20dc66b4b95651633ed5a5ea9d55cda430bce7ed089ca4031626b60e86b88d41 - version: "1.44" status: archived @@ -74,6 +83,7 @@ versions: - path: files/winswup-1.44.7z description: Полный developer-пакет WinSwup 1.44 с SDK platform: win32 + size: 730425 sha256: 810f8f7b24ea27bd2c7e6746ea13ff8be4b7117fec46989a07c522d9eb60ef21 - version: "1.40" status: archived @@ -81,6 +91,7 @@ versions: - path: files/winswup-1.40.7z description: Полный developer-пакет WinSwup 1.40 с SDK и документацией platform: win32 + size: 949541 sha256: 19e6d4ff841c00445fc953268efbe98d69aba261f9204ee896917a4d28472a95 - version: "1.35" status: archived @@ -88,6 +99,7 @@ versions: - path: files/winswup-1.35.7z description: Исполняемый комплект WinSwup 1.35 с загрузчиком SGOLD platform: win32 + size: 228880 sha256: 4a947c38253e40502cee5019f62a5e9868a1f8e3661105a8a3a753187b5f92cc - version: "1.34" status: archived @@ -95,6 +107,7 @@ versions: - path: files/winswup-1.34.7z description: Исполняемый комплект WinSwup 1.34 platform: win32 + size: 220250 sha256: 15ee3c94cb31c01d877898456d8aceababd4e5f7cd1313b4adb9e1afed3d2af5 - version: "1.30" status: archived @@ -102,6 +115,7 @@ versions: - path: files/winswup-1.30.7z description: Полный developer-пакет WinSwup 1.30 с SDK platform: win32 + size: 461270 sha256: c12b5563409d9ff356299b5f7277ebeaaefe564b1cb71a7856636daf0156f690 - version: "1.28" status: archived @@ -109,6 +123,7 @@ versions: - path: files/winswup-1.28.7z description: Полный developer-пакет WinSwup 1.28 с SDK platform: win32 + size: 468469 sha256: 783d123f2ce62253dd3c697efc8a622d027dd34388db6165b6a682ecf44246d0 - version: "1.27" status: archived @@ -116,6 +131,7 @@ versions: - path: files/winswup-1.27.7z description: Полный developer-пакет WinSwup 1.27 с SDK platform: win32 + size: 470254 sha256: 986eb13ce887f77ed5b15d29fd587edbdf4b6bc3f41a510ad540dc385ef9ee95 - version: "1.23" status: archived @@ -123,6 +139,7 @@ versions: - path: files/winswup-1.23.7z description: Исполняемый комплект WinSwup 1.23 platform: win32 + size: 168168 sha256: d2c65b13d9e88f0a7bcbfc44b25b9b1b2901c8c5186c617acbd849b6cab8f76c - version: "1.04" status: archived @@ -130,18 +147,21 @@ versions: - path: files/winswup-1.04.7z description: Комплект WinSwup 1.04 с пакетами WC3I 2001 и 2008 platform: win32 + size: 6176468 sha256: cea1c7c0b1db441a1d35e364716d71d64e30710b6165b980e7f883a2f7fb4343 - version: "0.98" status: archived files: - path: files/winswup-0.98.7z platform: win32 + size: 205322 sha256: 754d3e84d6653c1ef69713e7de3163dc87cc9bef0a5427fe5c792d51a3a3e263 - version: "0.98-pre" status: archived files: - path: files/winswup-0.98-pre.7z platform: win32 + size: 196555 sha256: cd0e8b50fa2fdb33208eb0b73d69b04a94fbb8bc102fb99548fae0e98e83075f - version: "0.97" status: archived @@ -149,6 +169,7 @@ versions: - path: files/winswup-0.97.7z description: Комплект WinSwup 0.97 «Alle Produkte» с исходным ZIP-пакетом platform: win32 + size: 622407 sha256: cace85ee4ef5085b645855c502f74f18b11d8301c135c0f34442fc27c4b149c3 - version: "0.95" status: archived @@ -156,31 +177,37 @@ versions: - path: files/winswup-0.95.7z description: Обычная сборка WinSwup 0.95 platform: win32 + size: 215244 sha256: a1792894d1a1efa7e95de3f747a86c1e5eefc00c8914a7e78859dabeac57c2a3 - path: files/winswup-0.95-amd32.7z description: Сборка WinSwup 0.95 с комплектом DLL AMD32 platform: win32 + size: 201184 sha256: 5df6de4c09f872f2175dd7fe26d456ce7cb1dba254bfe6e2b41bd47e6acc9482 - version: "0.91" status: archived files: - path: files/winswup-0.91.7z platform: win32 + size: 180291 sha256: 7ae4a7be7abc7f17fc6f0dd55d601da56226571aa8634dae38ba16f5f65b47ad - version: "0.91-pre2" status: archived files: - path: files/winswup-0.91-pre2.7z platform: win32 + size: 177805 sha256: c0c19ca1f49ab76f2c544adf0291d82172f1024c44606a1443bb365c588eced1 - version: "0.91-pre1" status: archived files: - path: files/winswup-0.91-pre1.7z platform: win32 + size: 190868 sha256: 9254f44bc15d6e1027d96112860eb2b392d83de20b15a680037534704e460a9e additional_files: - path: files/WSMPlus2.rar description: WinSwup Menu Plus 2 для включения дополнительных меню в сервисных SWUP platform: win32 + size: 137632 sha256: b1eb247567a4b5b66b8f796e6e3012481d819c825f400693fb26eae8b79f785f diff --git a/service/repair-tools/x65-papua-utils/files/AllBugSGold.rar b/catalog/service/x65-papua-utils/files/AllBugSGold.rar similarity index 100% rename from service/repair-tools/x65-papua-utils/files/AllBugSGold.rar rename to catalog/service/x65-papua-utils/files/AllBugSGold.rar diff --git a/service/repair-tools/x65-papua-utils/files/SWP2.rar b/catalog/service/x65-papua-utils/files/SWP2.rar similarity index 100% rename from service/repair-tools/x65-papua-utils/files/SWP2.rar rename to catalog/service/x65-papua-utils/files/SWP2.rar diff --git a/service/repair-tools/x65-papua-utils/files/SWP3.rar b/catalog/service/x65-papua-utils/files/SWP3.rar similarity index 100% rename from service/repair-tools/x65-papua-utils/files/SWP3.rar rename to catalog/service/x65-papua-utils/files/SWP3.rar diff --git a/service/repair-tools/x65-papua-utils/files/SWPEXE.rar b/catalog/service/x65-papua-utils/files/SWPEXE.rar similarity index 100% rename from service/repair-tools/x65-papua-utils/files/SWPEXE.rar rename to catalog/service/x65-papua-utils/files/SWPEXE.rar diff --git a/service/repair-tools/x65-papua-utils/files/x65PapuaUtilsV036.rar b/catalog/service/x65-papua-utils/files/x65PapuaUtilsV036.rar similarity index 100% rename from service/repair-tools/x65-papua-utils/files/x65PapuaUtilsV036.rar rename to catalog/service/x65-papua-utils/files/x65PapuaUtilsV036.rar diff --git a/service/repair-tools/x65-papua-utils/files/x65PapuaUtilsV038.rar b/catalog/service/x65-papua-utils/files/x65PapuaUtilsV038.rar similarity index 100% rename from service/repair-tools/x65-papua-utils/files/x65PapuaUtilsV038.rar rename to catalog/service/x65-papua-utils/files/x65PapuaUtilsV038.rar diff --git a/service/repair-tools/x65-papua-utils/files/x65PapuaUtilsV041.rar b/catalog/service/x65-papua-utils/files/x65PapuaUtilsV041.rar similarity index 100% rename from service/repair-tools/x65-papua-utils/files/x65PapuaUtilsV041.rar rename to catalog/service/x65-papua-utils/files/x65PapuaUtilsV041.rar diff --git a/service/repair-tools/x65-papua-utils/files/x65PapuaUtilsV043.rar b/catalog/service/x65-papua-utils/files/x65PapuaUtilsV043.rar similarity index 100% rename from service/repair-tools/x65-papua-utils/files/x65PapuaUtilsV043.rar rename to catalog/service/x65-papua-utils/files/x65PapuaUtilsV043.rar diff --git a/service/repair-tools/x65-papua-utils/files/x65PapuaUtilsV044.rar b/catalog/service/x65-papua-utils/files/x65PapuaUtilsV044.rar similarity index 100% rename from service/repair-tools/x65-papua-utils/files/x65PapuaUtilsV044.rar rename to catalog/service/x65-papua-utils/files/x65PapuaUtilsV044.rar diff --git a/service/repair-tools/x65-papua-utils/files/x65PapuaUtilsV045.rar b/catalog/service/x65-papua-utils/files/x65PapuaUtilsV045.rar similarity index 100% rename from service/repair-tools/x65-papua-utils/files/x65PapuaUtilsV045.rar rename to catalog/service/x65-papua-utils/files/x65PapuaUtilsV045.rar diff --git a/service/repair-tools/x65-papua-utils/files/x65PapuaUtilsV046.rar b/catalog/service/x65-papua-utils/files/x65PapuaUtilsV046.rar similarity index 100% rename from service/repair-tools/x65-papua-utils/files/x65PapuaUtilsV046.rar rename to catalog/service/x65-papua-utils/files/x65PapuaUtilsV046.rar diff --git a/service/repair-tools/x65-papua-utils/files/x65PapuaUtilsV047.rar b/catalog/service/x65-papua-utils/files/x65PapuaUtilsV047.rar similarity index 100% rename from service/repair-tools/x65-papua-utils/files/x65PapuaUtilsV047.rar rename to catalog/service/x65-papua-utils/files/x65PapuaUtilsV047.rar diff --git a/service/repair-tools/x65-papua-utils/files/x65PapuaUtilsV048.rar b/catalog/service/x65-papua-utils/files/x65PapuaUtilsV048.rar similarity index 100% rename from service/repair-tools/x65-papua-utils/files/x65PapuaUtilsV048.rar rename to catalog/service/x65-papua-utils/files/x65PapuaUtilsV048.rar diff --git a/service/repair-tools/x65-papua-utils/files/x65PapuaUtilsV050.rar b/catalog/service/x65-papua-utils/files/x65PapuaUtilsV050.rar similarity index 100% rename from service/repair-tools/x65-papua-utils/files/x65PapuaUtilsV050.rar rename to catalog/service/x65-papua-utils/files/x65PapuaUtilsV050.rar diff --git a/service/repair-tools/x65-papua-utils/files/x65PapuaUtilsV051.rar b/catalog/service/x65-papua-utils/files/x65PapuaUtilsV051.rar similarity index 100% rename from service/repair-tools/x65-papua-utils/files/x65PapuaUtilsV051.rar rename to catalog/service/x65-papua-utils/files/x65PapuaUtilsV051.rar diff --git a/service/repair-tools/x65-papua-utils/files/x65PapuaUtilsV054.rar b/catalog/service/x65-papua-utils/files/x65PapuaUtilsV054.rar similarity index 100% rename from service/repair-tools/x65-papua-utils/files/x65PapuaUtilsV054.rar rename to catalog/service/x65-papua-utils/files/x65PapuaUtilsV054.rar diff --git a/service/repair-tools/x65-papua-utils/files/x65PapuaUtilsV055.rar b/catalog/service/x65-papua-utils/files/x65PapuaUtilsV055.rar similarity index 100% rename from service/repair-tools/x65-papua-utils/files/x65PapuaUtilsV055.rar rename to catalog/service/x65-papua-utils/files/x65PapuaUtilsV055.rar diff --git a/service/repair-tools/x65-papua-utils/files/x65PapuaUtilsV056.rar b/catalog/service/x65-papua-utils/files/x65PapuaUtilsV056.rar similarity index 100% rename from service/repair-tools/x65-papua-utils/files/x65PapuaUtilsV056.rar rename to catalog/service/x65-papua-utils/files/x65PapuaUtilsV056.rar diff --git a/service/repair-tools/x65-papua-utils/files/x65PapuaUtilsV060.rar b/catalog/service/x65-papua-utils/files/x65PapuaUtilsV060.rar similarity index 100% rename from service/repair-tools/x65-papua-utils/files/x65PapuaUtilsV060.rar rename to catalog/service/x65-papua-utils/files/x65PapuaUtilsV060.rar diff --git a/service/repair-tools/x65-papua-utils/files/x65PapuaUtilsV062.rar b/catalog/service/x65-papua-utils/files/x65PapuaUtilsV062.rar similarity index 100% rename from service/repair-tools/x65-papua-utils/files/x65PapuaUtilsV062.rar rename to catalog/service/x65-papua-utils/files/x65PapuaUtilsV062.rar diff --git a/service/repair-tools/x65-papua-utils/files/x65PapuaUtilsV064.rar b/catalog/service/x65-papua-utils/files/x65PapuaUtilsV064.rar similarity index 100% rename from service/repair-tools/x65-papua-utils/files/x65PapuaUtilsV064.rar rename to catalog/service/x65-papua-utils/files/x65PapuaUtilsV064.rar diff --git a/service/repair-tools/x65-papua-utils/files/x65PapuaUtilsV065.rar b/catalog/service/x65-papua-utils/files/x65PapuaUtilsV065.rar similarity index 100% rename from service/repair-tools/x65-papua-utils/files/x65PapuaUtilsV065.rar rename to catalog/service/x65-papua-utils/files/x65PapuaUtilsV065.rar diff --git a/service/repair-tools/x65-papua-utils/files/x65PapuaUtilsV066.rar b/catalog/service/x65-papua-utils/files/x65PapuaUtilsV066.rar similarity index 100% rename from service/repair-tools/x65-papua-utils/files/x65PapuaUtilsV066.rar rename to catalog/service/x65-papua-utils/files/x65PapuaUtilsV066.rar diff --git a/service/repair-tools/x65-papua-utils/files/x65PapuaUtilsV067c.rar b/catalog/service/x65-papua-utils/files/x65PapuaUtilsV067c.rar similarity index 100% rename from service/repair-tools/x65-papua-utils/files/x65PapuaUtilsV067c.rar rename to catalog/service/x65-papua-utils/files/x65PapuaUtilsV067c.rar diff --git a/service/repair-tools/x65-papua-utils/files/x65PapuaUtilsV068.rar b/catalog/service/x65-papua-utils/files/x65PapuaUtilsV068.rar similarity index 100% rename from service/repair-tools/x65-papua-utils/files/x65PapuaUtilsV068.rar rename to catalog/service/x65-papua-utils/files/x65PapuaUtilsV068.rar diff --git a/service/repair-tools/x65-papua-utils/files/x65PapuaUtilsV069.rar b/catalog/service/x65-papua-utils/files/x65PapuaUtilsV069.rar similarity index 100% rename from service/repair-tools/x65-papua-utils/files/x65PapuaUtilsV069.rar rename to catalog/service/x65-papua-utils/files/x65PapuaUtilsV069.rar diff --git a/service/repair-tools/x65-papua-utils/files/x65PapuaUtilsV070.rar b/catalog/service/x65-papua-utils/files/x65PapuaUtilsV070.rar similarity index 100% rename from service/repair-tools/x65-papua-utils/files/x65PapuaUtilsV070.rar rename to catalog/service/x65-papua-utils/files/x65PapuaUtilsV070.rar diff --git a/service/repair-tools/x65-papua-utils/files/x65PapuaUtilsV074.rar b/catalog/service/x65-papua-utils/files/x65PapuaUtilsV074.rar similarity index 100% rename from service/repair-tools/x65-papua-utils/files/x65PapuaUtilsV074.rar rename to catalog/service/x65-papua-utils/files/x65PapuaUtilsV074.rar diff --git a/service/repair-tools/x65-papua-utils/files/x65PapuaUtilsV075.rar b/catalog/service/x65-papua-utils/files/x65PapuaUtilsV075.rar similarity index 100% rename from service/repair-tools/x65-papua-utils/files/x65PapuaUtilsV075.rar rename to catalog/service/x65-papua-utils/files/x65PapuaUtilsV075.rar diff --git a/service/repair-tools/x65-papua-utils/files/x65PapuaUtilsV076b.rar b/catalog/service/x65-papua-utils/files/x65PapuaUtilsV076b.rar similarity index 100% rename from service/repair-tools/x65-papua-utils/files/x65PapuaUtilsV076b.rar rename to catalog/service/x65-papua-utils/files/x65PapuaUtilsV076b.rar diff --git a/service/repair-tools/x65-papua-utils/files/x65PapuaUtilsV077.rar b/catalog/service/x65-papua-utils/files/x65PapuaUtilsV077.rar similarity index 100% rename from service/repair-tools/x65-papua-utils/files/x65PapuaUtilsV077.rar rename to catalog/service/x65-papua-utils/files/x65PapuaUtilsV077.rar diff --git a/service/repair-tools/x65-papua-utils/files/x65PapuaUtilsV078.rar b/catalog/service/x65-papua-utils/files/x65PapuaUtilsV078.rar similarity index 100% rename from service/repair-tools/x65-papua-utils/files/x65PapuaUtilsV078.rar rename to catalog/service/x65-papua-utils/files/x65PapuaUtilsV078.rar diff --git a/service/repair-tools/x65-papua-utils/files/x65PapuaUtilsV079d.rar b/catalog/service/x65-papua-utils/files/x65PapuaUtilsV079d.rar similarity index 100% rename from service/repair-tools/x65-papua-utils/files/x65PapuaUtilsV079d.rar rename to catalog/service/x65-papua-utils/files/x65PapuaUtilsV079d.rar diff --git a/service/repair-tools/x65-papua-utils/files/x65PapuaUtilsV111b.rar b/catalog/service/x65-papua-utils/files/x65PapuaUtilsV111b.rar similarity index 100% rename from service/repair-tools/x65-papua-utils/files/x65PapuaUtilsV111b.rar rename to catalog/service/x65-papua-utils/files/x65PapuaUtilsV111b.rar diff --git a/service/repair-tools/x65-papua-utils/files/x65PapuaUtilsV111c_rus.rar b/catalog/service/x65-papua-utils/files/x65PapuaUtilsV111c_rus.rar similarity index 100% rename from service/repair-tools/x65-papua-utils/files/x65PapuaUtilsV111c_rus.rar rename to catalog/service/x65-papua-utils/files/x65PapuaUtilsV111c_rus.rar diff --git a/service/repair-tools/x65-papua-utils/index.yaml b/catalog/service/x65-papua-utils/index.yaml similarity index 85% rename from service/repair-tools/x65-papua-utils/index.yaml rename to catalog/service/x65-papua-utils/index.yaml index 356a0e6..2422e46 100644 --- a/service/repair-tools/x65-papua-utils/index.yaml +++ b/catalog/service/x65-papua-utils/index.yaml @@ -1,8 +1,9 @@ format: 1 type: program name: x65PapuaUtils +summary: Сервисная программа для обслуживания телефонов Siemens на платформе SGOLD. description: |- - Комплексная сервисная программа для телефонов Siemens на платформе SGOLD: + Сервисная программа для телефонов Siemens на платформе SGOLD: моделей семейств R65, X65, X75 и X85, включая S65, S68, S75, SL65, SL75, M65, M75, ME75, CX65, CX70, CX75, C65, C72, C75 и их варианты. @@ -23,237 +24,306 @@ description: |- экспериментальный характер. Перед операциями записи следует сохранить ESN, HASH и полный FullFlash исправного телефона. homepage: https://web.archive.org/web/20130825050857/http://papuas.allsiemens.com/PapuaUtils.htm +author: Papuas screenshots: [] versions: - version: "1.1.1c" - description: Отличается от версии 1.1.1b русским языком интерфейса. + status: current + description: Русская версия. files: - path: files/x65PapuaUtilsV111c_rus.rar platform: win32 + size: 632114 sha256: 40422af6400b8b03fe86dd872bd09362975f667f6dbdd7de2475e4fbe3bb4c01 - version: "1.1.1b" + status: current + description: Английская версия. files: - path: files/x65PapuaUtilsV111b.rar description: Программа x65PapuaUtils 1.1.1b platform: win32 + size: 625333 sha256: c5bcbbe5b4e8cdf44319c0ce7aa8e943f6bf2a408239c0310b8c955a83f238d5 - version: "0.7.9d" + status: archived released: "2006-04-08" files: - path: files/x65PapuaUtilsV079d.rar description: Программа x65PapuaUtils 0.7.9d platform: win32 + size: 525033 sha256: 19c66d8de5ffbada50d589150fb755d940bcca40e7d7cf87c54a1588bc697b81 - version: "0.7.8" + status: archived released: "2006-03-16" files: - path: files/x65PapuaUtilsV078.rar description: Программа x65PapuaUtils 0.7.8 platform: win32 + size: 446927 sha256: 67736ce7e6f0612c428a2b1afadea9cd0096d59e62eea777f9698713e2a5879b - version: "0.7.7" + status: archived released: "2006-02-23" files: - path: files/x65PapuaUtilsV077.rar description: Программа x65PapuaUtils 0.7.7 platform: win32 + size: 473015 sha256: 4d84b245b50465cb2274bbb53c88221be04e450ec1a1baf715e6c329eacf52d7 - version: "0.7.6b" + status: archived released: "2006-02-09" files: - path: files/x65PapuaUtilsV076b.rar description: Программа x65PapuaUtils 0.7.6b platform: win32 + size: 470068 sha256: f35a1e5b10dbc2309b25f1ff65ff05f12708c3148c9f3eb84c0cae9fff6e69fb - version: "0.7.5c" + status: archived released: "2006-01-16" files: - path: files/x65PapuaUtilsV075.rar description: Программа x65PapuaUtils 0.7.5c platform: win32 + size: 470383 sha256: 2af3b05f56e147e957d5ad34fb895292a4bd62f7e6eccdd3d9dfdca9750cc430 - version: "0.7.4" + status: archived released: "2005-12-31" files: - path: files/x65PapuaUtilsV074.rar description: Программа x65PapuaUtils 0.7.4 platform: win32 + size: 469388 sha256: 41f39790bc07e692e13dcd1eb744215f4091e5c7345815caa7be1df6c6e179ac - version: "0.7.0" + status: archived released: "2005-12-17" files: - path: files/x65PapuaUtilsV070.rar description: Программа x65PapuaUtils 0.7.0 platform: win32 + size: 397908 sha256: 0bc8574961048d3eb98b14c555fcb49836a1cdc90166f8a14c7ba9f3445645ca - version: "0.6.9" + status: archived released: "2005-11-26" files: - path: files/x65PapuaUtilsV069.rar description: Программа x65PapuaUtils 0.6.9 platform: win32 + size: 399694 sha256: 3ece0d737a855b69bdfd931c8e14af6a7d3895c4c2685e714380c50c96dc99db - version: "0.6.8" + status: archived released: "2005-11-18" files: - path: files/x65PapuaUtilsV068.rar description: Программа x65PapuaUtils 0.6.8 platform: win32 + size: 399815 sha256: 9fff633734b473fad335b8cedf4958ff3128321324127739ab78357da275f35c - version: "0.6.7c" + status: archived released: "2005-11-13" files: - path: files/x65PapuaUtilsV067c.rar description: Программа x65PapuaUtils 0.6.7c platform: win32 + size: 399655 sha256: bed53e2f20e8e8612093457de6d1e3729fadf08f78d277ebdd7e311a40b24965 - version: "0.6.6b" + status: archived released: "2005-10-14" files: - path: files/x65PapuaUtilsV066.rar description: Программа x65PapuaUtils 0.6.6b platform: win32 + size: 399470 sha256: d4bd9c397caa1b95edd68ebf0afce45e3dde51220c2567a6217170fd48b54a5f - version: "0.6.5" + status: archived released: "2005-10-11" files: - path: files/x65PapuaUtilsV065.rar description: Программа x65PapuaUtils 0.6.5 platform: win32 + size: 398848 sha256: 32c859e29478758ad558d29ac9ec562f14467b89487048bd4ab9941b6be04975 - version: "0.6.4" + status: archived released: "2005-10-04" files: - path: files/x65PapuaUtilsV064.rar description: Программа x65PapuaUtils 0.6.4 platform: win32 + size: 397263 sha256: e175ef0711763b6905b9482eac94d197c3691a2c7d96109ad4be17ed8810c889 - version: "0.6.2" + status: archived released: "2005-10-02" files: - path: files/x65PapuaUtilsV062.rar description: Программа x65PapuaUtils 0.6.2 platform: win32 + size: 396015 sha256: 2c5eadfa0b4d67116e35d2fa5a0abaefc905060e06411b8abf0280ee37db5c07 - version: "0.6.0" + status: archived released: "2005-09-26" files: - path: files/x65PapuaUtilsV060.rar description: Программа x65PapuaUtils 0.6.0 platform: win32 + size: 527737 sha256: 38f15d7b1fe7b49712682e0aaed0b731e070fa8c95bf2b4990a442684fc4d05c - version: "0.5.6" + status: archived released: "2005-09-22" files: - path: files/x65PapuaUtilsV056.rar description: Программа x65PapuaUtils 0.5.6 platform: win32 + size: 481404 sha256: 1fc712572c3d6e84b82765fc6a71e9837a2d2bddaf3d0846d105611902a66926 - version: "0.5.5" + status: archived released: "2005-09-20" files: - path: files/x65PapuaUtilsV055.rar description: Программа x65PapuaUtils 0.5.5 platform: win32 + size: 477302 sha256: c7d32065e5d13b376fca635919841c4ac48c1e878a2d33ac239bb100aa803a85 - version: "0.5.4" + status: archived released: "2005-09-19" files: - path: files/x65PapuaUtilsV054.rar description: Программа x65PapuaUtils 0.5.4 platform: win32 + size: 477217 sha256: e86772910a36b21664e5c06843b0154b8a1ceb3cd905187906c8b211db42b370 - version: "0.5.1" + status: archived released: "2005-08-26" files: - path: files/x65PapuaUtilsV051.rar description: Программа x65PapuaUtils 0.5.1 platform: win32 + size: 331606 sha256: 2f7bda62da5ac752239041d4842ae5ee260b462868a4d0907bbfd35b5e2b2dbc - version: "0.5.0" + status: archived released: "2005-08-16" files: - path: files/x65PapuaUtilsV050.rar description: Программа x65PapuaUtils 0.5.0 platform: win32 + size: 330644 sha256: 874e8e209294bdc76394e20d05547cdf616c8752b72d8594e35fe650a5e48610 - version: "0.4.8a" + status: archived released: "2005-07-19" files: - path: files/x65PapuaUtilsV048.rar description: Программа x65PapuaUtils 0.4.8a platform: win32 + size: 330453 sha256: 8d443a7931d9256b26db52e9e0cfe60baaf95a1214219a492f58829a0846b8a3 - version: "0.4.7r" + status: archived released: "2005-07-11" files: - path: files/x65PapuaUtilsV047.rar description: Программа x65PapuaUtils 0.4.7r platform: win32 + size: 331456 sha256: f0921d459063ede951daa1a813c4efcb01b8cbee86c778587077e619f9974ccb - version: "0.4.6" + status: archived released: "2005-07-01" files: - path: files/x65PapuaUtilsV046.rar description: Программа x65PapuaUtils 0.4.6 platform: win32 + size: 329505 sha256: ac7fa346ec3bb951e8ded2412a9fb8079435af6baf5c1a6b69f90a07fa197e7f - version: "0.4.5b" + status: archived released: "2005-06-30" files: - path: files/x65PapuaUtilsV045.rar description: Программа x65PapuaUtils 0.4.5b platform: win32 + size: 328595 sha256: 011df539dc179731d8e860752ce433266d4fb4e0616d50f5b406f58c24929f24 - version: "0.4.4a" + status: archived released: "2005-06-24" files: - path: files/x65PapuaUtilsV044.rar description: Программа x65PapuaUtils 0.4.4a platform: win32 + size: 320982 sha256: df538d7444014bb1d03b088911e0fbd67e90087f441e891b2c1c6890b184101f - version: "0.4.3" + status: archived released: "2005-06-19" files: - path: files/x65PapuaUtilsV043.rar description: Программа x65PapuaUtils 0.4.3 platform: win32 + size: 321272 sha256: 122b60beb4754b10f07f66eb2de3c00ff2e1d0fc5755b8c977486943235062fc - version: "0.4.1g" + status: archived released: "2005-06-07" files: - path: files/x65PapuaUtilsV041.rar description: Программа x65PapuaUtils 0.4.1g platform: win32 + size: 317749 sha256: e75d16376506c1058cfbaf5c23bfe936a6e951b9f6e8aa673bc805e1f7bff874 - version: "0.3.8d" + status: archived released: "2005-06-01" files: - path: files/x65PapuaUtilsV038.rar description: Программа x65PapuaUtils 0.3.8d platform: win32 + size: 350969 sha256: 934e1dfc639b169739e91148e4c776bed45b55fecb8f0de5e1572161927d013e - version: "0.3.6" + status: archived released: "2005-05-28" files: - path: files/x65PapuaUtilsV036.rar description: Программа x65PapuaUtils 0.3.6 и FAQ platform: win32 + size: 349275 sha256: 0fc8dabb213982cd6efc7b082a4bd15e55703920f86b6b3f75cba35b4d846d18 additional_files: - path: files/SWP3.rar description: Файлы SWP 4.15 и 4.14 для создания UserSwup в новых версиях программы platform: win32 + size: 278635 sha256: f8d28fcfb54ee5888e7b20dbcdcc06e43f8c8e5049a5a3dae829c1cc3d9b60de - path: files/SWP2.rar description: Файлы SWP 4.14 и 4.12 для создания UserSwup platform: win32 + size: 256546 sha256: d5bf27c1023637716bdbb1b47ff14da52dbe1145ec7b282d2cc949bb9a887e42 - path: files/SWPEXE.rar description: Файл SWPEXE 4.09 для создания UserSwup в версиях ниже 0.7.4 platform: win32 + size: 127296 sha256: 4406effbdfc740ef0a9a0fc35bfa578eb31facd54af64856addc824552bf56fa - path: files/AllBugSGold.rar - description: Интерактивная видеоинструкция по устранению программных неисправностей SGOLD + description: Интерактивная видеоинструкция по устранению программных + неисправностей SGOLD platform: win32 + size: 449428 sha256: e743043a1a9c1ebc7e5cfe2fb92ba19f3cfd491e1cfcfc53667bd4b5cb8b1aae diff --git a/catalog/utilities/index.yaml b/catalog/utilities/index.yaml new file mode 100644 index 0000000..a83f456 --- /dev/null +++ b/catalog/utilities/index.yaml @@ -0,0 +1,5 @@ +format: 1 +type: category +name: Утилиты +order: 20 +description: Пользовательские утилиты для телефонов и мобильных приложений. diff --git a/development/java-tools/midletsigner/files/JRE131L.rar b/catalog/utilities/midletsigner/files/JRE131L.rar similarity index 100% rename from development/java-tools/midletsigner/files/JRE131L.rar rename to catalog/utilities/midletsigner/files/JRE131L.rar diff --git a/development/java-tools/midletsigner/files/MidletSigner5.rar b/catalog/utilities/midletsigner/files/MidletSigner5.rar similarity index 100% rename from development/java-tools/midletsigner/files/MidletSigner5.rar rename to catalog/utilities/midletsigner/files/MidletSigner5.rar diff --git a/development/java-tools/midletsigner/index.yaml b/catalog/utilities/midletsigner/index.yaml similarity index 89% rename from development/java-tools/midletsigner/index.yaml rename to catalog/utilities/midletsigner/index.yaml index 1a245cb..3bceab2 100644 --- a/development/java-tools/midletsigner/index.yaml +++ b/catalog/utilities/midletsigner/index.yaml @@ -1,6 +1,7 @@ format: 1 type: program name: MidletSigner +summary: Программа для создания сертификатов и подписи Java-мидлетов на телефонах Siemens 65/75-й серии. description: |- Программа для самостоятельного создания сертификата и подписывания Java-мидлетов на телефонах Siemens 65-й и 75-й серий. @@ -15,6 +16,7 @@ description: |- требуется JRE версии 1.3 или новее. Для телефонов 65-й серии нужен OpenDisc 2.0, а для телефонов 75-й серии в телефон должен быть введён SKEY. homepage: https://web.archive.org/web/20130813164842/http://chaos.allsiemens.com/software.html +author: Chaos screenshots: [] versions: - version: "5" @@ -22,9 +24,11 @@ versions: - path: files/MidletSigner5.rar description: MidletSigner 5 с русским и английским руководствами platform: java + size: 19259 sha256: ad81aebd58ddf45a57c42123d708214aa2cd1297cf1c871c95b8808f70939046 additional_files: - path: files/JRE131L.rar description: Минимальный JRE 1.3.1 только для запуска MidletSigner platform: win32 + size: 624754 sha256: 0236f9e6fd71537d878792b7aa4cf6b20c2a729ae9672c81d6e69289f1afcf89 diff --git a/multimedia/audio-tools/vmo2wav/files/vmo2wav.zip b/catalog/utilities/vmo2wav/files/vmo2wav.zip similarity index 100% rename from multimedia/audio-tools/vmo2wav/files/vmo2wav.zip rename to catalog/utilities/vmo2wav/files/vmo2wav.zip diff --git a/multimedia/audio-tools/vmo2wav/index.yaml b/catalog/utilities/vmo2wav/index.yaml similarity index 85% rename from multimedia/audio-tools/vmo2wav/index.yaml rename to catalog/utilities/vmo2wav/index.yaml index c705977..aca60f4 100644 --- a/multimedia/audio-tools/vmo2wav/index.yaml +++ b/catalog/utilities/vmo2wav/index.yaml @@ -1,12 +1,14 @@ format: 1 type: program name: vmo2wav +summary: Конвертер диктофонных записей Siemens SL45 из VMO в WAV. description: |- Консольный конвертер диктофонных записей Siemens SL45 из формата VMO в WAV. По умолчанию программа нормализует уровень сигнала. Нормализацию можно отключить параметром `-n`. homepage: https://web.archive.org/web/20130813164842/http://chaos.allsiemens.com/software.html +author: Chaos screenshots: [] versions: - version: "1.0" @@ -14,4 +16,5 @@ versions: - path: files/vmo2wav.zip description: Конвертер vmo2wav и руководство пользователя platform: win32 + size: 37605 sha256: fb89b2df0dc483a7a418002aee7e3d070a7613c16142246f815d08e5b527dd6c diff --git a/development/java-tools/index.yaml b/development/java-tools/index.yaml deleted file mode 100644 index d696630..0000000 --- a/development/java-tools/index.yaml +++ /dev/null @@ -1,4 +0,0 @@ -format: 1 -type: category -name: Инструменты Java ME -description: Программы для разработки, настройки и подготовки приложений Java ME. diff --git a/development/patch-tools/index.yaml b/development/patch-tools/index.yaml deleted file mode 100644 index 436a8c8..0000000 --- a/development/patch-tools/index.yaml +++ /dev/null @@ -1,4 +0,0 @@ -format: 1 -type: category -name: Средства создания патчей -description: Программы для сравнения прошивок, поиска изменений и создания патчей VKP. diff --git a/multimedia/audio-tools/index.yaml b/multimedia/audio-tools/index.yaml deleted file mode 100644 index 74e31aa..0000000 --- a/multimedia/audio-tools/index.yaml +++ /dev/null @@ -1,4 +0,0 @@ -format: 1 -type: category -name: Работа со звуком -description: Инструменты для преобразования и обработки звуковых файлов телефонов. diff --git a/multimedia/index.yaml b/multimedia/index.yaml deleted file mode 100644 index ad51558..0000000 --- a/multimedia/index.yaml +++ /dev/null @@ -1,4 +0,0 @@ -format: 1 -type: category -name: Мультимедиа -description: Программы для обработки звука, изображений и других мультимедийных данных. diff --git a/package.json b/package.json index 4876be2..2c90d28 100644 --- a/package.json +++ b/package.json @@ -4,8 +4,8 @@ "type": "module", "packageManager": "pnpm@11.3.0", "scripts": { - "sha256": "tsx scripts/fillSha256.ts", - "sha256:check": "tsx scripts/fillSha256.ts --check", + "fill-metadata": "tsx scripts/fillMetadata.ts", + "fill-metadata:check": "tsx scripts/fillMetadata.ts --check", "tree": "tsx scripts/printTree.ts", "typecheck": "tsc --noEmit" }, diff --git a/schema/index.schema.json b/schema/index.schema.json index da8bc35..de023f3 100644 --- a/schema/index.schema.json +++ b/schema/index.schema.json @@ -14,7 +14,7 @@ "name": { "type": "string", "minLength": 1, - "maxLength": 120 + "maxLength": 240 }, "description": { "type": "string", @@ -22,6 +22,11 @@ "maxLength": 4000, "contentMediaType": "text/markdown" }, + "summary": { + "type": "string", + "minLength": 1, + "maxLength": 120 + }, "url": { "type": "string", "format": "uri", @@ -59,6 +64,10 @@ "j2me" ] }, + "size": { + "type": "integer", + "minimum": 0 + }, "sha256": { "type": "string", "pattern": "^[0-9a-f]{64}$" @@ -124,6 +133,9 @@ "name": { "$ref": "#/$defs/name" }, + "order": { + "type": "integer" + }, "description": { "$ref": "#/$defs/description" } @@ -137,6 +149,7 @@ "format", "type", "name", + "summary", "description", "screenshots", "versions" @@ -151,6 +164,9 @@ "name": { "$ref": "#/$defs/name" }, + "summary": { + "$ref": "#/$defs/summary" + }, "description": { "$ref": "#/$defs/description" }, @@ -160,6 +176,9 @@ "source": { "$ref": "#/$defs/url" }, + "author": { + "$ref": "#/$defs/name" + }, "screenshots": { "type": "array", "uniqueItems": true, diff --git a/scripts/fillSha256.ts b/scripts/fillMetadata.ts similarity index 66% rename from scripts/fillSha256.ts rename to scripts/fillMetadata.ts index 0fd1f07..0a0f352 100644 --- a/scripts/fillSha256.ts +++ b/scripts/fillMetadata.ts @@ -15,10 +15,11 @@ import { } from "node:fs/promises"; import path from "node:path"; import process from "node:process"; -import { parseDocument } from "yaml"; +import { isMap, parseDocument } from "yaml"; type CatalogFile = { path?: unknown; + size?: unknown; sha256?: unknown; }; @@ -38,16 +39,21 @@ type FileReference = { yamlPath: Array; }; +type ResolvedCatalogFile = { + path: string; + size: number; +}; + const ignoredDirectories = new Set([".git", "node_modules", "files", "img"]); function usage(): void { - console.log(`Использование: pnpm sha256 [--check] [путь ...] + console.log(`Usage: pnpm fill-metadata [--check] [path ...] -Без путей скрипт обходит текущий каталог. Путь может указывать на index.yaml -или на папку, внутри которой нужно найти index.yaml. +With no paths, the script scans the current directory. A path may point to an +index.yaml file or a directory containing index.yaml files. - --check только проверить суммы, не изменяя YAML - --help показать эту справку`); + --check verify checksums and file sizes without modifying YAML + --help show this help message`); } function parseArguments(args: string[]): Options { @@ -61,7 +67,7 @@ function parseArguments(args: string[]): Options { usage(); process.exit(0); } else if (argument.startsWith("-")) { - throw new Error(`Неизвестный параметр: ${argument}`); + throw new Error(`Unknown option: ${argument}`); } else { targets.push(argument); } @@ -76,14 +82,14 @@ async function findIndexes(target: string, result: Set): Promise { if (targetStat.isFile()) { if (path.basename(absoluteTarget) !== "index.yaml") { - throw new Error(`Ожидался index.yaml: ${target}`); + throw new Error(`Expected an index.yaml file: ${target}`); } result.add(absoluteTarget); return; } if (!targetStat.isDirectory()) { - throw new Error(`Путь не является файлом или каталогом: ${target}`); + throw new Error(`Path is neither a file nor a directory: ${target}`); } const entries = await readdir(absoluteTarget, { withFileTypes: true }); @@ -119,17 +125,20 @@ function collectFileReferences(data: ProgramIndex): FileReference[] { return references; } -async function resolveCatalogFile(indexPath: string, value: unknown): Promise { +async function resolveCatalogFile( + indexPath: string, + value: unknown, +): Promise { if (typeof value !== "string" || value.length === 0) { - throw new Error("поле path отсутствует или не является строкой"); + throw new Error("the path field is missing or is not a string"); } if (path.isAbsolute(value) || value.includes("\\")) { - throw new Error(`недопустимый путь: ${value}`); + throw new Error(`invalid path: ${value}`); } const parts = value.split("/"); if (parts[0] !== "files" || parts.some((part) => part === ".." || part === "")) { - throw new Error(`путь должен находиться внутри files/: ${value}`); + throw new Error(`path must be inside files/: ${value}`); } const programDirectory = path.dirname(indexPath); @@ -137,7 +146,7 @@ async function resolveCatalogFile(indexPath: string, value: unknown): Promise { @@ -179,6 +189,29 @@ async function writeAtomically(filePath: string, contents: string): Promise, + yamlPath: Array, + size: number, +): void { + document.setIn([...yamlPath, "size"], size); + + const fileMap = document.getIn(yamlPath, true); + if (!isMap(fileMap)) { + return; + } + + const keyName = (pair: (typeof fileMap.items)[number]): string => String(pair.key); + const sizeIndex = fileMap.items.findIndex((pair) => keyName(pair) === "size"); + const sha256Index = fileMap.items.findIndex((pair) => keyName(pair) === "sha256"); + if (sizeIndex < 0 || sha256Index < 0 || sizeIndex < sha256Index) { + return; + } + + const [sizePair] = fileMap.items.splice(sizeIndex, 1); + fileMap.items.splice(sha256Index, 0, sizePair); +} + async function processIndex(indexPath: string, check: boolean): Promise { const source = await readFile(indexPath, "utf8"); const document = parseDocument(source, { prettyErrors: true }); @@ -198,8 +231,12 @@ async function processIndex(indexPath: string, check: boolean): Promise const results = await Promise.all( references.map(async (reference) => { try { - const filePath = await resolveCatalogFile(indexPath, reference.data.path); - return { reference, digest: await calculateSha256(filePath) }; + const file = await resolveCatalogFile(indexPath, reference.data.path); + return { + reference, + digest: await calculateSha256(file.path), + size: file.size, + }; } catch (error) { const message = error instanceof Error ? error.message : String(error); errors.push(`${String(reference.data.path)}: ${message}`); @@ -213,21 +250,30 @@ async function processIndex(indexPath: string, check: boolean): Promise } for (const result of results) { - if (result === undefined || result.reference.data.sha256 === result.digest) { + if (result === undefined) { continue; } - changed += 1; - if (!check) { - document.setIn([...result.reference.yamlPath, "sha256"], result.digest); + + if (result.reference.data.size !== result.size) { + changed += 1; + if (!check) { + setFileSize(document, result.reference.yamlPath, result.size); + } + } + if (result.reference.data.sha256 !== result.digest) { + changed += 1; + if (!check) { + document.setIn([...result.reference.yamlPath, "sha256"], result.digest); + } } } const displayPath = path.relative(process.cwd(), indexPath) || indexPath; if (changed > 0 && check) { - console.error(`${displayPath}: требуется обновить SHA-256 (${changed})`); + console.error(`${displayPath}: metadata update required (${changed} fields)`); } else if (changed > 0) { - await writeAtomically(indexPath, document.toString()); - console.log(`${displayPath}: обновлено SHA-256 (${changed})`); + await writeAtomically(indexPath, document.toString({ lineWidth: 0 })); + console.log(`${displayPath}: updated file metadata (${changed} fields)`); } return changed; @@ -255,16 +301,16 @@ async function main(): Promise { } if (failed > 0) { - console.error(`Ошибок: ${failed}`); + console.error(`Errors: ${failed}`); process.exitCode = 1; } else if (options.check && changed > 0) { - console.error(`Файлов с несовпадениями: ${changed}`); + console.error(`File metadata mismatches: ${changed}`); process.exitCode = 1; } else { console.log( changed > 0 - ? `Готово, обновлено полей: ${changed}` - : `Готово, все SHA-256 актуальны. Проверено index.yaml: ${indexes.size}`, + ? `Done. Updated fields: ${changed}` + : `Done. All SHA-256 checksums and file sizes are up to date. Checked index.yaml files: ${indexes.size}`, ); } } diff --git a/scripts/printTree.ts b/scripts/printTree.ts index 913a49e..64f0880 100644 --- a/scripts/printTree.ts +++ b/scripts/printTree.ts @@ -10,6 +10,7 @@ type CatalogType = "category" | "program"; type CatalogIndex = { type?: unknown; name?: unknown; + order?: unknown; versions?: Array<{ version?: unknown; status?: unknown }>; }; @@ -21,6 +22,7 @@ type CatalogVersion = { type CatalogNode = { type: CatalogType; name: string; + order: number; directory: string; versions: CatalogVersion[]; children: CatalogNode[]; @@ -38,14 +40,14 @@ const collator = new Intl.Collator("ru", { }); function usage(): void { - console.log(`Использование: pnpm tree [параметры] [путь] + console.log(`Usage: pnpm tree [options] [path] -Без пути выводится всё дерево каталога. Путь может указывать на папку категории, -программы или на её index.yaml. +With no path, the script prints the complete tree from catalog. A path may point +to a category directory, a program directory, or its index.yaml file. - --versions вывести версии под каждой программой - --paths вывести относительные пути каталогов - --help показать эту справку`); + --versions show versions under each program + --paths show relative directory paths + --help show this help message`); } function parseArguments(args: string[]): Options { @@ -62,20 +64,20 @@ function parseArguments(args: string[]): Options { usage(); process.exit(0); } else if (argument.startsWith("-")) { - throw new Error(`Неизвестный параметр: ${argument}`); + throw new Error(`Unknown option: ${argument}`); } else { targets.push(argument); } } if (targets.length > 1) { - throw new Error("Можно указать только один путь"); + throw new Error("Only one path may be specified"); } return { showPaths, showVersions, - target: targets[0] ?? ".", + target: targets[0] ?? "catalog", }; } @@ -83,6 +85,9 @@ function compareNodes(left: CatalogNode, right: CatalogNode): number { if (left.type !== right.type) { return left.type === "category" ? -1 : 1; } + if (left.type === "category" && left.order !== right.order) { + return left.order - right.order; + } return collator.compare(left.name, right.name); } @@ -96,7 +101,7 @@ async function resolveDirectory(target: string): Promise { if (targetStat.isFile() && path.basename(absoluteTarget) === "index.yaml") { return path.dirname(absoluteTarget); } - throw new Error(`Ожидалась папка каталога или index.yaml: ${target}`); + throw new Error(`Expected a catalog directory or index.yaml file: ${target}`); } async function readCatalogNode(directory: string): Promise { @@ -107,7 +112,7 @@ async function readCatalogNode(directory: string): Promise { source = await readFile(indexPath, "utf8"); } catch (error) { const reason = error instanceof Error ? error.message : String(error); - throw new Error(`${indexPath}: не удалось прочитать index.yaml: ${reason}`); + throw new Error(`${indexPath}: failed to read index.yaml: ${reason}`); } const document = parseDocument(source, { prettyErrors: true }); @@ -118,24 +123,29 @@ async function readCatalogNode(directory: string): Promise { const data = document.toJS() as CatalogIndex; if (data.type !== "category" && data.type !== "program") { - throw new Error(`${indexPath}: неизвестный type`); + throw new Error(`${indexPath}: unknown type`); } if (typeof data.name !== "string" || data.name.length === 0) { - throw new Error(`${indexPath}: отсутствует название`); + throw new Error(`${indexPath}: name is missing`); } + if (data.type === "category" && data.order !== undefined && !Number.isInteger(data.order)) { + throw new Error(`${indexPath}: category order must be an integer`); + } + + const order = data.type === "category" && typeof data.order === "number" ? data.order : 0; const versions = data.type === "program" ? (data.versions ?? []).map((entry, index) => { if (typeof entry.version !== "string" || entry.version.length === 0) { - throw new Error(`${indexPath}: некорректная версия с индексом ${index}`); + throw new Error(`${indexPath}: invalid version at index ${index}`); } if ( entry.status !== undefined && entry.status !== "current" && entry.status !== "archived" ) { - throw new Error(`${indexPath}: неизвестный статус версии ${entry.version}`); + throw new Error(`${indexPath}: unknown status for version ${entry.version}`); } return { version: entry.version, status: entry.status } as CatalogVersion; }) @@ -165,7 +175,7 @@ async function readCatalogNode(directory: string): Promise { } children.sort(compareNodes); - return { type: data.type, name: data.name, directory, versions, children }; + return { type: data.type, name: data.name, order, directory, versions, children }; } function formatNode(node: CatalogNode, showPaths: boolean): string { @@ -190,7 +200,7 @@ function printChildren( if (options.showVersions && node.type === "program") { entries.push( ...node.versions.map(({ version, status }) => ({ - label: `версия ${version}${status === undefined ? "" : ` [${status}]`}`, + label: `version ${version}${status === undefined ? "" : ` [${status}]`}`, })), ); } @@ -217,6 +227,6 @@ try { await main(); } catch (error) { const message = error instanceof Error ? error.message : String(error); - console.error(`Ошибка: ${message}`); + console.error(`Error: ${message}`); process.exitCode = 1; } diff --git a/service/firmware-tools/index.yaml b/service/firmware-tools/index.yaml deleted file mode 100644 index b9228a1..0000000 --- a/service/firmware-tools/index.yaml +++ /dev/null @@ -1,6 +0,0 @@ -format: 1 -type: category -name: Инструменты прошивок -description: >- - Вспомогательные программы для анализа, распаковки и изменения файлов прошивок - и сервисных обновлений. diff --git a/service/index.yaml b/service/index.yaml deleted file mode 100644 index a8477e5..0000000 --- a/service/index.yaml +++ /dev/null @@ -1,4 +0,0 @@ -format: 1 -type: category -name: Сервисные программы -description: Программы для диагностики, обслуживания и восстановления телефонов. diff --git a/service/repair-tools/index.yaml b/service/repair-tools/index.yaml deleted file mode 100644 index 9fef34d..0000000 --- a/service/repair-tools/index.yaml +++ /dev/null @@ -1,6 +0,0 @@ -format: 1 -type: category -name: Ремонт и восстановление -description: >- - Сервисные программы для диагностики, восстановления и ремонта программной - части телефонов.