1

Add tracker release script

This commit is contained in:
Vladimir Hodakov 2021-12-20 18:32:06 +04:00
parent 21d9108539
commit 3a821f3945
Signed by: Vladimir Hodakov
GPG Key ID: 673980B6882F82C6
3 changed files with 67 additions and 13 deletions

1
.gitignore vendored
View File

@ -2,3 +2,4 @@
.env
dist/
.idea
release/

View File

@ -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. Подобные запросы в личные сообщения форума будут игнорироваться, а за пределами форума — приводить к потере
возможности коммуницировать с автором. Автор обязуется обрабатывать сообщения в теме форума хотя бы раз в месяц.

35
tracker_release.sh Executable file
View File

@ -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