A fork of the Materia GTK theme.

Important information: Google announced that, from September 2026, Android devices will require ALL apps to be signed by Google, effectively leading to an iOS situation. Value your right to a computer that does what you want; do not tolerate this monopolistic practice! Contact me if you don't understand why it is bad. Click to learn more.

 README.md

View raw Download
text/plain • 7.51 kiB
exported SGML document, Unicode text, UTF-8 text

Materia

Materia is a Material Design theme for GNOME/GTK based desktop environments.

It supports GTK 2, GTK 3, GNOME Shell, Budgie, Cinnamon, MATE, Unity, Xfce, LightDM, GDM, Chrome theme, etc.

Previews

widget-factory widget-factory-dark

Features

Supports ripple animations for GTK 3:

Button

3 color variants and 2 size variants are available:

Materia | standard | compact :-: | :-: | :-: standard | ![Materia][1] | ![Materia-compact][2] dark | ![Materia-dark][3] | ![Materia-dark-compact][4] light | ![Materia-light][5] | ![Materia-light-compact][6]

[1]: ../images/Materia.png?raw=true [2]: ../images/Materia-compact.png?raw=true [3]: ../images/Materia-dark.png?raw=true [4]: ../images/Materia-dark-compact.png?raw=true [5]: ../images/Materia-light.png?raw=true [6]: ../images/Materia-light-compact.png?raw=true

Supported Desktop Environments

  • Budgie >=10.4

  • Cinnamon >=3.x

  • GNOME Shell >=3.26

  • MATE >=1.14

  • Unity >=7.4

  • Xfce >=4.13

Unsupported

  • Downstream customized GNOME sessions

    e.g. "Ubuntu" session, "Pop" session. To properly use Materia on GNOME Shell, please install gnome-session and then switch to "GNOME" or "GNOME on Xorg" session from your display manager.

  • elementary apps

    Because they are based on their own stylesheet that conflicts with GTK standards.

Requirements

  • GTK >=3.20

  • gnome-themes-extra (or gnome-themes-standard)

  • Murrine engine — The package name depends on the distro.

    • gtk-engine-murrine on Arch Linux

    • gtk-murrine-engine on Fedora

    • gtk2-engine-murrine on openSUSE

    • gtk2-engines-murrine on Debian, Ubuntu, etc.

  • sassc — build-time dependency

Package Installation

Distro Packages

NOTE: Some of these distro packages could be outdated and incompatible with your desktop environment. You can check the latest version here.

Distro | Package Name | Annotation - | - | --- Arch Linux | materia-gtk-theme | Link Debian 10 or later | materia-gtk-theme | Link Fedora | materia-gtk-theme | Available from @LaurentTreguier's Copr Solus | materia-gtk-theme | Link Ubuntu 18.04 or later | materia-gtk-theme | Link

WARNING: Ubuntu disco (19.04) & eoan (19.10) packages are very outdated and incompatible with GNOME 3.32 or later! If you're using GNOME on Ubuntu 19.04 or 19.10, I highly recommend manual installation below.

Flatpak

All 6 variants are available via Flathub:

flatpak remote-add --if-not-exists flathub https://dl.flathub.org/repo/flathub.flatpakrepo
flatpak install flathub org.gtk.Gtk3theme.Materia{,-dark,-light}{,-compact}

Manual Installation

  1. Clone the repository and move into the project directory in the terminal:

git clone --depth 1 https://github.com/nana-4/materia-theme
cd materia-theme
  1. Build and install it using Meson:

meson "build" --prefix=/usr
sudo ninja -C "build" install

NOTE: The default prefix is /usr, but you can optionally specify $HOME/.local.

Alternatively, you can use ./install.sh script instead:

sudo ./install.sh

NOTE: ./install.sh requires additional build-time dependency, bc.

Build Options for Meson

Option | Default Value | Description - | - | --- colors | default,light,dark | Choose color variant(s) sizes | default,compact | Choose size variant(s) gnome_shell_version | n/a (auto) | Manually set gnome-shell version

