docs: Move src/gnome-shell/README.md to INSTALL_GDM_THEME.md
To make it more accessible.
To make it more accessible.
by roundabout, Monday, 22 March 2021, 12:37:48 (1616416668), pushed by roundabout, Sunday, 11 May 2025, 13:23:01 (1746969781)
Author identity: nana-4 <hnmaigo@gmail.com>
0999a46123e879b9dfe641e9c3a1d98d78c6aa2d
# How to change the GDM theme
To change the GDM (lock/login screen) theme, you need to replace the system's _default_ GNOME Shell theme.
## :warning: Cautions :warning:
- If the replacement fails, your desktop environment will not work properly. So please **be careful** if doing this.
- When applying this, other third-party GNOME Shell themes would look broken until you restore to the original theme.
- If GNOME Shell has been updated and restored to the original theme, you will need to install this again.
> Note: On Arch Linux, you can automatically reinstall the GDM theme by creating a [hook](https://wiki.archlinux.org/index.php/Pacman#Hooks) file. For example, if you use Materia-compact as your GDM theme, put [this file](https://gist.github.com/looselyrigorous/a1aa931ce48627cc39daccc9253b30c7) in the `/usr/share/libalpm/hooks/` directory.
## Requirements
- `glib-compile-resources` — The package name depends on the distro.
- `glib2` (Arch Linux)
- `glib2-devel` (Fedora, openSUSE, etc.)
- `libglib2.0-dev-bin` (Debian, Ubuntu, etc.)
- `libxml2-utils` — Ubuntu users only.
## Installation
1. **Back up** the original theme file first. If you are already using a custom GDM theme, skip this:
```sh
sudo cp -av /usr/share/gnome-shell/gnome-shell-theme.gresource{,~}
```
2. Select a **GTK** theme to decide which variant to install.
3. Replace the default theme file:
```sh
GTK_THEME=$(gsettings get org.gnome.desktop.interface gtk-theme | sed "s/'//g")
cd /usr/share/themes/${GTK_THEME}/gnome-shell
sudo glib-compile-resources --target=/usr/share/gnome-shell/gnome-shell-theme.gresource gnome-shell-theme.gresource.xml
```
4. Reload the theme. If you are running GNOME Shell, press <kbd>Alt</kbd> + <kbd>F2</kbd> then type `rt`.
## Uninstallation
1. Restore to the original theme file from the backup:
```sh
sudo mv -v /usr/share/gnome-shell/gnome-shell-theme.gresource{~,}
```
2. Reload the theme. If you are running GNOME Shell, press <kbd>Alt</kbd> + <kbd>F2</kbd> then type `rt`.
### GDM Theme
You can change the GDM (lock/login screen) theme by replacing the default GNOME Shell theme.
See [`gnome-shell/README.md`](src/gnome-shell/README.md) for details.
See [`INSTALL_GDM_THEME.md`](INSTALL_GDM_THEME.md) for details.
## Customization
echo "Installing '$THEME_DIR'..."
#
# COPYING & index.theme
# COPYING, INSTALL_GDM_THEME.md & index.theme
#
mkdir -p "$THEME_DIR"
cp \
"$REPO_DIR/COPYING" \
"$REPO_DIR/INSTALL_GDM_THEME.md" \
"$THEME_DIR"
sed \
-e "s|@theme_name@|$name|g" \
"$SRC_DIR/gnome-shell/icons" \
"$THEME_DIR/gnome-shell"
cp \
"$SRC_DIR/gnome-shell/README.md" \
"$SRC_DIR/gnome-shell/gnome-shell-start.svg" \
"$SRC_DIR/gnome-shell/gnome-shell-theme.gresource.xml" \
"$SRC_DIR/gnome-shell/noise-texture.png" \
foreach theme: themes
install_data(
'COPYING',
[
'COPYING',
'INSTALL_GDM_THEME.md',
],
install_dir: theme['dir'],
)
endforeach
# How to change the GDM theme
To change the GDM (lock/login screen) theme, you need to replace the system's _default_ GNOME Shell theme.
## :warning: Cautions :warning:
- If the replacement fails, your desktop environment will not work properly. So please **be careful** if doing this.
- When applying this, other third-party GNOME Shell themes would look broken until you restore to the original theme.
- If GNOME Shell has been updated and restored to the original theme, you will need to install this again.
> Note: On Arch Linux, you can automatically reinstall the GDM theme by creating a [hook](https://wiki.archlinux.org/index.php/Pacman#Hooks) file. For example, if you use Materia-compact as your GDM theme, put [this file](https://gist.github.com/looselyrigorous/a1aa931ce48627cc39daccc9253b30c7) in the `/usr/share/libalpm/hooks/` directory.
## Requirements
- `glib-compile-resources` — The package name depends on the distro.
- `glib2` (Arch Linux)
- `glib2-devel` (Fedora, openSUSE, etc.)
- `libglib2.0-dev-bin` (Debian, Ubuntu, etc.)
- `libxml2-utils` — Ubuntu users only.
## Installation
1. **Back up** the original theme file first. If you are already using a custom GDM theme, skip this:
```sh
sudo cp -av /usr/share/gnome-shell/gnome-shell-theme.gresource{,~}
```
2. Select a **GTK** theme to decide which variant to install.
3. Replace the default theme file:
```sh
GTK_THEME=$(gsettings get org.gnome.desktop.interface gtk-theme | sed "s/'//g")
cd /usr/share/themes/${GTK_THEME}/gnome-shell
sudo glib-compile-resources --target=/usr/share/gnome-shell/gnome-shell-theme.gresource gnome-shell-theme.gresource.xml
```
4. Reload the theme. If you are running GNOME Shell, press <kbd>Alt</kbd> + <kbd>F2</kbd> then type `rt`.
## Uninstallation
1. Restore to the original theme file from the backup:
```sh
sudo mv -v /usr/share/gnome-shell/gnome-shell-theme.gresource{~,}
```
2. Reload the theme. If you are running GNOME Shell, press <kbd>Alt</kbd> + <kbd>F2</kbd> then type `rt`.
install_data(
[
'README.md',
'gnome-shell-start.svg',
'gnome-shell-theme.gresource.xml',
'noise-texture.png',