# Lenovo ThinkPad X220, X230, T420 and T430 on Omarchy Linux
Classic ThinkPads on Omarchy 4.0.4: the X220 is the project's own potato demo, but scaling, VA-API, dictation and dual-battery reporting all need hand work.
> **Short answer:** Rate the classic ThinkPad class bronze. Omarchy boots and runs well on an X220 or X230, and omarchy.org uses a 2 GB 2011 X220 as its old-hardware showcase. Expect real hand work: set scaling to 1 on a 1366x768 panel, install libva-intel-driver yourself, skip dictation on pre-AVX2 chips, and watch for an unresolved Mesa rendering regression on old Intel graphics.
- Applies to Omarchy: 3.x and later
- Status: partial
- Last verified: 2026-09-16
- Canonical: https://omarchylinux.org/hardware/lenovo-thinkpad-x220-and-classics/
_Unofficial community page. Not affiliated with 37signals or the Omacom Foundation. Omarchy is a registered trademark of 37signals LLC._

## Verdict

Bronze. A classic ThinkPad runs Omarchy, and the project leans on that fact: the project's own [old hardware page](https://omarchy.org/potato/) is a 2011 ThinkPad X220 with 2 GB of RAM. The desktop itself is not the problem. Everything around the desktop is.

On Omarchy 4.0.4 this class of machine hits a default display scale meant for a 4K panel, an Intel video acceleration script that installs a driver its GPU generation cannot use, a dictation installer that hands pre-AVX2 CPUs a binary they cannot execute, and an unresolved rendering regression on old Intel graphics. None of that is fatal. All of it is manual. If you want a used ThinkPad that mostly just works, buy a [T480](/hardware/lenovo-thinkpad-t480/) instead and keep the X220 as the cheap second machine it is good at being.

This page covers the X220 and X230, the T420 and T430, and by extension the Haswell T440 series. Several of the cited reports come from machines just outside that range: the Broadwell X250 and T450, the Skylake T460s, and two Intel MacBooks of the same GPU generations. They all ride the same generic Intel and power paths. Everything was checked against the v4.0.4 source tree and the issue tracker on 2026-09-16.

## What works

The shell runs. A third-party measurement of an X220 with an i5-2520M and 2 GB of RAM under Quattro reported roughly 890 MB used at idle with Hyprland, the Quickshell bar and a Foot terminal, and about 1.3 GB with browser tabs, video and a recorder going. Treat those as one person's numbers, not a guarantee.

Two defaults help this hardware specifically. Since v4.0.0 the default terminal is Foot, which the manual describes as compatible with even old computers, and the v3.4.0 notes say the default was moved off Ghostty precisely so old systems without compatible GPUs could run Omarchy out of the box. Thermal management is also handled: `install/hardware/intel/thermald.sh` installs and enables thermald on any Intel laptop with a battery and a CPU model of 42 or higher, and its own comment names Sandy Bridge as that floor.

The pre-AVX2 update failure from early 2026 is fixed. Issue #4554 had owners of i5-3210M and similar chips stuck when the Limine unified kernel image build refused to run, reporting a missing list of CPU features including AVX2 and BMI2. ryanrhughes closed it on 2026-02-22 after tracing it to the `limine-mkinitcpio-hook` build and rebuilding it with compatibility flags in the Omarchy package repository. Nobody has reported it again since.

Wi-Fi, Bluetooth, audio, webcam, fingerprint, suspend, hibernate, touchpad and keyboard are marked unknown. Nobody has filed a 4.x report for these machines on any of them, in either direction, and the tracker only proves what breaks.

## What breaks

**Rendering glitches after a Mesa update.** Issue #5979 is open. Owners of an X220 with an i5-2540M and an i5-2520M saw garbled text and corrupted cursors after moving to 3.8.2. Hyprland's maintainer noted in the thread that everyone reporting it was on old Intel, and one owner fixed it by downgrading Mesa from cache and pinning it with `IgnorePkg`. No fix has landed in Omarchy, and the thread has been quiet since 2026-05-30. This is the single reason to keep snapshots on this hardware.

