What’s actually slowing this PC down?
Pick the symptom - the matching free tool is one click away.
Some links on this page are affiliate links: if you buy through them we may earn a commission, at no extra cost to you.
If Cypress reports Missing X server or $DISPLAY, first check whether you ran cypress run or cypress open and whether your Linux environment has Cypress’s required packages. Cypress normally starts Xvfb for a Linux test run; if that does not work in your CI job or container, start Xvfb yourself and set DISPLAY in the same environment that launches Cypress. Interactive cypress open also needs a graphical display.
First identify which Cypress command failed
The fix depends on whether Cypress is running tests or opening its interactive interface. Record the exact command and error, then note the operating system and release, Cypress version, browser, CI or container base image, and current DISPLAY value. Also check whether the message came from Cypress itself or from the browser process it tried to launch.
| Command or context | What Cypress needs | First step |
|---|---|---|
cypress run on Linux |
Linux browser dependencies and an X11 server; Cypress’s CLI normally starts Xvfb when needed. | Check distro-specific packages, then use the manual Xvfb fallback if automatic startup is unavailable or failing. |
cypress open |
A headed browser and an interactive graphical display. | Confirm that the machine or remote development environment provides an accessible display. |
| Multiple simultaneous Linux runs | An X server arrangement accessible to each Cypress process. | Consider starting one Xvfb server and pointing the concurrent processes at it. |
Cypress’s CI documentation says that Linux runs need an X11 server and that Cypress spawns its own during a test run. That is why a missing or invalid DISPLAY value does not automatically mean you must set it by hand: the CLI may be managing Xvfb for you already. Verify the environment before adding another X server.
Recommended Free Tools
Install the Linux prerequisites for your exact release
Headless means the test browser runs without a visible desktop; it does not mean the Linux libraries and X11-related prerequisites can be omitted. Use the package list Cypress documents for your distribution and release rather than copying one command across every Linux image. The installation documentation, last updated September 24, 2026, distinguishes these package names:
#1 Best Overall
- Powerful Linux Laptop: This IdeaPad Slim 3 Laptop comes pre-installed with Ubuntu Linux, offering fast performance, robust security, and a clean, user-friendly experience. Enjoy full customization, seamless hardware compatibility, and access to thousands of open-source apps. Whether you're working, creating, or coding, it's built to keep up with everything you do.
- A Multitasking Master: The latest AMD Ryzen 7 5825U processor (up to 4.5 GHz) delivers powerful performance with 8 cores and 16 threads for smooth multitasking. Integrated AMD Radeon Graphics provide crisp visuals for streaming, browsing, photo editing, and casual gaming. With smart machine intelligence, it adapts to your needs for a fast, responsive experience.
- 15.6" Full HD Display: The IdeaPad Slim 3 boasts an 88% screen-to-body ratio for a floating, edge-to-edge visual experience. TÜV Low Blue Light certification reduces eye strain, making it perfect for long work or study sessions.
- Military-Grade Durability: The smart IdeaPad Slim 3 combines portability and durability, letting you work, study, and play on the go. With a profile 10% slimmer than the previous generation, it's lightweight yet military-grade rugged, ready for anything, anywhere.
- Versatile Connectivity: Enjoy the security of a built-in webcam with a privacy shutter. Connect effortlessly with multiple ports: 2x USB A, 1x USB C, 1x HDMI, 1x SD Card Reader, 1x Headphone/Microphone combo. Bundle comes with Stylus Pen, 256GB Portable SSD and 5-in-1 Docking Station.
| Distribution listed by Cypress | Documented package command |
|---|---|
| Ubuntu 22.04 and Debian | apt-get install libgtk-3-0 libgbm-dev libnotify-dev libnss3 libxss1 libasound2 libxtst6 xauth xvfb |
| Ubuntu 24.04 and, optionally, Debian 13 | apt-get install libgtk-3-0t64 libgbm-dev libnotify-dev libnss3 libxss1 libasound2t64 libxtst6 xauth xvfb |
Run package installation in the image or environment where Cypress actually runs, and check for errors before proceeding. In a container, installing packages on the host does not install them in the container. Cypress’s Linux installation documentation lists the required dependencies and describes its official Docker images, which include prerequisites.
Start Xvfb manually when Cypress does not start it successfully
For a Linux CI job, Cypress documents this fallback. Start Xvfb, export its display address in the same shell or job environment, and then launch Cypress:
# Explicit Xvfb fallback for Linux CI
Xvfb :99 &
export DISPLAY=:99
npx cypress run
The important part is that DISPLAY points to a live X server and is visible to the Cypress process. If Xvfb starts in one job step but Cypress runs in a different isolated shell, container, or job, the setting may not carry over. Configure both steps so the server remains alive and the Cypress process inherits the correct display address. After all Cypress instances finish, stop the Xvfb process using the process-management method appropriate to your CI environment.
Rank #2
- Intel Core i5-10210U (up to 4.2GHz) - 1TB PCIe NVMe + 1TB HDD - 32GB DDR4 SDRAM
- 17.3" HD+ (1600x900) Display, Intel UHD Graphics 620
- Built in HD 720p Webcam with Microphone - Bluetooth Version4.2
- I/O Ports: 2x USB 3.1 (Data Only), 1x USB 2.0, 1x HDMI, 1x Headphone/Microphone Combo Jack
- Linux Mint Cinnamon 64-Bit - 6-Row Keyboard w/ Full Numberpad
This is a fallback, not a mandatory step for every Linux runner. Cypress says its CLI starts Xvfb if necessary, and many CI virtual machines work without manual startup. Starting a second server unnecessarily can create conflicts rather than solve them.
If X11 connection errors continue
In certain environments, Cypress documents setting an explicit screen size and 24-bit color depth:
Xvfb -screen 0 1024x768x24 :99 &
export DISPLAY=:99
npx cypress run
Cypress explains that the color-depth setting can avoid Chrome or Electron crashes in those environments. Use it when the simpler setup still produces X11 connection errors; do not assume that the screen option is needed universally.
Rank #3
- Intel Core i5-1335U Processor (12M Cache, 12 Threads, up to 4.6 GHz) - 256GB Solid State Drive - 16GB DDR4 SDRAM
- 15.6" FHD (1920x1080) Non-Touch Anti-Glare Display - Intel UHD 620 Integrated Graphics - Stereo Speakers
- 720p HD Webcam with Privacy Shutter. Integrated Microphone - Intel Dual Band Wireless-AC (2x2) 8265, Bluetooth Version 4.2
- I/O Ports: 2x USB 3.0, 1x USB 3.1 Type-C 3.1, Headphone/Mic Combo Port, 4-in-1 Card Reader, HDMI, Kensington Mini-Lock Slot
- Linux Mint (Cinnamon) 64-Bit - Keyboard with Full NumberPad - Fast Charging
If runs execute in parallel
Cypress notes that concurrently spawning multiple X11 servers can cause problems for some instances. Instead of having every process start its own server, start one Xvfb server and pass its address to each Cypress process through DISPLAY. Ensure the shared server stays running until every test process using it has finished. A single shared X server is a targeted option for parallel-run conflicts, not a general requirement for all CI setups.
Windows Errors? Fix Them Before They Spread
Repair common Windows errors and clear accumulated junk for a smoother, more stable PC - no reinstall needed.Free scan · no reinstallCrashes, No Sound, or Screen Glitches?
Random freezes, missing sound and display glitches usually trace back to one bad driver. Find and replace yours safely.Free scan · under a minuteChoose the right setup for containers, Dev Containers, and WSL
Docker and other containers
For headless cypress run, a visible desktop is not required, but the container still needs the Linux prerequisites. Cypress’s official Docker images include those prerequisites, so using an appropriate image can avoid building the dependency list into a custom base image yourself. For cypress open, a graphical display is still needed because the browser is headed.
Dev Containers and Codespaces
Cypress documents the desktop-lite feature as a browser-accessible desktop option for Dev Containers. Its documentation also says Cypress does not specifically support Dev Containers or Codespaces, so treat that feature as a documented setup path rather than a blanket support guarantee. Distinguish the requirement: headless CI-style tests need dependencies and a workable X server arrangement; interactive debugging additionally needs a usable desktop.
Rank #4
WSL
For Cypress’s UI in WSL, Cypress says an X server is required. It says current WSL2 with WSLg includes X11 support, while also noting that Cypress does not specifically support WSL. Before changing Cypress configuration, install the Linux prerequisites for the distribution inside WSL and verify that WSLg or your display-forwarding setup is functioning. A Windows host display and the Linux-side package installation solve different parts of the setup.
Separate a display failure from a missing shared library
If the Xvfb and display setup appears correct but Cypress still cannot launch its browser, check the host dependencies rather than repeatedly changing DISPLAY. Cypress’s troubleshooting documentation recommends running a smoke test to check host dependencies and using ldd on the Cypress binary to find shared libraries marked not found. A missing library is a distinct startup problem that can look similar to a display failure in a brief log.
You can also inspect the Cypress binary cache using the commands Cypress documents:
Best Value
- 12th Intel Alder Lake N95 Processor – The GMKtec G3 S Mini PC is powered by the 12th Gen Intel N95 processor with 4 cores, 4 threads, 6MB cache and a burst frequency up to 3.4GHz. Compared with N100/N5105/N5100/N5095, the N95 delivers up to 36% overall performance improvement. Perfect for routine tasks, office work, and home entertainment, this compact mini desktop is more convenient than traditional bulky PCs.
- 8GB RAM & 256GB SSD Storage – Pre-installed with 8GB DDR4 memory and a fast 256GB M.2 2242 SSD, the G3 S mini desktop offers quicker startup, smoother multitasking, and faster file transfers. Enjoy seamless performance whether you’re working on multiple applications, browsing, or streaming content.
- Rich Interfaces & Connectivity – The G3 S mini computer comes equipped with USB 3.2 (up to 10Gbps), dual HDMI 2.0 (4K@60Hz), and a 3.5mm audio jack. With support for WiFi 5, Bluetooth 5.0, and Gigabit Ethernet (RJ45 1000MbE), it connects easily with monitors, projectors, printers, office equipment, and other peripherals, making it versatile for both home and business use.
- Dual 4K Display Support – Featuring upgraded Intel UHD Graphics (up to 1000MHz), the G3 S supports 4K video playback and AV1 decoding for a smooth viewing experience. With dual HDMI outputs, you can connect two 4K@60Hz displays simultaneously, enabling efficient multitasking for work and entertainment.
- GMKtec WARRANTY - GMKtec offers a 1-year limited GMKtec's warranty for each mini PC, starting from the date of the purchase. All defects due to design and workmanship are covered. With a professional after sales team always ready to attend to your needs, you can simply relax and enjoy your mini PC.
npx cypress cache path
npx cypress cache list
These commands show the cache location and cached versions; they do not repair an X server. If the log instead reports a permission problem involving binary_state.json during a non-root run, that is a separate Cypress Docker Images issue—not evidence that DISPLAY is wrong. Check the precise error before applying a cache-permissions or verification workaround.
Common causes and targeted fixes
| Symptom | Likely cause | What to check or change |
|---|---|---|
cypress run fails immediately with the display message |
Xvfb did not start, required Linux packages are absent, or a manual display is not reachable. | Check the release-specific package list and whether Cypress already starts Xvfb; if not, use the manual Xvfb fallback. |
cypress open cannot show a browser |
The session has no accessible graphical display. | Use a graphical desktop or a documented remote desktop setup; headless mode is not the interactive UI. |
An X11 connection error remains after setting DISPLAY |
The referenced server may not be live or accessible; in certain environments, screen depth can matter. | Confirm Xvfb is still running and accessible, then try the documented 24-bit screen command if appropriate. |
| Parallel workers fail inconsistently | Multiple X11 servers are being started concurrently. | Use one shared Xvfb server and give each Cypress process its address. |
| Browser launch reports missing shared libraries | A host dependency is missing, not necessarily an X11 issue. | Use Cypress’s dependency smoke test guidance and inspect the binary with ldd. |
| Non-root container run reports a binary-state permission error | Cypress cannot access or update its binary verification state. | Treat it as a separate cache-permissions or verification issue; do not apply a display workaround without an X11 error. |
Or skip the browser setup
If your actual goal is to get a website screenshot rather than run Cypress browser tests, ScreenshotNeo is a website screenshot API and MCP server for developers. It does not fix Cypress’s X server configuration or execute Cypress tests; it provides a separate way to capture pages. One GET request can return a PNG, JPEG, WebP, or PDF. For the full parameter list, see the ScreenshotNeo documentation.
curl -G "https://api.screenshotneo.com/v1/shot" -d access_key=YOUR_API_KEY --data-urlencode url=https://stripe.com -o shot.webp
ScreenshotNeo accepts cookie or consent banners before capture and removes more than 60 known consent platforms, newsletter popups, and chat widgets; each of those steps can be turned off. Bot checks, blank pages, timeouts, failed loads, and cache hits are not billed, and response headers identify the page verdict and billing status. Its MCP server provides take_screenshot, get_page_info, and capture_pdf tools for Claude, Cursor, and other MCP clients. The free plan includes 1,000 shots per month with no card; paid plans start at $5 for 3,000 shots.
Sign up for ScreenshotNeo’s free plan: 1,000 screenshots a month, no card required.
Quick Recap
Practical decision guide
- For Linux CI running
cypress run, install the documented dependencies and let Cypress manage Xvfb unless the logs show that automatic startup is failing. - For a persistent X11 failure, start Xvfb explicitly and ensure the Cypress process receives the matching
DISPLAY. - For interactive
cypress open, provide a graphical display instead of treating headless CI configuration as equivalent. - For containers, make the dependency and display decision inside the container; consider an official Cypress image if you want the listed prerequisites included.
- For remaining launch failures, read the exact log and distinguish X11 errors from missing libraries or container cache-permission errors.
Product prices and availability are accurate as of the date/time indicated and are subject to change. Any price and availability information displayed on Amazon at the time of purchase will apply.

