| Crates.io | swuc |
| lib.rs | swuc |
| version | 0.2.0 |
| created_at | 2025-04-16 19:48:50.102955+00 |
| updated_at | 2025-04-16 19:48:50.102955+00 |
| description | SWUC | Software Update Checker Client |
| homepage | |
| repository | https://github.com/NotBalds/swuc-client |
| max_upload_size | |
| id | 1636868 |
| size | 85,473 |
SWUC (Secure Software Updates Checker) — это инструмент командной строки, предназначенный для безопасной проверки обновлений программного обеспечения. Он обменивается данными с удаленным сервером с использованием зашифрованных коммуникаций для обеспечения конфиденциальности и безопасности при проверке обновлений программных пакетов.
cargo install swuc
Или сборка из исходного кода:
git clone https://github.com/username/swuc.git
cd swuc
cargo build --release
Скомпилированный бинарный файл будет доступен по пути target/release/swuc.
Перед использованием SWUC необходимо настроить файл конфигурации по следующему пути:
~/.config/swuc/user_config.json~/Library/Application Support/swuc/user_config.jsonC:\Users\<имя_пользователя>\AppData\Roaming\swuc\config\user_config.jsonПример конфигурации:
{
"url": "wss://updates.example.com/api/check",
"uuid": "ваш-уникальный-идентификатор",
"secret": "ваш-секретный-ключ",
"public": "ваш-публичный-ключ"
}
SWUC требует как минимум одну подкоманду для работы. В настоящее время поддерживается подкоманда run для запуска проверки обновлений.
swuc [ПОДКОМАНДА] [ОПЦИИ]
В настоящее время SWUC поддерживает следующую подкоманду:
run - Запуск проверки обновленийИнициирует процесс проверки обновлений. Читает список пакетов из указанного входного файла, отправляет зашифрованные запросы на сервер обновлений и генерирует отчеты.
swuc run -i <ВХОДНОЙ_ФАЙЛ> [-o <ВЫХОДНОЙ_ФАЙЛ>] [-t <ИНТЕРВАЛ>]
-i, --input <ФАЙЛ> (обязательно): Путь к файлу со списком пакетов. Этот файл должен содержать одно имя пакета на строку.
-o, --output <ФАЙЛ> (опционально): Путь, по которому будет сохранен отчет в читаемом виде. Если не указан, отчет будет сохранен только в местах по умолчанию (директория desktop/swuc-reports).
-t, --interval <ЧАСЫ> (опционально): Интервал в часах между проверками обновлений. Если указан, SWUC будет работать непрерывно, проверяя обновления через указанный интервал. Если не указан, SWUC выполнит проверку один раз и завершит работу.
swuc run -i ~/packages.txt -o ~/update_report.txt
swuc run -i ~/packages.txt -o ~/update_report.txt -t 24
Файл со списком пакетов должен содержать одно имя пакета на строку:
package1
package2
package3
SWUC создает два типа отчетов:
Отчеты сохраняются в:
-o)~/Desktop/swuc-reports/latest.txt)~/Desktop/swuc-reports/report_ЧЧ-ММ_ДД-ММ-ГГГГ.txt)Кроме того, SWUC поддерживает файл, отслеживающий текущие версии пакетов, по пути ~/Desktop/swuc_current.txt.
SWUC использует ECIES (Elliptic Curve Integrated Encryption Scheme) для защиты коммуникаций с сервером обновлений. Клиент и сервер обмениваются публичными ключами, обеспечивая шифрование информации о пакетах при передаче.
SWUC предоставляет подробные сообщения об ошибках, когда возникают проблемы, включая:
SWUC кэширует ответы сервера в следующих местах:
~/.cache/swuc/~/Library/Caches/swuc/C:\Users\<имя_пользователя>\AppData\Local\swuc\cache\Это позволяет проводить аудит и устранение неполадок при необходимости.
Текущая версия: 0.2.0