From 3a821f394561f13e8f6f6b6be36752926db17ffb Mon Sep 17 00:00:00 2001 From: Vladimir Hodakov Date: Mon, 20 Dec 2021 18:32:06 +0400 Subject: [PATCH] Add tracker release script --- .gitignore | 1 + USAGE.md | 44 +++++++++++++++++++++++++++++++------------- tracker_release.sh | 35 +++++++++++++++++++++++++++++++++++ 3 files changed, 67 insertions(+), 13 deletions(-) create mode 100755 tracker_release.sh diff --git a/.gitignore b/.gitignore index 9517992..f1cb1cb 100644 --- a/.gitignore +++ b/.gitignore @@ -2,3 +2,4 @@ .env dist/ .idea +release/ diff --git a/USAGE.md b/USAGE.md index 60640d3..239652c 100644 --- a/USAGE.md +++ b/USAGE.md @@ -1,6 +1,8 @@ # NNM-Club Uploaders Tools -Данная программа предназначена для загрузки торрент-файлов из разделов форума NNM-Club. Использование этой программы разрешено только действующим участникам релиз-группы Uploaders. Если вы не принадлежите к их числу, удалите программу немедленно! +Данная программа предназначена для загрузки торрент-файлов из разделов форума NNM-Club. Использование этой программы +разрешено только действующим участникам релиз-группы Uploaders. Если вы не принадлежите к их числу, удалите программу +немедленно! ## Как использовать GUI-версию @@ -8,15 +10,19 @@ GUI для данной программы пока отсутствует, но ## Как использовать консольную версию -Для начала, скопируйте файл `massdl`/`massdl.exe` из директории, соответствующей вашей операционной системе и архитектуре процессора в папку, в которой вы планируете запускать программу, после чего откройте программу командной строки. +Для начала, скопируйте файл `massdl`/`massdl.exe` из директории, соответствующей вашей операционной системе и +архитектуре процессора в папку, в которой вы планируете запускать программу, после чего откройте программу командной +строки. * Для Windows это может быть cmd.exe, Windows PowerShell или Windows Terminal * Для Linux — терминал из поставки вашего DE, или же просто голая консоль * Для macOS — Terminal.app или iTerm2 -Перейдите в папку, в которой у вас появился файл `massdl` (или `massdl.exe` в случае Windows). Обычно для перехода в папку нужно выполнить команду `cd /путь/к/папке/` (или `cd буква_диска:\путь\к\папке` в случае Windows). +Перейдите в папку, в которой у вас появился файл `massdl` (или `massdl.exe` в случае Windows). Обычно для перехода в +папку нужно выполнить команду `cd /путь/к/папке/` (или `cd буква_диска:\путь\к\папке` в случае Windows). -Любые дальнейшие действия предполагают, что вы находитесь в терминале, в котором открыта папка с файлом `massdl`/`massdl.exe`. +Любые дальнейшие действия предполагают, что вы находитесь в терминале, в котором открыта папка с файлом `massdl` +/`massdl.exe`. ### Авторизация в NNM-Club @@ -28,17 +34,23 @@ GUI для данной программы пока отсутствует, но * Имя пользователя: ваше имя пользователя. * Пароль: ваш пароль. -После ввода всех данных приложение попробует авторизоваться на сайте, и сообщит, смогло ли оно это сделать. Если оно не смогло войти на сайт — повторите запуск `./massdl -auth`, убедившись, что вы вводите правильный пароль, а сервер форума доступен для связи (иногда для стабильного соединения нужен VPN). +После ввода всех данных приложение попробует авторизоваться на сайте, и сообщит, смогло ли оно это сделать. Если оно не +смогло войти на сайт — повторите запуск `./massdl -auth`, убедившись, что вы вводите правильный пароль, а сервер форума +доступен для связи (иногда для стабильного соединения нужен VPN). После успешного логина можно приступать к скачиванию торрент-файлов. ### Скачивание торрентов -Для скачивания торрентов запустите команду `./massdl -forum <номер_форума>`, в которой `<номер_форума>` — число без кавычек, которое видно в адресной строке, если открыть этот форум. К примеру, для форума "Native *Nix Games", чей адрес https://nnmclub.ro/forum/viewforum.php?f=1193, номер форума равен 1193. +Для скачивания торрентов запустите команду `./massdl -forum <номер_форума>`, в которой `<номер_форума>` — число без +кавычек, которое видно в адресной строке, если открыть этот форум. К примеру, для форума "Native *Nix Games", чей +адрес https://nnmclub.ro/forum/viewforum.php?f=1193, номер форума равен 1193. -Расширенная опция `-outputDir` позволяет указать конкретную папку, в которой будет создана папка с торрент-файлами. По умолчанию папка с торрент-файлами создаётся рядом с файлом `massdl`/`massdl.exe`. +Расширенная опция `-outputDir` позволяет указать конкретную папку, в которой будет создана папка с торрент-файлами. По +умолчанию папка с торрент-файлами создаётся рядом с файлом `massdl`/`massdl.exe`. -Пример: чтобы скачать форум "Native *Nix Games", а торрент-файлы из него появились на рабочем столе в Windows, программу следует вызвать следующим образом: +Пример: чтобы скачать форум "Native *Nix Games", а торрент-файлы из него появились на рабочем столе в Windows, программу +следует вызвать следующим образом: ```sh ./massdl -forum 1193 -outputDir C:\Users\MyUsername\Desktop @@ -48,18 +60,24 @@ GUI для данной программы пока отсутствует, но Для любой версии этой программы верны следующие особенности: -* Программа работает по методу best effort: к сожалению, так как в её основе парсинг HTML, нет 100% гарантии, что будут скачаны все торрент-файлы. Однако, даётся гарантия, что будут обнаружены все топики указанного форума, и в логах можно будет посмотреть, с какими из них возникли проблемы. +* Программа работает по методу best effort: к сожалению, так как в её основе парсинг HTML, нет 100% гарантии, что будут + скачаны все торрент-файлы. Однако, даётся гарантия, что будут обнаружены все топики указанного форума, и в логах можно + будет посмотреть, с какими из них возникли проблемы. * При сетевых ошибках программа пытается повторить запрос 5 раз, после чего прекращает попытки. -* Вне зависимости от указанного пути сохранения торрентов будет создана поддиректория с названием, равным номеру форума, в которой будут лежать все торренты. +* Вне зависимости от указанного пути сохранения торрентов будет создана поддиректория с названием, равным номеру форума, + в которой будут лежать все торренты. * Торренты в директории сортируются по дате последнего обновления. * Топики, не проверенные модераторами, игнорируются. * Подфорумы игнорируются — для них следует запускать программу ещё раз с номером подфорума. -* Скачивание нескольких форумов за раз пока не поддерживается. +* Скачивание нескольких форумов за раз не поддерживается. * К сожалению, пока что логи не сохраняются на диск. -* В конце работы показывается суммарный объём свободного места на жёстком диске, который необходим для скачивания всех торрентов, полученных в ходе сеанса работы программы. +* В конце работы показывается суммарный объём свободного места на жёстком диске, который необходим для скачивания всех + торрентов, полученных в ходе сеанса работы программы. Указанные выше особенности могут быть исправлены/пересмотрены в будущем. ## Багрепортинг и фичреквестинг -Единственное место, где принимаются сообщения об ошибках в программе и пожелания по её улучшению — топик на форуме NNM-Club. Подобные запросы в личные сообщения форума будут игнорироваться, а за пределами форума — приводить к потере возможности коммуницировать с автором. Автор обязуется обрабатывать сообщения в теме форума хотя бы раз в неделю. +Единственное место, где принимаются сообщения об ошибках в программе и пожелания по её улучшению — топик на форуме +NNM-Club. Подобные запросы в личные сообщения форума будут игнорироваться, а за пределами форума — приводить к потере +возможности коммуницировать с автором. Автор обязуется обрабатывать сообщения в теме форума хотя бы раз в месяц. diff --git a/tracker_release.sh b/tracker_release.sh new file mode 100755 index 0000000..b5bf0d4 --- /dev/null +++ b/tracker_release.sh @@ -0,0 +1,35 @@ +#!/bin/bash + +rm -rf release/ +cp -R dist/ release/ + +find release -maxdepth 1 -type f -delete +cp USAGE.md release/ +cp LICENSE release/ + +cd release/ || exit 1 + +for x in *; do + mv -- "$x" "${x//uploader_tools_/}" +done +for x in *386*; do + mv -- "$x" "${x//386/i386}" +done +for x in *arm_7*; do + mv -- "$x" "${x//arm_7/armv7}" +done +for x in *arm_6*; do + mv -- "$x" "${x//arm_6/armv6}" +done +for x in *freebsd*; do + mv -- "$x" "${x//freebsd/FreeBSD}" +done +for x in *darwin*; do + mv -- "$x" "${x//darwin/macOS}" +done +for x in *linux*; do + mv -- "$x" "${x//linux/Linux}" +done +for x in *windows*; do + mv -- "$x" "${x//windows/Windows}" +done