Профиль: Аноним (вход | регистрация) неRU opennet.me  
OpenNET

[ новости /+++ | форум | теги |    ]

·05.10 Выпуск компоновщика Mold 3.0, развиваемого разработчиком LLVM lld (32)
  Опубликован выпуск компоновщика Mold 3.0, который может применяться в качестве более быстрой прозрачной замены GNU linker на Linux-системах. Проект развивает Rui Ueyama, автор компоновщика LLVM lld. Ключевой особенностью Mold является очень высокая скорость связывания объектных файлов, заметно опережающая компоновщики GNU gold и LLVM lld (компоновка в Mold выполняется со скоростью, всего в два раза медленнее простого копирования файлов утилитой cp). Код написан на языке Rust и распространяется под лицензией MIT.

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

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

Ветка Mold 3.0 примечательна переписыванием кодовой базы с C++ (C++20) на язык Rust. Mold 3.0 может использоваться в качестве прозрачной замены Mold 2.42.1, последнего выпуска на языке C++, и поддерживает все ранее доступные опции и целевые архитектуры. Переход на Rust позволил обезопасить проект от потенциальных проблем при обработке повреждённых объектных файлов - в ситуациях, когда версия на С++ аварийно завершалась из-за обращения к областям памяти за пределами буфера, вариант на Rust останавливает работу на этапе проверки границ. Производительность реализации на Rust находится на одном уровне с версией на C++.

Помимо миграции на Rust ключевой целью при разработке ветки 3.0 было повышение совместимости с GNU ld и подготовка проекта к возможности использования в качестве компоновщика по умолчанию в дистрибутивах Linux. Сборочная система заменена с CMake на Cargo, а система тестов с ctest на cargo test. Из зависимостей исключена библиотека oneTBB.

  1. Главная ссылка к новости
  2. OpenNews: Выпуск компоновщика Mold 2.0, развиваемого разработчиком LLVM lld
  3. OpenNews: В OpenBSD для sshd применена перекомпоновка во время загрузки
  4. OpenNews: Компания Qualcomm открыла компоновщик ELD, пригодный для замены GNU Linker
  5. OpenNews: Разработчики из Google предложили разработать свою libc для LLVM
Обсуждение (32) | Тип: Программы |


·05.10 Проект PhotoSuite развивает открытый аналог Photoshop (111 +7)
  Доступны первые выпуски графического редактора PhotoSuite, разработчик которого поставил перед собой цель создать продукт, способный заменить классический Adobe Photoshop и полностью поддерживающий форматы PSD и PSB. Программа поддерживает редактирование растровой и векторной графики, и по возможности воспроизводит рабочие процессы, панели инструментов, диалоги, горячие клавиши и модификаторы, привычные пользователям Photoshop CS6. В качестве основного формата файлов применяется PSD. Заявлено, что PSD-файлы, сохранённые в PhotoSuite, могут без проблем открываться в Photoshop и наоборот.

Код написан на JavaScript и распространяется под лицензией GPLv3. Готовые сборки формируются для Linux, Windows и macOS. Для выполнения в качестве обособленного десктоп-приложения задействована небольшая обвязка на языке Rust и платформа Tauri, предоставляющая возможности для использования родных диалогов и меню, доступа к файловой системе, работы с буфером обмена, вывода на печать и перемещения файлов мышью. По заявлению автора проекта, код опубликован после около года разработки в приватном репозитории. В процессе работы используется AI-ассистент, но развивающий проект разработчик не считает PhotoSuite AI-слопом, так полностью контролирует процесс, имея более 20 лет опыта разработки на JavaScript.

Среди реализованных возможностей:

  • Работа с растровыми и векторными слоями, группами слоёв и масками. Совместимые с Photoshop стили слоёв для создания теней, свечения, тиснения, наложение цвета, градиентов, шаблонов и обводки. Умные объекты и фильтры с поддержкой недеструктивного редактирования.
  • Классический набор инструментов, включая выделение, кадрирование, кисти, штампы, восстанавливающая кисть, ластик, градиенты, размытие, осветление/затемнение, перо, текст, фигуры и пипетка.
  • Панорамирование, масштабирование и вращение холста. Выравнивание по сетке, линейкам и произвольно выставляемым направляющим.
  • Ведение истории операций с поддержкой отката изменений и сохранения снапшотов состояния.
  • Набор фильтров, поддерживающих многопоточное выполнение и live-предпросмотр.
  • Возможности для коррекции оптических искажений.
  • Задействование WebAssembly для высокопроизводительной обработки изображений.
  • Инструменты для работы с текстом, использующие Typr.js для работы со шрифтами и скомпилированный в WebAssembly движок HarfBuzz для компоновки текста. Поддержка привязки текста к криволинейной направляющей, деформации текста, лигатур OpenType и кернинга.
  • Возможность создания скриптов для автоматизации действий, используя JavaScript/JSX и движок Acorn.
  • Поддержка создания плагинов для интеграции инструментов в боковую панель.
  • Поддержка форматов файлов: PSD, PSB, AI (Adobe Illustrator), XD (Adobe XD), PNG, APNG, JPEG, WebP, AVIF, TIFF, GIF, BMP, TGA, OpenEXR, SVG, PDF, PostScript, EPS, EMF, WMF, DXF, Sketch, FIG (Figma), AF (Affinity Photo/Designer), XCF (GIMP), DNG, CR2, NEF, ARW и специфичных для камер RAW-форматов.

  1. Главная ссылка к новости
  2. OpenNews: Релиз графического редактора GIMP 3.2.6
  3. OpenNews: Проект GIMP развивает новый формат рабочих файлов, идущий на смену XCF
  4. OpenNews: Выпуск PhotoGIMP 3.1, надстройки над GIMP, стилизованной под Photoshop
Обсуждение (111 +7) | Тип: Программы |


