Библиотека построения графических интерфейсов Cosmoe, использующая Wayland и API в стиле BeOS
Представлена GUI-библиотека Cosmoe, поддерживающая работу в Linux в окружениях на базе Wayland. Cosmoe позволяет создавать программы с графическим интерфейсом на языке C++, применяя для формирования интерфейса API в стиле библиотеки классов операционной системы BeOS. Библиотека даёт возможность напрямую запускать в Linux программы, использующие API BeOS. Код проекта распространяется под лицензией MIT.
Cosmoe предлагает набор классов C++, позволяющих быстро и просто создавать интерфейсы пользователя. С одной стороны, Cosmoe существенно проще и компактнее таких тулкитов, как GTK и Qt, но, с другой стороны, позволяет создавать интерфейсы, более современно выглядящие, чем при использовании легковесных FLTK и Xforms. На устаревших системах Cosmoe даёт возможность добиться очень низкого потребления ресурсов, а на современных позволяет выжать из оборудования максимальную производительность, благодаря активному использованию многопоточности. Предоставляется коллекция примеров приложений, использующих Cosmoe для создания интерфейса, среди которых эмулятор терминала, редактор стилей и простые игры.
Библиотека основана как легковесное и не требующее серверных компонентов (app_server, registrar) ответвление от кодовой базы проекта Cosmoe Classic, переведённой на работу поверх композитных серверов, использующих протокол Wayland. Проект Cosmoe Classic занимался портированием окружения Haiku OS для работы поверх ядра Linux и использовал отрисовку интерфейса в окне, созданном при помощи библиотеки SDL. Разработка Cosmoe Classic была возрождена в прошлом году после семнадцатилетнего перерыва.
В настоящее время проект переориентирован с разработки форка ОС Haiku на создание обособленной библиотеки для создания графических приложений для Linux. На текущем этапе разработка находится на альфа-стадии, при этом библиотека уже поддерживает около 95% от всех возможностей API BeOS. Из наиболее важных ограничений отмечается отсутствие поддержки не привязанных к экрану экземпляров типа BBitmap, необходимых для аппаратного ускорения отрисовки, и неготовность API BFilePanel, формирующего диалоги для открытия и сохранения файлов.
Linux / Линукс🥸
Представлена GUI-библиотека Cosmoe, поддерживающая работу в Linux в окружениях на базе Wayland. Cosmoe позволяет создавать программы с графическим интерфейсом на языке C++, применяя для формирования интерфейса API в стиле библиотеки классов операционной системы BeOS. Библиотека даёт возможность напрямую запускать в Linux программы, использующие API BeOS. Код проекта распространяется под лицензией MIT.
Cosmoe предлагает набор классов C++, позволяющих быстро и просто создавать интерфейсы пользователя. С одной стороны, Cosmoe существенно проще и компактнее таких тулкитов, как GTK и Qt, но, с другой стороны, позволяет создавать интерфейсы, более современно выглядящие, чем при использовании легковесных FLTK и Xforms. На устаревших системах Cosmoe даёт возможность добиться очень низкого потребления ресурсов, а на современных позволяет выжать из оборудования максимальную производительность, благодаря активному использованию многопоточности. Предоставляется коллекция примеров приложений, использующих Cosmoe для создания интерфейса, среди которых эмулятор терминала, редактор стилей и простые игры.
Библиотека основана как легковесное и не требующее серверных компонентов (app_server, registrar) ответвление от кодовой базы проекта Cosmoe Classic, переведённой на работу поверх композитных серверов, использующих протокол Wayland. Проект Cosmoe Classic занимался портированием окружения Haiku OS для работы поверх ядра Linux и использовал отрисовку интерфейса в окне, созданном при помощи библиотеки SDL. Разработка Cosmoe Classic была возрождена в прошлом году после семнадцатилетнего перерыва.
В настоящее время проект переориентирован с разработки форка ОС Haiku на создание обособленной библиотеки для создания графических приложений для Linux. На текущем этапе разработка находится на альфа-стадии, при этом библиотека уже поддерживает около 95% от всех возможностей API BeOS. Из наиболее важных ограничений отмечается отсутствие поддержки не привязанных к экрану экземпляров типа BBitmap, необходимых для аппаратного ускорения отрисовки, и неготовность API BFilePanel, формирующего диалоги для открытия и сохранения файлов.
Linux / Линукс
Please open Telegram to view this post
VIEW IN TELEGRAM
👍15
Please open Telegram to view this post
VIEW IN TELEGRAM
❤28😁14🌚1
Please open Telegram to view this post
VIEW IN TELEGRAM
☃39🕊10💯7😁5👍2
Линус Товальдс намерен исключить Bcachefs из ядра Linux 6.17
Очередная дискуссия между Линусом Торвальсом и Кентом Оверстритом (Kent Overstreet), автором Bcachefs, завершилась тем, что Линус выразил готовность исключить код Bcachefs из ядра Linux 6.17. При этом Линус принял в состав ядра 6.16 изменения в Bcachefs, ставшие предметом очередного недовольства действиями Кента. Линус написал:
Linux / Линукс🥸
Очередная дискуссия между Линусом Торвальсом и Кентом Оверстритом (Kent Overstreet), автором Bcachefs, завершилась тем, что Линус выразил готовность исключить код Bcachefs из ядра Linux 6.17. При этом Линус принял в состав ядра 6.16 изменения в Bcachefs, ставшие предметом очередного недовольства действиями Кента. Линус написал:
Я считаю, что наши пути разойдутся в окне слияния 6.17.
Вы очень ясно дали понять, что я не могу подвергать сомнению какие-либо исправления ошибок и должен просто принимать всё подряд.
Честно говоря, я не чувствую себя особо комфортно, будучи вовлечённым во всё это, и единственное, с чем мы оба, похоже, действительно согласились в обсуждении, это то, что "мы закончили".
Linux / Линукс
Please open Telegram to view this post
VIEW IN TELEGRAM
👍21🤔6😁3❤2
Please open Telegram to view this post
VIEW IN TELEGRAM
😁36🤣9💯6☃1
#преддолжка
Linux / Линукс🥸
Сегодня впервые увидел kernel panic, и он розовый. (и убедился, что XMP-профили на дешевых плашках памяти не работают)
Linux / Линукс
Please open Telegram to view this post
VIEW IN TELEGRAM
👍33😁9
Rust приходит для Mali: представлен новый драйвер для GPU ARM
Начальная версия Tyr — Linux-драйвера для современных GPU ARM Mali (G310/G510/G710 с технологией CSF) — опубликована Дэниелом Алмейдой из Collabora. Ключевая фишка: драйвер написан на Rust (~600 строк кода) и создан совместно Collabora, Arm и Google.
За основу взят каркас драйвера Nova (для NVIDIA) и абстракция rust_platform_driver. Функционал для Mali портирован из Си-драйвера Panthor. Важно: uAPI Tyr полностью совместим с Panthor — существующий пользовательский софт заработает сразу.
CSF (Command Stream Frontend) — технология в GPU Mali (поколение 10+), где прошивка берет на себя часть функций драйвера. Вместо цепочек задач используется поток команд, планируемый прошивкой на встроенном микроконтроллере Cortex-M7 через специальный блок выполнения (Command Execution Unit).
Tyr пока уступает Panthor по функционалу. Разрыв будут сокращать параллельно с добавлением в ядро Linux недостающих Rust-абстракций (например, для маппинга памяти — ждут патчи GPUVM).
Linux / Линукс🥸
Начальная версия Tyr — Linux-драйвера для современных GPU ARM Mali (G310/G510/G710 с технологией CSF) — опубликована Дэниелом Алмейдой из Collabora. Ключевая фишка: драйвер написан на Rust (~600 строк кода) и создан совместно Collabora, Arm и Google.
За основу взят каркас драйвера Nova (для NVIDIA) и абстракция rust_platform_driver. Функционал для Mali портирован из Си-драйвера Panthor. Важно: uAPI Tyr полностью совместим с Panthor — существующий пользовательский софт заработает сразу.
CSF (Command Stream Frontend) — технология в GPU Mali (поколение 10+), где прошивка берет на себя часть функций драйвера. Вместо цепочек задач используется поток команд, планируемый прошивкой на встроенном микроконтроллере Cortex-M7 через специальный блок выполнения (Command Execution Unit).
Tyr пока уступает Panthor по функционалу. Разрыв будут сокращать параллельно с добавлением в ядро Linux недостающих Rust-абстракций (например, для маппинга памяти — ждут патчи GPUVM).
Linux / Линукс
Please open Telegram to view this post
VIEW IN TELEGRAM
👍15🤣5🎄2❤1
Please open Telegram to view this post
VIEW IN TELEGRAM
👍24😁12💯3
БРО ПРОСТО СТАНЬ ЛИНУКСОИДОМ ЭТО ЛЕГКО ПРОСТО УСТАНОВИ ARCH НА ЖЕЛЕЗКУ 2011 ГОДА С НЕПОДДЕРЖИВАЕМОЙ WI-FI КАРТОЙ ПРОСТО ПАТЧНИ ДРАЙВЕР ЧЕРЕЗ DKMS И ВСТАВЬ MODULE В ЯДРО ПЕРЕД ЭТИМ СОБЕРИ ЯДРО САМ ИЗ ИСХОДНИКОВ И КОНФИГУРИРУЙ .CONFIG ЧЕРЕЗ make menuconfig ПОКА НЕ ПОЛУЧИШЬ ИДЕАЛЬНЫЙ РЕЗУЛЬТАТ С 0 WARNINGS И 100% НЕЗАПУСКАЕМОСТИ
ПРОСТО УЧИ BASH СРАЗУ С AWK И SED И ПИШИ СКРИПТЫ ЧТОБЫ ПРАВИЛИ ДРУГИЕ СКРИПТЫ И НАСТРАИВАЛИ САМИ СЕБЯ ЧЕРЕЗ CRON ПОТОМ СТАНЬ ГУРУ SYSTEMD НАПИШИ 40 UNIT-ФАЙЛОВ ДЛЯ ВСЕХ СВОИХ ДЕМОНОВ И ЗАБУДЬ КАК ЖИЗНЬ БЕЗ journalctl -xe
НАСТРОЙ GRUB С ПАРОЛЕМ И БЕЗ ПАРОЛЯ ОДНОВРЕМЕННО ПОДНИМИ XORG С НУЛЯ ПОТОМ СНЕСИ ЕГО И ПЕРЕЙДИ НА WAYLAND НО НЕ ИСПОЛЬЗУЙ DESKTOP ENVIRONMENT ВСЁ ЧЕРЕЗ TILING WM УПРАВЛЯЙ ЗВУКОМ ЧЕРЕЗ amixer А ЯРКОСТЬЮ ЧЕРЕЗ sys/class/backlight
КОГДА БУДЕТ СЛОЖНО — ПИШИ НА C ПРОСТО ПРОТОТИПЫ К СВОИМ BASH СКРИПТАМ ПОТОМ УЙДИ В strace И lsof И ПРОСВЕТЛИСЬ
САМОЕ ВАЖНОЕ — НЕ УСТАНАВЛИВАЙ НИЧЕГО ИЗ SNAP НИКОГДА ВСЁ СОБИРАЙ РУКАМИ С make && make install ЧТО ТЫ ПОЛНЫЙ НОЛЬ ЧТО ЛИ ИСПОЛЬЗОВАТЬ ПАКЕТНЫЙ МЕНЕДЖЕР???
ЗАПОМНИ ЛИНУКС — ЭТО НЕ ПРОСТО ОС ЭТО ИСПЫТАНИЕ СУЩЕСТВОВАНИЯ БРО ПРОСТО ПРИВЫКНИ
Linux / Линукс🥸
ПРОСТО УЧИ BASH СРАЗУ С AWK И SED И ПИШИ СКРИПТЫ ЧТОБЫ ПРАВИЛИ ДРУГИЕ СКРИПТЫ И НАСТРАИВАЛИ САМИ СЕБЯ ЧЕРЕЗ CRON ПОТОМ СТАНЬ ГУРУ SYSTEMD НАПИШИ 40 UNIT-ФАЙЛОВ ДЛЯ ВСЕХ СВОИХ ДЕМОНОВ И ЗАБУДЬ КАК ЖИЗНЬ БЕЗ journalctl -xe
НАСТРОЙ GRUB С ПАРОЛЕМ И БЕЗ ПАРОЛЯ ОДНОВРЕМЕННО ПОДНИМИ XORG С НУЛЯ ПОТОМ СНЕСИ ЕГО И ПЕРЕЙДИ НА WAYLAND НО НЕ ИСПОЛЬЗУЙ DESKTOP ENVIRONMENT ВСЁ ЧЕРЕЗ TILING WM УПРАВЛЯЙ ЗВУКОМ ЧЕРЕЗ amixer А ЯРКОСТЬЮ ЧЕРЕЗ sys/class/backlight
КОГДА БУДЕТ СЛОЖНО — ПИШИ НА C ПРОСТО ПРОТОТИПЫ К СВОИМ BASH СКРИПТАМ ПОТОМ УЙДИ В strace И lsof И ПРОСВЕТЛИСЬ
САМОЕ ВАЖНОЕ — НЕ УСТАНАВЛИВАЙ НИЧЕГО ИЗ SNAP НИКОГДА ВСЁ СОБИРАЙ РУКАМИ С make && make install ЧТО ТЫ ПОЛНЫЙ НОЛЬ ЧТО ЛИ ИСПОЛЬЗОВАТЬ ПАКЕТНЫЙ МЕНЕДЖЕР???
ЗАПОМНИ ЛИНУКС — ЭТО НЕ ПРОСТО ОС ЭТО ИСПЫТАНИЕ СУЩЕСТВОВАНИЯ БРО ПРОСТО ПРИВЫКНИ
Linux / Линукс
Please open Telegram to view this post
VIEW IN TELEGRAM
🤣96🌚35👍7☃1🕊1
Дистрибутив Artix Linux начал поставку сборок с XLibre, форком X.Org Server
Разработчики дистрибутива Artix Linux представили экспериментальные сборки, переведённые на использование XLibre, форка X.Org Server. Artix Linux основан на пакетной базе Arch Linux и примечателен использованием вместо systemd системных менеджеров openrc, runit, dinit и s6, на выбор пользователя. Для тестирования сформированы XLibre-сборки с рабочими столами Xfce, Cinnamon и MATE, размером 2 ГБ, а также полная сборка, размером 4.6 ГБ. В скором времени XLibre намерены задействовать и в основных сборках дистрибутива. Пользователи существующих установок Artix Linux могут перейти на XLibre, установив пакет xlibre-xserver и необходимые драйверы xlibre-xf86-* из репозитория "galaxy-gremlins".
Linux / Линукс🥸
Разработчики дистрибутива Artix Linux представили экспериментальные сборки, переведённые на использование XLibre, форка X.Org Server. Artix Linux основан на пакетной базе Arch Linux и примечателен использованием вместо systemd системных менеджеров openrc, runit, dinit и s6, на выбор пользователя. Для тестирования сформированы XLibre-сборки с рабочими столами Xfce, Cinnamon и MATE, размером 2 ГБ, а также полная сборка, размером 4.6 ГБ. В скором времени XLibre намерены задействовать и в основных сборках дистрибутива. Пользователи существующих установок Artix Linux могут перейти на XLibre, установив пакет xlibre-xserver и необходимые драйверы xlibre-xf86-* из репозитория "galaxy-gremlins".
Linux / Линукс
Please open Telegram to view this post
VIEW IN TELEGRAM
👍27❤6🤣6🎄2🎉1
Ubuntu будет поставлять intel-compute-runtime без защиты от Spectre, снижающей производительность на 20%
В Ubuntu решено перейти по умолчанию на поставку пакета intel-compute-runtime, собранного с флагом NEO_DISABLE_MITIGATIONS, отключающим защиту от атак класса Spectre. По оценке разработчиков Ubuntu наличие подобной защиты приводит к снижению производительности пакета примерно на 20%.
Инженеры, отвечающие за безопасность в Intel и Canonical, в ходе обсуждения пришли к выводу, что в защите от Spectre, реализованной на уровне Compute Runtime, больше нет необходимости, так как необходимая защита уже имеется на уровне ядра.
Linux / Линукс🥸
В Ubuntu решено перейти по умолчанию на поставку пакета intel-compute-runtime, собранного с флагом NEO_DISABLE_MITIGATIONS, отключающим защиту от атак класса Spectre. По оценке разработчиков Ubuntu наличие подобной защиты приводит к снижению производительности пакета примерно на 20%.
Инженеры, отвечающие за безопасность в Intel и Canonical, в ходе обсуждения пришли к выводу, что в защите от Spectre, реализованной на уровне Compute Runtime, больше нет необходимости, так как необходимая защита уже имеется на уровне ядра.
Linux / Линукс
Please open Telegram to view this post
VIEW IN TELEGRAM
👍21😁4🤔1
Please open Telegram to view this post
VIEW IN TELEGRAM
😁49🙏10🤣5💯1
Доступен Cryptsetup 2.8 с поддержкой inline-режима хранения метаданных
Опубликован набор утилит Cryptsetup 2.8, предназначенных для настройки шифрования дисковых разделов в Linux при помощи модуля dm-crypt. Поддерживается работа с разделами dm-crypt, LUKS, LUKS2, BITLK, loop-AES и TrueCrypt/VeraCrypt. В состав также входят утилиты veritysetup и integritysetup для настройки контроля целостности данных на основе модулей dm-verity и dm-integrity.
Linux / Линукс🥸
Опубликован набор утилит Cryptsetup 2.8, предназначенных для настройки шифрования дисковых разделов в Linux при помощи модуля dm-crypt. Поддерживается работа с разделами dm-crypt, LUKS, LUKS2, BITLK, loop-AES и TrueCrypt/VeraCrypt. В состав также входят утилиты veritysetup и integritysetup для настройки контроля целостности данных на основе модулей dm-verity и dm-integrity.
Linux / Линукс
Please open Telegram to view this post
VIEW IN TELEGRAM
😁5👍4❤1☃1
Please open Telegram to view this post
VIEW IN TELEGRAM
😁43🙏4
Райан Даль vs Oracle: битва за имя JavaScript
Создатель Node.js требует отозвать торговую марку "JavaScript" у Oracle. После игнорирования открытого письма (2024) он подал в USPTO три претензии:
— Введение в заблуждение при продлении марки (отклонено: Oracle приложила скриншот Node.js как "своего продукта"!);
— Термин стал общеупотребимым;
— Oracle не использует марку в реальных продуктах.
Аргументы Дала:
1. "JavaScript" — общее название языка (ECMA-262), а не бренд Oracle. Миллионы разработчиков используют термин без связи с компанией.
2. Марка (унаследованная от Sun) заброшена: Oracle не контролирует язык, не выпускает JS-движки.
Ставки высоки:
— До 7 августа Oracle должна ответить на претензии;
— 6 сентября начнётся разбирательство;
— 20k+ подписей петиции за отмену марки;
— Сейчас проекты в "серой зоне": например, "Конференция JavaScript" так и не создана из-за страха перед Oracle.
Linux / Линукс🥸
Создатель Node.js требует отозвать торговую марку "JavaScript" у Oracle. После игнорирования открытого письма (2024) он подал в USPTO три претензии:
— Введение в заблуждение при продлении марки (отклонено: Oracle приложила скриншот Node.js как "своего продукта"!);
— Термин стал общеупотребимым;
— Oracle не использует марку в реальных продуктах.
Аргументы Дала:
1. "JavaScript" — общее название языка (ECMA-262), а не бренд Oracle. Миллионы разработчиков используют термин без связи с компанией.
2. Марка (унаследованная от Sun) заброшена: Oracle не контролирует язык, не выпускает JS-движки.
Ставки высоки:
— До 7 августа Oracle должна ответить на претензии;
— 6 сентября начнётся разбирательство;
— 20k+ подписей петиции за отмену марки;
— Сейчас проекты в "серой зоне": например, "Конференция JavaScript" так и не создана из-за страха перед Oracle.
Linux / Линукс
Please open Telegram to view this post
VIEW IN TELEGRAM
👍18🙏2❤1😁1
Please open Telegram to view this post
VIEW IN TELEGRAM
😁49🌚2
Please open Telegram to view this post
VIEW IN TELEGRAM
😁40😢6❤4
Уязвимости в утилите sudo, позволяющие получить права root в системе
В пакете sudo выявлена уязвимость (CVE-2025-32463), позволяющая любому непривилегированному пользователю выполнить код с правами root, даже если пользователь не упомянут в конфигурации sudoers. Проблеме подвержены дистрибутивы, использующие файл конфигурации /etc/nsswitch.conf, например, возможность эксплуатации уязвимости продемонстрирована в Ubuntu 24.04 и Fedora 41.
Уязвимость проявляется в конфигурации по умолчанию и подтверждена в выпусках sudo с 1.9.14 по 1.9.17 (потенциально затрагивает все версии, начиная с 1.8.33). Проблема устранена в обновлении sudo 1.9.17p1.
В версии sudo 1.9.17p1 также устранена ещё одна уязвимость (CVE-2025-32462), позволяющая выполнить команды с правами root, но проявляющаяся только в конфигурациях sudoers, параметр "host" в которых выставлен в значение, отличное от ALL или имени текущего хоста. Уязвимость вызвана ошибкой, из-за которой опция "-h" ("--host") действовала не только в сочетании с опцией "-l" ("--list") для вывода привязанных к хосту привилегий, но и при запуске команд. Таким образом пользователь мог указать при вызове sudo любой хост и обойти ограничения правил sudoers, привязанных к имени хоста.
Linux / Линукс🥸
В пакете sudo выявлена уязвимость (CVE-2025-32463), позволяющая любому непривилегированному пользователю выполнить код с правами root, даже если пользователь не упомянут в конфигурации sudoers. Проблеме подвержены дистрибутивы, использующие файл конфигурации /etc/nsswitch.conf, например, возможность эксплуатации уязвимости продемонстрирована в Ubuntu 24.04 и Fedora 41.
Уязвимость проявляется в конфигурации по умолчанию и подтверждена в выпусках sudo с 1.9.14 по 1.9.17 (потенциально затрагивает все версии, начиная с 1.8.33). Проблема устранена в обновлении sudo 1.9.17p1.
В версии sudo 1.9.17p1 также устранена ещё одна уязвимость (CVE-2025-32462), позволяющая выполнить команды с правами root, но проявляющаяся только в конфигурациях sudoers, параметр "host" в которых выставлен в значение, отличное от ALL или имени текущего хоста. Уязвимость вызвана ошибкой, из-за которой опция "-h" ("--host") действовала не только в сочетании с опцией "-l" ("--list") для вывода привязанных к хосту привилегий, но и при запуске команд. Таким образом пользователь мог указать при вызове sudo любой хост и обойти ограничения правил sudoers, привязанных к имени хоста.
Linux / Линукс
Please open Telegram to view this post
VIEW IN TELEGRAM
🤯27😁6🤣5👍2
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
❤38😁12🤔1