{
  "id": 6439156,
  "title": "Display graphics without the use of Wayland or XOrg",
  "url": "https://urgent.news/2026/09/09/display-graphics-without-the-use-of-wayland-or-xorg",
  "topic": "tech",
  "section": "Tech",
  "published": "2026-09-09T16:25:50.000Z",
  "source": {
    "name": "Dev.to",
    "slug": "dev-to",
    "url": "https://dev.to/pcmagas/draw-directly-on-linux-framebuffers-using-python-4iih"
  },
  "original_language": "en",
  "account": "The article explains how to display graphics or images on Linux without relying on display managers such as Wayland or XOrg. It highlights that Linux provides files named /dev/fb0, /dev/fb1, etc., which act as mappings to the RAM containing what should be displayed on the screen. By using the command `ls -l /dev/fb*`, one can list the available framebuffers.\n\nEach framebuffer has accompanying text files in `/sys/class/graphics/fbX/` that store information about the framebuffer resolution and color depth. The resolution is stored in the file `/sys/class/graphics/fbX/virtual_size` as a comma-separated string containing width and height, while the color depth is stored in `/sys/class/graphics/fbX/bits_per_pixel`.\n\nThe article provides a shell script that demonstrates how to display an image using these framebuffers. First, it retrieves the framebuffer's width, height, and bits per pixel using the mentioned files. Based on the bits per pixel value, it determines the appropriate format (RGB565, RGB, or RGBA). Then, it downloads an image from a URL, converts it into the required raw pixel format using ImageMagick's `convert` command, and finally writes the converted raw pixel data to the framebuffer using `dd`.\n\nThis method allows for displaying images on Linux systems without the need for display managers or window managers like Wayland or XOrg, by directly accessing and manipulating the framebuffers and their associated files.",
  "summary": "As I was looking on the Suburban Railway I noticed that was using Linux: That made me think can I draw graphics or display anythink in Linux without the use of any sort of display manager/window manager such as wayland or XOrg. And I found out that yes I can. After a bit of googling I found out that upon linux there are files named as /dev/fb0 , /dev/fb1 ... each file is a mapping to the ram that…",
  "key_points": [
    "Linux displays graphics via /dev/fb0, /dev/fb1, etc.",
    "/sys/class/graphics/fbX/ files store resolution, color depth.",
    "Shell script shows image display without Wayland or XOrg."
  ],
  "editors_take": null,
  "illustration": null,
  "coverage": {
    "outlets": 1,
    "also_reported_by": []
  },
  "ai_generated": true,
  "disclaimer": "Summaries, key points and the editor’s take are written by software from other outlets’ reporting and may contain errors — always check the linked original."
}