Isar и еще 8 систем сборки для создания дистрибутива на Linux
Isar — система сборки, представляющая собой набор скриптов для создания пакетов и дистрибутивов на базе Debian с возможностью настройки. Организация проекта Isar похожа на Yocto Project, для сборки используется Bitbake.
Перед сборкой можно настроить параметры файловой системы, ядра, модификации списка пакетов (добавление и удаление пакетов, в том числе и собственных, изменение существующих пакетов). Систему сборки разрабатывает компания ilbers GmbH.
Архитектура системы
Так как Isar основан на Bitbake, архитектура решения состоит лишь в нескольких слоях для Bitbake, реализующих сборку и установку пакетов в соответствии с конфигурацией сборки. В основе всех этих слоев и рецептов лежат утилиты Debian Build Toolchain, которые ответственны за непосредственную сборку пакетов, разрешение зависимостей и т.д.
Как проходит процесс сборки дистрибутива в Isar
Особенности решения
Аналогично Yocto требует усилий на начальных этапах для освоения инструмента.
Поддерживает загрузку готовых пакетов из репозиториев Debian.
Подходит для embedded-дистрибутивов, где необходимо сочетание Debian-экосистемы и глубокой конфигурации.
О других embedded- и desktop-решениях решениях рассказали студенты и преподаватели СПБГЭТУ «ЛЭТИ» в обзоре систем для создания Linux-дистрибутивов.
Дисклеймер: автор не несет ответственности за использование вами стороннего ПО из неофициального источника, вы устанавливаете ПО на свой страх и риск.
Введение
Всем привет, хотел бы рассказать вам о небольшом открытии для себя, а именно: установке claude-desktop на Arch Linux со всеми фичами, доступными Windows и MacOS пользователям. В принципе аналогично можно сделать для большинства других линукс дистрибутивов.
Спойлер: за нас с вами уже все сделали, нужно просто ввести пару комманд в терминале.
Все мы слышали про MCP и про то, как тулы можно интегрировать в ваши десктопные приложения такие как Claude-desktop, Cursor, Windsurf, VSCode, а также использовать в своих проектах при разработке агентных систем, значительно упрощая себе жизнь и разрешая ИИ-асситенту творить некоторые вещи с вашими данными.
Cursor достаточно интересная штука, которая позволяет это сделать проще всех остальных, как по мне, потому что он больше на слуху в ру-коммьюнити и его можно скачать без сложных схем обходов ограничений.
Пререквезиты
Claude-desktop же чуть более заморочен. Он требует от вас иностранный номер и некоторых махинаций.
Давайте представим что эти проблемы вы решили либо самостоятельно, либо обратились к знакомым, либо посмотрели решения из этой статьи: статья.
Так или иначе у вас есть работающий аккаунт и прямой доступ к claude.ai из вашего браузера
Установка
Базово Claude использует электрон и отсутствие порта на Linux, как говорят в реддите, просто лень разработчиков.
Благо в опен сорсе есть множество решений, на которые мы можем обратить внимание, пакетов в aur настолько много что разбегаются глаза и не совсем понятно какой конкретно нужно ставить, а еще большая часть из них не поддерживается , а последний коммит был условно год-полгода назад, следовательно если у вас хоть что то из этого запустится - вам повезло.
Альтернативно, имея Wine на своей системе, вы сможете скачать Claude-desktop для Windows и использовать через Wine, однако это очень криво и неудобно, а еще ужасно лагает.
для установки вам просто нужно выполнить ряд комманд:
# Clone this repository
git clone https://github.com/aaddrick/claude-desktop-arch.git
cd claude-desktop-arch
# Update checksums (needed once, or after PKGBUILD/install script changes)
updpkgsums
# Build and install the package
# This command automatically handles dependencies, builds, and installs
# Use makepkg -sci to automatically clean up build files afterwards
makepkg -si
Обязательно обновите checksums, иначе поймаете ошибку.
Профит
Скриншот с тулами
Теперь приложение Claude есть в списке доступных через ваш менеджер приложений. Учитывайте при запуске свою геолокацию и не забывайте о ней, чтобы избежать потенциальной блокировки со стороны Claude.
MCP
Доступно и работает из коробки, json для редактирования доступен в директории: ~/.config/Claude/claude_desktop_config.json
Не забудьте установить Nodejs и Uv/Python для запуска нужных вам тулов.
После обновления конфига перезаходим в Claude и смотрим на появившиеся кнопочки с новыми тулами.
Да не все будет работать так гладко, как могло бы на Windows/MacOS, например puppeteer у меня запускает изолированный браузер и проверить его работу я могу только через просьбу сделать скриншот (полагаю проблема в том, что я рукожоп), тем не менее: это работает на Linux.
Объявлено решении включить в состав выпуска GNOME 49 видеопроигрыватель Showtime, который станет поставляться под именем GNOME Video Player и будет задействован по умолчанию вместо видеопроигрывателя Totem (GNOME Videos).
Для желающих протестировать Showtime не дожидаясь осеннего релиза GNOME 49 подготовлен пакет в формате flatpak. Программа отличается минималистичным интерфейсом, отображаемым поверх содержимого и скрываемым во время просмотра. Поддерживаются типовые элементы управления, полноэкранный режим, изменение скорости воспроизведения, показ субтитров и создание скриншотов.
Недавно я задумался, а как создать systemd-timer для текущего пользователя без sudo прав, ведь c cron в этом вопросе проблем не было? Оказывается можно создавать локальные для пользователя systemd таймеры и сервисы и никакой root или sudo не нужны для создания файлов в /etc/systemd/system/ ! И как оказалось это касается не только таймеров и сервисов но и вообще всех сущьностей.
И так у меня есть задача конвертировать записи экрана сделанные с помощью Spectacle из vp9/webm в h264/mp4 и h265/mp4, так как он не умеет ещё в аппаратное энкодирование с GPU , а собственные записи в h264/mp4 крайне плохого кчества о чём был даже баг.
Много лет назад, устав от постоянных тормозов Windows, открыл для себя существование UNIX, точнее, FreeBSD. Иксовый десктоп, все программы - на том же компьютере всё летало заметно быстрее. Даже Quake (да, он тоже работал во Фре).
Куда-то пропали все тормоза. К тому же всё оказалось проще настраивать - у каждой программы свой конфиг, и если что-то где-то даже настроил не так - все остальные программы от этого работать не перестают. Да, пришлось переходить на совсем другой набор программ, далеко не все игры можно было запустить и так далее - но всё равно было быстрее и удобнее работать.
ИМХО, самое главное отличие было как раз вот в этом: в то время как в мире Windows активно продавливали идею "интегрированной среды", где всё вместе и взаимосвязано в монолит - там работал подход "одна задача - одна программа". И если программа не работает как хочется - меняется на аналог, не затрагивая всего остального. Почти любую сложную задачу можно было разбить на отдельные мелкие и подобрать набор утилит для ее решения - как кто-то метко выразился - "стройная система костылей и подпорок".
И вот прошли годы. Уже Линукс (прежде всего из-за лучшей поддержки разного железа), Убунта, которая с каждой версией становилась всё замедленнее и усложненнее.
Видимо, программисты из мира Windows принесли своё вИдение прекрасного: появились D-bus, systemd, gsettings - теперь далеко не всегда можно поправить конфиг-файл от программы XXXX, а потом смотреть в лог /var/log/xxxx.log - нет, теперь настройки хранятся где-то в скрытом месте и меняются специальными командами, а лог полагается смотреть через специальную утилиту, и запускается всё это не простым скриптом типа пошагового выполнения /etc/rc.local, а набором команд systemctl, которые сработают или не сработают, в зависимости от наличия определенных файлов в нужных местах...
А самое главное - после проведенной "интеграции" всё стало тормозить и глючить. Задумчивый Gnome медленно и печально открывает окошки - ага, с экраном повернутым на 90 градусов. Потому что новая "интересная фишка" - считывать датчик ориентации экрана, но считывается он не всегда правильно, а "просто закомментировать в конфиге" нельзя, можно только через меню, потом Сохранить, а потом настройка опять вдруг слетает после незаметного автообновления, которое как бы отключено, но не совсем... Погодите-ка, что-то это мне напоминает? Шаманство, глюки, неустранимые достоинства, "слетевшие драйвера"...
Правда, можно повыключать всё это вместе с Гномом - и всё снова быстро летает: ок, так и сделал, вернул любимый WindowMaker, всё прекрасно. Но вот обновление версии какой-то программы - а новая теперь только через flatpak, а ему теперь необходим d-bus, "если его нет можно поставить эмулятор", блаблабла...
Но зачем?! Зачем было делать из Linux такой же интегрированный сам в себя монолит, с неким "реестром" настроек и "системным журналом", в который нельзя просто так посмотреть? Для этого уже есть Windows! Зачем тащить это сюда?
⌨️ КАСТОМНЫЙ МАППИНГ КЛАВИШ В ЛИНУКС: ПРЕВРАЩАЕМ IJKL В СТРЕЛОЧКИ
Для навигации в среде разработки я использую использую маппинг ijkl на стрелочки и оказывается можно сделать этот маппинг на уровне всей ос, а не только IDE.
Маппить будем с помощью xremap (подходит для Wayland и X, простая конфигурация в yaml, написан на расте). Я буду показывать процесс настройки для федоры, но для других дистрибутивов он похожий.
🔧 Создаем конфигурационный файл, который замапит клавиши ijkl на стрелочки при зажатом капсе:
virtual_modifiers:
- CapsLock
keymap:
- remap:
CapsLock-i: Up
CapsLock-j: Left
CapsLock-k: Down
CapsLock-l: Right
CapsLock-h: Home
CapsLock-semicolon: End
CapsLock-u: PageUp
CapsLock-o: PageDown
Быстрое трудоустройство в YADRO для разработчиков на С++
У нас стартовал SPRINT OFFER в команду разработки телеком-оборудования. Для «плюсовиков» это возможность получить предложение о работе всего за несколько дней. Если хотите пропустить долгие этапы собеседований, отправляйте заявку до 9 марта.
Как все происходит
Подаете заявку — мы оперативно рассматриваем анкеты.
Проходите HR-скрининг и техническое интервью — без недель ожидания между этапами.
Получаете оффер — если все этапы успешно пройдены, предложение будет у вас в течение 3 дней.
Где предстоит работать
Дивизион телекома создает решения для мобильных сетей. Инженеры разрабатывают базовые станции GSM/LTE, полный стек телекоммуникационных протоколов, а также системы управления и мониторинга. Большую часть кода разработчики пишут на C++. В зависимости от задачи они используют как современные возможности C++20, так и низкоуровневые оптимизации для повышения производительности.
Кого мы ищем
→ Software Engineer (Telecom Platform)
Требуемый уровень: middle, senior, tech lead.
Чем предстоит заниматься:
Разработкой платформы для базовых станций LTE/GSM (middleware, high availability, node management, delivery).
Проектированием архитектуры, работа с C++/Linux.
Интеграцией с аппаратной и программной частью системы.
Оптимизацией кода и решение проблем производительности.
Разработкой API, unit-тестирование, документация.
→ Software Engineer C/C++ (LTE/GSM)
Требуемый уровень: middle, senior, tech lead.
Чем предстоит заниматься:
Разработкой программного обеспечения для базовых станций LTE.
Реализацией стека протоколов 3GPP.
Интеграцией с другими системами, оптимизация кода.
Решением задач производительности и стабильности системы.
Подробнее о вакансиях и команде читайте на странице SPRINT OFFER. Успейте подать заявку до 9 марта!
Практический курс «Системный администратор Linux с нуля»
Привет, Хабр! Selectel запускает курс по работе с серверной операционной системой. Он будет полезен начинающим администраторам, а также разработчикам и DevOps-инженерам, которые хотят погрузиться в Linux и сетевую инфраструктуру.
На курсе вы научитесь:
▫️ работать с командной строкой и основными утилитами;
▫️ управлять пользователями, файлами и правами доступа;
▫️ настраивать сети, SSH-соединения и мониторинг системы;
▫️ управлять инфраструктурой на базе Linux;
▫️ управлять пакетами и обновлениями программного обеспечения;
▫️ анализировать логи и устранять инциденты.
Занятия построены на базе SelectOS. Дополнительных знаний не требуется — достаточно базового владения компьютером и интереса к Linux.
При загрузке UEFI могут использоваться два boot-menu:
меню firmware, хранящееся в NVRAM. Можно вызвать при включении компьютера по hotkey (F8/Esc/etc). Отображается в настройках Gen 2 VM Hyper-V (при этом можно менять порядок загрузки, но не сами записи).
меню загрузчика (опционально). В Linux это меню GRUB, в Windows - bootmgr (отображается, если содержит больше одной записи). Современное ядро Linux может загружаться напрямую без GRUB.
В firmware загрузка настраивается через текстовые переменные:
Boot#### - загрузочная запись BootOrder - упорядоченный список записей Boot#### BootCurrent - запись, с которой загружена система BootNext - запись, с которой однократно будет загружена система после перезагрузки
Первоначально firmware добавляет записи Boot#### для подключенных поддерживающих загрузку устройств (DVD, HDD, USB, Network).
При загрузке с диска происходит поиск на нем GPT раздела типа EFI system partition (ESP), с которого запускается загрузчик EFI\Boot\bootx64.efi (имя файла зависит от аппаратной платформы). Обычно этот раздел отформатирован в FAT32, так как большинство прошивок UEFI не поддерживают чтение других файловых систем (хотя и могли бы).
Созданные Rufus загрузочные UEFI-флешки с Windows содержат основной NTFS раздел с дистрибутивом (FAT32 не поддерживает файлы размером больше 4Gb) и скрытый FAT32 ESP раздел с фирменным EFI загрузчиком, поддерживающим чтение NTFS.
Загрузчик ОС может добавить (и обычно добавляет) в firmware новую запись Boot####: Windows: HD(1,GPT,E935CDDD-9506-45D3-A96B-9354674BA581,0x800,0x32000)/\EFI\Microsoft\Boot\bootmgfw.efi Linux: HD(1,GPT,F3275A6A-A4B2-4AD4-A8C1-D74B9C4E9691,0x800,0x12C000)/\EFI\redos\shimx64.efi
Загрузчик shimx64.efi может быть подписан цифровой подписью для работы с Secure boot, его единственная функция - запустить grubx64.efi из текущей директории. grubx64.efi не подписан, так как его содержимое может изменяться.
В некоторых случаях при переносе диска между ПК или VM в новой системе ОС не загружается. Например, если в NVRAM старой системы была настроенная запись Boot####, а стандартный раздел EFI boot поврежден или не содержит загрузчик в стандартном расположении. В этом случае необходимо или восстановить запись утилитами bcdedit/efibootmgr, или, в случае VM, переносить ее через export/import вместе с nvram.
TLP (The Linux Power Management). Мощный инструмент, много гибких настроек для процессора, дисков, сетевых интерфейсов и т.д. Хорошая документация. TLP работает в фоновом режиме, после настройки все будет работать само. Существует удобный TLPUI, чтобы не менять конфиги руками. Автоматически переходит в режим экономии при подключении зарядки.
+ Много гибких параметров
+ Автоматическое адаптивное управление
+ Разные типы устройств
- Возможно, надо будет доп настраивать для некоторых систем (на моем Lenovo Ideapad например пришлось читать вот это, благо дока хорошая)
Автоматически управляет частотой процессора исходя из нагрузки и состояния батареи. Якобы сильно эффективнее и лучше TLP. Может работать вместе с ним, хотя и не рекомендуется.
+ Простота использования — достаточно запустить и забыть
+ Интеграция с другими инструментами
+ Постоянное обновление частоты процессора в зависимости от нагрузки
Power Profiles Daemon — три режима работы (производительность, сбалансированный, экономия), между которыми можно переключаться. По умолчанию во всех DE именно он находится в виджете "батарея". Сделан Red Hat.
+ Интеграция с системой
+ Поддержка различных профилей питания
+ Легкость использования через графический интерфейс
— Менее гибок, чем перечисленные выше
Я по итогу выбрал auto-cpufreq и tlp (только потому, что ограничивает заряд батареи) Если вам есть что сказать, с удовольствием пообщаемся в комментах :)
Все, кто переживал, что привычные к виндовым изгибам пальцы никак не научатся переключать раскладку более прямыми способами — радуйтесь, ибо оно уже здесь:
Работает начиная с KDE6
Начиная с шестых кед можно переключать раскладку вашими любимыми Ctrl+`Shift` и Alt + Shift — и комбинации с этими клавишами продолжают работать в других программах.
Переключатель альтернативный, работать будет только в пределах кед (пока запущены соответствующие службы KDE) и только начиная с шестой версии
В initrd устранены ошибки и добавлены новые возможности (эти изменения включены в сборочные скрипты основного проекта DogLinux):
При запуске можно указать modprobe.blacklist=ahci,nvme и запретить загрузку модулей ядра что иногда требуется при работе с неисправными HDD и SSD. После запуска можно подгрузить необходимые модули ядра вручную.
При сетевой PXE загрузке можно переопределить nfs путь по умолчанию /srv/pxe/ с помощью параметра nfspath=
Исправлен порядок загрузки модулей ядра broadcom и tg3. Ранее адаптер Broadcom Netlink BCM57780 Ethernet был не работоспособен при загрузке.
Уменьшен размер путем исключения из состава initrd не используемых для начальной загрузки модулей.
Обеспечена выгрузка не задействованных модулей ATA контроллеров ata_* sata_* pata_*
Добавлены firmware-cirrus (git20241031) для звукового кодека и усилителя Cirrus Logic CS42L43 и CS35L56 которые используются в некоторых ноутбуках Asus, Dell, HP, Lenovo производства 2022г.
Обновлены Chromium 130, FurMark 2.4.1.0
Исправлен скрипт ddrescue-loop (не работал с SATA устройствами при отсутствии /dev/disk/by-path/)
Довольно часто на разных ресурсах попадаются посты в духе «Linux глазами пользователя Windows». Где обычно описывается, как же не привычно всё выглядит, насколько это сложный и травмирующий опыт для пользователя. О чувстве неполноценности нового опыта. Но что если мы посмотрим на этот процесс с обратной стороны.
Сам я перешёл на Linux ещё во времена, когда актуальной была Windows XP, и с тех пор не касался в домашнем использовании продукции Microsoft. И вот у меня в руках оказался ноутбук, на который необходимо заново поставить и настроить Windows 10.
Первая сложность, с которой я столкнулся,- это собственно создание загрузочной флешки. Когда мы создаём загрузочную флешку для установки дистрибутива Linux, то просто записываем дисковый образ, и готово. С Windows так не получится: всё начинается с того, что потребуется использовать специальное ПО, к примеру, WoeUSB.
После того как успешно установили ОС и компьютер включился мы попадаем в мир чистого GUI. Никаких менеджеров пакетов, только файлы с расширением «exe» и магазин приложений. Нельзя просто добавить репозиторий с нужной программой и потом установить её одной командой.
И таких аспектов, при взгляде с точки зрения пользователя Linux, найдётся множество. Нет разницы, пробуете вы перейти с Windows на Linux, или же решили перейти в обратную сторону с Linux на Windows, в любом случае вы столкнётесь с мучительным процессом отказа от привычного.
Пробовал скомпилировать имидж для 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.
Не скажу, что я счастлив, но все работает, а время на эту задачу кончилось.
Российский разработчик и производитель ИТ‑оборудования Delta Computers и разработчик программного обеспечения на основе собственного технологического стека компания «РЕД СОФТ» заявили о совместимости своих продуктов. В рамках сотрудничества компании сертифицировали продукты из линейки клиентских систем Delta Computers, а именно персональные компьютеры (ПК) «Бобёр» и «Ворон», входящие в автоматизированные рабочие места (АРМ) «Лось» и «Ястреб», с программным обсечением РЕД СОФТ. Компании подписали двусторонний сертификат совместимости.
Новые АРМ от Delta Computers с отечественной системой РЕД ОС представляют из себя программно‑аппаратный комплекс, который может подойти государственным структурам, компаниям из периметра КИИ и частному бизнесу.
ПК компании Delta Computers спроектированы для решения стандартных офисных задач, задач в сферах образования, работ с ресурсоемким ПО, например, базовые САПР‑приложения или программы для видеомонтажа. Устройства сочетают в себе современную платформу с эргономичным дизайном.
РЕД ОС — российская ОС семейства Linux для серверов и рабочих станций. Продукт обладает сертификатом ФСТЭК России и входит в Реестр российского программного обеспечения Минцифры России. Разработка ведется в закрытом контуре РЕД СОФТ, исходные коды и пакеты находятся в собственном репозитории, расположенном на территории РФ.
Настройка Переключения раскладки внешней клавиатуры в 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)
Компании «Атом безопасность» (входит в ГК СКБ Контур) и «РЕД СОФТ» сообщили об успешном завершении тестирований совместной работы своих продуктов — Linux‑агента системы расследования инцидентов Staffcop Enterprise и операционной системы РЕД ОС. Соответствующий сертификат подписали руководители компаний на основе проведенных испытаний.
Совместное внедрение РЕД ОС и Staffcop Enterprise позволит организациям создать защищенное рабочее окружение на базе отечественных разработок и безопасно работать с ценными данными в удобном и гибко настраиваемом интерфейсе.
Staffcop — система расследования инцидентов, учета рабочего времени и администрирования рабочих мест. В программном комплексе реализована функция контентного анализа содержимого файлов и папок, буфера обмена, почты и мессенджеров, а также контроль USB‑портов и контроль над передачей данных в сети. Есть гибкая настройка политик безопасности и оповещений. Решение также позволяет мониторить активность сотрудников, вести учет присутствия на рабочем месте, выявлять аномалии и фиксировать нарушения политик безопасности.
РЕД ОС — это российская операционная система общего назначения для серверов и рабочих станций. Разработка РЕД ОС ведется в закрытом контуре компании РЕД СОФТ. Исходные коды и пакеты находятся в собственном репозитории РЕД ОС, расположенном на территории РФ. Продукт обладает сертификатом ФСТЭК России и входит в Реестр российского программного обеспечения Минцифры России.
Ускорение Youtube в Линукс - обновление по состоянию на 22.09.2024 скрипта для простой установки/настройки ПО bol-van/zapret.
Сделал обновление по состоянию на 22.09.2024 скрипта для простой установки/настройки ПО bol-van/zapret из исходников для нормальной работы Youtube в Линукс из моего поста от 10.08.2024, т.к. обновился и сам bol-van/zapret и его актуальные настройки.
Два архива Скрипты для Ubuntu-based ОС, скрипты для Red-Hat-based ОС. Проверенно на Linux Mint 20.1 "Ulyssa" и "Fedora 40" соответственно. В каждом архиве три скрипта: скрип-установщик, скрипт обновления bol-van/zapret(не изменящий его настройки), и скрипт деинсталятор.
И для первоначальной установки, и для обновления настроек по состоянию на 22.09.2024 запускать именно скрип-установщик. Ставится все в пару кликов. Пользуйтесь и распространяйте. Адаптируйте к другим Линуксам. Конструктивная критика приветствуется.