Repack software and centralize file metadata
This commit is contained in:
@@ -8,6 +8,7 @@
|
||||
```text
|
||||
catalog/
|
||||
├── index.yaml
|
||||
├── files.yaml
|
||||
└── category/
|
||||
├── index.yaml
|
||||
└── program/
|
||||
@@ -54,8 +55,6 @@ versions:
|
||||
- path: files/program-1.2.0.zip
|
||||
description: Дистрибутив
|
||||
platform: win32
|
||||
size: 123456
|
||||
sha256: 0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef
|
||||
additional_files:
|
||||
- path: files/manual.pdf
|
||||
description: Руководство пользователя
|
||||
@@ -67,7 +66,11 @@ additional_files:
|
||||
|
||||
Файлы версий указываются в `versions[].files`, общие файлы — в
|
||||
`additional_files`. Пути файлов начинаются с `files/`, скриншотов — с `img/`.
|
||||
`size` содержит размер в байтах. Архивы хранятся через Git LFS.
|
||||
Дистрибутивы хранятся в совместимых с Windows XP ZIP-архивах через Git LFS;
|
||||
отдельные EXE также упаковываются в ZIP.
|
||||
|
||||
Размеры и SHA-256 всех файлов находятся в автоматически создаваемом
|
||||
`catalog/files.yaml`, а не в индексах программ.
|
||||
|
||||
## Команды
|
||||
|
||||
@@ -79,6 +82,5 @@ pnpm tree
|
||||
pnpm typecheck
|
||||
```
|
||||
|
||||
`fill-metadata` заполняет `size` и `sha256`. Команда принимает путь к программе,
|
||||
категории или `index.yaml`. `tree` принимает путь и флаги `--paths`,
|
||||
`--versions`.
|
||||
`fill-metadata` пересобирает `catalog/files.yaml`. `tree` принимает путь и флаги
|
||||
`--paths`, `--versions`.
|
||||
|
||||
Reference in New Issue
Block a user