**Display scale defaults to 2.** `config/hypr/monitors.lua` in v4.0.4 still ships `local omarchy_gdk_scale = 2`, and the manual confirms Omarchy assumes a 2x display. On a 1366x768 panel that is close to unusable. Issue #7301, filed on an X250 running Quattro, adds a second problem: after the screensaver ran, the scale went back to 2 until the file was saved again. It is still open. See the [monitors chapter](https://omarchy.org/manual/monitors/) for the values to set.

**VA-API gets the wrong driver.** Issue #7866 is open. `install/hardware/intel/video-acceleration.sh` picks the driver by lspci name. An HD 4000 reports as "Ivy Bridge mobile GT2 [HD Graphics 4000]", matches the "hd graphics" branch and gets `intel-media-driver`, which only covers Broadwell and newer. An HD 3000 reports as "2nd Generation Core Processor Family Integrated Graphics Controller", matches neither branch, and gets nothing. Either way there is no working VA-API driver. A second reporter on an Ivy Bridge machine found `vaInitialize` failing outright rather than merely dropping frames. Of the two fixes, #8490 was closed in favour of #8514, which selects the package by PCI device ID and is still open.

**Dictation on pre-AVX2 chips.** Issue #8197 reports the prebuilt voxtype binary dying with SIGILL on an Ivy Bridge i5-3210M, with no warning from the installer. The upstream maintainer said in the thread that pre-AVX2 binaries would ship from voxtype 1.0.1. That did not happen: 1.0.1 shipped on 2026-08-31 with AVX2 and AVX-512 x86_64 builds only. A `baseline` x86_64 binary does appear in the 1.1.0 release candidates, but voxtype issue #740 is open and reports that the rc4 baseline build still carried BMI2 and still faulted on pre-Haswell hardware; rc5 was tagged as an attempted fix and has no bare-metal confirmation yet. The workaround that the #8197 reporter says works today is building from source with `RUSTFLAGS="-C target-cpu=native"`, at roughly nine seconds per utterance. On Haswell there is a second trap: issue #11370, filed from a Haswell MacBook Pro, describes `omarchy-hw-vulkan` seeing any Vulkan ICD as good enough, enabling GPU offload on a Mesa hasvk device that cannot support it, and leaving a systemd restart loop that produced roughly 127,000 core dumps. The same install path runs on a Haswell ThinkPad. See [dictation not working](/fix/dictation-voxtype-not-working/).

**Two batteries, one reading.** If you run a slice or Ultrabay battery, the power panel lies. `omarchy-battery-status` in v4.0.4 still picks a single device with `upower -e | grep BAT | head -n 1`. Issues #8303 and #7916 are both open and both from ThinkPad owners, including a case where a dead BAT0 made the panel report 0% while the live pack was nearly full. Two pull requests, #8864 for the aggregate reading and #8904 for a per-battery breakdown, were still open on 2026-09-16.

**Brightness can trap at zero.** Issue #8523 is open. It was filed from a 2012 MacBook Pro, but the mechanism is the backlight driver, not the chassis: on panels using `acpi_video0` with a `max_brightness` of 15, stepping down to 0% leaves the backlight stuck, because a 1% step rounds back to raw zero. A commenter reproduced it on 4.0.2 with Ivy Bridge HD 4000. Do not hold the brightness-down key.

**Terminal choice, on 3.x.** Issue #4062 is closed: an X230 with HD 4000 could not get an OpenGL context for Ghostty in January 2026, and the answer was to use Alacritty. On 4.x the default is Foot, so you only meet this by choosing Ghostty or Kitty yourself.

## What Omarchy does for this model

Nothing model specific. There is no ThinkPad DMI match anywhere in v4.0.4. `bin/omarchy-hw-match` greps only `/sys/class/dmi/id/product_name` and `product_family`, and the only Lenovo script in `install/hardware/lenovo/` targets the Yoga Pro 7 14IAH10. Classic ThinkPads are carried entirely by the generic Intel path, so check what your machine actually reports before assuming a future quirk would match it:

```
cat /sys/class/dmi/id/product_name /sys/class/dmi/id/product_family /sys/class/dmi/id/product_version
```

Of the generic scripts, thermald helps, the video acceleration script hurts, and `vulkan.sh` installs `vulkan-intel` on any Intel display device with no generation check. `omarchy-hw-intel-sof` matches any Intel audio device by name, so these machines also pull `sof-firmware` they will never load. That one is harmless.

## Variants

