• Frame – en helt ny X11-server skriven i assembler

    Samtidigt som stora delar av Linuxvärlden lämnar det gamla grafiksystemet X11 till förmån för Wayland väljer den norske utvecklaren Geir Isene att gå åt motsatt håll. Han har byggt en helt ny X11-server från grunden – skriven nästan uteslutande i assembler för x86-64-processorer.

    Projektet heter Frame och är ett tekniskt experiment som försöker besvara en ovanlig fråga: Hur liten och enkel kan en fungerande grafisk Linuxmiljö egentligen bli?

    Programmet som placerar bilden på skärmen

    För att förstå vad Frame gör behöver man först känna till vad en grafikserver är.

    När ett program som Firefox eller GIMP vill visa ett fönster på skärmen ritar programmet normalt inte direkt mot bildskärmen. I stället skickar det instruktioner till ett underliggande system som hanterar fönster, tangentbord, muspekare och bildskärmar.

    På traditionella Linuxdatorer har denna uppgift länge skötts av X.Org Server, den vanligaste implementationen av X11-systemet. X11 har sina rötter i 1980-talet och har under årtionden byggts ut för att fungera med många olika datorer, grafikkort och användningsområden.

    Resultatet är ett stort och komplicerat system med många historiska lager.

    Frame försöker i stället börja om från början.

    Byggd direkt ovanpå Linuxkärnan

    Frame bygger inte vidare på X.Org och använder inte heller vanliga programbibliotek som libc, Mesa, Xlib eller FreeType. I stället kommunicerar servern direkt med Linuxkärnan genom systemanrop.

    För att visa grafik använder Frame Linux gränssnitt DRM och KMS, vilka hanterar grafikkort och bildskärmslägen. Tangentbord och mus läses genom evdev, det normala gränssnittet för inmatningsenheter i Linux.

    Program som Firefox kommunicerar med Frame genom själva X11-protokollet.

    Man kan likna det vid att bygga en bil utan att köpa färdiga delar från en underleverantör. I stället tillverkar utvecklaren stora delar av motorn, elsystemet och instrumentpanelen själv och kopplar dem direkt till chassit.

    Resultatet är en statiskt länkad programfil utan vanliga beroenden till installerade bibliotek.

    Skriven i assembler

    De flesta moderna program skrivs i språk som C, C++, Rust eller Python. Frame är i stället skriven i assembler.

    Assembler ligger mycket nära processorns egna maskininstruktioner. Utvecklaren arbetar därför direkt med register, minnesadresser, instruktioner och systemanrop.

    Det ger stor kontroll över exakt vad datorn gör, men gör samtidigt utvecklingen betydligt mer komplicerad. Funktioner som vanliga programmeringsspråk och bibliotek erbjuder automatiskt måste ofta byggas manuellt.

    Frame består enligt utvecklaren av omkring 20 000 rader assemblerkod. Vid en senare genomgång låg källkoden närmare 25 000 rader. Det är fortfarande litet jämfört med etablerade grafiksystem, men antalet kodrader säger inte automatiskt något om stabilitet, säkerhet eller hur komplett programmet är.

    Kan redan köra Firefox och GIMP

    Frame är långt ifrån en fullständig implementation av X11, men servern stöder redan tillräckligt många delar av protokollet för att kunna köra riktiga skrivbordsprogram.

    Bland funktionerna finns stöd för att skapa och hantera fönster, läsa tangentbord och mus, hantera urklipp, bilder och egenskaper samt kommunicera med program genom X11-protokollet.

    Servern innehåller även stöd för flera vanliga X11-utökningar, exempelvis RANDR för bildskärmshantering, SHAPE för fönster med särskilda former och MIT-SHM för snabbare överföring av bilddata mellan program.

    Isene uppger att han använder Frame som sin dagliga grafikserver och att både Firefox och bildredigeringsprogrammet GIMP fungerar på systemet.

    Det betyder dock inte att alla X11-program fungerar. X11 är ett omfattande protokoll med många funktioner och tillägg som utvecklats under flera årtionden. Program kan därför använda funktioner som Frame ännu inte känner till.

    En hel skrivbordsmiljö i assembler

    Frame är nära kopplad till ett större projekt som heter CHasm, en förkortning av ”CHange to ASM”.

    CHasm består av flera små Linuxprogram som också är skrivna i x86-64-assembler. Där ingår bland annat:

    • Tile, en fönsterhanterare som placerar fönster sida vid sida.
    • Glass, en terminalemulator.
    • Bare, ett kommandoskal.
    • Strip, en statusrad.
    • Bolt, ett skärmlås och inloggningsverktyg.

    Tillsammans kan dessa program skapa en komplett, men mycket minimalistisk, grafisk Linuxsession. Projekten är fristående och utgör inte en traditionell skrivbordsmiljö som KDE Plasma eller GNOME.

    CHasm-verktygen kommunicerar direkt med Linuxkärnan eller med X11-protokollet och saknar dynamiska programberoenden. Enligt projektets dokumentation omfattar den körbara delen av hela sessionen mindre än 500 kilobyte, även om detta inte inkluderar Linuxkärnan, drivrutinerna eller de vanliga program som användaren startar.

    Ett skrivbord som försöker göra ingenting

    Ett av projektets viktigaste mål är att datorn ska vara helt stilla när användaren inte arbetar.

    Moderna skrivbordsmiljöer kan ha många processer som regelbundet vaknar för att kontrollera tiden, uppdatera animationer, läsa systeminformation eller kontrollera om något har förändrats. Varje sådan aktivitet använder lite processortid och kan i teorin påverka batteritiden.

    Frame och CHasm är i stället konstruerade för att vänta tills det faktiskt händer något, exempelvis att användaren rör musen eller att ett program skickar nya bilddata.

    Isene genomförde ett informellt test där Frame och X.Org hade ungefär samma totala strömförbrukning när datorn stod oanvänd. X.Org använde däremot enligt hans mätning nästan tre gånger så mycket processortid.

    Skillnaden i total strömförbrukning var liten eftersom bildskärmen, nätverket och andra delar av datorn använder betydligt mer energi än en vilande grafikserver. Mätningen är dessutom utförd av utvecklaren själv på en enda dator och ska därför inte betraktas som ett oberoende prestandatest.

    Artificiell intelligens har hjälpt till

    Projektet har utvecklats med omfattande hjälp av AI-verktyget Claude Code. Isene beskriver hur han förklarar problem och önskade funktioner för AI-systemet, som sedan hjälper till att skapa och ändra assemblerkoden.

    Det gör Frame intressant även ur ett annat perspektiv. Att skriva en X11-server i assembler är normalt ett mycket tidskrävande specialprojekt. Moderna AI-verktyg kan göra det möjligt för en ensam utvecklare att experimentera med systemprogrammering på en nivå som tidigare ofta krävde större grupper.

    Samtidigt innebär AI-genererad kod inte att programmet automatiskt är korrekt. En grafikserver hanterar minne, inmatning, andra program och hårdvara. Fel kan orsaka allt från grafikproblem och krascher till säkerhetsbrister.

    Frame behöver därför granskas, testas och underhållas på samma sätt som all annan systemnära programvara – kanske ännu mer noggrant eftersom assembler saknar många av de säkerhetsfunktioner som finns i modernare språk.

    Ingen ersättare för X.Org ännu

    Frame är för närvarande ett experimentellt projekt och inte ett praktiskt alternativ för vanliga Linuxanvändare.

    Servern fungerar endast på Linuxdatorer med x86-64-processor. Den saknar delar av X11-protokollet, har begränsat hårdvarustöd och använder huvudsakligen mjukvarurendering i stället för fullständig grafikacceleration.

    Det finns inte heller några etablerade installationspaket eller färdiga inloggningssessioner för stora Linuxdistributioner. Projektet är främst byggt för utvecklarens egen dator och hans eget arbetssätt.

    CHasm-dokumentationen säger uttryckligen att verktygen främst publiceras som inspiration. Tanken är inte nödvändigtvis att användare ska installera dem som de är, utan att intresserade utvecklare ska studera, ändra och anpassa koden efter sina egna behov.

    Ett experiment om kontroll och enkelhet

    Frame kommer sannolikt inte att ersätta X.Org eller konkurrera med Wayland inom den närmaste framtiden. Projektets verkliga betydelse ligger i stället i vad det demonstrerar.

    Det visar att det fortfarande är möjligt för en enskild utvecklare att bygga en fungerande grafikserver direkt ovanpå Linuxkärnan. Det visar också hur mycket av ett modernt datorsystem som egentligen består av valbara lager – bibliotek, ramverk och verktyg som är praktiska, men inte alltid absolut nödvändiga.

    Frame är därför mindre en färdig produkt och mer ett tekniskt laboratorium.

    Projektet ställer en fråga som ofta försvinner när programvaran växer: Hur mycket kod behöver vi egentligen för att öppna ett fönster, ta emot ett tangenttryck och placera några bildpunkter på skärmen?

    Geir Isenes svar är att det går att göra med betydligt mindre än vad dagens vanliga Linuxskrivbord använder – men också att enkelhet på ytan kan kräva mycket avancerat arbete under huven.

    https://github.com/isene/chasm

    $ teknisk_faktaruta –frame
    Projekt: Frame
    Typ: Experimentell X11-server
    Utvecklare: Geir Isene
    Plattform: Linux på x86-64
    Programmeringsspråk: x86-64-assembler
    Kodmängd: Cirka 20 000 rader assemblerkod
    Grafik: DRM/KMS och mjukvarurendering
    Inmatning: evdev för tangentbord och mus
    Kommunikation: X11:s trådprotokoll
    X11-utökningar: Bland annat RANDR, SHAPE, XInput2 och MIT-SHM
    Externa beroenden: Inga vanliga körberoenden som libc, Mesa, Xlib eller FreeType
    Testade program: Bland annat Firefox och GIMP
    Status: Experimentellt och ännu inte en fullständig ersättare för X.Org
    root@linux:~# Frame är användbart på utvecklarens dator, men saknar fortfarande fullständigt protokoll- och hårdvarustöd.
  • X.Org lever vidare – och får nya säkerhetsfixar 2026

    X.Org må vara en veteran i Linuxvärlden, men tekniken lever fortfarande vidare i kulisserna. Nu har projektet täppt till fem nya säkerhetsbrister, vilket visar att den gamla grafikstacken ännu spelar en viktig roll, inte minst genom XWayland i moderna Wayland-baserade system.

    Trots att mycket av utvecklingen på Linux-skrivbordet i dag kretsar kring Wayland är X.Org ännu inte historia. Tvärtom visar de senaste säkerhetsuppdateringarna att den gamla grafikstacken fortfarande underhålls, åtminstone när det gäller att täppa till allvarliga sårbarheter.

    I den nya utgåvan av X.Org Server 21.1.22 och XWayland 24.1.10 har utvecklarna rättat fem nyupptäckta säkerhetsbrister. Det handlar om flera typer av minnesfel, bland annat integer underflow, läsningar utanför tillåtna minnesområden, use-after-free och buffertöverskridning. Sådana fel är särskilt viktiga att åtgärda eftersom de i värsta fall kan leda till krascher, instabilitet eller att skadlig kod kan utnyttja systemet.

    Det som gör nyheten extra intressant är att X.Org ofta beskrivs som en gammal teknik på väg bort. På många moderna Linuxsystem är det numera Wayland som står i centrum. Ändå fortsätter X.Org att spela en viktig roll, framför allt genom XWayland, som fungerar som ett kompatibilitetslager för äldre X11-program. Det betyder att även användare som i praktiken kör Wayland fortfarande kan påverkas av sårbarheter i kod som har sitt ursprung i X.Org-världen.

    De fem säkerhetsbristerna som nu har täppts till visar också något större om dagens Linuxekosystem: gamla system försvinner sällan över en natt. I stället lever de kvar som underliggande komponenter, bibliotek eller kompatibilitetslager långt efter att en ny teknik tagit över rampljuset. X.Org må inte längre vara framtiden, men det är fortfarande en del av nutiden.

    Utöver säkerhetsfixarna innehåller den nya versionen också ett antal stabilitets- och kvalitetsförbättringar. Flera utvecklare har bidragit med rättningar som förbättrar felhantering, minneshantering, byggsystem och drivrutinsstöd. Det handlar alltså inte bara om akuta säkerhetsproblem, utan också om det löpande underhåll som krävs för att hålla gammal, komplex kod användbar.

    Sammantaget visar uppdateringen att X.Org fortfarande hålls vid liv, inte genom nya stora funktioner utan genom nödvändigt underhåll. Det säger mycket om hur teknikhistoria fungerar i praktiken. Även när något anses vara på väg ut kan det fortsätta vara avgörande i många år, särskilt när annan modern teknik fortfarande lutar sig mot det för bakåtkompatibilitet.

    Att X.Org får säkerhetsfixar även 2026 är därför inte bara en teknisk detalj. Det är också en påminnelse om att digital infrastruktur ofta är byggd i lager, där även äldre delar måste skyddas och underhållas. Framtiden må heta Wayland, men X.Org är ännu inte helt borta från scenen.

    https://lists.x.org/archives/xorg-announce/2026-April/003678.html

    FAKTARUTA // X.ORG 2026

    Versioner: X.Org Server 21.1.22, XWayland 24.1.10

    Nya säkerhetsfixar: 5

    CVE: 33999, 34000, 34001, 34002, 34003

    Problemtyper: minnesfel, bounds-fel, use-after-free, buffertöverskridning

    Betydelse: påverkar inte bara rena X.Org-system utan även Wayland-system som använder XWayland

    Läget: X.Org utvecklas inte längre med fokus på nya funktioner, men hålls vid liv genom säkerhets- och stabilitetsuppdateringar



  • Ubuntu 25.10 tar farväl av X.org – framtiden är Wayland

    X.Org försvinner med Ubuntu 25.10 – nästa LTS-version kommer i april 2026 med Ubuntu 26.04.

    I över två decennier har X.org (eller X11) varit grunden för hur grafiska användargränssnitt visas i Linux. Det är ett gammalt fönstersystem med rötter ända tillbaka till 1980-talet. Även om det varit robust och flexibelt har det också burit med sig arv och tekniska begränsningar – framför allt när det gäller säkerhet, prestanda och stöd för modern hårdvara.

    Wayland, som utvecklats som en modern ersättare till X.org, är byggt från grunden med dagens behov i åtanke. Det erbjuder bättre isolering mellan applikationer, säkrare grafikhantering, effektivare renderingsvägar och förbättrat stöd för saker som pekskärmar, HiDPI-skärmar och moderna grafikdrivrutiner. Många Linuxdistributioner har redan börjat gå över till Wayland, och nu är det Ubuntu som tar nästa steg.

    Ubuntu 25.10 går vidare – GNOME på Xorg tas bort, Wayland blir standard

    När Ubuntu 25.10, med kodnamnet Questing Quokka, släpps i oktober 2025 kommer det inte längre vara möjligt att köra GNOME-skrivbordet med Xorg. Canonical har beslutat att helt och hållet gå över till Wayland, i takt med att skrivbordsmiljön GNOME 49 slutar stödja X.org-servern.

    Det innebär att alternativet ”Ubuntu på Xorg” försvinner från inloggningsmenyn. Alla GNOME Shell-baserade sessioner kommer nu att köras med Wayland som bas.

    ”Wayland har mognat rejält de senaste versionerna. Det fungerar nu väl även med Nvidia-drivrutiner, har bättre säkerhetsmodell, bättre stöd för moderna skärmar, och ger en stabil användarupplevelse i vardagen,” säger Jean Baptiste Lallement på Canonical.

    Dessutom menar Canonical att det tar resurser att underhålla två parallella grafiska system. Genom att fokusera helt på Wayland kan man minska teknisk skuld och snabbare förbättra upplevelsen.

    Vad betyder det för dig som användare?

    Du kommer inte längre att kunna välja att köra Ubuntu med Xorg. GNOME körs nu uteslutande på Wayland. Om du använder äldre program som kräver X11 kan det krävas anpassningar – men många applikationer fungerar redan bra via XWayland, som fungerar som ett kompatibilitetslager.

    Ubuntu 25.10 – mer än bara grafikskifte

    Den nya versionen släpps den 9 oktober 2025 och innehåller fler tekniska nyheter:

    • GNOME 49 – som helt övergår till Wayland
    • Linux-kärnan 6.17 – med stöd för nyare hårdvara
    • Mesa 25.1 – förbättrad grafikstack med fokus på prestanda och spel

    Under huven

    Ubuntu 25.10 bjuder också på en rad uppgraderingar av sina grundkomponenter:

    • GCC 15
    • GNU Binutils 2.45
    • Python 3.13
    • LLVM 20
    • Boost 1.88

    En annan intressant nyhet är att Ubuntu 25.10 ser ut att bli den första stora Linuxdistributionen som använder sudo-rs som standard – en säkrare omarbetning av det klassiska sudo, skriven i programmeringsspråket Rust.

    https://9to5linux.com/ubuntu-25-10-questing-quokka-to-remove-the-gnome-on-xorg-x11-session

