---
url: https://al-mo.de/apps/graytoggle/
title: graytoggle — Instant grayscale mode for Linux.
description: Instant grayscale mode for the XFCE4 desktop — a real-time compositor shader, no extra hardware required.
---

Linux

# graytoggle

Instant grayscale mode for Linux.

Instant grayscale mode for the XFCE4 desktop — a real-time compositor shader, no extra hardware required.

[View on GitHub](https://github.com/mkalmousli/graytoggle/releases/latest)[View source](https://github.com/mkalmousli/graytoggle)

![graytoggle](https://al-mo.de/assets/mirror/graytoggle-assets-example.png)

## See how it works

![graytoggle — Off: the normal desktop](https://al-mo.de/assets/mirror/graytoggle-assets-on.png)

01

### Off: the normal desktop

Everything is in colour, exactly as the app shows it.

![graytoggle — On: the whole screen in grayscale](https://al-mo.de/assets/mirror/graytoggle-assets-off.png)

02

### On: the whole screen in grayscale

One shortcut or toggle and a compositor shader turns the entire display monochrome in real time.

![graytoggle — Compare directly](https://al-mo.de/assets/mirror/graytoggle-assets-example.png)

03

### Compare directly

Half and half: the same image in colour and in grayscale, so you can judge contrast and composition without leaving the screen.

## Why you'll like it

01

### One command

Toggle from a terminal or bind it to a shortcut.

02

### Real-time shader

Runs through the XFCE4 compositor, no screenshots or overlays.

What it's built with, and why

## What it's built with, and why

Shell + xfwm4 compositor shader Direct compositor-level color transform is the only way to get a real-time, flicker-free effect.

No daemon, no background process A one-shot toggle keeps the tool auditable and resource-free when not in use.

Recent activity

## Recent activity

- [a9af49a](https://github.com/mkalmousli/graytoggle/commit/a9af49a70c6457b725816db705dce30648f7b5b7) Social preview: full example screenshot behind the text
- [3160951](https://github.com/mkalmousli/graytoggle/commit/3160951467974826ef92f228f14805a95ea64523) Regenerate example and social preview from new screenshots
- [d1f4a4d](https://github.com/mkalmousli/graytoggle/commit/d1f4a4d0ab0193aef67a75857bc6174d45303e11) Improve social preview legibility; show whole uncropped desktop

Version **v1.0.0**

Platforms

Linux

License **[GPL-3.0](https://www.gnu.org/licenses/gpl-3.0.html)**

## Related articles

- [Why grayscale matters (and how hard desktops make it)](https://al-mo.de/blog/why-grayscale-matters/): Color is a lever built to pull you back in. Here's why I built graytoggle for XFCE, what to use on GNOME and KDE instead, and why none of this should be this hard.

Enjoying this project? [Support my open-source work](https://al-mo.de/donate/)

License: [GPL-3.0](https://www.gnu.org/licenses/gpl-3.0.html)
