ReactOS и 2024 год

fd000c984aaf43cbf998cb14fe9c70a6.png

Здравствуйте, дорогие друзья.

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

События

Выпуск новостей №104

В мае этого года у проекта вышел выпуск новостей, перевод которого опубликован в нашем блоге.

Проверка PVS

5ebc615fab0e736583c178f6b825f56e.png

ReactOS проверили через PVS

Синхронизация с другими проектами

Проведена синхронизация

  • MSI и msiexec с Wine 9.8 (v9.8 от 03.05.2024, последняя — v9.22 от 22.11.2024)

  • TCP/IP стека LwIP с версии 1.4.1 (2012) до 2.2.0 (2023)

Улучшения

Меню Пуск

e7e4d3b338661428b86f26182d082a86.png

Katayama Hirofumi реализовал пункты настроек в меню Пуск.

Избранное

2b24155bb0e1598bc7ebfea6b7b033ef.png

Благодаря тому же Катаяме, было улучшено «Избранное»:

  • в «Пуске» добавлен пункт «Избранное»

  • пункт «Избранное» теперь можно убрать/показать из настроек «Пуска»

  • в проводнике на панели меню «Избранное», можно добавить каталог в папку с «Избранным», которое работает в «Пуск»

Темы

Превью тем

b672abf9cf9569cf385a7dbba9b9a997.png

Благодаря участнику Splitwirez в ReactOS пофиксили превью тем оформления в свойствах экрана.

Изменение значков

09da736c69a949c20ea92b8208bba14a.jpgcb9212e526691b304dca530462f2e553.jpg

В основную ветку ReactOS добавили наработки Олега Дубинского по значкам.

Теперь можно менять значки:

  • у папок — любой папке на диске в свойствах можно присвоить свой значок из shell32.dll, из файла значка или из библиотеки со значками

  • у системных папок рабочего стола — можно присвоить значок системным папкам Мой компьютер, Корзина, Мои документы и Сетевое окружение

  • применяя набор значков ко всей системе с помощью программы Icon Packager и ей подобных

Исправление ошибки при скрытии значков

a0885ff2060924b8a5b154beadc52d3d.jpg

Раньше, при скрытии значков с рабочего стола, они пропадали в панели проводника. Теперь эта ошибка исправлена.

Расширение оболочки для CAB-архивов

fc8fdd1fa4a66b7964be13f2ce892cb5.jpg

Благодаря участнику сообщества whindsaks в оболочке ReactOS появилось расширение позволяющее прямо в проводнике просматривать *.CAB-архивы и копировать из них информацию.

Установка и удаление программ

0269a86e0b42b89d5135285a0c2b7a59.jpg

В ReactOS был реализован режим работы ReactOS App Manager в виде классического приложения «Установка и удаление программ». Для запуска в этом режиме нужно указать ключ appwiz.

SMP

b4598b28f8d70cd32a354b37fc46817f.jpg8af166d78b1c6508e2691ac651d32ef2.jpg62d510ea8a92199ed2bfe0121c86fd34.jpg

The_DarkFire из чата проекта сообщал о прогрессе в разработке SMP в ReactOS (поддержке нескольких ядер и процессоров).

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

Панель задач и полноэкранный режим

69ca04bf8e7e2a3454b1f28caeaaf74a.png

Одним коммитом было исправлено 5 ошибок связанных с проблемой, при которой панель задач отображалась в полноэкранном режиме.

Проблема с перерисовкой окон

Наш участник сообщества под ником I Kill Bugs внес улучшения в подсистему Win32, которая теперь предотвращает ненужную перерисовку окон в ReactOS! Посмотрите данный клип демонстрирующий «до и после», на примере Блокнота.

VolatieBoot

e445d2c84d656ff387b71500817b105b.jpg

В декабре Hermes Belusca реализовал в ReactOS подобие Volatile Boot из Windows 7+.

В Windows данная функция загружает все файлы ОС в оперативку, жесткий диск ставит в режим «только чтение» и все изменения после выключения/перезагрузки компьютера сбрасываются.

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

Пока только для кустов реестра, а не для каких-либо других вещей (например, записи на диск). В ReactOS пока данная функция отсутствует в меню загрузки/меню F8 и включается через реестр. Ключик см. на скриншоте.