Etikett: x.org

  • Frame – en helt ny X11-server skriven i assembler

    Samtidigt som stora delar av Linuxvärlden lämnar det gamla grafiksystemet X11 till förmån för Wayland väljer den norske utvecklaren Geir Isene att gå åt motsatt håll. Han har byggt en helt ny X11-server från grunden – skriven nästan uteslutande i assembler för x86-64-processorer. Projektet heter Frame och är ett tekniskt experiment som försöker besvara en…

  • X.Org lever vidare – och får nya säkerhetsfixar 2026

    X.Org må vara en veteran i Linuxvärlden, men tekniken lever fortfarande vidare i kulisserna. Nu har projektet täppt till fem nya säkerhetsbrister, vilket visar att den gamla grafikstacken ännu spelar en viktig roll, inte minst genom XWayland i moderna Wayland-baserade system. Trots att mycket av utvecklingen på Linux-skrivbordet i dag kretsar kring Wayland är X.Org…

  • Ubuntu 25.10 tar farväl av X.org – framtiden är Wayland

    I över två decennier har X.org (eller X11) varit grunden för hur grafiska användargränssnitt visas i Linux. Det är ett gammalt fönstersystem med rötter ända tillbaka till 1980-talet. Även om det varit robust och flexibelt har det också burit med sig arv och tekniska begränsningar – framför allt när det gäller säkerhet, prestanda och stöd…