Как стать автором
Поиск
Написать публикацию
Обновить
31
0
Евгений Казанов @evgenyk

Пользователь

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

Пробовал скомпилировать имидж для Raspberry Pi5 используя Buildroot.

Нужно было:

  • Kernel с архитектурой AArch64 PAGES=4k

  • Сама система с архитектурой ARM

Такие требования вытекали из того, что нужно было на RPi5 запускать бинарник, скомпилированый под ARM.

В buildroot-2024.08-rc3 есть raspberrypi5_defconfig. Но он мне не подходит, так как в нем все, и система и кернель собраны под архитектуру AArch64 PAGES=16k.

Для RPi4, например есть два devconfig:

  • raspberrypi4_defconfig - Все под 32 bit

  • raspberrypi4_64_defconfig - Все под 64 bit

А под RPi5 только такой вариант.

Я пробовал по всякому, пытался запускать make raspberrypi5_defconfig, а потом конфигурировать вручную, пробовал внешний кернель, но все равно система с raspberrypi5_defconfig не компилируется под архитектуру ARM.

Так как нужно работает 2024-07-04-raspios-bookworm-armhf. Она сама 32-ух битная, а на RPi5 запускает kernel8, который AArch64 PAGES=4k. И все работает.

Итак на чем я остановился. Саму buildroot систему скомпилировал с raspberrypi4_defconfig, а кернель и модули и другие файлы взял с 2024-07-04-raspios-bookworm-armhf.

Не скажу, что я счастлив, но все работает, а время на эту задачу кончилось.

Может кому-нибудь эта информация будет полезна.

Теги:
Всего голосов 6: ↑6 и ↓0+9
Комментарии0

Настройка Переключения раскладки внешней клавиатуры в Ubuntu.

Я пользуюсь Lubuntu. Все отлично, но последнее время я страдал от
следующей проблемы. У меня внешние монитор и клавиатура, подключенные
через KVM. Раскладки у меня en(us),ru.

Настраивал просто, через "Keyboard State Indicator" в панели.

Но, после переключения KVM, ну
или после переподключения внешней USB клавиатуры, раскладка сама собой
сбрасывалась в en(gb),ru. Это очень надоедает.

После некоторых изысканий найдено решение. Вот краткое изложение:

  • Preferences/IBus preferences/General/Show Icon on system Tray - off

  • Preferences/IBus preferences/Advanced/Use system keyboard layout - on

  • Preferences/IBus preferences/Input Method - Add English - English (US)

  • Preferences/IBus preferences/Input Method - Add Russian - Russian

  • Preferences/LXQt settings/Keyboard and Mouse Settings/Keyboard Layout/Keyboard model - Generic 105-key PC

  • Preferences/LXQt settings/Keyboard and Mouse Settings/Keyboard Layout/Keys to change layout - Caps Lock

  • Panel/Manage widgets - add Keyboard State Indicator

Теги:
Всего голосов 2: ↑2 и ↓0+6
Комментарии0

Работа docker compose с файлами переменных окружения

  1. После изменения конфигурации нужно пересоздать контейнер, для чего делать не просто "docker compose start", а "docker compose up".

  2. docker compose по умолчанию читает файл .env, который находится в том же директории, что и compose.yaml. Переменные окружения из этого файла доступны в файле compose.yaml.

Например:

services:
  telebot:
    image: ${IMAGE_NAME}

Здесь переменная ${IMAGE_NAME} определена в .env файле.

  1. можно передать переменные окружения из файла в compose.yaml при помощи ключа --env-file.

Например:

docker compose --env-file=tokens.env up -d
  1. Передать файл переменных окружения в контейнер можно в файле compose.yaml.

Например:

  services:
    telebot:
      image: ${IMAGE_NAME}
      build:
        context: app
        dockerfile: Dockerfile
      env_file: "./tokens.env"
  1. Или несколько файлов:

  services:
    telebot:
      image: ${IMAGE_NAME}
      build:
        context: app
        dockerfile: Dockerfile
      env_file:
        - "./tokens.env"
        - "./.container.env"

Мне нравится способ 5), т.к:

  • Не нужно перечислять перемнные окружения в файле compose.yaml

  • Можно иметь несколько файлов переменных окружения. Например общий файл и файл с секретами.

Секреты можно передавать и по другому, еще более секретно, как описано в https://docs.docker.com/compose/use-secrets/, но я не пробовал.

Теги:
Всего голосов 2: ↑2 и ↓0+4
Комментарии0

Информация

В рейтинге
8 877-й
Откуда
Висагинас, Литва, Литва
Дата рождения
Зарегистрирован
Активность

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

Backend Developer
Senior
Python
Linux
Git
Docker
Kubernetes
English
Bash
PostgreSQL
MySQL
Django