·05.10 Анонсировано открытие кода браузера Orion для Linux и Windows (60 +14)
  Разработчики поисковой системы Kagi объявили о решении открыть исходный код редакций браузера Orion для платформ Linux и Windows. Детали будущей модели развития и лицензии Orion для указанных платформ намерены опубликовать в течение 30 дней. Рассматривается возможность передачи кода на попечение одной из некоммерческих организаций.

Причиной пересмотра политики в отношении публикации кода стало сворачивание разработки Orion для Linux и Windows в пользу развития только версий для macOS и iOS, так как небольшая компания Kagi не смогла потянуть разработку сложного кросс-платформенного продукта и желает больше не распылять ресурсы, а сосредоточиться только на одном варианте браузера. В заявлении указано, что разработчики Orion потратили много времени и сил на создание версий для Linux и Windows, и считают, что проект заслуживает продолжения разработки, но уже без участия Kagi, а силами заинтересованного сообщества.

Браузер Orion построен на движке WebKit и примечателен блокированием по умолчанию рекламы и кода для отслеживания перемещений, отсутствием сбора и отправки телеметрии, интеграцией с поисковыми сервисами Kagi, дополнительными возможностями кастомизации интерфейса и просматриваемых страниц, поддержкой установки дополнений от Safari, Chrome и Firefox. Браузер также демонстрирует более эффективное освобождение памяти - после закрытия вкладок Orion занимает в 3 раза меньше памяти по сравнению с Safari, в 2.5 раза - по сравнению Chrome и в 2 раза - по сравнению Firefox.

В Orion можно добавлять в панель собственные кнопки для вызова JavaScript-кода или выполнения доступных в браузере функций. Поддерживается изменение шрифтов, отключение закреплённых (непрокручиваемых) заголовков, принудительное применение тёмного оформления для сайтов, а также выборочное отключение JavaScript, Cookie и внешних шрифтов. Имеется режим быстрого удаления HTML-элементов со страниц через их выделение курсором, а также функция редактирования страницы, позволяющая изменить содержимое перед созданием скриншота или сохранением на диск.

Среди других возможностей: вертикальные вкладки, режим быстрого поиска, интеграция с archive.org для просмотра старых версий страниц, режим компактного отображения вкладок, автоскрытие панелей, изменение User Agent, предпросмотр ссылок, группировка вкладок, режим экономии энергии, блокировка автовоспроизведения звука и видео, отключение применяемой на некоторых сайтах блокировки копирования в буфер обмена.

  1. Главная ссылка к новости
  2. OpenNews: Началось альфа-тестирование браузера Orion для Linux
  3. OpenNews: UnGoogled Chromium, браузер, ориентированный на приватность
  4. OpenNews: Опубликован Tangram 2.0, web-браузер на основе WebKitGTK
  5. OpenNews: Открыты исходные тексты web-браузера Kiwi
  6. OpenNews: Открыт код BrowserBox Pro, платформы для удалённой изоляции браузера
Обсуждение (60 +14) | Тип: К сведению |


·05.10 Инженер из NVIDIA протестировал уровень задержек при использовании Wayland и X.Org (95 +22)
  Камиль Лысик (Kamil Łysik), работающий в компании NVIDIA, выступил на конференции XDC 2026 с докладом, в котором рассказал о результатах тестирования задержек вывода информации в окружениях GNOME 49.7 (mutter) и KDE 6.7.4 (kwin) при использовании X.Org Server и Wayland. Задействованный в исследовании код опубликован под лицензией MIT.

В целом выводы сводятся к тому, что различия в отзывчивости не существенны и трудно выделить одного победителя. Наибольшее влияние на задержки, по мнению Камиля, вносят обработка ввода и организация вывода на монитор. Отдельно отмечена технология адаптивного изменения частоты обновления экрана (VRR), включение которой позволило заметно повысить отзывчивость. Также упомянуто решение проблем с задержками, в прошлых тестированиях возникавших при использовании XWayland - в новой кодовой базе XWayland появление дополнительных задержек не зафиксировано.

Предложенный метод оценки отзывчивости интерфейса близок к исследованию, проведённому в июле Марком Неттом. Как и в прошлом исследовании для точного измерения времени от нажатия клавиши до изменения информации на экране использовалось специальное аппаратное устройство на базе микроконтроллера ЕSP32-S3, к которому был подключён фотодиод для фиксации изменения яркости точки на экране, и обеспечена симуляция работы USB-клавиатуры. Для вывода были задействованы видеокарта NVIDIA GeForce RTX 5070 и монитор LG 27GN950. В системе применялось ядро Linux 7.1.7 и набор проприетарных драйверов NVIDIA 610.57.04.



  1. Главная ссылка к новости
  2. OpenNews: Сравнение отзывчивости ввода в X11 и Wayland
  3. OpenNews: Сравнение производительности игр при использовании Wayland и X.org
  4. OpenNews: Сравнение производительности сеансов KDE Plasma на базе X11 и Wayland
  5. OpenNews: Состояние поддержки Wayland в проприетарных драйверах NVIDIA
Обсуждение (95 +22) | Тип: Обобщение |


·05.10 Выпуск Phosh 0.58, GNOME-окружения для смартфонов (14 +4)
  Опубликован релиз Phosh 0.58, экранной оболочки для мобильных устройств, основанной на технологиях GNOME и библиотеке GTK. Окружение изначально развивалось компанией Purism в качестве аналога GNOME Shell для смартфона Librem 5, но затем вошло в число неофициальных проектов GNOME и используется в Nura (postmarketOS), Mobian, ALT Mobile, Droidian, некоторых прошивках для устройств Pine64 и редакции Fedora для смартфонов. Phosh использует композитный сервер Phoc, работающий поверх Wayland, а также собственную экранную клавиатуру. Наработки проекта распространяются под лицензией GPLv3+.

