SVG-виджеты для tcl/tk. Поддержка SVG-файлов. Часть III

Вот и наступил тот момент, когда стало возможным при разработке gui на tcl/tk простое использование в качестве иконок графических изображений, хранящихся в svg-файлах:

Пишем под *nix

Вот и наступил тот момент, когда стало возможным при разработке gui на tcl/tk простое использование в качестве иконок графических изображений, хранящихся в svg-файлах:

Мы решили на регулярной основе рассказывать вам о развитии нашей линейки контролов для Avalonia UI. За время, прошедшее с момента предыдущей публикации, появилось несколько интересных моментов и один новый компонент.

Существует огромное количество руководств, статей, видеоуроков по bash. И это очень здорово, но есть одна проблема с ними. Процент материала "для начинающих" среди всего этого богатства стремится к 100, а вот по-настоящему интересных тонкостей касаются не только лишь все.
Я всегда любил bash-скриптинг, и сейчас пишу довольно много кода на bash. Периодически наталкиваюсь на неочевидные моменты; решил, что настала пора поделиться опытом с уважаемым хабрасообществом.
Кому интересно разобраться, что же может быть не так с bash/zsh на этот раз -- добро пожаловать под кат.

Привет, Хабр! На связи Виктор Сергеев, редактор «МТС Диджитал». Сегодня обсудим «большую чистку» ядра Linux.
Для начала стоит избавиться от поддержки десятков устаревших ARM-процессоров. Многие чипы почти не используются, смысла в их поддержке в ядре Linux все меньше. Но как их убрать, чтобы изменения прошли безболезненно для пользователей? У одного из самых известных контрибьюторов Linux Арндта Бергмана есть план. Подробности — под катом.

Plug and pray play
Когда компьютеры были большими, а программы маленькими, никто особенно не задумывался над ответами на вопросы: Какова конфигурация компьютера? Какие устройства и как подключены? Да, собственно, этого и не нужно было делать. Компьютеры обслуживали сильно специальные люди – они собирали компьютер у заказчика, подключали периферию и настраивали операционную систему на работу с оной.
Несмотря на то, что люди были специальными, по нынешним меркам все было организовано довольно просто. Любой самостоятельный компонент компьютера (процессор, память, шина, порты ввода/вывода и т. д.) поставлялся с кипой бумажной документации, в которой описывалось, какие интерфейсы используются, какие адреса, прерывания необходимы для работы того или иного устройства. Если возникали конфликты адресов/прерываний, то, как правило, в устройстве были переключатели, позволявшие в определенных пределах менять настройки. А когда это не помогало, то специальные люди не чурались паяльника и разрешали конфликт, так сказать, «по месту».

В интернете много статей о том, как создавать простых bash-телеграм ботов. Часто это сводиться к вечному циклу, который раз в несколько секунд дергает tg-api. А что, если у меня хотелок больше чем может предоставить такое решение?
Мои пожелания: беседа ведется асинхронно в нескольких чатах, чатов больше чем процессов в приложении, бот помнит на каком этапе находится каждый разговор, процесс написания бота должен хотя бы напоминать работу с популярными ООП языками, бот должен легко масштабироваться на большее число пользователей.
Это история, о попытке поизвращаться создать небольшой, но удобный инструмент для написания ботов, удовлетворяющих моим требованиям.
Компания «Базальт СПО» выпустила «Альт Платформу» — технологический комплекс для сборки программного обеспечения и выпуска дистрибутивов операционных систем. Продукт включен в Единый реестр российского ПО под №21540.
В состав «Альт Платформы» входят:
- доступ к стабильной ветке репозитория (бранчу);
- операционная система ALT Platform Builder, на которой создается рабочее место разработчика и сборочная среда;
- сервис для создания локальной копии репозитория alterator-mirror;
- инструментарий для сборки RPM-пакетов, совместимых с ОС «Альт»;
- набор готовых профилей mkimage-profiles для сборки дистрибутивных образов;
- техническая поддержка от вендора.
«"Базальт СПО" с 2001 года развивает собственную инфраструктуру разработки, на которой создано уже 10 поколений операционных систем. Несколько компаний-партнеров с нашей помощью также разработали на ней свои продукты. Теперь мы оформили эту инфраструктуру в виде продукта "Альт Платформа" и делимся ею с другими разработчиками. Команда "Базальт СПО" обучит специалистов заказчика пользоваться программным комплексом, вести репозиторий и дополнять его сторонним программным обеспечением», — рассказал председатель совета директоров «Базальт СПО» Алексей Смирнов.
«Базальт СПО» (до 2015 года «Альт Линукс») с 2001 года поддерживает репозиторий «Сизиф» — один из крупнейших в мире технологически независимых репозиториев, наряду с Debian, Red Hat и SUSE. Репозиторий формируется из свободного ПО международных проектов и собственных разработок компании. Он находится на территории и под юрисдикцией РФ, поддерживается «Базальт СПО». Это своего рода лаборатория для разработчиков, в которой можно опробовать новые идеи без риска для конечного пользователя ОС. Доступ к пакетной базе «Сизифа» свободный и бесплатный.

