ReactOS 0.4.10 — теперь со вкусом BTRFS и весёлыми иконками для папок
Привет, Хабр!
Прошло всего каких-то пять месяцев со дня прошлого релиза ReactOS, а мы уже выкатываем новый! И какой! Как обычно, у нас для вас фирменный коктейль из киллер-фич и адового тюнинга незначительных компонентов системы.
В этом выпуске — внедрение BTRFS, еще одна дополнительная порция стабильности и куча прикольных свистелок-дуделок, которые делают пользование операционной системой более приятным, если конечно она уже не падает в BSOD.
Скачать установочные образы | Пресс–релиз | Список изменений | TL; DR | Тесты и список регрессий
Фото честно украдено из фотоальбома юзера flickr.com
BTRFS
Главная новинка ReactOS версии 0.4.10 — полноценное внедрение поддержки файловой системы BTRFS! На самом деле, минимальная поддержка Btrfs была добавлена ещё в прошлом году на базе свободного драйвера WinBtrfs, но теперь в рамках GSOC 2018 был модифицированы коды инсталлятора и загрузчика Freeloader для обеспечения доступа к содержимому разделов с Btrfs при старте или установке системы.
В процессе разработки ReactOS 0.4.10 в драйвер WinBtrfs были внесены исправления и отправлены в апстрим. Поэтому в следующей версии ОС под номером 0.4.11 нас будут ждать дальнейшие улучшения в этом направлении. Поддержка BTRFS позволяет обойти ограничения на размер и количество файлов на диске, которые накладывают файловые системы семейства FAT. WinBtrfs был выбран потому, что оказался наиболее стабильным и своевременно обновляемым драйвером для альтернативных файловых систем для платформы Windows NT.
Напомню, что в ReactOS также полностью поддерживаются файловые системы FAT12/16/32, Ext2, Ext3, Ext4, NFS, и еще несколько с доступом только на чтение — NTFS, ReiserFS, FFS и UDFS.
С — Стабильность
Стабильность системы, как правило, трудно поддается количественной оценке, поскольку она зачастую очень субъективна. Довод, с которым вы все вероятно согласитесь — дополнительным плюсом в зачет в колонку стабильности пойдет все, что предотвращает крах самой операционной системы или приложения, работающего в ней. Поэтому, хоть улучшения в стеке управления памятью (см. полный список изменений), сделанные Тимо Крейцером и Пьером Швейцером, и могут показаться незначительными или неочевидными, они все равно играют важную роль в росте стабильности ReactOS.
Одновременно с этим, момент, когда полезное и популярное приложение достигает полной работоспособности на ReactOS, также представляет собой маленькую победу. Вклад Станислава Мотылькова в библиотеку ReactOS C Runtime library позволил системе контроля версий Git, используемой в нашем проекте, наконец работать правильно и непосредственно в ReactOS. Наверное, и тут вы не станете спорить, что это хорошее продолжение прошлого успеха с достижением состояния селф-хостинга.
И я уверен, что никто здесь не является истинным поклонником BSODов, даже если они и вызывают некоторое чувство ностальгии. Синим экранам лучше оставаться частью наших воспоминаний, чем быть постоянной частью ежедневного пользовательского опыта. К счастью для ReactOS, Марк Дженсену удалось устранить еще причину одного такого краха, относящуюся к работе библиотеке шрифтового движка FreeType.
А если продолжить разговор о маленьких победах, то стоит упомянуть, что Марк серьезно подшаманил код, отвечающий за разбор манифестов исполняемых файлов и библиотек при их запуске. В результате стал возможен корректный запуск популярного мультипротокольного мессенджера Miranda IM.
Щепотка красоты тут, щепотка красоты там…
А это то, что лучше один раз увидеть, чем 10 раз об этом прочитать. Когда кто-то пользуется операционной системой ReactOS, интерфейсом для этого взаимодействия обычно служит оболочка рабочего стола Explorer. «Под капотом» основой для функциональности оболочки служит библиотека shell32, чьи улучшения часто оказываются наиболее заметными для конечных пользователей. За несколько прошедших месяцев Katayama Hirofumi, давний контрибутор проекта, добавил в эту библиотеку несколько новых функций, причесав при этом некоторые другие, уже существовавшие ранее.
Ранее способы взаимодействия с папками были серьезно ограничены. Теперь же в файловом менеджере появились опции для настройки отображения каталогов, открытия каталога в новом или текущем окне, настройки операций при одинарном и двойном клике.
А иконки для папок можно назначать по своему усмотрению, сделав структуру папок менее скучной.
Серьезная работа была проведена над правильным отображением шрифтов и графических элементов в диалогах MSI-инсталляторов различных программ.
Станиславом Мотыльковым был также добавлен код для корректного извлечения информации о системе из BIOS, которая теперь используется в выводе утилиты dxdiag.
И это все?
Это, разумеется, не все, а только наиболее заметные и знакомые изменения в ReactOS. Хотите увидеть еще немного больше? Тогда посмотрите видео с демонстрацией новинок, которое подготовили волонтеры проекта:
Захотели поставить ReactOS первый раз в своей жизни? Обязательно просмотрите этот мануал.
Вам понравился этот релиз? Ждем ваших комментариев и мнений! Не забывайте, что вы можете помочь проекту не только пожертвованиями, но и просто поставив ему звездочку на гитхабе!
P.S. Подготовка релиза 0.4.11 уже идет полным ходом, и этот релиз действительно будет стоить того, чтобы его ждать!