Среди изменений:

  • В быстрых настройках в функцию "caffeine", блокирующую автоотключение экрана, добавлена возможность выбора методов для предотвращения активации спящего режима и блокировки экрана.
  • В уведомление, показываемое после создания скриншота, добавлены кнопки для открытия изображения или просмотра содержимого каталога, в который сохранён скриншот.
  • Улучшено отслеживание запуска приложений и flatpak-пакетов, в которых используется отдельное имя для DBus.
  • В композитном сервере phoc расширена поддержка Wayland-протоколов text-input-v3 и layer-shell-effects для улучшения совместимости с GTK 4.24 и разделения перемещений Wayland-поверхностей композитным сервером и клиентом. Добавлен интерфейс для отрисовки миниатюр, позволивший ускорить их показ на экране.
  • В экранной клавиатуре Stevia предоставлена возможность установки словарей для автодополнения ввода в домашний каталог.
  • В конфигураторе phosh-mobile-settings упрощена фильтрация панелей и задействована логика работы с панелями, как в приложении conf-tweaks.
  • В мастере первого запуска (phosh-first-boot) предоставлены возможности для настройки минимального размера пароля и имени пользователя. При работе с зашифрованными накопителями по умолчанию задействован бэкенд LUKS (Linux Unified Key Setup) из systemd-homed. Включено добавление нового пользователя в группу sudo.
  • В gmobile, набор обработчиков для работы GNOME на мобильных устройствах, добавлена поддержка экранной панели, используемой в Google Pixel 3 XL. Обеспечена поддержка Google Pixel 9a и налажена обработка скруглённых углов экрана смартфона Fairphone 5.
  • В виджет сохранения файлов добавлена функция создания каталогов, а также монтирования и отмонтирования сетевых разделов и SD-карт.
  • Обновлены версии зависимостей: callaudiod 0.1.10, Calls 50.0, cellbroadcastd 0.0.3, feedbackd 0.8.9, feedbackd-device-themes 0.8.9, GNOME 50, iio-sensor-proxy 3.9, mmsd-tng 2.6.4, ModemManager 1.25.95, wlroots 0.20.2, wys 0.1.12.

  1. Главная ссылка к новости
  2. OpenNews: Выпуск Phosh 0.57.0, GNOME-окружения для смартфонов
  3. OpenNews: Продолжение развития GNOME Shell для мобильных устройств
  4. OpenNews: Мобильная платформа ALT Mobile 11.0, построенная на технологиях GNOME
  5. OpenNews: Дистрибутив для мобильных устройств postmarketOS переименован в Nura
Обсуждение (14 +4) | Тип: Программы |


·05.10 Тео де Раадт предложил изменения для ограничения доступа к ФС через функцию openat (62 +25)
  Тео де Раадт предложил включить в OpenBSD новый механизм для уменьшения поверхности атаки, реализованный через расширение возможностей системного вызова openat. Патчи с реализацией дополнительных флагов для openat и open, ограничивающих возможность перехода к верхним каталогам через "/.." и обращения по абсолютным путям, подготовлены для ядра, libc, а также некоторых приложений из базовой системы. Изменения пока не включены в состав OpenBSD-current и находятся на стадии обсуждения среди разработчиков.

Семейство системных вызовов openat(2) работает как аналог open(2) за исключением того, что если в параметре "path" указан относительный путь, то открываемый файл определяется относительно каталога, связанного с файловым дескриптором "fd", а не относительно текущего рабочего каталога. Если передать в openat абсолютный путь, например:

 
   int dirfd = open("/tmp", O_RDONLY | O_DIRECTORY);                       
   int hfd = openat(dirfd, "/etc/hosts", O_RDONLY);

функция openat() проигнорирует "dirfd" и, как следствие, абсолютный путь обработается обычным образом.

Поэтому замена open() на openat() сама по себе не усиливает безопасность программы. Такой вызов может ускорить разбор пути, но не ограничивает доступ к файловой системе. Не гарантируют защиту и флаги, запрещающие абсолютные пути (например, RESOLVE_BENEATH и/или RESOLVE_IN_ROOT для openat2 в Linux): программист должен добавлять их ко всем подходящим вызовам, а при захвате управления процессом атакующий может воспользоваться другими путями открытия файлов.

В ходе работы над утилитой openrsync у Тео возникла необходимость ограничить её возможности по обходу файловой системы, но сделать это при помощи функций unveil() и pledge() не представлялось возможным. Тогда возникла идея о механизме, подобном openat(), но со свойствами безопасности, дополняющими pledge/unveil или даже работающими при их отсутствии.

Основная идея - сделать ограничения частью самого дескриптора каталога. Для этого предлагается флаг F_BELOW, который можно установить через fcntl(), либо флаг O_BELOW для open(). Ограниченный таким образом дескриптор "dirfd" будет разрешать только переходы вниз по дереву каталогов: вызовы openat() с абсолютным путём или с переходом вверх через ".." будут завершаться ошибкой ENOENT. В случае атаки, приводящей к выполнению кода, таблица файловых дескрипторов процесса будет содержать менее функциональные "dirfd", что будет ограничивать поверхность атаки.

  1. Главная ссылка к новости
  2. OpenNews: OpenBSD прекратил поддержку аппаратной платформы Loongson из-за регресии в Clang
  3. OpenNews: В OpenBSD устранена локальная уязвимость, позволяющая получить права root
  4. OpenNews: Релиз OpenBSD 7.9
  5. OpenNews: В OpenBSD переименовали поле в pfsync после ложного AI-отчёта об уязвимости
  6. OpenNews: В OpenBSD реализована поддержка запуска под управлением Apple Hypervisor
Обсуждение (62 +25) | Автор: Дон Ягон | Тип: К сведению |


