Materia: A Material Design Theme for GNOME and GTK Desktops
A Material Design theme for GNOME/GTK based desktop environments
At a glance
- What is it?
- Materia is a GPL-2.0 theme for GNOME/GTK desktops with three colour variants, two size variants and ripple animations for GTK 3 and 4. It is installed from distro packages, Flathub, or a manual build, and the README lists elementary apps and downstream GNOME sessions as unsupported.
- Who is it for?
- Adopt Materia if you run a stock GNOME, Budgie, Cinnamon, MATE, Unity or Xfce session and want a Material Design look with ripple animations on GTK 3 and 4. Skip it on elementary apps, on downstream customized GNOME sessions such as the Ubuntu or Pop sessions, and on any desktop where you depend on a libadwaita theme, because the README does not claim support for that.
- Can I use it commercially?
- Yes, with conditions. GPL-2.0 is a copyleft licence: if you distribute software that includes it, you must release that software's source code under the same licence. Running it internally without distributing it does not trigger that obligation.
- Is it still maintained?
- Yes. The repository last received commits 175 days ago.
- What is it written in?
- Mainly SCSS, according to GitHub's language statistics.
Answers come from the project's GitHub data, last synced on September 30, 2026, and from our analysis. They are not legal advice.
Editorial analysis
What Materia solves, and who it is aimed at
Desktop theming on Linux is fragmented by toolkit. A single machine can run GTK 2 applications, GTK 3 applications, GTK 4 applications, a GNOME Shell or Cinnamon shell, a display manager, and a browser, each with its own idea of what a button looks like. Materia's answer is one repository that renders all of those surfaces from a shared Material Design specification, based on Adwaita, so the visual language stays consistent across the stack.
The README lists the targets explicitly: GTK 2, GTK 3 (>=3.20), GTK 4 (>=4.0), GNOME Shell (>=3.26), Budgie (>=10.4), Cinnamon (>=3.x), MATE (>=1.14), Unity (>=7.4), Xfce (>=4.13), LightDM, GDM, and a Chrome theme. That breadth is the point. You are not choosing a theme for one application; you are choosing a theme for a session.
Who it is for: people running one of those desktops who want a Material Design appearance without assembling per-component themes. Who it is not for: anyone on an elementary-based desktop, since the README states that elementary apps use their own stylesheet which conflicts with GTK standards, and anyone on a downstream customized GNOME session such as Ubuntu or Pop, where the README instructs you to install gnome-session and switch to the plain GNOME or GNOME on Xorg session first.
How the theme is built: SCSS sources, Meson, and Node tooling
The repository is not a folder of hand-written CSS. The primary language is SCSS, and the top level shows the pipeline: src/ holds the sources, meson.build and meson_options.txt drive the build, and package.json declares a single devDependency, sass, pinned to ^1.32.8. Three shell scripts sit alongside them: parse-sass.sh, render-assets.sh, and change_color.sh.
The split is worth understanding before you touch anything. SCSS is compiled to GTK stylesheets, and the assets (icons and similar files) are rendered separately, which is why there are two scripts rather than one. The README says the Meson code was heavily influenced by lounge-gtk-theme, and that the theme is based on Adwaita, so the SCSS is a restyling of an upstream base rather than a from-scratch stylesheet.
The variants are generated from that base. The README documents 3 color variants (standard, dark, light) and 2 size variants (standard, compact), giving 6 combinations, and all 6 are published to Flathub as separate Flatpak refs. change_color.sh is the entry point for recolouring; HACKING.md is where the README points for the details of how to change the color scheme, and it also documents the upstream theme sources.
Installing Materia from a distro package or Flathub
The fastest path is your distribution's package. The README lists materia-gtk-theme for Arch Linux, Debian 10 or later, Fedora, Solus, and Ubuntu 18.04 or later. The package name is the same across those five, which makes the install command predictable.
sudo apt install materia-gtk-themeOn Debian and Ubuntu that pulls the theme into /usr/share/themes, after which it appears in your desktop's appearance settings. The README adds a warning that matters here: distro packages could be outdated and incompatible with your desktop environment, and it points to the GitHub releases page to check the latest version. The most recent release listed is v20210322, dated 2021-03-22, so a distro package that tracks releases is tracking a line that has not had a tagged release in some years.
If you prefer Flatpak, all 6 variants are on Flathub. The README gives these two commands, and the brace expansion expands to the six theme refs:
flatpak remote-add --if-not-exists flathub https://dl.flathub.org/repo/flathub.flatpakrepo
flatpak install flathub org.gtk.Gtk3theme.Materia{,-dark,-light}{,-compact}The first command registers the Flathub remote only if it is not already present. The second installs the Materia GTK3 theme refs. Note the ref name: org.gtk.Gtk3theme.Materia. These are GTK3 theme extensions for sandboxed Flatpak apps, not a system-wide replacement for a distro package, so they change how Flatpak applications look rather than how your whole session looks.
Building from source and switching the colour scheme
For anything beyond the published variants, you build it yourself. INSTALL.md is where the README sends you for manual installation, and the repository layout tells you what the build expects: Meson plus a Sass compiler, with sass declared in package.json. That means a Node toolchain in addition to Meson, which is a heavier prerequisite set than a theme that ships precompiled CSS.
Recolouring is the more interesting case. The README states that Materia can be customized with the GUI application oomox theme designer, and that it also allows you to change the color scheme relatively easily in other ways, pointing at HACKING.md for the how-to-change-the-color-scheme section. change_color.sh at the repository root is the script for that path.
Two caveats belong here. First, the README's customization section is a pointer, not a tutorial; the actual instructions live in HACKING.md, so budget time for reading source-adjacent documentation rather than following a wizard. Second, the build produces themes from an Adwaita base, which is why the acknowledgments credit GNOME, and why upstream Adwaita changes are the thing most likely to require work on your fork over time.
Fonts, Chrome, and the GDM theme are separate steps
Installing the theme does not finish the job. The README's Recommendations section asks for a font family that includes a Medium weight, naming Roboto and M+ as examples, and suggests a font size of 9.75 (13px at 96dpi) or 10.5 (14px at 96dpi). Skip that and the theme still applies, but the weight and metrics it was designed around will not be there. This is a design constraint the project states, not an optional flourish.
The Chrome theme is also manual. The README instructs you to open the /usr/share/themes/Materia<-variant>/chrome folder in your file manager and drag the .crx files into Chrome's Extensions page at chrome://extensions. There is no store link and no automated install; if you use a Flatpak or a custom prefix, that path will not exist. The scrollbar extension in that folder was forked from Adwaita-chrome-scrollbar.
The GDM lock and login screen is a third separate procedure, documented in INSTALL_GDM_THEME.md, where the README says you change it by replacing the default GNOME Shell theme. That touches system files, so it is the step most likely to be undone by a distribution upgrade.
Where Materia is the wrong choice
The README names two unsupported cases, and both are hard boundaries rather than rough edges. Elementary apps are unsupported because they are based on their own stylesheet that conflicts with GTK standards, so no amount of configuration will make them match. Downstream customized GNOME sessions are unsupported too; the README gives Ubuntu and Pop as examples and tells you to install gnome-session and switch to the GNOME or GNOME on Xorg session from your display manager. If you are attached to your distribution's session branding, Materia asks you to give it up.
There is a second, quieter limitation. The README's supported list stops at the toolkits and desktops above. It says nothing about libadwaita, which is the styling layer modern GNOME applications use, and it does not claim to theme Qt or KDE applications. The related projects section points to Materia KDE by a different maintainer for that world, which is a useful signal: the KDE port is not part of this repository.
Finally, consider the release cadence against your expectations. The most recent tagged release in the list is v20210322; the repository's last push was on 2026-04-08. Work has continued in the tree, but if your adoption criteria require a recent tagged release, this project does not offer one.
The alternative: Arc and the Adwaita default
The obvious comparison is Arc, another GTK theme that appears in the same search results people use to find Materia. The difference is in the design language rather than the packaging. Arc is a flat, relatively neutral theme; Materia is built to Google's Material Design specification, which is where the ripple animations on GTK 3 and GTK 4 come from, along with the elevation and colour treatment. If you want the ripple feedback and the Material palette, Arc does not provide them, and if you want a quieter desktop, Materia's Material styling is the thing you would be opting out of.
The other alternative is doing nothing. Adwaita is the upstream base Materia is built on, and it ships with GNOME, so it is always current with the toolkit and never needs a manual GDM step or a Chrome extension drag-and-drop. Choosing Materia means accepting a layer that has to track Adwaita changes to stay coherent. That trade is reasonable for people who want a specific look and are willing to maintain it; it is a poor trade for anyone who wants a theme they can install once and forget.
Editorial conclusion
Adopt Materia if you run a stock GNOME, Budgie, Cinnamon, MATE, Unity or Xfce session and want a Material Design look with ripple animations on GTK 3 and 4. Skip it on elementary apps, on downstream customized GNOME sessions such as the Ubuntu or Pop sessions, and on any desktop where you depend on a libadwaita theme, because the README does not claim support for that. Before installing, check the release page against your distro package version, since the README warns that distro packages can be outdated and incompatible with your desktop environment.
Frequently asked questions
What is the Materia GTK theme?
Materia is a Material Design theme for GNOME/GTK based desktop environments, supporting GTK 2, GTK 3, GTK 4, GNOME Shell, Budgie, Cinnamon, MATE, Unity, Xfce, LightDM, GDM and a Chrome theme. It is based on Adwaita and distributed under the GNU General Public License, version 2 or later.
How do I install the Materia theme on Debian or Ubuntu?
The README lists materia-gtk-theme for Debian 10 or later and Ubuntu 18.04 or later, so it installs through your distribution's package manager under that name. The README warns that distro packages could be outdated and incompatible with your desktop environment, and points to the releases page to check the latest version.
Does Materia support GNOME Shell on the Ubuntu session?
No. The README lists downstream customized GNOME sessions, giving Ubuntu and Pop as examples, as unsupported, and says that to properly use Materia on GNOME Shell you should install gnome-session and switch to the GNOME or GNOME on Xorg session from your display manager.
How many variants of the Materia theme are there?
The README documents 3 color variants (standard, dark and light) and 2 size variants (standard and compact), and states that all 6 combinations are available via Flathub. The Flatpak refs are published as org.gtk.Gtk3theme.Materia with -dark, -light and -compact suffixes.
Can I change the colours in the Materia theme?
Yes. The README says Materia can be customized with the GUI application oomox theme designer, and that the color scheme can also be changed in other ways, with details in the how-to-change-the-color-scheme section of HACKING.md. The repository includes change_color.sh at its root.
Official sources
Add this badge to your README
If you maintain this project, the badge below links readers to this analysis and shows its maintenance status from the daily GitHub snapshot. Paste the markdown into your README; add ?metric=license or ?metric=stars to the image URL for a different field.
[](https://hysenlabs.com/projects/nana-4-materia-theme)