# MacTahoe: a macOS Tahoe styled GTK theme for Linux desktops, with a blunt libadwaita caveat

> MacTahoe is an SCSS GTK theme that gives Linux desktops the look of macOS Tahoe, forked from the author's own WhiteSur GTK theme and installed with a single install.sh run. Its README admits the libadwaita workaround is not perfect, because GTK 4 apps cannot be themed properly without overwriting a config file.

**vinceliuice/MacTahoe-gtk-theme** — MacOS Tahoe theme for gtk desktops

- Repository: https://github.com/vinceliuice/MacTahoe-gtk-theme
- Stars: 1,684 · Forks: 104
- Language: SCSS
- License: MIT
- Published: 2026-10-16 · Updated: 2026-10-16 · Language: en
- Canonical page: https://hysenlabs.com/projects/vinceliuice-mactahoe-gtk-theme

## A fork of WhiteSur with a new name

MacTahoe is described in the README as a macOS Tahoe like theme for Linux GTK desktops, and it is explicitly based on WhiteSur GTK Theme, which is the same author's macOS-style theme project. The primary language is SCSS, and the licence is MIT.

That lineage explains the shape of the project. A GTK theme that emulates a macOS release is a large asset set plus a Sass source tree plus an installer, not a piece of software with an API. There is no library to import and nothing to compile against. The install script and its option surface are the interface.

The release naming also follows the macOS cycle rather than a software version scheme. The recent releases are dated 2026-09-10, 2026-08-08 and 2026-07-07, so a new tag lands when the upstream macOS design changes, and the last push was on 2026-09-28. The repository is not archived.

For a reader deciding whether to try it, the useful question is not whether the theme is any good but whether it fits your stack. The answer depends on whether you run GTK 3 applications, GTK 4 and libadwaita applications, or both, and whether you want the gnome-shell panel restyled as well as the application theme. The README treats those as separate questions.

## Dependencies, and the installer that brings them

The README's claim is that installation is easy, and the mechanism is a shell script that also handles the build dependencies. The listed requirements for an install from source are sassc, libglib2.0-dev-bin on ubuntu 20.04, libglib2.0-dev on ubuntu 18.04, debian 10.03 and linux mint 19, libxml2-utils on the same distributions, and glib2-devel on Fedora and Redhat.

Then come the optional pieces, each tied to a specific feature. imagemagick is optional for a GDM theme tweak, dialog is optional for installation in dialog mode, optipng is optional for asset rendering, and inkscape is optional for asset rendering. The reassuring line is that the MacTahoe installer already provides all of those dependencies.

Three GNOME Shell extensions are recommended rather than required. user-themes is needed to enable the gnome-shell theme and not just the application theme, dash-to-dock covers the dock, and blur-my-shell is the one the blur option depends on.

That list is the practical footprint. This is a build-and-install project that pulls in a Sass compiler, GLib development headers, XML utilities and optionally Inkscape, so it is not something you install on a locked down machine without reading the script first.

## Cloning, installing and the uninstall commands

Installing from source is two steps.

```bash
git clone https://github.com/vinceliuice/MacTahoe-gtk-theme.git --depth=1
./install.sh
```

The --depth=1 flag keeps the clone shallow, which matters for a repository that carries a large asset tree and where the history is not what you are after. The second command installs the default MacTahoe GTK theme pack.

Removing it is equally explicit, and each removal targets a different place the theme can land.

```bash
./install.sh -r
sudo ./tweaks.sh -g -r
./tweaks.sh -f -r
./tweaks.sh -F -r
```

The first removes the GTK themes, the second removes the GDM theme, which is the login screen, and needs sudo because that is a system-level file. The third removes the Firefox theme and the fourth removes Flatpak GTK themes, and those two run as your own user.

The fact that there are four separate removals is itself informative. A GTK theme install is not a single file, and the theme can be present in your user's theme directory, in the GDM configuration, in the Firefox profile and inside the Flatpak sandbox at the same time. Anyone who installs and then decides against it should run all four.

## The option surface of install.sh

The installer is configurable in ways that go beyond picking a colour, and the option list is the clearest description of what the theme does.

The -d or --dest option sets the destination directory, defaulting to /home/[USER_NAME]/.themes, and -n or --name sets the theme name, defaulting to MacTahoe. Both of those matter if you want to keep this theme alongside another one rather than replacing it.

The visual variants are -o or --opacity with normal and solid values, defaulting to all variants, and -c or --color with light and dark, also defaulting to all variants. The window control buttons are handled by -a or --alt with normal, alt and all, defaulting to normal. The accent colour is -t or --theme, accepting default, blue, purple, pink, red, orange, yellow, green, grey or all, and the colour scheme style is -s or --scheme with standard or nord.

Two options change behaviour rather than appearance. -b or --blur installs a more transparent version and requires the blur-my-shell extension. -f or --fixed installs a fixed accent colour version, where the default is the adaptive version, and -l or --libadwaita installs the theme into the gtk4.0 config for libadwaita, defaulting to the dark version. There is also -HD or --highdefinition for a larger size, with the default being laptop size.