·04.10 Проект Rocky Linux анонсировал OpenCourant, форк OpenRadioss (50 +16)
  Некоммерческая организация Rocky Enterprise Software Foundation, курирующая разработку дистрибутива Rocky Linux, объявила о создании проекта OpenCourant, который продолжит развитие открытой кодовой базы платформы OpenRadioss после её трансформации в проприетарный продукт. Код проекта продолжит развиваться под лицензией APGLv3 силами сообщества и под управлением некоммерческого фонда, не зависящего от отдельных поставщиков. Для участия в работе над форком приглашаются разработчики, вовлечённые в работу над проектом OpenRadioss до его закрытия.

Код проекта OpenRadioss написан на языке Fortran и был открыт в 2022 году. Несколько дней назад компания Siemens удалила репозиторий OpenRadioss с GitHub, отключила сайт проекта и предложила пользователям перейти на проприетарный продукт Simcenter Radioss. OpenRadioss предназначен для решения задач механики сплошных сред, таких как расчёт прочности инженерных конструкций в высоконелинейных задачах, связанных с большими пластическими деформациями исследуемой среды. Код в основном написан на языке Fortran и поддерживает работу в Linux и Windows. К решаемым проектом задачам относятся проблемы обработки металлов давлением и листовой штамповки, а также симуляция быстропротекающих процессов и механики жидкости и газа.

  1. Главная ссылка к новости
  2. OpenNews: Компания Siemens трансформировала OpenRadioss в проприетарный продукт
  3. OpenNews: Опубликованы исходные тексты инженерного пакета RADIOSS
Обсуждение (50 +16) | Тип: К сведению |


·04.10 Выпуск компилятора языка D 2.113 (61 +13)
  Опубликован релиз DMD 2.113, эталонного компилятора для языка D. Код компилятора распространяется под свободной лицензией BSL (Boost Software License). Поддерживаются системы Linux, Windows, macOS и FreeBSD.

Язык D использует статическую типизацию, обладает синтаксисом, схожим с C/C++, и обеспечивает производительность компилируемых языков. Язык D также заимствует некоторые возможности динамических языков, полезные для повышения эффективности разработки и обеспечения безопасности. Например, имеется поддержка: ассоциативных массивов, косвенного определения типов, автоматического управления памятью, средств параллельного программирования, шаблонов, компонентов для метапрограммирования. Опционально доступен сборщик мусора. В программах на языке D можно использовать библиотеки на языке C, а также некоторые библиотеки на C++ и Objective-C.

Среди изменений в выпуске 2.113:

  • Новый экспериментальный движок Data Flow Analysis ("-preview=fastdfa"), который пытается отслеживать состояние переменных по ходу выполнения функции. Движок анализирует может ли указатель быть null, инициализирована ли переменная, какие значения переменная потенциально может иметь и как состояние меняется после выражений "if", циклов и присваиваний. Также он обнаруживает чтение неинициализированных переменных. Причём анализ умеет проходить через указатели:
    
      void readFromUninit() @system
      {
        int val1 = void;
        int val2 = val1; // error
    
        int* ptr = &val1;
        int val3 = *ptr; // error
      }
    
  • Добавлен новый типаж, обрабатываемый на этапе компиляции (compile-time trait) "__traits(needsDestruction, T)", который позволяет определять типы, требующие сложного уничтожения.
    
      class C { ~this(); }
      struct S { ~this(); }
    
      static assert(!__traits(needsDestruction, C));
      static assert(__traits(needsDestruction, S));
      static assert(!__traits(needsDestruction, S[0]));
      static assert(__traits(needsDestruction, S[1]));
    
  • Появилась опциональная проверка, производимая на этапе выполнения, "-check=nullderef=on", позволяющая вместо состояния "crash" получить контролируемую ошибку, которую можно обработать через механизмы core.exception.
  • Добавлен вывод длины статических массивов. Используя символ "$", вывод длины будет происходить автоматически:
    
       int[$] arr = [1, 2, 3]; // int[3] arr = [1, 2, 3];
    
  • Улучшена реализация "pragma(inline, true)" - компилятор теперь рассматривает такие функции в отдельной стадии "inlining", что важно для высокопроизводительного и шаблонного кода.
  • Улучшен режим диагностики "-vgc", который отслеживает операции, требующие выделения памяти через сборщик мусора. В новой версии реализовано точное определение местоположения вложенной функции и переменной, из-за которых создаётся замыкание (closure).
  • Добавлен новый синтаксис "with(auto x = expression())", который можно применять когда результат выражения нужно временно использовать как объект контекста.
  • Появился механизм для перехвата необработанных исключений, которые выходят за пределы потока. Например, можно глобально или для конкретного потока перехватить исключение и решить, что с ним делать до остановки выполнения из-за фатальной ошибки: логировать; завершить процесс;- передать дальше; выполнить собственную runtime policy.
    
      filterThreadThrowableHandler = (ref Throwable t)
      {
        ...
      };
    
  • В пакетный менеджер dub добавлена опция "-timeout для использования "dustmite" - инструмента по поиску минимального кода с примером проблемного поведения компилятора.

На основе DMD 2.113 выпущен компилятор LDC 1.43, в который добавлено множество улучшений.

  • Реализована поддержка LLVM 22.
  • Существенно улучшена поддержка "WebAssembly". Добавлены поддержка сборщика мусора и исключений. Теперь "DRuntime" и "Phobos" (стандартная библиотека) поддерживают WASI Preview 1, WASI Preview 2 и Emscripten.
  • Кросс-компиляция в "LDC" стала проще и появились готовые дополнения, которые можно указывать при сборке через опцию "-mtriple="
    
    Windows
      x86_64-windows-msvc
      i686-windows-msvc
    
    Android
      aarch64-linux-android30
      armv7a-linux-androideabi29
      x86_64-linux-android29
      i686-linux-android29
    
    WASI
      wasm32-unknown-wasip1
      wasm32-unknown-wasip2
    
    Emscripten
      wasm32-unknown-emscripten
    
  • Оператор @restrict теперь работает для динамических массивов, что помогает делать авто-векторизацию:
    
      @ldc.attributes.restrict
      float[] foo(float[] a, float[] b) {
        float[] c;
        c[] = a[] * b[];
        return c;
      }
    
  • Улучшена поддержка встроенного ассемблера в стиле "DMD": "asm { naked; }", для которого реализована возможность применять встроенные в компилятор оптимизации, включая "LTO".
  • В "LDC" добавлена поддержка "dcompute", который теперь умеет внутри вызывать "PTX" и "SPIR-V" для работы на GPU. Ведётся работа по поддержке графических API "metal" и "directx".