Так исторически сложилось, что мы используем некоторые не очень популярные расширения PHP, написанные и кое как (почти никак) поддерживаемые своими авторами, которых нет в типовых источниках deb‑пакетов. У нас постулируется принцип «нормально делай — нормально будет», поэтому у нас не приветствуется slackware‑style установка бинарников в систему вне пакетных менеджеров. Поэтому будем собирать полноценные deb‑пакеты для расширений PHP, не ломая совместимость с существующим окружением.


Недавно я задался вопросом, могу ли я оптимизировать процесс поиска чего-либо в документации любого языка/библиотеки/фреймворка. Прыгать с сайта на сайт – не самая лучшая идея, ибо интерфейсы документацией отличаются, а я хотел унификации.
Сначала мне пришла мысль взглянуть на уже существующие решения, среди которых есть мною любимый Zeal, однако, он доступен только для Windows и Linux, я же крепко сижу в заложниках на MacOS из-за специфики работы и удобства.
На сайте Zeal предлагают перейти на сайт Dash, который по сути является прародителем Zeal, однако, он платный и за него невозможно заплатить в пределах РФ, поэтому я продолжил дальше искать аналоги.
Среди альтернатив также есть DevDocs, который может работать оффлайн в браузере (благодаря PWA), однако, я заметил, что все время держать открытой лишнюю вкладку для поиска в доках было не лучшей идеей (ибо вкладку все равно нужно было бы искать, среди тонны вкладок со StackOverflow и прочим).
Решение с быстрым поиском
В Firefox и Google Chrome есть возможность добавить собственную поисковую систему (или же поиск по сайту), чем собственно я и воспользовался. При поиске в devdocs все GET-запросы уходят по урлу:

16 июля официальный р��позиторий mesa объединил MR о RISC-V, llvmpipe: add a new JIT engine based on LLVM ORCJIT, also add RISC-V support (updated)
Это радует всех пользователей RISC-V. Мы ждали патча больше двух лет, и он наконец-то вышел!
И, почему LLVMpipe ORCJIT важен для RISC-V? Давай я расскажу!

В интернетах всегда кто‑то не прав. В этот раз, по моему максимально предвзятому мнению, оказался не прав @bodyawm. Для меня.NET в каждой бочке затычка, поэтому меня бобмануло от использования mono в 2024 году. В этой статье я покажу своё видение того, как максимально канонично и современно писать на.NET для GNU/Linux и SBC (Single‑board computer, aka одноплатник).

Здравствуйте, уважаемые читатели! SCTP — достаточно специфичный протокол, о котором, наверняка, многие не слышали. Тем не менее, он более чем актуален в некоторых областях, одна из них — использование для доставки контрольных сообщений в LTE сетях.
Я относительно недавно присоединился к команде, занимающейся разработкой ПО для базовых станций. Ранее я не сталкивался с данным протоколом, поэтому решил разобраться с ним более подробно и столкнулся со следующей проблемой — относительно малое количество источников, посвященных данной теме. Несомненно, они есть, и я обязательно перечислю те из них, которыми мне пришлось воспользоваться, в данной статье.
В общем, главная мотивация — желание написать небольшую вводную на таком ресурсе как habr для более легкого старта у новичков.
Также, отдельно хочу обратить внимание — в первую очередь упор идет на моменты, на которых можно споткнуться, если о них не знать.

Предыдущая статья натолкнула меня на мысль написать ещё одну программу, генерирующую последовательности изображений с другим типом фракталов. В ней пришлось применить более сложную анимацию коэффициентов.

Если даже бабушки работают с Linux GUI — можно ли утверждать, что администратор Linux тоже сможет работать с Linux Gui? Ответ на этот вопрос не так очевиден, достаточно сделать небольшое путешествие от простого запуска инсталлятора под root, до мониторинга с графиками.