Улучшения поддержки звука

Благодаря работе Олега Дубинского была добавлена поддержка современных звуковых форматов, благодаря чему множество приложений теперь воспроизводят звук корректно.
Например, AIMP 5.30, QMMP 0.12.17 с плагином вывода DirectSound, все Хромоподобные браузеры, игра GameDevTycoon и т. д.

Вдобавок к этому Олег сделал исправление в библиотеку dsound.dll, после которого VirtualDJ 8.2 Build 3994 теперь корректно определяет звуковую карту, и если обойти регрессию с её запуском посредством использования сторонней версии Mesa, то в ней уже вполне можно работать под ReactOS!

Так же теперь ReactOS поддерживают корректную регулировку громкости у некоторых приложений.

Тестирование на реальном железе

LiveUSB на LG T380

1ec9508fc005c3e4ce3ffc77fe951ae3.jpg

Toshiba Satellite A300–1BZ

79ade04f3497aecddcc30dc3868f0a51.jpg

Evesham Branded Clevo D410J

57da16d219671cacbe02c88b4c0d3cf3.jpg

ReactOS LiveCD работает на ноутбуке Evesham Branded Clevo D410J с Ethernet и Видео- драйверами! Звук не работает.

Compaq Presario 2500

a702cb29604d17ebdfa4e39757f7d239.jpg

ReactOS LiveCD загружается на Compaq Presario 2500!
К сожалению, драйверы USB пришлось отключить. Видео работает плохо; звук, сеть и трекпад вообще не работают.

MacBook 4.1

c467f41a5811ad075760ab31f0415e01.jpg

ReactOS LiveCD работает на MacBook 4.1. Видео драйвера работают, звук и сеть нет.

HP Stream Laptop 11-ak0xxx

cb5bb44bd1c0f6bd7eef61b59effed71.jpg

ReactOS LiveUSB с использованием метода RAMDISK загружается на ноутбуке HP Stream Laptop 11-ak0xxx с Windows 11!

ПО на x86

Эмулятор Palm OS Garnet 5.4

b2c31e3205ad219e3ad70dd0af9c5d29.jpg

Adobe Photoshop 7.0

6857b97b6787becd30ac5cd8058c8b8e.jpg

Adobe Photoshop CS3

53cc9efb256be8d3f38355aaf5360888.jpg

Longhorn Sidebar

888594886d825c13579dbf12cd753e43.jpg

Яндекс.Браузер

7a242b69dea657b59f16772b14cab465.jpg

Яндекс Браузер 17.4.1, последняя версия для Windows XP.

Seamonkey

9b4c730a3dda5f07f7623b7207b2d811.jpg

SeaMonkey 2.49.5 работает в ReactOS. При этом используется слой режима совместимости IgnoreManifestCompatVersion.

Google Chrome

После исправления «липких окон» нашими участниками I_Kill_Bugs и Doug Lyons в ReactOS заработал Chrome 40!

Однако когда Chrome взаимодействует с сетевым стеком, графический интерфейс все равно зависает.

По крайней мере, благодаря этому исправлению ситуация улучшилась, сообщает наш тестер Reactosfanboy.

Adobe Reader 9

25d3402f412e0fbfb9657f00952e4384.jpg

Для запуска инсталлятора нужно было применить настройки совместимости на Windows XP SP3.

Anatronica Pro 3D

9999d367858319858c517d9699735bc3.jpg

Браузеры на Gecko

Игры на x86

MarbleBlastGold

a13c21f1c4aeb01499bd996621512baf.jpg

CrazyTaxi

a4885b8c23f0ace5a7d0f80c1c5e498f.jpg

ProSkater 3

b2b8db3497f709cde5a0b888085f5e48.jpg

SnailMail

9adfef260b4e9f92d90fd77411ab287d.jpg

Подборка игр, которые мы тестировали в начале марта

См. данную статью. Если не знаете как заставить работать ютуб, есть зеркало в вк.

Заключение

И вот, собственно, на этом я и хочу завершить «годовой отчет» ReactOS.

Желаю вам всем успехов на работе и дома!

До новых встреч и счастливого нового года!

Ссылки

© Habrahabr.ru