Дополнительно можно отметить разработку ряда интересных проектов на языке D:

  • В области разработки игр (GameDev) были следующие обновления: в движке Parin улучшена поддержка WASM и добавлены примеры для WASI. В Steam выпущена демонстрация новой игры Rhythm Game Studio, реализованная на D с использованием "SDL3".
  • В области веб-разработки представлен проект crate, упрощающий разработку CRUD веб-приложений. Проект по описанной модели данных позволяет автоматически создавать интерфейсы для протоколов REST, JSON:API, GraphQL и MCP.
  • В области графических интерфейсов разрабатывается написанный на языке D порт "XOrg/XLibre" - xenia. Графический тулкит Sciter получил возможность использовать D вместе с логикой на JS/HTML.
  • Для работы с аудио появились нативные обвязки для LV2 и JACK Audio Connection Kit. Для профессиональных разработчиков аудио-плагинов продолжается развитие библиотеки dplug. Представлен проект синтезатора звука на WASM4.
  • Улучшена поддержка системы сборки Bazel, что упростило сборку смешанных приложений с кодом на C++.
  • Представлены приложения, упрощающие работу с ключами шифрования: neverstored и hideout.
  • В сентябре в Лондоне прошла конференция Dconf2026. Представлены доклады о развитии языка D и проектах, связанных с ним.

  1. Главная ссылка к новости
  2. OpenNews: Выпуск компилятора языка D 2.112
Обсуждение (61 +13) | Автор: D_dev | Тип: Программы |


·04.10 Компилятор EDG C/C++ превращён в открытый проект, развиваемый сообществом (49 +24)
  Компания Edison Design Group в связи с прекращением своей деятельности открыла исходный код фронтенда компилятора EDG C/C++ и передала его разработку сообществу. Дальнейшая работа над EDG C/C++ будет вестись под покровительством некоммерческой организации C++ Alliance, предоставляющей инфраструктуру и финансирующей работу над такими проектами, как Boost. Код EDG C/C++ открыт под лицензией Apache 2.0 с исключениями LLVM, убирающими ограничения по включению runtime-частей компилятора в бинарные файлы и решающими проблемы совместимости с GPLv2.

Компания Edison Design Group была создана в 1988 году и специализировалась на разработке фронтэнда для языков C и C++, выполняющего работу по препроцессингу, лексическому, синтаксическому и семантическому анализу исходного кода, выявлению ошибок и преобразованию в универсальное промежуточное представление, которое затем используется бэкендом для генерации машинного кода. EDG C/C++ применялся в качестве фронтэнда во многих проприетарных компиляторах и анализаторах кода, включая такие продукты как Intel C++ Compiler, Comeau C++, Microsoft Visual C++, NVIDIA CUDA Compiler, SGI MIPSpro и Portland С/C++.

Помимо преобразования исходного кода в промежуточное представление EDG C/C++ предоставляет возможности для диагностики ошибок в коде c формированием детальной информации о проблемах и их местоположению в коде. При этом фронтэнд не выполняет оптимизацию и лишь генерирует высокоуровневое древовидное структурированное представление на универсальном промежуточном языке, отражающее информацию об объявлениях, операторах и выражениях с привязками к исходному коду для упрощения генерации отладочной информации.

В EDG C/C++ полностью поддерживаются стандарты C++11, C++14 и C++17, частично C++20 и C++23, а также расширения и диалекты Microsoft, GNU и Clang. Одним из основных направлений деятельности после передачи проекта сообществу станет проведение работы по добавлению в EDG полной поддержки актуальных стандартов C++. В долгосрочной перспективе планируется довести EDG C/C++ до состояния полнофункционального компилятора, способного конкурировать с GCC и LLVM/Clang.

На первом этапе сопровождением кодовой базы нового открытого проекта займутся инженеры из EDG, финансирование работы которых обеспечит C++ Alliance. Со временем будут выработаны открытые процессы, позволяющие сторонним участникам принимать активное участие в разработке, сохраняя при этом высокое качество продукта. Комитет, который будет контролировать развитие проекта, возглавит Джон Спайсер (John Spicer), один из ключевых разработчиков EDG C/C++.

  1. Главная ссылка к новости
  2. OpenNews: Релиз набора компиляторов LLVM 23
  3. OpenNews: Открыт код компилятора для языка программирования Mojo
  4. OpenNews: Выпуск компилятора ISPC 1.31, развиваемого Intel для языка Си с расширениями SPMD
  5. OpenNews: NVIDIA опубликовала CUDA-oxide, компилятор из Rust в CUDA
  6. OpenNews: Релиз набора компиляторов GCC 16
Обсуждение (49 +24) | Тип: К сведению | Интересно


·04.10 Госучреждения Нидерландов и Франции внедряют решения на базе NixOS (132 +25)
  Министерство внутренних дел и по делам Королевства Нидерландов развивает проект DAWO (Digitaal Autonome Werkomgeving Overheid), нацеленный на создание суверенной рабочей среды для государственных учреждений, продвигаемой с целью исключения зависимости от иностранных технологических корпораций. В качестве операционной системы для рабочих станций выбран Linux-дистрибутив NixOS. В разработку проекта вовлечены три государственные IT-компании - DICTU, SSC-ICT и DUO-ICT. Первый стабильный релиз DAWO ожидается в следующем году. В настоящее время в пилотном внедрении платформы участвуют четыре муниципалитета. Наработки опубликованы на государственной платформе совместной разработки, созданной на базе Forgejo, и зеркалируется в Codeberg и Github.

