Все записи автора rain

Волшебный мир OpenCode

Примерно 3 недели назад меня познакомили с OpenCode. В итоге все эти 3 недели я практически нон-стоп переделывал все те jabber-проекты, что вел раньше, а также взялся за некоторые новые.

Основная проблема везде — проекты в основном старые, зачастую еще со времен активного использования джаббера массами. Основная масса написана на Python2 под какие-то старые библиотеки, которые либо python2-only, либо сильно поменялись и прямую замену py2->py3 сделать не выйдет. Разве что JabRSS мог похвастаться хоть какой-то работой с Python3. Незадолго до знакомства с OpenCode я даже подготовил docker-образ на базе Debian 11, где еще можно было поставить Python2 и сделать окружение для запуска старого софта.

Теперь все поменялось.

Читать далее Волшебный мир OpenCode

Небольшой тест 21700 Samsung с разборки с Nkon

По случаю тут попали в руки «Samsung INR21700-58E (CC5493F101) 5330mAh — 10.7A — Reclaimed» с Nkon — заявляется, что состояние близко к новому и взяты с разобранной батареи, которая по какой-то там причине не пущена в эксплуатацию. Закинул несколько ячеек в купленную ранее Liitokala Lii-600. Уже после завершения теста случайно открыл для себя, что повторное нажатие на кнопку выбора ячейки переключает отображение между залитым и полученным током, так что в итоге можно высчитать КПД элемента:

Разряд, mAh Заряд, mAh КПД, % Rвн., мОм
5422 5839 92,86 10.65
5541 5685 97,47 10.55
5439 5617 96,83 10.55
5571 5739 97,07 10.44
5403 5634 95,9 10.57
5511 5588 98,62 10.61
5470 5628 97,19 10.46
5521 5688 97,06 10.65
5424 5676 95,56 10.55
5553 5659 98,13 10.61
5458 5625 97,03 10.66
5508 5740 95,96 10.55
5416 5656 95,76 10.57
5455 5548 98,32 10.55
5447 5571 97,77 10.62
5536 5766 96,01 10.42

Емкость соответствует, КПД ожидал даже ниже.

Mediawiki, закрываемся от ботов

В последнее время на фоне ИИ-бума прямо нашествие ботов на всех сайтах. Robots.txt стал не особо актуален; отсеивание по User Agent’у — тоже. Паразитный трафик вырос в десятки, а то и сотни раз. Буквально вчера добавлял правила у fail2ban для находящегося на публике RSS Bridge — через него повадились сканировать самые разные ТГ-каналы.

Так что достаточно вовремя я сделал кэширование и отдачу статики на своих вики-проектах, однако на сейчас уже и этого мало. Боты залазят на такие URL, куда живой человек вряд ли догадался бы зайти. Например, за 18 лет JabberWorld’а я практически никогда не пользовался разделом «Информация о странице», сейчас же в логах — тонны запросов с «action=info«. В итоге — да, для «живых людей» отдача статики, конечно, помогает, страничка будет отдаваться моментально, однако из-за хождения ботов по «особым» страницам все равно будет постоянно дергаться PHP, база и все, что с этим связано. Лишние затраты оперативной памяти, которую можно было выделить на что-то более полезное.

Пришлось принимать меры: порезать доступ на ряд страниц для незалогиненных пользователей — в чем-то не особо значимо, а в чем-то пришлось ущемить в возможностях.

Читать далее Mediawiki, закрываемся от ботов

Обновил ESP Home, новые имена сенсоров

«Не было печали — апдейтов накачали» (с).

В последние дни занимался апдейтами ESP Home, Home Assistant и того, что с этим связано. В целом, увлекся docker’ом, поэтому в последнее время вышло пообновлять ряд домашнего софта — и развернуть новый. Если раньше версия Home Assistant у меня «замерла» на 2024-какой-то-там, которую последнюю можно было установить на pyhon-3.11 из Debian 12 (а обновлять систему я немного опасался даже после выхода Debian 13 — как оказалось, зря), а ESP Home из-за него — на 2025.9.3, то сейчас могу свободно переключаться между версиями без привязки к системе. Попутно, кстати, на какой-то комбинации версий получил в логах девайса (впервые!) сообщение «‘Home Assistant 2025.12.5′ using outdated API 1.13, update to 1.14+» (хотя при этом и все работало) — тут хотя бы ясно было, что / с чем / из-за чего не стыкуется, а не молчаливое пропадание сенсоров, как это было в прошлый раз.