The shell-specific options live under --shell, or --gnomeshell, and they are the ones that touch the panel itself. An icon set for the Activities button with a long list of distro variants, panel opacity with named levels, panel height, a smaller font, removing the quick menu shadow, the show apps button style, rounding maximized windows, and a darker dark theme variant.

## The libadwaita problem, stated by the author

The README has a section titled Fix for libadwaita, with the parenthetical not perfect, and it is worth reproducing the reasoning because it is the honest limitation of this project.

Since the release of Gnome 43.0, more built-in applications use libadwaita, and libadwaita does not support custom themes. That means the appearance of apps using libadwaita cannot be changed through gnome-tweaks or dconf-editor. The README's reaction is blunt about how that feels for people who want custom themes.

The offered method is to use the theme file to overwrite the gtk-4.0 configuration file, and the two commands are.

```bash
./install.sh -l
./install.sh -l -c light
```

The consequence, stated plainly in the README, is that only Fixed works, meaning all GTK 4 apps use one theme, and it cannot be switched, not even to dark mode. To change the theme you overwrite the gtk-4.0 configuration file again with a new one.

So the GTK 4 half of the theme is a single-shot operation, and it is not a proper theming mechanism. If your workflow involves switching between light and dark GTK 4 apps, this approach fights you. The README acknowledges the method is not perfect and describes it as at the moment the only possible way to keep using themes for libadwaita apps, which is a statement about the state of GTK rather than a recommendation of the tool.

## Where this kind of theme is the wrong answer

A GTK theme is an aesthetic layer, and there are clear cases where it does not apply at all.

On a KDE Plasma or Xfce desktop, most of the gnome-shell work is irrelevant, and the panel options under --shell do nothing. The theme is built for GNOME and its extensions.

On a machine running only GTK 4 and libadwaita applications, the interesting half of the theme is the half the README says does not work properly.

There is also the question of what you get for the effort. A theme pack is a set of pixels and a Sass tree. It gives you the appearance of a macOS release on Linux and nothing else, and it is a maintenance obligation for anyone who wants the look to keep tracking the upstream design changes, which is why the dated release tags exist.

For a shared or work machine, the GDM and Flatpak removal paths are worth thinking about before installing, since ./install.sh and the tweaks script touch the login screen and the sandbox configuration.

The MIT licence is permissive and permits reuse, modification and redistribution with the notice retained, which matters if you want to fork a variant for your own distribution.

## Conclusion

Adopt MacTahoe if you want a macOS Tahoe look on a Linux GTK desktop and you run the classic GTK 3 stack plus gnome-shell, since that is the combination the theme and its shell tweaks actually cover. Do not adopt it expecting your GTK 4 and libadwaita applications to be themed, because the README states libadwaita does not support custom themes and the offered fix overwrites the gtk-4.0 configuration file, leaving you with a single fixed theme that cannot even be switched to dark mode. Verify first that the uninstall path works on your machine, with ./install.sh -r and the matching tweaks.sh removals, before you commit to it.

## FAQ

### How do I install the MacTahoe GTK theme?

Clone the repository with git clone https://github.com/vinceliuice/MacTahoe-gtk-theme.git --depth=1 and then run ./install.sh to install the default MacTahoe GTK theme pack. The installer also provides the listed dependencies such as sassc and the GLib development headers.

### How do I uninstall MacTahoe?

Run ./install.sh -r to remove the GTK themes, sudo ./tweaks.sh -g -r to remove the GDM theme, ./tweaks.sh -f -r to remove the Firefox theme and ./tweaks.sh -F -r to remove Flatpak GTK themes.

### Does MacTahoe theme GTK 4 and libadwaita applications properly?

Not properly, according to the README. Since Gnome 43.0 more built-in apps use libadwaita, which does not support custom themes, and the offered fix overwrites the gtk-4.0 configuration file so that all GTK 4 apps use one fixed theme that cannot even be switched to dark mode.

### Which GNOME Shell extensions does MacTahoe need?

The README recommends user-themes to enable the gnome-shell theme and not just the application theme, dash-to-dock for the dock, and blur-my-shell, which the blur install option requires.

## Sources

- [Issues](https://github.com/vinceliuice/MacTahoe-gtk-theme/issues)
- [License: MIT](https://github.com/vinceliuice/MacTahoe-gtk-theme/blob/main/LICENSE)
- [README](https://github.com/vinceliuice/MacTahoe-gtk-theme/blob/main/README.md)
- [Releases](https://github.com/vinceliuice/MacTahoe-gtk-theme/releases)
- [vinceliuice/MacTahoe-gtk-theme on GitHub](https://github.com/vinceliuice/MacTahoe-gtk-theme)

---

Hysen Labs editorial analysis, written from the project's own repository and release notes. Cite the canonical page: https://hysenlabs.com/projects/vinceliuice-mactahoe-gtk-theme