Платформу DAWO образуют несколько компонентов:

  • Операционная система DAWO-NixOS на базе NixOS (отдельно предусмотрен резервный вариант на Fedora Kinoite).
  • Облачная инфраструктура DAWO-Cloud.
  • Инструменты для организации совместной работы MijnBureau на базе Nextcloud, Collabora, Element и OpenProject.
  • Система идентификации и управления доступом DAWO-IAM.
  • Инструменты централизованного развёртывания и управления рабочими станциями DAWO-Sextant. Для управления мобильными устройствами планируют использовать Fleet.
  • Мобильная платформа DAWO-Mobile, в качестве основы для которой рассматриваются /e/OS, GrapheneOS и CalyxOS.
  • AI-ассистент DAWO-AI.

Дистрибутив NixOS выбран в качестве основного для рабочих станций из-за декларативной модели конфигурации, поддержки воспроизводимых сборок, возможности работы на устаревших системах, наличия средств для аудита и отката изменений, а также развития сообществом без влияния отдельных корпораций. На выбор NixOS также повлияло то, что курирующая проект NixOS некоммерческая организация зарегистрирована в Нидерландах, а авторы пакетного менеджера Nix и первого варианта дистрибутива имеют голландские корни. В качестве претендентов рассматривались openSUSE и Fedora, но были отклонены из-за влияния на их разработку отдельных компаний.

Похожая инициатива по созданию решения для госорганов на базе NixOS параллельно запущена во Франции. Проект развивает Межминистерское управление по цифровым делам (DINUM) для обеспечения цифрового суверенитета и независимости от иностранного ПО. Для системных администраторов разработан защищённый вариант дистрибутива - Securix, а для обычных пользователей предлагается использовать шаблон Bureautix, который различные ведомства могут адаптировать под свои нужды. До конца года намечено пилотное внедрение платформы примерно на 250 рабочих станциях.

В Securix применяется аутентификация с использованием аппаратных ключей (FIDO2, TPM2, YubiKey) и загрузка в режиме UEFI Secure Boot. Bureautix представляет собой вариант Securix, адаптированный для установки на системы обычных пользователей. С целью исключения завязки на сетевую инфраструктуру и недопущение подключения других пользователей к системе принципиально не поддерживается централизованный вход через LDAP или FreeIPA. Для ведения и распространения базы пользователей применяется Git.

Базовое пользовательское окружение основано на KDE. На выбор предлагаются офисные пакеты LibreOffice, ONLYOFFICE и WPS Office (+ markdown-редактор Typst), для редактирования кода - neovim и vscodium, для электронной почты - thunderbird, neomutt и aerc, для обмена сообщениями - signal-desktop и element-desktop. В качестве браузера задействован Chromium, для просмотра видео - vlc, для ведения заметок obsidian, для просмотра PDF - xournalpp.

  1. Главная ссылка к новости
  2. OpenNews: Доступен дистрибутив NixOS 26.05, использующий пакетный менеджер Nix
  3. OpenNews: Отставка команды модераторов NixOS из-за разногласий с управляющим комитетом
  4. OpenNews: Перевод на Linux 37 тысяч ПК во французской жандармерии позволил снизить затраты на 40%
  5. OpenNews: Часть компьютеров в госучреждениях Франции планируют перевести с Windows на Linux
  6. OpenNews: В Нидерландах на базе Forgejo создана платформа совместной разработки кода для госучреждений
Обсуждение (132 +25) | Автор: Мемоним | Тип: К сведению |


·04.10 Выпуск мобильной платформы /e/OS 4.3 (58 +12)
  Представлен выпуск мобильной платформы /e/OS 4.3, сфокусированной на конфиденциальности пользовательских данных. Платформа основана Гаэлем Дювалем (Gaël Duval), создателем дистрибутива Mandrake Linux. Проект поддерживает 287 моделей смартфонов и формирует сборки прошивок для наиболее популярных из них. На базе смартфонов OnePlus, Fairphone, Teracube, HIROH и Pixel подготовлены собственные редакции устройств, распространяемые с предустановленной прошивкой /e/OS под брендами Murena One, Murena 2, Murena Fairphone 4/5/6, Murena Teracube 2e, Murena Pixel 5/7 и Murena SHIFTphone 8.

Прошивка /e/OS развивается как ответвление от платформы LineageOS (на базе Android), избавленное от привязки к сервисам и инфраструктуре Google для исключения передачи телеметрии на серверы Google и повышения уровня конфиденциальности. Среди прочего, блокируется и неявная отправка информации, например, обращения к серверам Google при проверке доступности сети, резолвинге DNS и определении точного времени.

В поставку входит пакет microG, предлагающий независимые аналоги сервисов Google, что позволяет обойтись без установки проприетарных компонентов. Для определения местоположения по Wi-Fi и базовым станциям (без GPS) прослойка UnifiedNlp, способная работать через BeaconDB, OpenWlanMap, openBmap, OpenCellID, lacells.db и другие альтернативные сервисы. Вместо поисковой системы Google предлагается метапоисковый сервис Murena Find на основе поискового движка Qwant.

Для синхронизации точного времени вместо обращения к NTP-серверу Google запросы отправляются на серверы из коллекции NTP Pool, а вместо DNS-серверов Google (8.8.8.8) используются DNS-серверы текущего провайдера. В web-браузере по умолчанию включён блокировщик рекламы и скриптов для отслеживания перемещений. Для синхронизации файлов и данных приложений разработан собственный сервис, совместимый с инфраструктурой на основе Nextcloud. Серверные компоненты основаны на открытом ПО и доступны для установки на подконтрольных пользователю системах.