Так или иначе, на сейчас у меня последние версии как ESP Home, так и Home Assistant. На части девайсов пообновлял прошивки — и в итоге поотваливались скрипты, которые забирали с них данные через REST API. Как оказалось, сменилось именование сенсоров — если раньше все приводилось в нижний регистр и пробелы заменялись на подчеркивание, то сейчас обращаться надо именно по тому имени, которое указано. Если раньше был URL вида ip/sensor/l2_voltage, то сейчас — ip/sensor/L2%20Voltage. Альтернативно — можно не кодировать пробел, но взять URL в кавычки — "ip/sensor/L2 Voltage".

Веб-интерфейс к архиву «Флибусты»

Короткая заметка по теме локальной библиотеки. Как уже писал в прошлой заметке, сделал интерфейс для работы с ZIM-файлами с архивами Википедии. С архивом «Флибусты» в Linux обычно работал через Myrulib, которая уже больше десятка лет не развивается — уже не помню, вроде были какие-то проблемы со сборкой, но где-то нашел то ли готовую сборку под современные системы, то ли переделанную, которую получилось собрать — в общем, тем и пользовался.

Сейчас захотелось большего. Что было найдено:

Читать далее Веб-интерфейс к архиву «Флибусты»

Открыл для себя проект Kiwix: оффлайн-копия Wikipedia

Собственно, сабж. Архив с fb2-книгами с «Флибусты» я давно у себя на NAS держу, а тут на глаза попался проект Kiwix. Оказалось, держать у себя на диске оффлайн-копии Википедии, Викисловаря и некоторых других сайтов не просто, а очень просто. Есть читалки для самых разных устройств и систем (в том числе в репозитории Debian). Все, что надо — скачать ZIM-файл (к слову, если добавить к нужному файлу расширение .torrent — можно качать через торрент) нужного проекта (либо воспользоваться встроенной библиотекой в некоторых читалках) и под нужный язык и открыть его в этой читалке. И есть kiwix-server, который можно развернуть, например, на NAS и с помощью которого можно через веб-браузер работать с этими оффлайн-копиями:

docker run -d -v /storage/info/zim/:/data -p 8080:8080 --restart unless-stopped --name kiwix-server jamescherti/kiwix-serve *.zim

В этой копии «Википедии» не будет истории правок и всякого такого. Это просто слепок проекта на определенную дату, позволяющий читать его без доступа в Интернет. Поэтому maxi-версия (да, там есть разные варианты, с полным и сокращенным набором статей, с картинками и без) английской «Википедии» весит всего 116 ГБ, еще 39 и 27 займут русская и украинская. В общем, на копеечной флешке сейчас на планшете легко и просто держать огромную базу знаний.

И это круто.

Update: конкретно от Wikimedia можно загрузить ZIM-файлы по этой ссылке.

Rock’n’Roll Racing и апгрейд Air Blade

Про игры я тут еще вроде не писал 🙂

Спустя более, чем 2 десятка лет, как я активно играл в RRR на Sega Mega Drive 2 — открыл для себя, что при апгрейде бампера в Air Blade (машинка, которую стоит сразу же покупать на замену дефолтным, как только появятся 70к) снижается мощность ракет.

Играл на эмуляторе (купил даже на Али джойстик под что-то этакое), прошел целиком все на Warrior и с Air Blade, у которого из апгрейдов были только ракеты/мины/ускорители: сначала держал деньги ради покупки Havac в нужный момент (кстати, после 1 млн. $ счетчик переполняется, но «внутри» значение остается верным), потом был спортивный интерес уже доиграть так.

Потом решил ради фана поиграть с последнего сохранения (Slash, division A), но уже проапгрейдившись. Начинаю — а противники-то выносятся не так активно. Проверил — да, без апгрейдов было лучше: 2 ракеты и готово; выпустил полный запас — и на время вокруг тихо. Перебрал по очереди обновленные компоненты — таки бампер. С апгрейдом пропорционально слабеют ракеты, на максимальном уровне уходит (вроде) 4 штуки на противника.

Неожиданно 🙂

Update: проверил изменения при апгрейде бампера (защиты, если быть точным) — меньше потери на минах. Без апгрейда выходит 35% потерь на статичной мине (наезд на 3 мины — и все), с полным апгрейдом — 15-20%.

Мораль — не наезжаем на мины и не пользуемся защитой 🙂

Приручаем кормушку для собаки

А вот, собственно, и то, с чего началось мое близкое знакомство с внутренностями tuya-based-устройств — упомянутая ранее автоматическая кормушка для собаки. По случаю взял в ноябре 2025-го — решил, что может быть полезна в некоторых ситуациях. Выбор пал на такое:

Обошлась со скидками чуть менее 22$ (базовая цена была 25$); старая ссылка нерабочая, но на момент написания подобные варианты попадаются по ценам около 50$.

Проверил — работает. И… сразу разобрал. Как же без переделки под Home Assistant? 🙂

Читать далее Приручаем кормушку для собаки