Проектот Frame развива нов X сервер напишан целосно во NASM асемблер за архитектурата x86_64 и дизајниран да работи во Linux Без надворешни зависности. Интеракција со јадрото Linux, вклучувајќи ги интерфејсите DRM/KMS и evdev, се имплементира директно преку системски повици, без употреба на библиотеки како што се libc, Mesa и FreeType. Кодот на Frame е дистрибуиран во јавна сопственост. Развојот се врши со помош на асистентот за вештачка интелигенција Claude Code.
Целта на проектот е да се имплементираат проширувања на протоколот X11 доволни за работната површина CHasm, развиени од истиот автор и напишани во асемблер. Поддршката за извршување на стандардни X11 апликации, вклучувајќи Firefox, VS Code, GIMP и Inkscape, е наведена како минимален услов. X11 проширувањата планирани за имплементација вклучуваат SHAPE, RENDER, XKB, COMPOSITE, DAMAGE, RANDR, MIT-SHM, XInput2 и XVideo.
Развојот е поделен на 14 фази. Проектот моментално е во фаза 7, која веќе вклучува основни можности за работа на терминал и некои X11 апликации. Фаза 14 ќе биде достигната кога ќе бидат имплементирани сите можности за целосна поддршка за Firefox. Моментално, најавено е дека ќе може да се работи со основната CHasm десктоп верзија, GIMP и Firefox (со ограничувања).
Веќе имплементираните функции вклучуваат: примање на X11 барања преку Unix сокет, рендерирање на софтвер преку подсистемот на јадрото DRM/KMS, обработка на влез преку evdev, API за управување со влез, поддршка за поврзување на повеќе X11 клиенти, функции за креирање и работа со Windows, операции со пиксмапи, атомски операции, избор на текст за клипбордот и X11 екстензиите SHAPE, RANDR, XKB, XInput2 и MIT-SHM. Примитивите за векторско рендерирање, префрлувањето на атомскиот видео режим, клипбордот, префрлувањето на распоредот на тастатурата, контролата на курсорот и X11 екстензиите RENDER, DAMAGE и COMPOSITE сè уште не се имплементирани.
Работната околина CHasm содржи приближно 100 линии код и вклучува компоненти напишани на асемблерски јазик: менаџерот на прозорци Tile, статусната лента Strip, заклучувачот на екранот Bolt, интерактивната обвивка Bare и емулаторот на терминалот Glass. Овие компоненти се заменети со пакет кој се состои од gdm, X11 Server, i3, conky, wezterm и zsh.
Развојот е фокусиран на минимална потрошувачка на енергија кога се користи на лаптоп. Во режим на мирување, менаџерот на прозорци Tile и Glass терминалот воопшто не трошат ресурси и се активираат само преку интеракција со корисникот. Frame, кога е неактивен, користи речиси три пати помалку ресурси на процесорот од X.Org серверот.
Околината базирана на Frame и CHasm е веќе доволно стабилна за авторот на проектот да ја користи во својата секојдневна работа. Кога се појавуваат проблеми или нешто недостасува, авторот го користи Claude по потреба за да ги реши сите проблеми. Тој исто така развива сет на алатки за командна линија, fe2o3, напишани во Rust и кои ги покриваат сите негови потреби освен веб-прелистувачот. fe2o3 го вклучува менаџерот на датотеки со двоен панел Pointer, интерпретерот на команди rush, уредникот за текст Scribe сличен на vim, читачот на RSS Gazette, клиентот за е-пошта и месинџер Kastrup, планерот на календарот Tock, алатката за конфигурација Crush и прегледувачот на документи Viewer.


Извор: opennet.ru