Интерфейс пользователя включает собственное окружение для запуска приложений BlissLauncher, улучшенную систему уведомлений, новый экран блокировки и иное стилевое оформление. В BlissLauncher задействован разработанный для /e/OS набор автоматически масштабируемых пиктограмм и отдельная подборка виджетов (например, виджет для показа прогноза погоды).

Проектом также развивается собственный менеджер аутентификации, позволяющий использовать для всех сервисов единую учётную запись ([email protected]), регистрируемую в процессе первой установки. Учётную запись можно использовать для получения доступа к своему окружению с других устройств или через Web. В облаке Murena Cloud бесплатно предоставляется 1ГБ для хранения своих данных, синхронизации приложений и резервных копий.

Среди входящих в состав приложений: почтовый клиент Mail (форк K9-Mail), web-браузер Cromite (на базе Chromium), программа для работы с камерой OpenCamera, программа для отправки мгновенных сообщений QKSMS, система для ведения заметок nextcloud-notes, PDF-просмотрщик MJ PDF, планировщик opentasks, программа для работы с картами Magic Earth, галерея фотографий gallery3d, файловый менеджер, каталог приложений App Lounge.

Основные изменения в /e/OS 4.3:

  • Перенесены обновления и исправления из платформы LineageOS 23, построенной на кодовой базе Android 16. Прошивка /e/OS для смартфона Fairphone 4 обновлена до Android 16.
  • В приложение /e/OS Backup добавлен вывод сведений о следующем запланированном резервном копировании. Обеспечено сохранение в резервной копии настроек виджета с прогнозом погоды и выбранных обоев. Добавлены оптимизации для приостановки резервного копирования при низком заряде аккумулятора. Добавлено определение использования системы Seedvault для создания шифрованных резервных копий для продолжения её использования вместо /e/OS Backup.
  • В прошивке для смартфона Gigaset GS6 улучшена аутентификация по отпечаткам пальцев, добавлен обработчик для выбора действий при удержании кнопки Action и решена проблема с аварийным завершением работы приложений microG.
  • Обновлены прошивки для компонентов смартфонов Fairphone 6 и Fairphone 4.
  • В менеджере учётных записей улучшена синхронизация контактов для адресной книги.
  • В менеджере паролей прекращено автозаполнение полей с одноразовыми паролями.
  • Для устройств OnePlus, Samsung, Xiaomi и Sony Xperia налажена сборка образов для восстановления (recovery.img).

  1. Главная ссылка к новости
  2. OpenNews: Выпуск мобильной платформы /e/OS 3.6
  3. OpenNews: Опубликована мобильная платформа LineageOS 23.2
  4. OpenNews: GrapheneOS портирован на Android 17
  5. OpenNews: Представлены первые ноутбуки Googlebook, оснащённые Android
  6. OpenNews: Доступна Android-прошивка CalyxOS 8.0, не привязанная к сервисам Google
Обсуждение (58 +12) | Тип: Программы |


·03.10 Создана среда, позволяющая собирать С++ приложения для Windows, Linux, macOS в браузере (51 +2)
  Группа энтузиастов создала SDK Xenolith, позволяющий собирать полноценные настольные приложения прямо в браузере, не обращаясь к внешним системам. Среда позволяет кросс-компилировать графические приложения с любой из поддерживаемых систем на любую другую. Одной из поддерживаемых систем является WebAssembly, потому приложения можно собирать для браузера, и в браузере для любой другой платформы. Исходный код проекта написан на C++ и доступен под лицензией MIT.

Среда не использует проприетарные SDK Windows и macOS, вместо этого из открытого кода или методом чистой комнаты созданы с нуля заместители, позволяющие собрать приложение, которое будет работать в целевой системе. Все без исключения инструменты собираются из исходных кодов внутри среды (для сборки требуется Linux и компилятор, способный собрать GCC 15.2, дальше среда соберёт всё сама). Доступна онлайн-демонстрация с набором примеров, включая DOOM и демо-версию Heroes of Might and Magic II, которая не требует регистрации, работает одной страницей и не общается с сервером (данные лежат на AWS CDN).

  1. Главная ссылка к новости
Обсуждение (51 +2) | Автор: sbkarr | Тип: Программы |


·03.10 Выпуск языка программирования Zig 0.17.0 (110 +13)
  После пяти месяцев разработки опубликован выпуск языка программирования Zig 0.17.0, развиваемого в качестве современной замены языка Си. В Zig пытаются сохранить простоту, гибкость использования и предсказуемость кодогенерации языка Си, при этом добавляя новшества для более эргономичной и безопасной разработки. Zig предоставляет возможности метапрограммирования (выполнения кода во время компиляции) и современную систему типов, созданную с оглядкой на обеспечение безопасности и производительности (опциональные типы вместо нулевых указателей, выравнивание по адресу как часть типа, целочисленные типы с размерностью от 0 до 65535 бит, кортежи и т.д.). Код инструментария распространяется под лицензией MIT.