Prefer an X230 or T430 over an X220 or T420 if the price is close, mostly for the newer chipset and USB 3. Prefer any of them with 8 GB or more and an SSD. The third-party X220 writeup makes the same point bluntly: a cheap SATA or mSATA SSD does more for responsiveness than any software tweak.

Avoid buying a 2 GB machine for browser work. Avoid counting on the dictation and AI features that the rest of Omarchy assumes, because that is where pre-AVX2 CPUs fall over. If you specifically want a Haswell T440 or a Broadwell T450, know that the voxtype Vulkan crash loop in #11370 is a Haswell report, and that the T450 dual-battery report in #8303 is the same battery bug described above.

## Before you install

- Put in an SSD and at least 8 GB of RAM first.
- Take a snapshot habit seriously from day one, then read [rollback with Snapper and Limine](/upgrade/rollback-with-snapper-and-limine/). Mesa is the package most likely to ruin your week here.
- Right after first boot, open `~/.config/hypr/monitors.lua`, set `omarchy_gdk_scale` to 1, and set an explicit numeric monitor scale. Details in [fractional scaling](/fix/fractional-scaling-blurry-or-huge-apps/).
- Keep Foot as your terminal.
- If you want hardware video decode, install `libva-intel-driver` and verify with `vainfo` before you believe it.
- On a pre-AVX2 chip, expect the packaged dictation binary to die on first run. Build voxtype from source if you want it, and do not count on the speed.
- If you run a slice or Ultrabay battery, read the percentage from `upower -e` rather than the panel.

## Related

- [Intel graphics on Omarchy](/hardware/intel-gpu/)
- [Battery and power](/hardware/battery-power/)
- [ThinkPad T480](/hardware/lenovo-thinkpad-t480/)
- [Still broken in the current release](/releases/still-broken/)
- [Before you update checklist](/upgrade/before-you-update-checklist/)

## Sources

- [Omarchy on Old Hardware (the potato page)](https://omarchy.org/potato/)
- [Issue #5979: rendering glitch after update from 3.8.0 to 3.8.2](https://github.com/omacom/omarchy/issues/5979)
- [Issue #7301: DE scaling defaullts to 2 & screensaver overrides scaling settiing](https://github.com/omacom/omarchy/issues/7301)
- [Issue #7866: video-acceleration.sh installs wrong VA-API driver for Intel HD 4000 (Ivy Bridge)](https://github.com/omacom/omarchy/issues/7866)
- [Issue #4062: Lenovo x230: Ghostty unable to acquire a OpenGL](https://github.com/omacom/omarchy/issues/4062)
- [Issue #4554: Upgrade issues on older CPU](https://github.com/omacom/omarchy/issues/4554)
- [Issue #8197: omarchy voxtype install has no source-build fallback for pre-AVX2 CPUs](https://github.com/omacom/omarchy/issues/8197)
- [Issue #11370: Voxtype install enables Vulkan on Haswell (hasvk) GPUs, causing an endless SIGABRT crash loop](https://github.com/omacom/omarchy/issues/11370)
- [Issue #8303: Power panel only reads the first battery on dual-battery hardware (ignores real combined charge, no per-battery breakdown)](https://github.com/omacom/omarchy/issues/8303)
- [Issue #7916: Power panel reports dead BAT0 (0% / 0W / Holding) on dual-battery ThinkPads](https://github.com/omacom/omarchy/issues/7916)
- [Issue #8523: omarchy-brightness-display: Brightness trapped at 0% on displays with low max_brightness (acpi_video0)](https://github.com/omacom/omarchy/issues/8523)
- [Release v4.0.0 (Quattro) release notes](https://github.com/omacom/omarchy/releases/tag/v4.0.0)
- [Release v3.4.0 release notes](https://github.com/omacom/omarchy/releases/tag/v3.4.0)
- [Omarchy manual: Terminal](https://omarchy.org/manual/terminal/)
- [voxtype issue #740: 1.1.0-rc4 x86_64 baseline binary still contains BMI2 and SIGILLs on pre-Haswell CPUs](https://github.com/peteonrails/voxtype/issues/740)
- [Omarchy manual: Monitors](https://omarchy.org/manual/monitors/)
- [Omarchy on a potato: X220 numbers, and how low you can go](https://omarchypulse.com/articles/omarchy-on-a-potato)
