Поиск по блогу

вторник, 16 июля 2019 г.

Проблемы с обновлением ключа репозитория

В этом году я повторил свой промах с GPG ключем репозитория и снова пропустил срок обновления ключа (аналогично в 2015 и 2017 годах). Но в этом году ситуация немного отличается от прошлого раза и поправить ее стало сложнее.

Продление ключа и отправка его на pool.sks-keyservers.net ничего не дала и мне продолжают приходить письма, что мой репозиторий сломан. В баг трекере Midnight Commander даже завели баг на эту тему.

среда, 3 июля 2019 г.

Обновление Xiaomi Mi 4c до LineageOS 15.1

Моему Xiaomi Mi 4c уже идет четвертый год с момента покупки. За это время он успел сменить несколько прошивок (MIUI, CyanogenMod 12.1, CyanogenMod 13.1, LineageOS 14.1) и получить новую батарею. Хотя правильнее сказать полторы новых батареи. Первая батарея, которую я впопыхах купил на радиорынке, вздулась через неделю использования. А вот вторая, которую я уже покупал в сервис-центре Xiaomi в Минске, служит второй год.

За все это время я делал несколько попыток найти ему более свежую замену, но каждый раз останавливает размер экранов свежих смартфонов, который неуклонно движется в сторону 7" (с такой диагональю когда-то выходили планшеты). Да и моделей с поддержкой быстрой зарядки и размером экрана в 5" на рынке немного.

среда, 29 мая 2019 г.

Колесный робот - часть 1

О соревнованиях RoboRace я впервые узнал из доклада на MLUG (Minsk Linux User Group). Было интересно послушать о проблемах, которые нужно решить чтобы робот не только смог проехать по трассе, но и сделать это быстро. С тех пор прошло несколько лет, но относительно недавно на глаза попалось видео с их YouTube канала и остаток вечера ушел на просмотр записей соревнований вместе с детьми.

В начале этой весны мы сходили семьей на "Бал роботов" и детям очень понравились роботы, которыми можно было управлять или программировать на выполнение простых действий. Наверное так и родилась идея попробовать собрать простого робота, который сможет проехать по линии или хотя бы избегать препятствий, а заодно провести больше времени с детьми.

Для начала заказал на AliExpress полноприводное колесное шасси и шилд для управления моторами. В качестве контроллера предполагалось использовать плату Freeduino 2009, которую я покупал еще 10 лет назад и она до сих пор работает без нареканий.

среда, 1 мая 2019 г.

Обновил конвертер JTV в XMLTV

Несколько лет назад интернет-провайдер, который первым в нашем доме предложил интернет через Ethernet, предоставлял программу передач для IPTV только в формате JTV.
Формат JTV появился в одноименной программе польского разработчика Ярослава Ковальского для ТВ-тюнеров на базе чипов bt8x8. Это двоичный формат, база телепрограмм JTV обычно является архивом ZIP или RAR, содержащим пары файлов (с расширением NDX и PDT) для каждого телеканала.
Программа передач в формате XMLTV тогда провайдером не предоставлялась и собирать EPG из разных источников было проблемой. Я поискал в интернете и не найдя готового конвертера из JTV в XMLTV написал свой.

четверг, 25 апреля 2019 г.

Особенности Power Disable в спецификации SATA 3.3

Листая ленту наткнулся на интересное описание различного поведения диска HGST Ultrastar DC HC510 на 10TB при подключении питания через разъем SATA или через MOLEX-SATA переходник. При подключении через переходник диск работал всегда, но при подключении через родной разъем питания SATA поведение зависело от того к чему подключали этот диск.

В комментариях прояснили что это гадит Power Disable (PWDIS), появившийся в стандарте SATA 3.3. Эта фича позволяет удаленно делать hard-reset по питанию для диска - в целом позитивная идея, но реализация имеет свои особенности.

суббота, 20 апреля 2019 г.

Совместный доступ к файлам для Windows и Linux в VirtualBox

Для обеспечения совместной работы с файлами для хост-системы на базе Windows и Linux, установленного в виртуальную машину VirtualBox, предлагается использовать shared folders. Чтобы обеспечить доступ к содержимому файлов этот способ подойдет, но если пытаться использовать shared folders как замену файловым системам Linux, то вас ждет набор проблем:
  • нужно отдельно настраивать VirtualBox для работы с symlinks
  • крайне ограниченная поддержка linux owner/group/permissions
  • сложности с удалением и переименованием отрытых файлов унаследованные от хост-системы
  • ограничения на имена файлов и директорий унаследованные от хост-системы
  • низкая скорость работы
Я пользовался shared folders почти два года и периодически пытался уйти на WSL, но последнее заслуживает отдельного повествования. Когда началась работа с проектом, где регрессионный тест занимал 15 минут, вместо положенных двух (если запускать его в виртуальной машине, но вне shared folders) я приступил к поиску альтернатив.

понедельник, 18 марта 2019 г.

Terraform не дает использовать символ подчеркивания в имени google cloud function

Зарепортил баг в Terraform провайдере google. Если использовать символ подчеркивания в имени cloud function, то не проходит валидация конфигурации

provider "google" {
  version = "~> 2.2"
  project = "${var.gcp_project}"
  region  = "${var.gcp_region}"
}

variable "gcp_project" {}

variable "gcp_region" {}

resource "google_cloudfunctions_function" "test_function" {
  name = "test_function"
}