Example of usage:

meson "build" -Dcolors=default,dark -Dsizes=compact

Build Options for ./install.sh

-d, --dest DIR          Specify destination directory (Default: /usr/share/themes)
-n, --name NAME         Specify theme name (Default: Materia)
-c, --color VARIANT...  Specify color variant(s) [standard|dark|light] (Default: All variants)
-s, --size VARIANT      Specify size variant [standard|compact] (Default: All variants)
-g, --gdm               Install and apply GDM theme (for advanced users)
                       See also: src/gnome-shell/README.md
-h, --help              Show help

Run ./install.sh --help for more information.

Manual Uninstallation

Delete the installed directories:

sudo rm -rf /usr/share/themes/Materia{,-dark,-light}{,-compact}

Recommendations

Font

  • To properly display the theme, use a font family including Medium weight (e.g. Roboto or M+).

  • Set the font size to 9.75 (= 13px at 96dpi) or 10.5 (= 14px at 96dpi).

Chrome Theme

To use the Chrome theme;

  1. Open the chrome folder on /usr/share/themes/Materia<-variant>.

  2. Drag and drop the .crx files into the Chrome/Chromium Extensions page (chrome://extensions).

GDM Theme

You can change the GDM (lock/login screen) theme by replacing the default GNOME Shell theme. See gnome-shell/README.md for details.

Customization

Materia can be customized with GUI application, oomox theme designer.

Materia also allows you to change the color scheme relatively easily in other ways. See HACKING.md for details.

Contributing

If you find bugs or have suggestions, please report it to the issue tracker. Any contribution would be much appreciated.

Todo list can be found at TODO.md.

Related Projects

License

Materia is distributed under the terms of the GNU General Public License, version 2 or later. See the COPYING file for details.

Credits

  • Materia is based on Adwaita by GNOME.

  • Design and specifications are based on Google's Material Design.

  • The included symbolic icons are based on Material Design icons by Google.

  • Chrome/Chromium scrollbars extension was forked from Adwaita-chrome-scrollbar by GNOME Integration Team.

  • Yauhen Kirylau (@actionless) who is oomox author polished scripts and supported Materia with oomox.

  • @n3oxmind who helped improve the installation script.

  • @smurphos who made and provided the Cinnamon theme for Materia.

  • Meson code/implementation in Materia was heavily influenced by @monday15's lounge-gtk-theme.

Also thank you to all contributors and upstream developers.

                
                    
1
<img src="../images/materia-logo.svg" alt="materia-logo" align="right" />
2
3
# Materia
4
5
Materia is a [Material Design](https://material.io) theme for GNOME/GTK based desktop environments.
6
7
It supports GTK 2, GTK 3, GNOME Shell, Budgie, Cinnamon, MATE, Unity, Xfce, LightDM, GDM, Chrome theme, etc.
8
9
## Previews
10
11
![widget-factory](../images/widget-factory.png?raw=true)
12
![widget-factory-dark](../images/widget-factory-dark.png?raw=true)
13
14
## Features
15
16
Supports **ripple animations** for GTK 3:
17
18
![Button](../images/Button.gif?raw=true)
19
20
**3 color variants** and **2 size variants** are available:
21
22
**Materia** | **standard** | **compact**
23
:-: | :-: | :-:
24
**standard** | ![Materia][1] | ![Materia-compact][2]
25
**dark** | ![Materia-dark][3] | ![Materia-dark-compact][4]
26
**light** | ![Materia-light][5] | ![Materia-light-compact][6]
27
28
[1]: ../images/Materia.png?raw=true
29
[2]: ../images/Materia-compact.png?raw=true
30
[3]: ../images/Materia-dark.png?raw=true
31
[4]: ../images/Materia-dark-compact.png?raw=true
32
[5]: ../images/Materia-light.png?raw=true
33
[6]: ../images/Materia-light-compact.png?raw=true
34
35
## Supported Desktop Environments
36
37
- Budgie `>=10.4`
38
- Cinnamon `>=3.x`
39
- GNOME Shell `>=3.26`
40
- MATE `>=1.14`
41
- Unity `>=7.4`
42
- Xfce `>=4.13`
43
44
## Unsupported
45
46
- Downstream customized GNOME sessions
47
> e.g. "Ubuntu" session, "Pop" session. To properly use Materia on GNOME Shell, please install `gnome-session` and then switch to "GNOME" or "GNOME on Xorg" session from your display manager.
48
- elementary apps
49
> Because they are based on [their own stylesheet](https://github.com/elementary/stylesheet) that conflicts with GTK standards.
50
51
## Requirements
52
53
- GTK `>=3.20`
54
- `gnome-themes-extra` (or `gnome-themes-standard`)
55
- Murrine engine — The package name depends on the distro.
56
- `gtk-engine-murrine` on Arch Linux
57
- `gtk-murrine-engine` on Fedora
58
- `gtk2-engine-murrine` on openSUSE
59
- `gtk2-engines-murrine` on Debian, Ubuntu, etc.
60
- `sassc` — build-time dependency
61
62
## Package Installation
63
64
### Distro Packages
65
66
> NOTE: Some of these distro packages could be outdated and incompatible with your desktop environment. You can check the latest version [here](https://github.com/nana-4/materia-theme/releases).
67
68
<!-- For contributors, please add your package alphabetically. -->
69
70
Distro | Package Name | Annotation
71
--- | --- | ---
72
Arch Linux | `materia-gtk-theme` | [Link](https://www.archlinux.org/packages/community/any/materia-gtk-theme/)
73
Debian 10 or later | `materia-gtk-theme` | [Link](https://packages.debian.org/materia-gtk-theme)
74
Fedora | `materia-gtk-theme` | Available from [@LaurentTreguier's Copr](https://copr.fedorainfracloud.org/coprs/tcg/themes)
75
Solus | `materia-gtk-theme` | [Link](https://dev.getsol.us/source/materia-gtk-theme/)
76
Ubuntu 18.04 or later | `materia-gtk-theme` | [Link](https://packages.ubuntu.com/materia-gtk-theme)
77
78
**WARNING:** Ubuntu **disco (19.04)** & **eoan (19.10)** packages are very outdated and incompatible with GNOME 3.32 or later! If you're using GNOME on Ubuntu 19.04 or 19.10, I highly recommend [manual installation](#manual-installation) below.
79
80
### Flatpak
81
82
All 6 variants are available via Flathub:
83
84
```
85
flatpak remote-add --if-not-exists flathub https://dl.flathub.org/repo/flathub.flatpakrepo
86
flatpak install flathub org.gtk.Gtk3theme.Materia{,-dark,-light}{,-compact}
87
```
88
89
## Manual Installation
90
91
1. Clone the repository and move into the project directory in the terminal:
92
93
```sh
94
git clone --depth 1 https://github.com/nana-4/materia-theme
95
cd materia-theme
96
```
97
98
2. Build and install it using Meson:
99
100
```sh
101
meson "build" --prefix=/usr
102
sudo ninja -C "build" install
103
```
104
105
> NOTE: The default prefix is `/usr`, but you can optionally specify `$HOME/.local`.
106
107
Alternatively, you can use `./install.sh` script instead:
108
109
```sh
110
sudo ./install.sh
111
```
112
113
> NOTE: `./install.sh` requires additional build-time dependency, `bc`.
114
115
#### Build Options for Meson
116
117
Option | Default Value | Description
118
--- | --- | ---
119
`colors` | `default,light,dark` | Choose color variant(s)
120
`sizes` | `default,compact` | Choose size variant(s)
121
`gnome_shell_version` | n/a (auto) | Manually set gnome-shell version
122
123
Example of usage:
124
125
```sh
126
meson "build" -Dcolors=default,dark -Dsizes=compact
127
```
128
129
#### Build Options for `./install.sh`
130
131
```
132
-d, --dest DIR Specify destination directory (Default: /usr/share/themes)
133
-n, --name NAME Specify theme name (Default: Materia)
134
-c, --color VARIANT... Specify color variant(s) [standard|dark|light] (Default: All variants)
135
-s, --size VARIANT Specify size variant [standard|compact] (Default: All variants)
136
-g, --gdm Install and apply GDM theme (for advanced users)
137
See also: src/gnome-shell/README.md
138
-h, --help Show help
139
```
140
141
Run `./install.sh --help` for more information.
142
143
## Manual Uninstallation
144
145
Delete the installed directories:
146
147
```sh
148
sudo rm -rf /usr/share/themes/Materia{,-dark,-light}{,-compact}
149
```
150
151
## Recommendations
152
153
### Font
154
155
- To properly display the theme, use a font family including **Medium** weight (e.g. [Roboto](https://github.com/google/roboto) or [M+](https://mplus-fonts.osdn.jp)).
156
- Set the font size to `9.75` (= 13px at 96dpi) or `10.5` (= 14px at 96dpi).
157
158
### Chrome Theme
159
160
To use the Chrome theme;
161
162
1. Open the `chrome` folder on `/usr/share/themes/Materia<-variant>`.
163
2. Drag and drop the `.crx` files into the Chrome/Chromium Extensions page (`chrome://extensions`).
164
165
### GDM Theme
166
167
You can change the GDM (lock/login screen) theme by replacing the default GNOME Shell theme.
168
See [`gnome-shell/README.md`](src/gnome-shell/README.md) for details.
169
170
## Customization
171
172
Materia can be customized with GUI application, [**oomox theme designer**](https://github.com/themix-project/oomox).
173
174
Materia also allows you to change the color scheme relatively easily in other ways. See [`HACKING.md`](HACKING.md#how-to-change-the-color-scheme) for details.
175
176
## Contributing
177
178
If you find bugs or have suggestions, please report it to the [issue tracker](https://github.com/nana-4/materia-theme/issues). Any contribution would be much appreciated.
179
180
Todo list can be found at [`TODO.md`](TODO.md).
181
182
## Related Projects
183
184
- [**Materia KDE**](https://github.com/PapirusDevelopmentTeam/materia-kde) by @PapirusDevelopmentTeam
185
- [**Materia VSCode Theme**](https://marketplace.visualstudio.com/items?itemName=m-thorsen.vscode-materia) by @m-thorsen
186
- [**Materia Kolorizer**](https://github.com/DarthWound/materia-kolorizer) by @DarthWound
187
- [**oomox theme designer**](https://github.com/themix-project/oomox) by @themix-project
188
189
## License
190
191
Materia is distributed under the terms of the GNU General Public License, version 2 or later. See the [`COPYING`](COPYING) file for details.
192
193
## Credits
194
195
- Materia is based on [Adwaita](HACKING.md#upstream-theme-sources) by GNOME.
196
- Design and specifications are based on Google's [Material Design](https://material.io).
197
- The included symbolic icons are based on [Material Design icons](https://github.com/google/material-design-icons) by Google.
198
- Chrome/Chromium scrollbars extension was forked from [Adwaita-chrome-scrollbar](https://github.com/gnome-integration-team/chrome-gnome-scrollbar) by GNOME Integration Team.
199
- Yauhen Kirylau (@actionless) who is oomox author polished scripts and supported Materia with [oomox](https://github.com/themix-project/oomox).
200
- @n3oxmind who helped improve the installation script.
201
- @smurphos who made and provided the Cinnamon theme for Materia.
202
- Meson code/implementation in Materia was heavily influenced by @monday15's [lounge-gtk-theme](https://github.com/monday15/lounge-gtk-theme).
203
204
Also thank you to all contributors and upstream developers.
205