В подготовке релиза приняли участие 206 разработчиков, которые внесли 925 коммитов. Основные изменения:

  • Переработана сборочная система (Build System), в которой процесс конфигурации отделён от процесса сборки. Переработана система кэширования.
  • Добавлен протокол Build Server Protocol, позволяющий клиентам отслеживать процесс сборки и управлять им.
  • Существенно улучшен собственный ELF-компоновщик.
  • В компиляторе реализована возможность использования инкрементальной компиляции в Linux-окружениях на системах с архитектурой x86_64.
  • Обновлены версии LLVM 22, musl 1.2.5, glibc 2.44, заголовочные файлы ядра Linux 7.2.
  • Расширена поддержка целевых платформ loongarch32 и SPARC64. добавлена поддержка трассировки стека на системах ARM и SPARC. Удалена поддержка некоторых сборочных целей для архитектуры PowerPC с glibc.
  • В языке предложена формальная спецификация грамматики, добавлены новые встроенные функции (@backingInt, @fromBackingInt, @divCeil, @SpirvType и др.), удалены устаревшие конструкции ("a ** b", "void{}", "errdefer |err|", "i0").
  • Инструменты трансляции C-кода вынесены в отдельный пакет translate-c.
  • В стандартной библиотеке предложена новая система выделения памяти SafeAllocator, пригодная для использования в многопоточном коде. Переработан модуль std.zon.parse.

  1. Главная ссылка к новости
  2. OpenNews: Релиз серверной JavaScript-платформы Bun 1.4, переписанной с Zig на Rust
  3. OpenNews: Представлены Buz и Cruller, форки JavaScript-платформы Bun, продолжающие развитие на языке Zig
  4. OpenNews: Проект Phoenix развивает современный X-сервер, написанный на языке Zig
  5. OpenNews: Разработчики openSUSE развивают zssh, реализацию SSH на языке Zig
  6. OpenNews: Выпуск языка программирования Zig 0.11.0
Обсуждение (110 +13) | Автор: Мемоним | Тип: Программы |


·03.10 Проекты Pop!_OS и COSMIC запретили приём изменений, созданных через AI (104 +27)
  Компания System76 внесла в правила приёма pull-запросов для среды рабочего стола COSMIC и в соглашение об участии в разработке дистрибутива Linux-дистрибутива Pop!_OS требования, запрещающие передачу в изменениях или сообщениях о проблемах содержимого, сгенерированного с использованием AI-инструментов. Запрет касается кода, комментариев и текстовых описаний. Вначале в правилах было упомянуто о допустимости использования AI для проведения исследований, тестирования и других похожих задач, но затем это примечание было удалено.

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

Исключение сделано только для репозитория cosmic-flatpak, в котором каждый проект самостоятельно управляет своим Flatpak-манифестом, указывающим на код в собственном репозитории. Через cosmic-flatpak распространяются апплеты и дополнения к COSMIC, устанавливаемые из каталога COSMIC Store и поддерживаемые сторонними разработчиками. При рецензировании изменений в cosmic-flatpak внимание уделяется не коду проекта, а корректности настройки sandbox-изоляции при запуске.

  1. Главная ссылка к новости
  2. OpenNews: Выпуск среды рабочего стола COSMIC 1.9.0
  3. OpenNews: Проект GCC запретил приём значимых изменений, сгенерированных при помощи AI
  4. OpenNews: В OpenJDK запрещён приём кода, созданного через AI. В NetworkManager - разрешён
  5. OpenNews: 113 пакетов в Void Linux остались без сопровождения из-за несогласия с политикой использования AI
  6. OpenNews: Выпуск дистрибутива Pop!_OS 24.04, поставляемого с рабочим столом COSMIC
Обсуждение (104 +27) | Тип: К сведению |


·03.10 Обновление ОС Qubes 4.3.2, использующей виртуализацию для изоляции приложений (14 +7)
  Доступен выпуск операционной системы Qubes 4.3.2, реализующей идею использования гипервизора для строгой изоляции приложений и компонентов ОС (каждый класс приложений и системные сервисы работают в отдельных виртуальных машинах). Для работы рекомендуется система с 16 Гб ОЗУ (минимум - 6 Гб) и 64-разрядным CPU Intel или AMD с поддержкой технологий VT-x c EPT/AMD-v c RVI и VT-d или AMD IOMMU, желательно наличие GPU Intel (GPU NVIDIA и AMD недостаточно хорошо протестированы). Размер установочного образа - 8 ГБ (x86_64).

Приложения в Qubes разделены на классы в зависимости от важности обрабатываемых данных и решаемых задач. Каждый класс приложений (например, работа, развлечения, банковские операции), а также системные сервисы (сетевая подсистема, межсетевой экран, работа с хранилищем, USB-стек и т.п.), работают в отдельных виртуальных машинах, запускаемых с использованием гипервизора Xen. При этом указанные приложения доступны в рамках одного рабочего стола и выделяются для наглядности разным цветом обрамления окна. Каждое окружение имеет доступ на чтение к базовой корневой ФС и локальному хранилищу, не пересекающемуся с хранилищами других окружений, для организации взаимодействия приложений используется специальный сервис.

В качестве основы для формирования виртуальных окружений может применяться пакетная база Fedora и Debian, также сообществом поддерживаются шаблоны для Ubuntu, Gentoo и Arch Linux. Возможна организация доступа к приложениям в виртуальной машине с Windows, а также создание виртуальных машин на базе Whonix для обеспечения анонимного доступа через Tor. Пользовательская оболочка построена на основе Xfce. Когда пользователь запускает из меню приложение, это приложение стартует в определенной виртуальной машине. Содержание виртуальных окружений определяется набором шаблонов.

В новой версии шаблон для виртуальных окружений обновлён до Fedora 44. Пакет с ядром Linux обновлён до версии 7.2. Устранены накопившиеся ошибки и уязвимости, в том числе опасные уязвимости в гипервизоре Xen и критическая уязвимость в утилите "qvm-copy-to-vm", позволяющая обойти изоляцию и выполнить код на уровне Dom0.

  1. Главная ссылка к новости
  2. OpenNews: Уязвимость в ОС Qubes, позволяющая обойти изоляцию и выполнить код на уровне Dom0
  3. OpenNews: Релиз ОС Qubes 4.3.0, использующей виртуализацию для изоляции приложений
Обсуждение (14 +7) | Тип: Программы |


Следующая страница (раньше) >>



XSQUARE
Inferno Solutions
Hosting by Hoster.ru
Хоcтинг: