Projekt Frame razvija nov X-sever, napisan u potpunosti na NASM asembleru za x86_64 arhitekturu, koji je namenjen radu na Linuxu bez spoljašnjih zavisnosti. Interakcija sa Linux jezgrom, uključujući DRM/KMS i evdev interfejse, vrši se direktno putem sistemskih poziva, bez uključivanja biblioteka kao što su libc, Mesa i FreeType. Frame kod se distribuira kao javno dobro. Razvoj se vodi uz pomoć AI asistenta Claude Code.
Cilj projekta je implementacija ekstenzija X11 protokola, dovoljno za funkcionisanje radnog stola CHasm, koji razvija isti autor i također je napisan na asembleru. Kao minimalni zahtev, navodi se podrška za pokretanje standardnih X11 aplikacija, među kojima su Firefox, VS Code, GIMP i Inkscape. Među planiranim X11 ekstenzijama pomenuti su SHAPE, RENDER, XKB, COMPOSITE, DAMAGE, RANDR, MIT-SHM, XInput2 i XVideo.
Razvoj je podeljen na 14 faza. Trenutno je projekat na 7. fazi, na kojoj su već implementirane osnovne mogućnosti za pokretanje terminala i nekih X11 aplikacija. 14. faza će biti dostignuta kada budu implementirane sve mogućnosti za punu funkcionalnost sa Firefox-om. U ovoj fazi najavljeno je da je moguće pokretanje osnovnog radnog stola CHasm, GIMP-a i Firefox-a (uz ograničenja).
Među već realizovanim mogućnostima su: prihvatanje X11 zahteva putem Unix-soketa, softversko iscrtavanje putem DRM/KMS jezgra, obrada unosa putem evdev, API za upravljanje unosom, podrška za povezivanje više X11 klijenata, funkcije za kreiranje i upravljanje prozorima, operacije sa piksel mapama, atomske operacije, selekcija teksta za međuspremnik, X11 ekstenzije SHAPE, RANDR, XKB, XInput2 i MIT-SHM. Još nisu realizovane vektorske iscrtavačke primitive, atomsko prebacivanje između video režima, međuspremnik, prebacivanje rasporeda tastature, upravljanje kursorom, X11 ekstenzije RENDER, DAMAGE i COMPOSITE.
Radno okruženje CHasm broji oko 100.000 linija koda i uključuje komponente napisane na asembleru: mozaik menadžer prozora Tile, statusna traka Strip, ekran blokator Bolt, interaktivna ljuska Bare i emulator terminala Glass. Razvijene komponente zamenjuju kombinaciju gdm, X11 Server, i3, conky, wezterm i zsh.
Razvoj je usmjeren na minimalnu potrošnju energije prilikom korištenja na prijenosnom računalu. U stanju mirovanja, upravitelj prozora Tile i terminal Glass ne troše resurse i aktiviraju se samo prilikom djelovanja korisnika. Frame u stanju mirovanja troši gotovo tri puta manje CPU resursa od X.Org Servera.
Navodi se da je okruženje temeljen na Frameu i CHasmu već dovoljno stabilno za svakodnevnu upotrebu autora projekta. Kada se pojave problemi ili nešto nedostaje, autor po potrebi angažira Claudea i ispravlja nedostatke. Autor također razvija skup konzolnih alata fe2o3, napisanih u Rustu, koji pokrivaju sve njegove potrebe osim web preglednika. Skup fe2o3 uključuje dvopanelni upravitelj datoteka Pointer, komandni interpreter rush, vim-slični uređivač teksta Scribe, RSS čitač Gazette, klijenta za e-poštu i messenger Kastrup, kalendar-planer Tock, konfigurator Crush, i preglednik dokumenata Viewer.


Izvor: opennet.ru