Привет, Хабр! Меня зовут Олег Ивченков, и я управляю группой компаний Setere. У нас есть продукт: берем скан бумажного документа, распознаем его и переводим в редактируемый формат. Классическая OCR‑система. Под капотом — C++, QT, QML, немного python`а. Работаем под Linux только как десктопное приложение. И именно о Linux я хотел поговорить. У меня накопилось много опыта за более чем десять лет разработки, и хочу рассказать о тех проблемах, которые сейчас вижу в области разработки под Linux.
Главную проблему я бы озвучил так: «неконтролируемое множество». И от неё ответвляются много разных других. О них-то я и расскажу в статье, которая должна быть полезна всем, кто так или иначе связан с разработкой под Linux. Если вы прочитаете материал и почувствуете то же, что и я — добро пожаловать в комментарии, обсудим!
Еще год назад, в рамках круглого стола «Импортозамещение» Форума ассоциации Руссофт я предложил профессионалам отрасли поговорить о такой важной теме, как «реалии нативной разработки для отечественных операционных систем». Точнее не просто реалии, а — этой самой разработки сложности, по моим ощущениям приобретающие как минимум линейный рост. Прошедший год показал, что рост проблем не линейный, так что основные тезисы того выступления и несколько новых деталей стали моей первой публикацией на Хабре.
Боль не только моей компани��, но и компаний коллег, начну описывать с общей информации по рынку. Согласно данным, любезно предоставленным ассоциацией «Руссофт» — год от года время на разработку решений для Windows в России постепенно снижается, а для систем семейства Linux — неуклонно растет. Помимо достаточно очевидного факта снижения интереса к Windows в нашей стране в принципе, увеличение времени разработки для Linux‑систем связано и с еще одним немаловажным фактором. Этот фактор — существенно возросшая сложность разработки, связанная с количеством Linux‑систем, их технологическим разнообразием.

Как русифицировать китайские автомобили? Как не наделать кирпичей окирпичивая машину дороже 10 млн. руб? Я работаю с программным обеспечением китайских автомобилей, одна из самых популярных моделей на сегодняшний день это Lixiang, именно на ее примере я и покажу как обычно или, наоборот необычно, русифицируются автомобили.
Живем мы в интересное время. Абзац ниже касается практически всех премиальных китайских автобрендов.
Применяя определенную степень упрощения к статистике, которая, перефразируя пословицу, является производной от лжи, будем опираться на твердые факты из первых ссылок в поисковике. На конец 2023 года число реализованных машин этой марки уже составляло 376030 штук. Зарегистрировано же на текущий момент в РФ более 20.000 автомобилей Lixiang. РФ является лидером среди стран, куда импортированы авто этой марки. Это следствие совпадения ухода западных автобрендов и бурный расцвет китайского автопрома. Держим это в уме, теперь следующая часть эриксоновской петли.
Кроме этого имеем санкции и американское участие в капитале автопроизводителей. Русский и Китаец братья навеке, но Китай умеет мыслить столетиями, по всей видимости в горизонте планирования в несколько сотен лет

Измерение времени — очень сложная задача. Я выяснил это, набив шишки при попытке запрограммировать расширяемый хронометр для небесных тел Солнечной системы. Сложность в том, что все календарные системы имеют так много правил и исключений, что сборщик календаря, по сути, становится ещё одним языком программирования. Впрочем, мне хорошо знаком закон Завински*, поэтому я постарался избежать создания ещё одного Emacs.
*Закон Завински — выдуманный закон computer science, высмеивающий неизбежное разрастание фич. Он гласит, что каждая программа рано или поздно постарается прочитать электронную почту. Стоит отметить, что закон сформулирован в 90-х, поэтому и речь об электронной почте. Кстати, я нашёл хороший веб-сайт с другими законами computer science.
Основные проблемы хронометража заключаются в неодинаковых интервалах корректировки, постоянно меняющихся часовых поясах и преобразованиях из одной системы хронометража в другую. Кроме этих алгоритмических проблем существуют ограничения устройств, например, точность генератора или ёмкость памяти. В наше время на них обычно не обращают внимание, в частности, примерно со времени решения проблемы бага Y2K распределение памяти вообще не считается серьёзной проблемой.
Y2K, Y2038 и другие баги Y2xx — это на самом деле не совсем «баги», а простые переполнения выделенного пространства памяти. Unix и подобные ему компьютерные системы измеряют время, выполняя инкремент секунд в единой целочисленной переменной time_t. Естественно, такой хронометраж назван временем Unix, а 0 в нём означает полночь 1 января 1970 года.
В разных реализациях времени Unix для time_t используются разные типы данных. Когда тип данных достигает своего верхнего предела, он «сбрасывается» или до обратного (отрицательного) значения, или до нуля. В текущей основной ветви ядра Linux используются 64-битные числа со знаком. В таком решении точка сброса приходится на 292 277 026 596 год. Он настанет примерно через 292 миллиарда 277 миллионов 24 тысяч лет.
Но что потом?

Наконец это свершилось. Сегодня мы официально выпускаем первую версию наших контролов для Avalonia UI, которые получили немало важных изменений с момента публикации предыдущей статьи.