Обновить
26
0
Alex Kup@Lifailon

Системный администратор и инженер по автоматизации

Отправить сообщение

Очень полезно, спасибо автору!!

Подходит для удаленной отладки TUI приложений на системе Linux, используя локально систему Windows.

Для тех, кто использует make (важно указать ключ -t для поддержки ttyd), на Windows запускаем его в таске VSCode через wsl make run-debug:

copy:
	@ssh $(SSH_HOST) -p $(SSH_PORT) "mkdir -p docker/lazyjournal && rm -rf docker/lazyjournal/*"
# 	@tar czf - . | ssh $(SSH_HOST) -p $(SSH_PORT) "cd docker/lazyjournal && tar xzf -"
	@scp -r -P $(SSH_PORT) ./* $(SSH_HOST):/home/lifailon/docker/lazyjournal

build-debug:
	@ssh $(SSH_HOST) -p $(SSH_PORT) "cd docker/lazyjournal && $(GO_PATH) build -gcflags='all=-N -l' -o bin/debug"

run-debug: copy build-debug
	@ssh -t $(SSH_HOST) -p $(SSH_PORT) "killall dlv || true && cd docker/lazyjournal && $(DLV_PATH) exec bin/debug --headless --listen=:12345 --api-version=2 --log"

Я очень люболю PowerShell всем сердцем, т.к. мой первый язык и сам в одно время написал кучу форм для автоматизации (некоторые примеры тут, может что пригодится и вам - https://github.com/Lifailon?tab=repositories&q=gui&type=&language=powershell), НО, это разве еще актуально? (пусть меня конечно поправят...)

Большенство компаний для параметризации скриптов используются CI/CD системы, и однозначно лучший инструмент для этих целей будет Jenkins, с точки зрения визуализации, так как имеет кучу плагинов для интеграции и кастомизации (тех же параметров), что выходит за рамки стандартного процесса CI/CD.

Так что рекомендую (исходя из своего опыта) не тритить лишнее время на изобретение велосипедов и переходить в сторону централизованной системы автоматизации для всех сотрудников сразу.

Очень удобный инструмент (eget), возьму его на вооружение! Добавил в README инфо для установки. По поводу apt, его также можно использовать как и dpkg для локальной установки deb пакета (предварительно нужно загрузить, пакет идет в составе релиза). В будущем попробую добавить в официальный apt (если получится, взял на заметку).

1. Об этом сказано в README и статье. Также добавлю сочетание Ctrl+H и ? для удобства, а сам вызов справки на мой взгляд стандартная практика для TUI. Сочетаний не так много на мой взгляд (пока что), а добавлять текст снизу с информацией о справке не хотелось, тем самым отнимая рабочую площадь.

2. PgUp/PgDown добавлено по запросу #10

3. Не придал этому значение, исправлю! Спасибо за замечание.

Т.к. реализована поддержка мыши для управления, это переопределяет стандартные нажатия/выделение. Чтобы выделить текст, используйте зажатые клавиши Ctrl+Shift (аналогично, как в текстовых редакторах, типа VSCode). Для копирования стандартно Ctrl+C.

Спасибо за ваш отзыв!

Насчет apt не задавался вопросом (если не путаю, он использует deb пакеты, в последнем релизе я добавил их сборку для релиза), но открыл запрос в SnapCraft, второй по популярности менеджер пакетов для систем на базе Debian. Для полноценной работы интерфейса (из за ограничений "песочницы") требуется режим classic, который сложно согласовать, вопрос перешел на архитекторов и затормозился...

Про eget ранее не слышал, это публичный менеджер? Если да, вы бы могли открыть Pull Request, что бы добавить инструкции по установки в README файл из данного менеджера пакетов, это было бы полезно!

Спасибо за замечание! Будет и правда удобнее добавить / для смены фокуса на окно фильтрации, справку на ? также добавлю. Отображение клавиш снизу не стал добавлять намеренно, что бы не уменьшать рабочую область.

Если возможно, сможете открыть issues, или перечислить здесь, какие именно клавиши стоит изменить/переназначить, и на какие.

Спасибо за полезную рекомендацию! Надо добавить проверку перед сборкой. На текущий момент используется только проверка разных linter-ов

Нет пока понимания/решения, как полноценно протестировать сам интерфейс, а не только отдельные функции.

К сожалению нет возможности проверить на архитектуре arm64, было бы полезно подвердить работоспособность или открыть проблему.

Про lnav также упомянуто в статье, вообще отличный инструмент, но в него нужно передавать вывод, а lazyjournal уже подразумевает централизованный доступ к журналам и их поиск по средствам фильтрации.

Данная статья скорее про централизованный поиск (не ходить по разным трекерам), с целью упростить данный процесс и находить нужную раздачу исходя из всех критерием (с помощью фильтров и сортировки) а потом уже перейти на сайт трекера для ознакомиться при необходимости. Безусловно решения servarr удобны, но нужны далеко не всем (все таки это про автоматизацию), да и требуют куда больше настроек, что уже может отпугнуть новых пользователей.

Зачем сразу с торрента? Такое реализовано в расширение LibreKinopoisk и YoK через api Kinobox, но это актуально только для тех, кто смотрит онлайн с ПК/ноутбука/планшета.

Но от этого сайты-кинотеатры не умрут, т.к. модель подписки все равно куда удобнее, особенно для просмотри с TV/приставки, да и стоит вполне адекватных денег, особенно при использовании всевозможных акций.

Еще могу порекомендовать проект Nefarious, это веб интерфейс, который использует Jackett для поиска в связке с выводом информации из TMDB (это особенно удобно), а также использует Transmisson для загрузки. Немного сыроват, но поддерживает отслеживание и автоматическую загрузку.

Попробовал, очень интересный и в целом удобный проект для использования, как я заметил, созданный русскоязычным разработчиком. Из явных минусов, это слишком кучная новостная лента без фильтрации по категориям как в Jackett (т.е. задумка интересная, но такое вряд ли будет применимо на практике, для таких целей все таки удобнее использовать RSS клиенты, что бы смотреть только то, что интересует), долгая загрузка базы и не очень удобная фильтрация для поиска. Хотелось бы искать раздачи в конкретных или только русскоязычных трекерах, например, отсеивая все зарубежные. Тут же принцип обработки самой torrent-сети через p2p без привязки к трекеру, по этому сделать такое невозможно, присутствует фильтрация только с помощью регулярных выражений по заголовкам для базы данных, например, что бы отсеять раздачи на языках, отличных от Английского и Русского, что уже неплохо.

Как альтернатива, можно еще посмотреть в сторону BitMagnet, который находится в активной фазе разработки, можно подробнее почитать на их сайте. На выходе получаем независящий от внешних трекеров индексатор, который будет работать автономно (использует бд postgres), и подключенный через DHT к глобальной сети пиров постоянно находить новый контент. Имеется веб интерфейс, GraphQL (странное решение, оч редко встречается) и Torznab API для servarr.

Если нужен клиент все в одном (с торрент клиентом и интерфейсом для инициализации контента), где backend вынесен на внешний сервер - Popcorn (хотя там тоже есть свои проблемы, и не всегда стабильно работаю сервера).

Я получал ответы такого же формата в тэгах, иногда из разряда "уточните ваш вопрос", за исключением когда можно выставить параметр для получения сразу 3-4 ответов, даже в таком случае через раз может быть один из таких ответов корректным и соответствовать Web-версии. Как мне кажется, могут помочь игры с параметрами temperature и top_p, но куда такое нестабильное решение внедрять мне не понятно.

Так и не нашел бесплатного варианта с API, пока что как альтернатива использую Selenium для интеграции в скрипты Web-версии сторонних и публичных моделей ChatGPT (пока тестирую, ищу самый стабильный вариант).

В Ubuntu еще в конце для обновления списка сертификатов (забыл добавить):

update-ca-certificates -v

Опробовав модель, очень разочаровала, ответы сильно отличаются от тех, что отдает Web-версия. Можно получить что-то подходящее только запрос на 2-3, а то и 5, при этом продолжают тратиться токены...

Не путайте, работать с подобными библиотеками дает возможность не C#, а платформа .NET, в свою очередь PowerShell основан на этой платформе. Если вопрос в том, почему PowerShell, когда есть C#? Тут все просто, для многих (я в том числе) использовать этот язык привычнее, т.к. является скриптовым языком, в первую очередь он для администраторов, а C# больше для разработки, иначе зачем два языка под одну платформу? Для тех, кто регулярно пишет на PowerShell очень часто работает с подобными библиотеками, на GitHub их наберется несколько тысяч, это нормальная практика.

Полезная статья, развелось много моделей ИИ, про Сбер ранее и не слышал, спасибо! По поводу установки сертификата, этот процесс легко автоматизировать в несколько команд.

Для Windows (PowerShell):

Invoke-WebRequest "https://gu-st.ru/content/lending/russian_trusted_root_ca_pem.crt" -OutFile "$home\Downloads\russian_trusted_root_ca.cer" # скачать сертификат минцифры
Invoke-WebRequest "https://gu-st.ru/content/lending/russian_trusted_sub_ca_pem.crt" -OutFile "$home\Downloads\russian_trusted_sub_ca.cer"
Import-Certificate -FilePath "$home\Downloads\russian_trusted_root_ca.cer" -CertStoreLocation "Cert:\CurrentUser\Root" # установить сертификат минцифры
Import-Certificate -FilePath "$home\Downloads\russian_trusted_sub_ca.cer" -CertStoreLocation "Cert:\CurrentUser\CA"

Ubuntu (Bash):

wget https://gu-st.ru/content/lending/russian_trusted_root_ca_pem.crt
wget https://gu-st.ru/content/lending/russian_trusted_sub_ca_pem.crt
mkdir /usr/local/share/ca-certificates/russian_trusted
cp russian_trusted_root_ca_pem.crt russian_trusted_sub_ca_pem.crt /usr/local/share/ca-certificates/russian_trusted

1

Информация

В рейтинге
Не участвует
Зарегистрирован
Активность

Специализация

Системный администратор, DevOps-инженер
Ведущий
Powershell
.NET
Bash
Golang
Node.js
Swagger
Postman
Selenium
Docker
Jenkins